Alchemy
Loading...
Searching...
No Matches

mercury_lighthouse_lights.h

Go to the documentation of this file.
1#ifndef ALCHEMY_UNIT_SCENE_COMMON_MERCURY_LIGHTHOUSE_LIGHTS_H
2#define ALCHEMY_UNIT_SCENE_COMMON_MERCURY_LIGHTHOUSE_LIGHTS_H
3
4#include "types.h"
5#include "static_assert.h"
6
7struct FieldActor;
8
9/// Published in the scene's light-controller slot while the pillar is active.
11 /// The leader's lights, 0 to 3: the heart gives three and each hop into the
12 /// pool spends one.
14 s32 terrainCode; ///< the pool's collision code, the floor's region
15 /// Frames to the next sparkle at trigger 21, 10 to 39; a hop zeroes it.
17 /// 16.16 fixed-point pixels: the centre of the column's cell, where a
18 /// sinking leader is put back.
20 s32 targetZ; ///< as targetX
21 struct FieldActor *pillar; ///< the column of light over the leader, or null
22 /// The light holding the leader up where they landed in the pool, or null.
24};
25
26STATIC_ASSERT(sizeof(struct MercuryLighthouseLights) == 0x1c);
27
29 struct MercuryLighthouseLights *st);
30
31#endif
void MercuryLighthouse_RestoreLights(s32 region, struct MercuryLighthouseLights *st)
Keeps the lights' state st in work slot 35 for the floor's region, the pool's collision code.
STATIC_ASSERT, a compile-time check that emits nothing.
#define STATIC_ASSERT(condition)
C89 permits repeated extern declarations of the same array.
A field actor: a person or thing on the field with a position, motion toward a target,...
Definition field_obj.h:30
Published in the scene's light-controller slot while the pillar is active.
s32 terrainCode
the pool's collision code, the floor's region
s32 levels
The leader's lights, 0 to 3: the heart gives three and each hop into the pool spends one.
struct FieldActor * pillar
the column of light over the leader, or null
s32 targetX
16.16 fixed-point pixels: the centre of the column's cell, where a sinking leader is put back.
struct FieldActor * stepEffect
The light holding the leader up where they landed in the pool, or null.
s32 sparkTimer
Frames to the next sparkle at trigger 21, 10 to 39; a hop zeroes it.
The integer types, TRUE, UNUSED and the fixed-address macros.
signed int s32
Definition types.h:14