Crossbone Isle's platform rooms: the room of keys, the room of pursuers that Cloak and Halt get past, and the room of blocks where Bane hides. More...
Go to the source code of this file.
Macros | |
| #define | FLAG_CROSSBONE_ISLE_THIRD_BLOCK_LOWERED 0x300 |
| #define | CROSSBONE_PURSUER_STEP_Z 16 |
| #define | CROSSBONE_LEADER_STEP_Z 24 |
| #define | DJINNI_BANE 6 |
| #define | DIRECTION_STEP(dx, dz) |
| Pixel step by direction: X in the upper halfword, Z in the lower. | |
Enumerations | |
| enum | { BANE = 15 } |
| The Djinni Bane, in the block room: Venus Djinni 6 (name message 1125). More... | |
| enum | { PASSAGE_INDEX_MASK = 0xff , PASSAGE_PLAY_OPENING = 0x100 } |
Functions | |
| static void | Event_PushFirstBlock (void) |
| Pushing the first block (trigger 51); standing at the ladder in column 38, the leader climbs instead. | |
| static void | CrossboneIslePlatformRooms_FollowSecondBlock (void) |
| Keeps actor fourteen just above and behind the second block. | |
| static void | CrossboneIslePlatformRooms_PositionSecondBlockMapObject (void) |
| Aligns map object 107 with the second block. | |
| static void | CrossboneIslePlatformRooms_InitializeScene1 (void) |
| Restores collected keys and already opened passages. | |
| static void | CrossboneIslePlatformRooms_InitializeScene2 (void) |
| Configures the pursuers, their chase triggers and blending. | |
| static void | CrossboneIslePlatformRooms_InitializeScene3 (void) |
| Restores movable blocks, terrain and the Djinni escape progress. | |
| static __inline__ void | SceneState_StoreStep (s16 *field, s32 step) |
| Publishes the next raised-event trigger. | |
| static __inline__ void | LiftBlock (s32 column, u8 motionFlags) |
| Lifts the first block and clears the terrain beneath its column. | |
| static void | Event_BaneJoins (void) |
| Raised once the battle with Bane is won: Bane joins the party. | |
| static UNUSED void | CrossboneIslePlatformRooms_UnusedHook (void) |
| const struct SceneEntrance * | Scene_GetEntrances (void) |
| const struct SceneRegion * | Scene_GetRegions (void) |
| const u32 * | Scene_GetExits (void) |
| Both scenes share one exit table. | |
| const struct ScenePlacement * | Scene_GetPlacements (void) |
| static void | Event_HaltPursuer (void) |
| Halt on a pursuer: nothing beyond the Psynergy's own effect. | |
| static s32 | CrossboneIslePlatformRooms_FaceBaneTowardLeader (union FieldObject *fieldObject) |
| static void | Event_BaneFirstEscape (void) |
| The first time the party comes near: Bane notices them and hops away. | |
| static void | Event_BaneSecondEscape (void) |
| Coming near again: Bane hops, dashes across the platforms and crashes into the far wall, shaking the room, and is left squashing and stretching. | |
| static void | Event_BaneLastEscape (void) |
| The third time: Bane recovers, hops down a winding path to the room's last corner and keeps watching the leader. | |
| static void | Event_BaneKeepsAway (void) |
| Stepping on the triggers around Bane's corner (30 to 41): Bane runs to the matching spot, as fast as the leader, unless Halt holds it. | |
| static void | Event_HaltBane (void) |
| Halt on Bane: it freezes in place. | |
| const struct SceneEvent * | Scene_GetEvents (void) |
| static void | Event_CheckLeaderAhead (void) |
| Walking south into the third or fourth blue door: look at what is ahead. | |
| static void | CrossboneIslePlatformRooms_OpenPassage (s32 passageInfo) |
| Opens the selected blue-key passage, optionally playing its opening. | |
| static void | CrossboneIslePlatformRooms_OpenPlatformPassage (s32 passageInfo) |
| Opens the red-key passage, optionally playing its opening. | |
| static void | Event_UseRedKey (void) |
| Facing the red door with the Red Key: the door rumbles open, and the key is used up. | |
| static void | CrossboneIslePlatformRooms_UseBlueKey (s32 doorIndex) |
| Facing a blue door with a Blue Key: the door rumbles open, and the key is used up. | |
| static void | Event_OpenFirstBlueDoor (void) |
| Touching the first blue door. | |
| static void | Event_OpenSecondBlueDoor (void) |
| Touching the second blue door. | |
| static void | Event_OpenThirdBlueDoor (void) |
| Touching the third blue door; pressing on it from the north looks ahead every dozen blocked steps. | |
| static void | Event_OpenFourthBlueDoor (void) |
| Touching the fourth blue door; pressing on it from the north looks ahead every dozen blocked steps. | |
| static void | Event_ShowRedKey (void) |
| Reveal in the key room: the hidden Red Key appears on its tile. | |
| static void | Event_HideRedKey (void) |
| Reveal wears off: the Red Key's tile is hidden again. | |
| static void | CrossboneIslePlatformRooms_CollectKey (s32 actorId, s32 itemId, s32 collectedFlag) |
| Collects the selected key, hides its actor and remembers it was taken. | |
| static void | Event_CatchFirstBlueKey (void) |
| Catch on the first Blue Key: the party gets it. | |
| static void | Event_CatchSecondBlueKey (void) |
| Catch on the second Blue Key. | |
| static void | Event_CatchThirdBlueKey (void) |
| Catch on the third Blue Key. | |
| static void | Event_CatchFourthBlueKey (void) |
| Catch on the fourth Blue Key. | |
| static void | Event_CatchRedKey (void) |
| Catch on the revealed Red Key. | |
| static void | CrossboneIslePlatformRooms_CheckFirstPursuerTrigger (void) |
| Starts the first chase when an uncloaked leader enters its area. | |
| static void | Event_DodgeFirstPursuer (void) |
| Lets the first pursuer follow the leader, then returns it home. | |
| static void | CrossboneIslePlatformRooms_CheckSecondPursuerTrigger (void) |
| Starts the second chase when the leader enters column ten. | |
| static void | Event_DodgeSecondPursuer (void) |
| Lets the second pursuer follow the leader, then returns it home. | |
| static void | CrossboneIslePlatformRooms_TrackPursuerColumn (s32 pursuerIndex) |
| Moves a pursuer to the leader column and remembers its last column. | |
| static void | Event_TrackThirdPursuerColumn (void) |
| static void | Event_TrackFourthPursuerColumn (void) |
| static UNUSED void | CrossboneIslePlatformRooms_TrackFifthPursuerColumn (void) |
| static void | Event_DodgeThirdPursuer (void) |
| Lets the third pursuer follow the leader, then returns it home. | |
| static void | Event_DodgeFourthPursuer (void) |
| Aligns the fourth pursuer before sending it after the leader. | |
| static void | CrossboneIslePlatformRooms_CheckFifthPursuerTrigger (void) |
| Starts the fifth chase when the leader enters column nineteen. | |
| static void | Event_DodgeFifthPursuer (void) |
| Lets the fifth pursuer follow the leader, then returns it home. | |
| static void | Event_BeginRevealBlend (void) |
| Reveal in the pursuer room: the translucent layer over the room vanishes while it lasts. | |
| static void | Event_EndRevealBlend (void) |
| Reveal wears off: the translucent layer returns. | |
| static void | Event_UseLadder (void) |
| At the ladder by the second block: climb up or down, look ahead to the east, or push the first block from the floor to the west. | |
| static UNUSED void | CrossboneIslePlatformRooms_UnusedCallback (void) |
| static void | Event_FreezePuddle (void) |
| Frost on the puddle: it freezes into a pillar of ice the party can stand on. | |
| static void | Event_LookAheadOrPushFirstBlock (void) |
| Walking into the first block from the ladder side (trigger 70): facing east, look ahead; otherwise push the block. | |
| static void | CrossboneIslePlatformRooms_RestoreFirstBlockTerrain (void) |
| Restores the first block row before applying its current footprint. | |
| static void | CrossboneIslePlatformRooms_RestoreEastUnderfootCell (void) |
| Restores support under the first block at the eastern cell. | |
| static void | CrossboneIslePlatformRooms_RestoreMiddleUnderfootCell (void) |
| Restores support under the first block at the middle cell. | |
| static void | CrossboneIslePlatformRooms_RestoreWestUnderfootCell (void) |
| Restores support under the first block at the western cell. | |
| static void | Event_UpdateFirstBlockTerrain (void) |
| Rebuilds the first block support cells from its height and column. | |
| static void | CrossboneIslePlatformRooms_ReleaseSecondBlockPlatform (void) |
| Detaches the second block follower and restores the ladder cell. | |
| static void | Event_UpdateSecondBlockTerrain (void) |
| Releases the second block platform when it reaches the ladder cell. | |
| static void | Event_PushSecondBlock (void) |
| Pushing the second block (trigger 52); at the ladder, the platform riding on it stays there. | |
| static void | CrossboneIslePlatformRooms_RestoreThirdBlockTerrain (void) |
| Restores the terrain at both ends of the third block row. | |
| static void | CrossboneIslePlatformRooms_RestoreThirdBlockWestCell (void) |
| Restores the third block support at the western end. | |
| static void | CrossboneIslePlatformRooms_RestoreThirdBlockEastCell (void) |
| Restores the third block support at the eastern end. | |
| static void | Event_UpdateThirdBlockTerrain (void) |
| Rebuilds support for the third block from its height and destination. | |
| static void | Event_PushThirdBlock (void) |
| Pushing the third block (trigger 50). | |
| static void | Event_TouchThirdBlock (void) |
| Walking into the third block (trigger 54): facing south, the rising sequence plays; otherwise the block is pushed. | |
| static void | CrossboneIslePlatformRooms_RestoreFourthAndFifthBlockTerrain (void) |
| Clears the support row before repainting the fourth and fifth blocks. | |
| static void | CrossboneIslePlatformRooms_RepaintFourthAndFifthBlockCells (void) |
| Places support cells beneath the fourth and fifth blocks. | |
| static void | Event_UpdateFourthBlockTerrain (void) |
| Refreshes the shared support row after the fourth block moves. | |
| static void | Event_PushFourthBlock (void) |
| Pushing the fourth block (trigger 53). | |
| static void | Event_UpdateFifthBlockTerrain (void) |
| Refreshes the shared support row after the fifth block moves. | |
| static UNUSED void | CrossboneIslePlatformRooms_MoveFifthBlock (void) |
| Unused callback that moves the fifth block and refreshes its terrain. | |
| static void | CrossboneIslePlatformRooms_UpdateBlockPriorities (void) |
| Chooses block drawing priorities from the leader height and row. | |
| s32 | Scene_Initialize (void) |
| Initializes the key, pursuer or movable-block room. | |
| static UNUSED void | CrossboneIslePlatformRooms_UpdateItemIcons (void) |
| Unused callback that cycles key icon displays. | |
Crossbone Isle's platform rooms: the room of keys, the room of pursuers that Cloak and Halt get past, and the room of blocks where Bane hides.
Definition in file crossbone_isle_platform_rooms.c.
| #define FLAG_CROSSBONE_ISLE_THIRD_BLOCK_LOWERED 0x300 |
Definition at line 52 of file crossbone_isle_platform_rooms.c.
Referenced by Event_UpdateThirdBlockTerrain().
| #define CROSSBONE_PURSUER_STEP_Z 16 |
Definition at line 55 of file crossbone_isle_platform_rooms.c.
Referenced by Event_DodgeFirstPursuer().
| #define CROSSBONE_LEADER_STEP_Z 24 |
Definition at line 56 of file crossbone_isle_platform_rooms.c.
Referenced by Event_DodgeFifthPursuer(), Event_DodgeFourthPursuer(), Event_DodgeSecondPursuer(), and Event_DodgeThirdPursuer().
| #define DJINNI_BANE 6 |
Definition at line 71 of file crossbone_isle_platform_rooms.c.
Referenced by Event_BaneJoins().
| #define DIRECTION_STEP | ( | dx, | |
| dz ) |
Pixel step by direction: X in the upper halfword, Z in the lower.
Definition at line 1261 of file crossbone_isle_platform_rooms.c.
| anonymous enum |
The Djinni Bane, in the block room: Venus Djinni 6 (name message 1125).
| Enumerator | |
|---|---|
| BANE | |
Definition at line 70 of file crossbone_isle_platform_rooms.c.
| anonymous enum |
| Enumerator | |
|---|---|
| PASSAGE_INDEX_MASK | |
| PASSAGE_PLAY_OPENING | |
Definition at line 73 of file crossbone_isle_platform_rooms.c.
|
static |
Pushing the first block (trigger 51); standing at the ladder in column 38, the leader climbs instead.
Definition at line 884 of file crossbone_isle_platform_rooms.c.
Referenced by Event_LookAheadOrPushFirstBlock(), Event_PushFirstBlock(), and Event_UseLadder().
|
static |
Keeps actor fourteen just above and behind the second block.
Definition at line 1052 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_FollowSecondBlock(), CrossboneIslePlatformRooms_InitializeScene3(), and CrossboneIslePlatformRooms_ReleaseSecondBlockPlatform().
|
static |
Aligns map object 107 with the second block.
Definition at line 1062 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_PositionSecondBlockMapObject(), and CrossboneIslePlatformRooms_ReleaseSecondBlockPlatform().
|
static |
Restores collected keys and already opened passages.
Definition at line 1149 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene1(), and Scene_Initialize().
|
static |
Configures the pursuers, their chase triggers and blending.
Definition at line 1186 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene2(), and Scene_Initialize().
|
static |
Restores movable blocks, terrain and the Djinni escape progress.
Definition at line 1207 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene3(), and Scene_Initialize().
Publishes the next raised-event trigger.
Definition at line 81 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_CheckFifthPursuerTrigger(), CrossboneIslePlatformRooms_CheckSecondPursuerTrigger(), and SceneState_StoreStep().
Lifts the first block and clears the terrain beneath its column.
Definition at line 86 of file crossbone_isle_platform_rooms.c.
Referenced by Event_UpdateFirstBlockTerrain(), and LiftBlock().
|
static |
Raised once the battle with Bane is won: Bane joins the party.
Definition at line 98 of file crossbone_isle_platform_rooms.c.
Referenced by Event_BaneJoins().
|
static |
Definition at line 102 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_UnusedHook().
| const struct SceneEntrance * Scene_GetEntrances | ( | void | ) |
Definition at line 104 of file crossbone_isle_platform_rooms.c.
| const struct SceneRegion * Scene_GetRegions | ( | void | ) |
Definition at line 119 of file crossbone_isle_platform_rooms.c.
| const u32 * Scene_GetExits | ( | void | ) |
Both scenes share one exit table.
Definition at line 121 of file crossbone_isle_platform_rooms.c.
| const struct ScenePlacement * Scene_GetPlacements | ( | void | ) |
Definition at line 123 of file crossbone_isle_platform_rooms.c.
|
static |
Halt on a pursuer: nothing beyond the Psynergy's own effect.
Definition at line 139 of file crossbone_isle_platform_rooms.c.
Referenced by Event_HaltPursuer().
|
static |
Definition at line 148 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_FaceBaneTowardLeader(), CrossboneIslePlatformRooms_InitializeScene3(), and Event_BaneLastEscape().
|
static |
The first time the party comes near: Bane notices them and hops away.
Definition at line 164 of file crossbone_isle_platform_rooms.c.
Referenced by Event_BaneFirstEscape().
|
static |
Coming near again: Bane hops, dashes across the platforms and crashes into the far wall, shaking the room, and is left squashing and stretching.
Definition at line 189 of file crossbone_isle_platform_rooms.c.
Referenced by Event_BaneSecondEscape().
|
static |
The third time: Bane recovers, hops down a winding path to the room's last corner and keeps watching the leader.
Definition at line 245 of file crossbone_isle_platform_rooms.c.
Referenced by Event_BaneLastEscape().
|
static |
Stepping on the triggers around Bane's corner (30 to 41): Bane runs to the matching spot, as fast as the leader, unless Halt holds it.
Definition at line 298 of file crossbone_isle_platform_rooms.c.
Referenced by Event_BaneKeepsAway().
|
static |
Halt on Bane: it freezes in place.
Definition at line 328 of file crossbone_isle_platform_rooms.c.
Referenced by Event_HaltBane().
| const struct SceneEvent * Scene_GetEvents | ( | void | ) |
Definition at line 334 of file crossbone_isle_platform_rooms.c.
|
static |
Walking south into the third or fourth blue door: look at what is ahead.
Definition at line 350 of file crossbone_isle_platform_rooms.c.
Referenced by Event_CheckLeaderAhead().
|
static |
Opens the selected blue-key passage, optionally playing its opening.
Definition at line 353 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene1(), CrossboneIslePlatformRooms_OpenPassage(), and CrossboneIslePlatformRooms_UseBlueKey().
|
static |
Opens the red-key passage, optionally playing its opening.
Definition at line 371 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene1(), CrossboneIslePlatformRooms_OpenPlatformPassage(), and Event_UseRedKey().
|
static |
Facing the red door with the Red Key: the door rumbles open, and the key is used up.
Definition at line 386 of file crossbone_isle_platform_rooms.c.
Referenced by Event_UseRedKey().
|
static |
Facing a blue door with a Blue Key: the door rumbles open, and the key is used up.
Definition at line 403 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_UseBlueKey(), Event_OpenFirstBlueDoor(), Event_OpenFourthBlueDoor(), Event_OpenSecondBlueDoor(), and Event_OpenThirdBlueDoor().
|
static |
Touching the first blue door.
Definition at line 423 of file crossbone_isle_platform_rooms.c.
Referenced by Event_OpenFirstBlueDoor().
|
static |
Touching the second blue door.
Definition at line 428 of file crossbone_isle_platform_rooms.c.
Referenced by Event_OpenSecondBlueDoor().
|
static |
Touching the third blue door; pressing on it from the north looks ahead every dozen blocked steps.
Definition at line 434 of file crossbone_isle_platform_rooms.c.
Referenced by Event_OpenThirdBlueDoor().
|
static |
Touching the fourth blue door; pressing on it from the north looks ahead every dozen blocked steps.
Definition at line 453 of file crossbone_isle_platform_rooms.c.
Referenced by Event_OpenFourthBlueDoor().
|
static |
Reveal in the key room: the hidden Red Key appears on its tile.
Definition at line 471 of file crossbone_isle_platform_rooms.c.
Referenced by Event_ShowRedKey().
|
static |
Reveal wears off: the Red Key's tile is hidden again.
Definition at line 483 of file crossbone_isle_platform_rooms.c.
Referenced by Event_HideRedKey().
|
inlinestatic |
Collects the selected key, hides its actor and remembers it was taken.
Definition at line 489 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_CollectKey(), Event_CatchFirstBlueKey(), Event_CatchFourthBlueKey(), Event_CatchRedKey(), Event_CatchSecondBlueKey(), and Event_CatchThirdBlueKey().
|
static |
Catch on the first Blue Key: the party gets it.
Definition at line 500 of file crossbone_isle_platform_rooms.c.
Referenced by Event_CatchFirstBlueKey().
|
static |
Catch on the second Blue Key.
Definition at line 505 of file crossbone_isle_platform_rooms.c.
Referenced by Event_CatchSecondBlueKey().
|
static |
Catch on the third Blue Key.
Definition at line 510 of file crossbone_isle_platform_rooms.c.
Referenced by Event_CatchThirdBlueKey().
|
static |
Catch on the fourth Blue Key.
Definition at line 515 of file crossbone_isle_platform_rooms.c.
Referenced by Event_CatchFourthBlueKey().
|
static |
Catch on the revealed Red Key.
Definition at line 520 of file crossbone_isle_platform_rooms.c.
Referenced by Event_CatchRedKey().
|
static |
Starts the first chase when an uncloaked leader enters its area.
Definition at line 525 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_CheckFirstPursuerTrigger(), and CrossboneIslePlatformRooms_InitializeScene2().
|
static |
Lets the first pursuer follow the leader, then returns it home.
Definition at line 540 of file crossbone_isle_platform_rooms.c.
Referenced by Event_DodgeFirstPursuer().
|
static |
Starts the second chase when the leader enters column ten.
Definition at line 564 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_CheckSecondPursuerTrigger(), and CrossboneIslePlatformRooms_InitializeScene2().
|
static |
Lets the second pursuer follow the leader, then returns it home.
Definition at line 578 of file crossbone_isle_platform_rooms.c.
Referenced by Event_DodgeSecondPursuer().
|
static |
Moves a pursuer to the leader column and remembers its last column.
Definition at line 602 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_TrackFifthPursuerColumn(), CrossboneIslePlatformRooms_TrackPursuerColumn(), Event_TrackFourthPursuerColumn(), and Event_TrackThirdPursuerColumn().
|
static |
Definition at line 626 of file crossbone_isle_platform_rooms.c.
Referenced by Event_TrackThirdPursuerColumn().
|
static |
Definition at line 630 of file crossbone_isle_platform_rooms.c.
Referenced by Event_TrackFourthPursuerColumn().
|
static |
Definition at line 634 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_TrackFifthPursuerColumn().
|
static |
Lets the third pursuer follow the leader, then returns it home.
Definition at line 639 of file crossbone_isle_platform_rooms.c.
Referenced by Event_DodgeThirdPursuer().
|
static |
Aligns the fourth pursuer before sending it after the leader.
Definition at line 665 of file crossbone_isle_platform_rooms.c.
Referenced by Event_DodgeFourthPursuer().
|
static |
Starts the fifth chase when the leader enters column nineteen.
Definition at line 702 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_CheckFifthPursuerTrigger(), and CrossboneIslePlatformRooms_InitializeScene2().
|
static |
Lets the fifth pursuer follow the leader, then returns it home.
Definition at line 717 of file crossbone_isle_platform_rooms.c.
Referenced by Event_DodgeFifthPursuer().
|
static |
Reveal in the pursuer room: the translucent layer over the room vanishes while it lasts.
Definition at line 741 of file crossbone_isle_platform_rooms.c.
Referenced by Event_BeginRevealBlend().
|
static |
Reveal wears off: the translucent layer returns.
Definition at line 749 of file crossbone_isle_platform_rooms.c.
Referenced by Event_EndRevealBlend().
|
static |
At the ladder by the second block: climb up or down, look ahead to the east, or push the first block from the floor to the west.
Definition at line 757 of file crossbone_isle_platform_rooms.c.
Referenced by Event_UseLadder().
|
static |
Definition at line 792 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_UnusedCallback().
|
static |
Frost on the puddle: it freezes into a pillar of ice the party can stand on.
Definition at line 796 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene3(), and Event_FreezePuddle().
|
static |
Walking into the first block from the ladder side (trigger 70): facing east, look ahead; otherwise push the block.
Definition at line 812 of file crossbone_isle_platform_rooms.c.
Referenced by Event_LookAheadOrPushFirstBlock().
|
static |
Restores the first block row before applying its current footprint.
Definition at line 823 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_RestoreFirstBlockTerrain(), Event_PushFirstBlock(), and Event_UpdateFirstBlockTerrain().
|
static |
Restores support under the first block at the eastern cell.
Definition at line 833 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_RestoreEastUnderfootCell(), and Event_UpdateFirstBlockTerrain().
|
static |
Restores support under the first block at the middle cell.
Definition at line 840 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_RestoreMiddleUnderfootCell(), and Event_UpdateFirstBlockTerrain().
|
static |
Restores support under the first block at the western cell.
Definition at line 847 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_RestoreWestUnderfootCell(), and Event_UpdateFirstBlockTerrain().
|
static |
Rebuilds the first block support cells from its height and column.
Definition at line 854 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene3(), Event_PushFirstBlock(), and Event_UpdateFirstBlockTerrain().
|
static |
Detaches the second block follower and restores the ladder cell.
Definition at line 909 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_ReleaseSecondBlockPlatform(), and Event_UpdateSecondBlockTerrain().
|
static |
Releases the second block platform when it reaches the ladder cell.
Definition at line 922 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene3(), Event_PushSecondBlock(), and Event_UpdateSecondBlockTerrain().
|
static |
Pushing the second block (trigger 52); at the ladder, the platform riding on it stays there.
Definition at line 934 of file crossbone_isle_platform_rooms.c.
Referenced by Event_PushSecondBlock().
|
static |
Restores the terrain at both ends of the third block row.
Definition at line 940 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_RestoreThirdBlockTerrain(), Event_PushThirdBlock(), and Event_UpdateThirdBlockTerrain().
|
static |
Restores the third block support at the western end.
Definition at line 947 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_RestoreThirdBlockWestCell(), and Event_UpdateThirdBlockTerrain().
|
static |
Restores the third block support at the eastern end.
Definition at line 954 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_RestoreThirdBlockEastCell(), and Event_UpdateThirdBlockTerrain().
|
static |
Rebuilds support for the third block from its height and destination.
Definition at line 961 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene3(), Event_PushThirdBlock(), and Event_UpdateThirdBlockTerrain().
|
static |
Pushing the third block (trigger 50).
Definition at line 985 of file crossbone_isle_platform_rooms.c.
Referenced by Event_PushThirdBlock(), and Event_TouchThirdBlock().
|
static |
Walking into the third block (trigger 54): facing south, the rising sequence plays; otherwise the block is pushed.
Definition at line 993 of file crossbone_isle_platform_rooms.c.
Referenced by Event_TouchThirdBlock().
|
static |
Clears the support row before repainting the fourth and fifth blocks.
Definition at line 1004 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_MoveFifthBlock(), CrossboneIslePlatformRooms_RepaintFourthAndFifthBlockCells(), CrossboneIslePlatformRooms_RestoreFourthAndFifthBlockTerrain(), and Event_PushFourthBlock().
|
static |
Places support cells beneath the fourth and fifth blocks.
Definition at line 1013 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene3(), CrossboneIslePlatformRooms_RepaintFourthAndFifthBlockCells(), Event_UpdateFifthBlockTerrain(), and Event_UpdateFourthBlockTerrain().
|
static |
Refreshes the shared support row after the fourth block moves.
Definition at line 1028 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene3(), Event_PushFourthBlock(), and Event_UpdateFourthBlockTerrain().
|
static |
Pushing the fourth block (trigger 53).
Definition at line 1033 of file crossbone_isle_platform_rooms.c.
Referenced by Event_PushFourthBlock().
|
static |
Refreshes the shared support row after the fifth block moves.
Definition at line 1040 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene3(), CrossboneIslePlatformRooms_MoveFifthBlock(), and Event_UpdateFifthBlockTerrain().
|
static |
Unused callback that moves the fifth block and refreshes its terrain.
Definition at line 1045 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_MoveFifthBlock().
|
static |
Chooses block drawing priorities from the leader height and row.
Definition at line 1069 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_InitializeScene3(), and CrossboneIslePlatformRooms_UpdateBlockPriorities().
| s32 Scene_Initialize | ( | void | ) |
Initializes the key, pursuer or movable-block room.
Sets up whichever scene is being entered and runs its arrival events.
Definition at line 1094 of file crossbone_isle_platform_rooms.c.
|
static |
Unused callback that cycles key icon displays.
Definition at line 1109 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_UpdateItemIcons().
| s32 gStagedActor_DirectionSteps[] |
Pixel step by direction: X in the upper halfword, Z in the lower.
Definition at line 1263 of file crossbone_isle_platform_rooms.c.
| u32 gStagedActor_FootprintKinds[] |
Definition at line 1273 of file crossbone_isle_platform_rooms.c.
| s32 gStagedActor_FootprintBounds[] |
Definition at line 1277 of file crossbone_isle_platform_rooms.c.
| s32 gCrossboneIslePlatformRooms_BaneSquashScript[] |
Definition at line 1286 of file crossbone_isle_platform_rooms.c.
Referenced by Event_BaneSecondEscape().
| s32 gCrossboneIslePlatformRooms_BaneWalkTargets[] |
Definition at line 1314 of file crossbone_isle_platform_rooms.c.
Referenced by Event_BaneKeepsAway().
| struct SceneEntrance gCrossboneIslePlatformRoomsEntrancesOther[] |
Definition at line 1329 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetEntrances().
| struct SceneEntrance gCrossboneIslePlatformRoomsEntrances1[] |
Definition at line 1334 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetEntrances().
| struct SceneEntrance gCrossboneIslePlatformRoomsEntrances2[] |
Definition at line 1340 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetEntrances().
| struct SceneEntrance gCrossboneIslePlatformRoomsEntrances3[] |
Definition at line 1346 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetEntrances().
| u32 gCrossboneIslePlatformRoomsExits[] |
Definition at line 1352 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetExits().
| struct ScenePlacement gCrossboneIslePlatformRoomsPlacementsOther[] |
Definition at line 1365 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetPlacements().
| struct ScenePlacement gCrossboneIslePlatformRoomsPlacements1[] |
Definition at line 1369 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetPlacements().
| struct ScenePlacement gCrossboneIslePlatformRoomsPlacements2[] |
Definition at line 1383 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetPlacements().
| struct ScenePlacement gCrossboneIslePlatformRoomsPlacements3[] |
Definition at line 1397 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetPlacements().
| struct SceneEvent gCrossboneIslePlatformRoomsEventsOther[] |
Definition at line 1418 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetEvents().
| struct SceneEvent gCrossboneIslePlatformRoomsEvents1[] |
Definition at line 1422 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetEvents().
| struct SceneEvent gCrossboneIslePlatformRoomsEvents2[] |
Definition at line 1446 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetEvents().
| struct SceneEvent gCrossboneIslePlatformRoomsEvents3[] |
Definition at line 1471 of file crossbone_isle_platform_rooms.c.
Referenced by Scene_GetEvents().
| u32 gCrossboneIslePlatformRooms_SlotColumns[] |
Definition at line 1544 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_TrackPursuerColumn().
| s32 gCrossboneIslePlatformRooms_IconTimer = 0 |
Definition at line 1550 of file crossbone_isle_platform_rooms.c.
Referenced by CrossboneIslePlatformRooms_UpdateItemIcons().