8#define CLOAK_END 0x2092
67 tile = (
u8 *)(
tile + ((tx + ((y >> 20) << 7)) << 2));
92 for (i = 0; i < 5; ++i) {
102 for (i = 0; i < 5; ++i) {
141 animation->
dirty = 1;
142 animation->
flags = 2;
144 animation->
dirty = 1;
145 animation->
flags = 0;
151 animation->
flags = 2;
152 animation->
dirty = 1;
void * ObjectTable_Get(u32 actorIndex)
Returns the actor in slot index (0 to 65), or NULL.
@ SPRITE_COLOR_WHITE
solid colour 15, white
#define CLOAK_TILE
the tile attribute Cloak can stay hidden on
void FieldFx_StartCloak(void)
The leader blinks 10 times and hides (cloaked set), and the tile check starts; where the leader canno...
void FieldFx_ResumeCloakCheck(void)
Starts the Cloak tile check if the leader is hidden.
#define CLOAK_END
field command when Cloak can no longer hide
void FieldFx_EndCloak(void)
Ends Cloak: stops the tile check and makes the leader blink back into sight, clearing cloaked.
void FieldFx_CheckCloakTile(void)
Scheduler callback of Cloak: when the tile under the leader is not CLOAK_TILE, requests CLOAK_END.
void ObjectDispatch_SelectAnimationFar(void *raw, s32 no)
void AudioCommand_PlayFar(s32 id)
void WaitFrames(s32 frames)
The game's frame loop: runs frames frames and returns.
struct GameState gGameState
struct EffectStep gMapCellBuffer[]
Map cells; battle effects reuse this as a particle array.
What every part of psynergy_effects.c shares: its includes and the macros and types more than one par...
s32 Scheduler_AddOrUpdateCallback(SchedulerCallback callback, s32 order)
Schedules callback with order, or gives a task already running it the new order, and re-sorts the tab...
s32 Scheduler_RemoveCallback(SchedulerCallback callback)
Unschedules the task running callback: clears its routine and gives it order 0x7fff,...
struct EventWork * gEventWork
One animation layer of a sprite: its animation id, frames, running script and timer.
u8 param
SpriteColorMode its pixels are drawn with; 0 when taken.
An animated sprite: its image and shadow, scale, rotation, size and up to four animation layers.
u8 flags
bits: 1 outlined in ObjectSystemWork's edge and fill colours | 0 shadow drawn (set when created)
struct AnimationEntry * entries[4]
its layers; empty ones null
u8 dirty
nonzero redraws its pixels into VRAM when next drawn
Full event work allocated by Field_RunScene (heap slot 27).
s16 command
a field Psynergy to use, as owner << 10 | Psynergy
s16 tile
a tile's collision code, for Field_SearchTile
s16 mode
MODE_WORLD_MAP (3) on the world map.
s16 cloaked
1 under Cloak, which prevents battles
s32 selectedActor
the leader: its unit and its actor
The map work in heap slot 8 (struct MapScrollWork), seen as its tile animation channels,...
One of the 64 field objects in the object pool (heap slot 5): its script, position,...
s32 z
16.16 fixed-point pixels
void * animation
its sprite, or its list of four, by animationKind
s32 x
16.16 fixed-point pixels
s32 y
16.16 fixed-point pixels
u8 terrainId
the map layer its ground height is read from
A field object as the motion code sees it: its script, position, motion toward a target,...
void(*) hook(union FieldObject *object)
Called each frame before its script.
#define MODE_WORLD_MAP
the world map