61 if (StagedActor_FindClearPosition(&result)) {
62 SceneActor_MoveAndRedraw(result);
95 FieldScene_RedrawActorFootprint(
RIVER_LOG);
104 FieldScene_RedrawActorFootprint(8);
105 FieldScene_RedrawActorFootprint(9);
116#define DIRECTION_STEP(dx, dz) (((dx) << 16) | ((dz) & 0xffff))
129 207, 205, 228, 229, 298, 297,
142 { 0,
CONDITION_ALWAYS, 209, 0, 279,
FACING_SOUTH, 0, -1, -1, -1, -1, 0 },
143 { 1,
CONDITION_ALWAYS, 320, 0, 488,
FACING_NORTH, 0, -1, -1, -1, -1, 0 },
144 { 2,
CONDITION_ALWAYS, 480, 0, 104,
FACING_WEST, 0, -1, -1, -1, -1, 0 },
struct FieldActor * Object_GetById(s32 actor)
Returns an actor, or NULL if it does not exist.
s32 gStagedActor_DirectionSteps[]
Pixel step by direction: X in the upper halfword, Z in the lower.
s32 gStagedActor_FootprintBounds[]
#define DIRECTION_STEP(dx, dz)
Pixel step by direction: X in the upper halfword, Z in the lower.
u32 gStagedActor_FootprintKinds[]
The battle animation state, render objects and effect entries, and the palette buffer work.
The engine calls the debug menus import, and their palette swatch tiles.
The scene script layer: the engine services a scene's events call, declared once (Engine_EventBegin,...
void Engine_GameFlagSet(s32 flag)
static void Map_CopyCellAttributes(s32 srcX, s32 srcY, s32 width, s32 height, s32 destX, s32 destY)
s32 Engine_GameFlagIsSet(s32 flag)
void Engine_ActorSetDestinationOffset(s32 actor, s32 dx, s32 dz)
void Engine_EventWait(s32 frames)
Field objects and actors, and the scene transition styles.
#define SCENE_TRANSITION(style, variant)
The scene table formats: entrances, exits, placements and events, and the macros that write them.
#define SCENE_EXITS(scene)
#define SCENE_EXIT(exit, scene, entrance)
#define EVENT_SCRIPT(script)
#define EVENT_TOUCH_WALKING
#define TOUCH_WALKING_INTO(facing)
Game flags, named where their meaning is shown.
#define FLAG_KOLIMA_CURSE_LIFTED
#define FLAG_SCENE_TEMP_01
GameState, the game's state: play time, coins, the scene and the leader's position,...
The work slots of gWorkSlot, read through their own names.
The screen blend's globals and the graphics routines.
The main-image routines scene overlays import.
@ RIVER_LOG
actors 8 to 10 are the logs
u8 gKolimaPalette_First[1792]
u8 gKolimaPalette_Second[896]
s32 KolimaForestRiver_Initialize(void)
On entry a log already in the river floats there again, the logs mark the cells they cover,...
struct SceneEntrance gKolimaForestRiverEntrances[]
const struct SceneRegion * KolimaForestRiver_GetRegions(void)
static void KolimaForestRiver_PushLog(void)
Walking into a log: it rolls ahead until something stops it.
struct ScenePlacement gKolimaForestRiverPlacements[]
struct SceneEvent gKolimaForestRiverEvents[]
u32 gKolimaForestRiverExits[]
Exit 1 to the bend (scene 43), exit 2 to the clearing (scene 41).
const struct SceneEvent * KolimaForestRiver_GetEvents(void)
The logs, the two paths and the jump east from the bank.
const u32 * KolimaForestRiver_GetExits(void)
const struct ScenePlacement * KolimaForestRiver_GetPlacements(void)
The three logs.
const struct SceneEntrance * KolimaForestRiver_GetEntrances(void)
Kolima's forest bridge and river: the hop east onto actor 10 (the third placement).
static void KolimaForest_HopEast(void)
Touch trigger 11, walking east: hop 30 pixels east of the leader.
Declares nothing of its own: it only includes edition.h and types.h.
The reel game's title lettering.
static s32 StagedActor_FillGridAttributeRectangle(u32 layer, s32 x, s32 z, u32 width, u32 height, s32 value)
Sets the collision code of a width by height rectangle of cells, from cell (x, z),...
Song and sound effect ids, indices into gSound_SongTable.
void Engine_ActorSetAnimation()
struct EventWork * gEventWork
void Engine_EventEnd(void)
void Engine_AudioPlayCue()
void Engine_EventBegin(void)
void KolimaPalette_Curse(s32 strength)
Keeps the healthy colours, curses the background palettes 0 to 13 (all but colours 1 to 7 of palette ...
The pushable actors' movement probes and footprint bounds.
A staged actor's effect and its request.
The running scene's event work: its placement and event tables, its actors, the triggers and exit it ...
s32 startTransition
SCENE_TRANSITION(style, variant).
A field actor: a person or thing on the field with a position, motion toward a target,...
u8 priorityFlags
ActorPriorityFlag bits, read by the scrolling camera.
A scene entrance: where and facing which way the party arrives, and the camera's bounds there (-1 for...
A scene event: its kind and detail, the trigger it answers, its condition and its value (a message or...
An actor a scene places: its sprite, the condition for placing it, how it behaves,...
A scene's exit region: the box that, while its condition holds, takes the party leader out through it...
Where a large thing ahead of the leader would roll to: its footprint, its actor, that position,...
struct FieldPosition position
16.16 pixels while moving; converted to cells by footprint redraws.
s32 actorSlot
the large thing's actor number, 8 to 65
The system's routines and globals: interrupts, BIOS sound bias, random numbers and sleep.
Values that differ by patch level or language, chosen once for their code.
The integer types, TRUE, UNUSED and the fixed-address macros.