Alchemy
Loading...
Searching...
No Matches

four_object_motion.h

Go to the documentation of this file.
1#ifndef ALCHEMY_FOUR_OBJECT_MOTION_H
2#define ALCHEMY_FOUR_OBJECT_MOTION_H
3
4/// @file
5/// FourObjectMotion, the row of four figures the Status and Djinn menus show.
6
7#include "types.h"
8#include "global_cells.h"
9#include "static_assert.h"
10
11struct AnimationObject;
12
13/// The menu work as the row of four figures reads it: each figure's object,
14/// screen position and motion phase.
16 u8 unk000[0x144];
17 s16 verticalOrigins[4]; ///< screen pixels
18 u8 unk14c[0xd8];
20 s16 positionsX[4]; ///< screen pixels
21 s16 positionsY[4]; ///< screen pixels
23};
24
25STATIC_ASSERT(offsetof(struct FourObjectMotionState, verticalOrigins) == 0x144);
26STATIC_ASSERT(offsetof(struct FourObjectMotionState, objects) == 0x224);
27STATIC_ASSERT(offsetof(struct FourObjectMotionState, positionsX) == 0x234);
28STATIC_ASSERT(offsetof(struct FourObjectMotionState, positionsY) == 0x23c);
30
31#endif
The work slots of gWorkSlot, read through their own names.
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
An animated sprite: its image and shadow, scale, rotation, size and up to four animation layers.
Definition animspr.h:108
The menu work as the row of four figures reads it: each figure's object, screen position and motion p...
struct AnimationObject * objects[4]
s16 positionsX[4]
screen pixels
s16 verticalOrigins[4]
screen pixels
s16 positionsY[4]
screen pixels
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 char u8
Definition types.h:11