Alchemy
Loading...
Searching...
No Matches

facing_object.h

Go to the documentation of this file.
1#ifndef ALCHEMY_FACING_OBJECT_H
2#define ALCHEMY_FACING_OBJECT_H
3
4/// @file
5/// FacingObject, the view of an object that turns to face a target.
6
7#include "types.h"
8#include "static_assert.h"
9
10/// A field object seen as one that turns toward its facing target: its facing,
11/// its ground position and the target.
14 u16 facing; ///< 1/65536 turns
15 s32 positionX; ///< 16.16 fixed-point pixels
17 s32 positionZ; ///< 16.16 fixed-point pixels
18 u8 unk14[0x46];
19 /// The steering flags (SW_STEERING); bit 0, turning toward its velocity, is
20 /// cleared while it turns toward its target.
23 s16 unk64; ///< work value 0x23 (actionParameter); not read through this view
24 /// The linked object (work value 0x25), or null.
26};
27
28STATIC_ASSERT(sizeof(struct FacingObject) == 0x6c);
35
36#endif
STATIC_ASSERT, a compile-time check that emits nothing.
#define STATIC_ASSERT(condition)
C89 permits repeated extern declarations of the same array.
#define offsetof(type, member)
Definition stddef.h:19
A field object seen as one that turns toward its facing target: its facing, its ground position and t...
u16 facing
1/65536 turns
s16 unk64
work value 0x23 (actionParameter); not read through this view
s32 positionZ
16.16 fixed-point pixels
s32 positionX
16.16 fixed-point pixels
u8 facingFlags
The steering flags (SW_STEERING); bit 0, turning toward its velocity, is cleared while it turns towar...
u8 unk14[0x46]
struct FacingObject * facingTarget
The linked object (work value 0x25), or null.
The integer types, TRUE, UNUSED and the fixed-address macros.
signed int s32
Definition types.h:14
signed short s16
Definition types.h:12
unsigned short u16
Definition types.h:13
unsigned char u8
Definition types.h:11