Inside Tret, the great tree: cracked floors that give way under the leader on the second step, and Tret's face, which attacks the party. More...
Go to the source code of this file.
Macros | |
| #define | SPEAKER(actor) |
| The speaker of a message; every speaker in this scene has SPEAKER_WINDOW_BELOW. | |
| #define | FLOOR_FALL_SPIN_FRAMES 30 |
| #define | SWIRL_SPARK_LAST_FRAME 79 |
| #define | SWIRL_SPARK_SHRINK_LAST_FRAME 39 |
| #define | TRET_TINT_COLOR_COUNT 63 |
| #define | TRET_TINT_CHANNEL_MAX 31 |
| #define | TRET_TINT_END 99 |
Enumerations | |
| enum | { ACTOR_TRET = ACTOR_FIRST_PLACED , ACTOR_TRET_SPEAKER , SPRITE_TRET_FACE = 0x37 } |
| Tret's face, the first actor placed after the party, and a second Tret actor placed at the same spot. More... | |
Functions | |
| static void | TretPalette_SaveSceneColors (void) |
| Saves background palettes 0 to 13 as the base for Tret's scene tint. | |
| static void | TretPalette_UpdateSceneTint (void) |
| Tints background colours 16 to 78 every thirty-two frames, leaving palette 4's last colour alone. | |
| static void | TretTreeInteriors_PlayGesture (s32 gesture) |
| Plays a Tret animation sequence with its original pauses. | |
| static void | TretTreeInteriors_SpawnSwirlSparks (void) |
| Emits five shrinking waves of fading sparks from the saved origin. | |
| static void | TretTreeInteriors_ApplyFlaggedMapPatches (void) |
| Restores each enabled single-cell patch whose puzzle flag is set. | |
| static void | TretTreeInteriors_RunLandingDustScene (void) |
| Drops the leader into the room with a ring of landing particles. | |
| const struct SceneEntrance * | Scene_GetEntrances (void) |
| Returns the interior entrance and landing positions. | |
| const struct SceneRegion * | Scene_GetRegions (void) |
| Returns the upper exit regions for the tree interior. | |
| const u32 * | Scene_GetExits (void) |
| Both scenes share one exit table. | |
| const struct ScenePlacement * | Scene_GetPlacements (void) |
| Returns the staged party and Tret actors. | |
| static void | TretTreeInteriors_StepOnCrackedFloor (s32 floorFlag, s32 sourceColumn, s32 sourceRow, s32 entrance) |
| Stepping on a cracked floor tile: the first step cracks it further and sets its temporary flag; the next step breaks it, and the leader spins and falls through, to land at the given entrance. | |
| static void | Event_FloorGivesWayToUpperMiddleNorthwest (void) |
| static void | Event_FloorGivesWayToUpperMiddleNortheast (void) |
| static void | Event_FloorGivesWayToUpperMiddleWestUpper (void) |
| static void | Event_FloorGivesWayToUpperMiddleWestLower (void) |
| static void | Event_FloorGivesWayToUpperMiddleSouthwestUpper (void) |
| static void | Event_FloorGivesWayToUpperMiddleSouthUpper (void) |
| static void | Event_FloorGivesWayToUpperMiddleSouthwestLower (void) |
| static void | Event_FloorGivesWayToUpperMiddleSouthLower (void) |
| static void | Event_FloorGivesWayToUpperMiddleSoutheastLower (void) |
| static void | Event_FloorGivesWayToUpperRightNorthwest (void) |
| static void | Event_FloorGivesWayToUpperRightNortheast (void) |
| static void | Event_FloorGivesWayToLowerMiddleCenter (void) |
| static void | Event_FloorGivesWayToLowerMiddleNorthwest (void) |
| static void | Event_FloorGivesWayToLowerMiddleNorth (void) |
| static void | Event_FloorGivesWayToLowerMiddleNortheast (void) |
| static void | Event_FloorGivesWayToLowerMiddleWestA (void) |
| static void | Event_FloorGivesWayToLowerMiddleEast (void) |
| static void | Event_FloorGivesWayToLowerMiddleWestB (void) |
| A second cracked floor over the same lower middle west landing. | |
| static void | Event_FloorGivesWayToLowerMiddleSouthwest (void) |
| static void | Event_FloorGivesWayToLowerMiddleSouth (void) |
| static void | Event_FloorGivesWayToLowerMiddleSoutheast (void) |
| static void | Event_ResetFloorLatchWhenClear (void) |
| Walking off a cracked floor tile lets the next step on it count again. | |
| const struct SceneEvent * | Scene_GetEvents (void) |
| Returns the floor, story, Reveal and search event bindings. | |
| static void | Event_FightTret (void) |
| Walking up to Tret (touch trigger 40, until FLAG_TRET_DEFEATED): he roars, the party gathers in front of him, and he scorns them before the battle with him starts. | |
| static void | TretTreeInteriors_PlayPostBattleConversation (void) |
| After the battle: a passage opens beside Tret, who comes to, thanks the party and says good-bye. | |
| static void | TretTreeInteriors_ApplyPostBattleState (s32 playRecoveryScene) |
| Restores the post-battle map and optionally plays its conversation. | |
| s32 | TretTreeInteriors_EnterRoom (void) |
| Restores the room, tint and entry fall before continuing its story event. | |
| static void | TretTreeInteriors_UpdateSwirlSpark (union FieldObject *fieldObject) |
| Moves a fading spark outward from its saved origin, then releases it. | |
| static void | Event_CastReveal (void) |
| Stops the scene tint while Reveal is active. | |
Variables | |
| static struct FieldPosition | sSparkOrigin |
| static s32 | sSparkFrame |
| static s16 * | sLastFloorEntrance |
| s32 | gEffectScript0 [] |
| s32 | gEffectScript1 [] |
| s32 | gEffectScript2 [] |
| s16 | gTretTreeInteriors_MapPatches [] |
| The cracked floors redrawn when the room is restored: floor flag, whether it is redrawn (not the four that start cracked), source cell x/y, destination cell x/y. | |
| const s32 * | gEffectScripts [] |
| s32 | gTretTreeInteriors_TableActions0 [] |
| s32 | gTretTreeInteriors_TableActions1 [] |
| s32 | gTretTreeInteriors_TableActions2 [] |
| s32 | gTretTreeInteriors_TableActions3 [] |
| s32 | gTretTreeInteriors_ActionTable1 [] |
| s32 | gTretTreeInteriors_ActionTable2 [] |
| u32 | gTretTreeInteriors_TintSteps [] |
| struct SceneEntrance | gTretTreeInteriorsEntrances [] |
| struct SceneRegion | gTretTreeInteriorsRegions [] |
| u32 | gTretTreeInteriorsExits [] |
| struct ScenePlacement | gTretTreeInteriorsPlacements [] |
| struct SceneEvent | gTretTreeInteriorsEvents [] |
| s32 | gTretTreeInteriors_TintIndex = 0 |
Inside Tret, the great tree: cracked floors that give way under the leader on the second step, and Tret's face, which attacks the party.
Definition in file tret_tree_interiors.c.
| #define SPEAKER | ( | actor | ) |
The speaker of a message; every speaker in this scene has SPEAKER_WINDOW_BELOW.
Definition at line 57 of file tret_tree_interiors.c.
| #define FLOOR_FALL_SPIN_FRAMES 30 |
Definition at line 63 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_StepOnCrackedFloor().
| #define SWIRL_SPARK_LAST_FRAME 79 |
Definition at line 64 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_UpdateSwirlSpark().
| #define SWIRL_SPARK_SHRINK_LAST_FRAME 39 |
Definition at line 65 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_UpdateSwirlSpark().
| #define TRET_TINT_COLOR_COUNT 63 |
Definition at line 66 of file tret_tree_interiors.c.
Referenced by TretPalette_UpdateSceneTint().
| #define TRET_TINT_CHANNEL_MAX 31 |
Definition at line 67 of file tret_tree_interiors.c.
Referenced by TretPalette_UpdateSceneTint().
| #define TRET_TINT_END 99 |
Definition at line 68 of file tret_tree_interiors.c.
Referenced by TretPalette_UpdateSceneTint().
| anonymous enum |
Tret's face, the first actor placed after the party, and a second Tret actor placed at the same spot.
Both speak Tret's lines: the face as he attacks, the second after the battle.
| Enumerator | |
|---|---|
| ACTOR_TRET | |
| ACTOR_TRET_SPEAKER | |
| SPRITE_TRET_FACE | |
Definition at line 49 of file tret_tree_interiors.c.
|
static |
Saves background palettes 0 to 13 as the base for Tret's scene tint.
Definition at line 654 of file tret_tree_interiors.c.
Referenced by TretPalette_SaveSceneColors(), and TretTreeInteriors_EnterRoom().
|
static |
Tints background colours 16 to 78 every thirty-two frames, leaving palette 4's last colour alone.
Each later palette receives a weaker tint.
Definition at line 661 of file tret_tree_interiors.c.
Referenced by Event_CastReveal(), TretPalette_UpdateSceneTint(), TretTreeInteriors_EnterRoom(), and TretTreeInteriors_PlayPostBattleConversation().
|
static |
Plays a Tret animation sequence with its original pauses.
Definition at line 730 of file tret_tree_interiors.c.
Referenced by Event_FightTret(), TretTreeInteriors_EnterRoom(), TretTreeInteriors_PlayGesture(), and TretTreeInteriors_PlayPostBattleConversation().
|
static |
Emits five shrinking waves of fading sparks from the saved origin.
Definition at line 834 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_PlayPostBattleConversation(), and TretTreeInteriors_SpawnSwirlSparks().
|
static |
Restores each enabled single-cell patch whose puzzle flag is set.
Definition at line 892 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_ApplyFlaggedMapPatches(), and TretTreeInteriors_EnterRoom().
|
static |
Drops the leader into the room with a ring of landing particles.
Definition at line 914 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_EnterRoom(), and TretTreeInteriors_RunLandingDustScene().
| const struct SceneEntrance * Scene_GetEntrances | ( | void | ) |
Returns the interior entrance and landing positions.
Definition at line 89 of file tret_tree_interiors.c.
| const struct SceneRegion * Scene_GetRegions | ( | void | ) |
Returns the upper exit regions for the tree interior.
Definition at line 94 of file tret_tree_interiors.c.
| const u32 * Scene_GetExits | ( | void | ) |
Both scenes share one exit table.
Definition at line 98 of file tret_tree_interiors.c.
| const struct ScenePlacement * Scene_GetPlacements | ( | void | ) |
Returns the staged party and Tret actors.
Definition at line 101 of file tret_tree_interiors.c.
|
static |
Stepping on a cracked floor tile: the first step cracks it further and sets its temporary flag; the next step breaks it, and the leader spins and falls through, to land at the given entrance.
Definition at line 108 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleCenter(), Event_FloorGivesWayToLowerMiddleEast(), Event_FloorGivesWayToLowerMiddleNorth(), Event_FloorGivesWayToLowerMiddleNortheast(), Event_FloorGivesWayToLowerMiddleNorthwest(), Event_FloorGivesWayToLowerMiddleSouth(), Event_FloorGivesWayToLowerMiddleSoutheast(), Event_FloorGivesWayToLowerMiddleSouthwest(), Event_FloorGivesWayToLowerMiddleWestA(), Event_FloorGivesWayToLowerMiddleWestB(), Event_FloorGivesWayToUpperMiddleNortheast(), Event_FloorGivesWayToUpperMiddleNorthwest(), Event_FloorGivesWayToUpperMiddleSoutheastLower(), Event_FloorGivesWayToUpperMiddleSouthLower(), Event_FloorGivesWayToUpperMiddleSouthUpper(), Event_FloorGivesWayToUpperMiddleSouthwestLower(), Event_FloorGivesWayToUpperMiddleSouthwestUpper(), Event_FloorGivesWayToUpperMiddleWestLower(), Event_FloorGivesWayToUpperMiddleWestUpper(), Event_FloorGivesWayToUpperRightNortheast(), Event_FloorGivesWayToUpperRightNorthwest(), and TretTreeInteriors_StepOnCrackedFloor().
|
static |
Definition at line 158 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperMiddleNorthwest().
|
static |
Definition at line 162 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperMiddleNortheast().
|
static |
Definition at line 166 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperMiddleWestUpper().
|
static |
Definition at line 170 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperMiddleWestLower().
|
static |
Definition at line 174 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperMiddleSouthwestUpper().
|
static |
Definition at line 178 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperMiddleSouthUpper().
|
static |
Definition at line 182 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperMiddleSouthwestLower().
|
static |
Definition at line 186 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperMiddleSouthLower().
|
static |
Definition at line 190 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperMiddleSoutheastLower().
|
static |
Definition at line 194 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperRightNorthwest().
|
static |
Definition at line 198 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToUpperRightNortheast().
|
static |
Definition at line 202 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleCenter().
|
static |
Definition at line 206 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleNorthwest().
|
static |
Definition at line 210 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleNorth().
|
static |
Definition at line 214 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleNortheast().
|
static |
Definition at line 218 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleWestA().
|
static |
Definition at line 222 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleEast().
|
static |
A second cracked floor over the same lower middle west landing.
Definition at line 227 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleWestB().
|
static |
Definition at line 231 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleSouthwest().
|
static |
Definition at line 235 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleSouth().
|
static |
Definition at line 239 of file tret_tree_interiors.c.
Referenced by Event_FloorGivesWayToLowerMiddleSoutheast().
|
static |
Walking off a cracked floor tile lets the next step on it count again.
Definition at line 244 of file tret_tree_interiors.c.
Referenced by Event_ResetFloorLatchWhenClear().
| const struct SceneEvent * Scene_GetEvents | ( | void | ) |
Returns the floor, story, Reveal and search event bindings.
Definition at line 250 of file tret_tree_interiors.c.
|
static |
Walking up to Tret (touch trigger 40, until FLAG_TRET_DEFEATED): he roars, the party gathers in front of him, and he scorns them before the battle with him starts.
"Hm... HROOOM!!!" and "You hoped to find my kindly self?" The battle returns to entrance 19.
Definition at line 258 of file tret_tree_interiors.c.
Referenced by Event_FightTret().
|
static |
After the battle: a passage opens beside Tret, who comes to, thanks the party and says good-bye.
"Oh... Mmmmm..." Garet and Ivan stop him and he asks whether they need something; answering no earns the leader a scolding. Tret learns he turned the people of Kolima into trees, tries to free them in a swirl of sparks but cannot, and the party resolve to heal him. Sets FLAG_TRET_DEFEATED.
Definition at line 342 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_ApplyPostBattleState(), and TretTreeInteriors_PlayPostBattleConversation().
|
static |
Restores the post-battle map and optionally plays its conversation.
Definition at line 548 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_ApplyPostBattleState(), and TretTreeInteriors_EnterRoom().
| s32 TretTreeInteriors_EnterRoom | ( | void | ) |
Restores the room, tint and entry fall before continuing its story event.
Definition at line 571 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_EnterRoom().
|
static |
Moves a fading spark outward from its saved origin, then releases it.
Definition at line 803 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_SpawnSwirlSparks(), and TretTreeInteriors_UpdateSwirlSpark().
|
static |
Stops the scene tint while Reveal is active.
Definition at line 907 of file tret_tree_interiors.c.
|
static |
Definition at line 77 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_PlayPostBattleConversation(), and TretTreeInteriors_SpawnSwirlSparks().
|
static |
Definition at line 78 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_PlayPostBattleConversation(), and TretTreeInteriors_SpawnSwirlSparks().
|
static |
Definition at line 79 of file tret_tree_interiors.c.
Referenced by Event_ResetFloorLatchWhenClear(), TretTreeInteriors_EnterRoom(), and TretTreeInteriors_StepOnCrackedFloor().
| s32 gEffectScript0[] |
Definition at line 972 of file tret_tree_interiors.c.
| s32 gEffectScript1[] |
| s32 gEffectScript2[] |
| s16 gTretTreeInteriors_MapPatches[] |
The cracked floors redrawn when the room is restored: floor flag, whether it is redrawn (not the four that start cracked), source cell x/y, destination cell x/y.
Definition at line 991 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_ApplyFlaggedMapPatches().
| const s32* gEffectScripts[] |
Definition at line 1016 of file tret_tree_interiors.c.
| s32 gTretTreeInteriors_TableActions0[] |
Definition at line 1022 of file tret_tree_interiors.c.
Referenced by Event_FightTret().
| s32 gTretTreeInteriors_TableActions1[] |
Definition at line 1030 of file tret_tree_interiors.c.
Referenced by Event_FightTret().
| s32 gTretTreeInteriors_TableActions2[] |
Definition at line 1038 of file tret_tree_interiors.c.
Referenced by Event_FightTret().
| s32 gTretTreeInteriors_TableActions3[] |
Definition at line 1046 of file tret_tree_interiors.c.
Referenced by Event_FightTret().
| s32 gTretTreeInteriors_ActionTable1[] |
Definition at line 1054 of file tret_tree_interiors.c.
Referenced by TretTreeInteriors_PlayPostBattleConversation().
| s32 gTretTreeInteriors_ActionTable2[] |
| u32 gTretTreeInteriors_TintSteps[] |
Definition at line 1077 of file tret_tree_interiors.c.
Referenced by TretPalette_UpdateSceneTint().
| struct SceneEntrance gTretTreeInteriorsEntrances[] |
Definition at line 1135 of file tret_tree_interiors.c.
Referenced by Scene_GetEntrances().
| struct SceneRegion gTretTreeInteriorsRegions[] |
Definition at line 1181 of file tret_tree_interiors.c.
Referenced by Scene_GetRegions().
| u32 gTretTreeInteriorsExits[] |
Definition at line 1192 of file tret_tree_interiors.c.
Referenced by Scene_GetExits().
| struct ScenePlacement gTretTreeInteriorsPlacements[] |
Definition at line 1212 of file tret_tree_interiors.c.
Referenced by Scene_GetPlacements().
| struct SceneEvent gTretTreeInteriorsEvents[] |
Definition at line 1227 of file tret_tree_interiors.c.
Referenced by Scene_GetEvents().
| s32 gTretTreeInteriors_TintIndex = 0 |
Definition at line 1333 of file tret_tree_interiors.c.
Referenced by TretPalette_UpdateSceneTint().