Alchemy
Loading...
Searching...
No Matches

sol_sanctum_luna_sol_rooms.c File Reference

Sol Sanctum's hall of the Luna and Sol rooms: the rooms take on the tint of the seals' lights, and Kraden studies the symbols on the floor. More...

Go to the source code of this file.

Data Structures

struct  EventGlobals
 The work slot pointers from the event work (slot 27) onward, reaching the palette buffer work in slot 32. More...

Macros

#define FLAG_SOL_SANCTUM_FLOATING_EYE_SEEN   0x309

Functions

static void SolSanctumLunaSolRooms_IntroduceSolAndLunaRooms (void)
 Kraden finds the room of Luna beside the room of Sol, and asks Isaac to look farther up the passage.
static void SolSanctumLunaSolRooms_DiscussFloorSymbolChangingToLuna (void)
 Kraden notices that the symbol on the floor has changed from Sol to Luna.
static s32 SolSanctumLunaSolRooms_AreAllStatueLightsLit (void)
 Returns 1 when all four seals are open.
static void SolSanctumLunaSolRooms_ShowMessageAndWait (s32 speaker, s32 waitFrames)
 Advances the active dialogue and pauses for the requested frames.
static void SolSanctumLunaSolRooms_ShowFloatingEye (void)
 Entering after the eruption the first time: in a white flash a floating eye shows itself to Isaac and Garet, and the hall shakes.
void InitializeSceneRecordBuffer (void)
 STATIC_ASSERT (offsetof(struct EventGlobals, paletteBufferWork)==0x14)
const struct SceneEntrance * SolSanctumLunaSolRooms_GetEntrances (void)
const struct SceneRegion * SolSanctumLunaSolRooms_GetRegions (void)
const u32 * SolSanctumLunaSolRooms_GetExits (void)
const struct ScenePlacement * SolSanctumLunaSolRooms_GetPlacements (void)
 Returns the eight statues (actors 8 to 15), Kraden (actor 16), Jenna and Garet, all of them always placed.
const struct SceneEvent * SolSanctumLunaSolRooms_GetEvents (void)
 Returns the floor's cell codes that tint the rooms, Kraden's talk and cutscenes, the floor symbol and the Herb's chest.
static void Event_UpdateRoomTint (void)
 Crossing cell code 13: the room fades to the tint that matches the seals' lights.
static void Event_RestorePlainTint (void)
 Crossing cell code 15: the room fades back to its plain colours.
static void Event_UpdateRoomTintInverse (void)
 Crossing cell code 14: as code 13, with the tints the other way round.
static void Event_ApplySecondRoomTint (void)
 Crossing cell code 12: the room fades to its second tint.
static void Event_ClearBackdropColor (void)
 Crossing cell code 19: the backdrop turns black.
static void SolSanctumLunaSolRooms_DrawStatueLightTiles (s32 firstFlag, s32 sourceRow)
 Draws the light of each open seal, from four consecutive flags, with the tiles of the given source row.
static void SolSanctumLunaSolRooms_DrawCurrentStatueLights (void)
 Draws the active lights from the current statue flags.
static void SolSanctumLunaSolRooms_DrawSavedStatueLights (void)
 Draws the active lights from the saved statue flags.
static void SolSanctumLunaSolRooms_DrawAlternateCurrentStatueLights (void)
 Draws the current lights using their alternate tile rows.
static void SolSanctumLunaSolRooms_DrawAlternateSavedStatueLights (void)
 Draws the saved lights using their alternate tile rows.
static void SolSanctumLunaSolRooms_FlashCurrentStatueLights (s32 frames)
 Flashes both tile sets of the current statue lights at this pace.
static void SolSanctumLunaSolRooms_FlashSavedStatueLights (s32 frames)
 Flashes both tile sets of the saved statue lights at this pace.
static void Event_KradenFindsHall (void)
 Walking into the hall the first time: Kraden studies the symbols and asks the party to keep exploring.
static void Event_KradenStopsPartyLeaving (void)
 Heading out of the hall before the passage is found: Kraden hurries over.
static void SolSanctumLunaSolRooms_UpdateFirstStatueLight (void)
 Animates the first falling light and manages the shared shake pulse.
static void SolSanctumLunaSolRooms_UpdateSecondStatueLight (void)
 Animates the second falling light with its own random restart delay, as the first.
static void SolSanctumLunaSolRooms_UpdateThirdStatueLight (void)
 Animates the third falling light with its own random restart delay, as the first.
static void SolSanctumLunaSolRooms_UpdateFourthStatueLight (void)
 Animates the fourth falling light with its own random restart delay, as the first.
static void SolSanctumLunaSolRooms_PrepareStatueTransition (void)
 Opens on Kraden in the room of Luna with its first tint, as a flash crosses it.
static void SolSanctumLunaSolRooms_SpringStatueTrap (void)
 The seals' lights flash ever faster around Kraden, who hurries back to Isaac.
static void SolSanctumLunaSolRooms_RunStatueLightSequence (void)
 The seals' lights flash and lights fall through the room of Luna while Kraden calls on Isaac to stop.
static void SolSanctumLunaSolRooms_AnimateSavedStatueLights (void)
 The lights of the seals Isaac has opened since flash ever faster in the room of Luna.
static void Event_KradenSeesLunaPictureChange (void)
 Walking up to Kraden once all four seals are open: the picture of Luna has changed to Sol.
static void Event_RiseToElementalStarRoom (void)
 Searching the floor symbol after Kraden has seen it change: the floor opens, and Isaac then Kraden rise into the Elemental Star room.
s32 SolSanctumLunaSolRooms_Initialize (void)
 Restores puzzle tiles and plays the cutscene this entrance calls for.
static void Event_TalkToKraden (void)
 Talking to Kraden: his answer depends on whether Isaac agreed to search.

Variables

struct SceneEntrance gSolSanctumLunaSolRoomsEntrances []
u32 gSolSanctumLunaSolRoomsExits []
struct ScenePlacement gSolSanctumLunaSolRoomsPlacements []
struct SceneEvent gSolSanctumLunaSolRoomsEvents []

Detailed Description

Sol Sanctum's hall of the Luna and Sol rooms: the rooms take on the tint of the seals' lights, and Kraden studies the symbols on the floor.

Definition in file sol_sanctum_luna_sol_rooms.c.

Macro Definition Documentation

◆ FLAG_SOL_SANCTUM_FLOATING_EYE_SEEN

#define FLAG_SOL_SANCTUM_FLOATING_EYE_SEEN   0x309

Definition at line 36 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_Initialize().

Function Documentation

◆ SolSanctumLunaSolRooms_IntroduceSolAndLunaRooms()

void SolSanctumLunaSolRooms_IntroduceSolAndLunaRooms ( void )
static

Kraden finds the room of Luna beside the room of Sol, and asks Isaac to look farther up the passage.

Called by Event_UpdateRoomTint and Event_UpdateRoomTintInverse until FLAG_SOL_SANCTUM_LUNA_SOL_ROOMS_SEEN is set, which it sets; Isaac agreeing sets FLAG_SOL_SANCTUM_ISAAC_SEARCHING_FOR_KRADEN. Leaves Kraden standing by the northern wall.

Definition at line 447 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_UpdateRoomTint(), Event_UpdateRoomTintInverse(), and SolSanctumLunaSolRooms_IntroduceSolAndLunaRooms().

◆ SolSanctumLunaSolRooms_DiscussFloorSymbolChangingToLuna()

void SolSanctumLunaSolRooms_DiscussFloorSymbolChangingToLuna ( void )
static

Kraden notices that the symbol on the floor has changed from Sol to Luna.

Called by Event_UpdateRoomTint once all four seals are open, until FLAG_SOL_SANCTUM_FLOOR_SYMBOL_SEEN is set, which it sets. Leaves Kraden off the map.

Definition at line 1068 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_UpdateRoomTint(), and SolSanctumLunaSolRooms_DiscussFloorSymbolChangingToLuna().

◆ SolSanctumLunaSolRooms_AreAllStatueLightsLit()

s32 SolSanctumLunaSolRooms_AreAllStatueLightsLit ( void )
static

◆ SolSanctumLunaSolRooms_ShowMessageAndWait()

◆ SolSanctumLunaSolRooms_ShowFloatingEye()

void SolSanctumLunaSolRooms_ShowFloatingEye ( void )
static

Entering after the eruption the first time: in a white flash a floating eye shows itself to Isaac and Garet, and the hall shakes.

Called by SolSanctumLunaSolRooms_Initialize at entrance 8 until FLAG_SOL_SANCTUM_FLOATING_EYE_SEEN is set; the caller sets it. Sets FLAG_SCENE_TEMP_01 and clears _00 and _02.

Definition at line 1428 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_Initialize(), and SolSanctumLunaSolRooms_ShowFloatingEye().

◆ InitializeSceneRecordBuffer()

void InitializeSceneRecordBuffer ( void )

◆ STATIC_ASSERT()

STATIC_ASSERT ( offsetof(struct EventGlobals, paletteBufferWork) = =0x14)

◆ SolSanctumLunaSolRooms_GetEntrances()

const struct SceneEntrance * SolSanctumLunaSolRooms_GetEntrances ( void )

Definition at line 65 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_GetEntrances().

◆ SolSanctumLunaSolRooms_GetRegions()

const struct SceneRegion * SolSanctumLunaSolRooms_GetRegions ( void )

Definition at line 69 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_GetRegions().

◆ SolSanctumLunaSolRooms_GetExits()

const u32 * SolSanctumLunaSolRooms_GetExits ( void )

Definition at line 71 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_GetExits().

◆ SolSanctumLunaSolRooms_GetPlacements()

const struct ScenePlacement * SolSanctumLunaSolRooms_GetPlacements ( void )

Returns the eight statues (actors 8 to 15), Kraden (actor 16), Jenna and Garet, all of them always placed.

Definition at line 77 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_GetPlacements().

◆ SolSanctumLunaSolRooms_GetEvents()

const struct SceneEvent * SolSanctumLunaSolRooms_GetEvents ( void )

Returns the floor's cell codes that tint the rooms, Kraden's talk and cutscenes, the floor symbol and the Herb's chest.

Definition at line 83 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_GetEvents().

◆ Event_UpdateRoomTint()

void Event_UpdateRoomTint ( void )
static

Crossing cell code 13: the room fades to the tint that matches the seals' lights.

The first time, Kraden sees the Luna and Sol rooms; with all four seals open, he also sees the floor symbol change. Also called by Event_KradenFindsHall after the eruption. Sets one of FLAG_SCENE_TEMP_00 and _01 and clears the other two tint flags; Kraden's cutscenes set FLAG_SOL_SANCTUM_LUNA_SOL_ROOMS_SEEN and FLAG_SOL_SANCTUM_FLOOR_SYMBOL_SEEN.

Definition at line 93 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_KradenFindsHall(), and Event_UpdateRoomTint().

◆ Event_RestorePlainTint()

void Event_RestorePlainTint ( void )
static

Crossing cell code 15: the room fades back to its plain colours.

Also called by Event_KradenStopsPartyLeaving after the eruption. Sets FLAG_SCENE_TEMP_00 and clears _01 and _02.

Definition at line 132 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_KradenStopsPartyLeaving(), and Event_RestorePlainTint().

◆ Event_UpdateRoomTintInverse()

void Event_UpdateRoomTintInverse ( void )
static

Crossing cell code 14: as code 13, with the tints the other way round.

Sets one of FLAG_SCENE_TEMP_00 and _01 and clears the other two; the first time, Kraden sees the Luna and Sol rooms.

Definition at line 147 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_UpdateRoomTintInverse().

◆ Event_ApplySecondRoomTint()

void Event_ApplySecondRoomTint ( void )
static

Crossing cell code 12: the room fades to its second tint.

Sets FLAG_SCENE_TEMP_02 and clears _00 and _01.

Definition at line 179 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_ApplySecondRoomTint().

◆ Event_ClearBackdropColor()

void Event_ClearBackdropColor ( void )
static

Crossing cell code 19: the backdrop turns black.

Definition at line 190 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_ClearBackdropColor().

◆ SolSanctumLunaSolRooms_DrawStatueLightTiles()

void SolSanctumLunaSolRooms_DrawStatueLightTiles ( s32 firstFlag,
s32 sourceRow )
inlinestatic

◆ SolSanctumLunaSolRooms_DrawCurrentStatueLights()

void SolSanctumLunaSolRooms_DrawCurrentStatueLights ( void )
static

◆ SolSanctumLunaSolRooms_DrawSavedStatueLights()

void SolSanctumLunaSolRooms_DrawSavedStatueLights ( void )
static

◆ SolSanctumLunaSolRooms_DrawAlternateCurrentStatueLights()

void SolSanctumLunaSolRooms_DrawAlternateCurrentStatueLights ( void )
static

Draws the current lights using their alternate tile rows.

Definition at line 223 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_DrawAlternateCurrentStatueLights(), and SolSanctumLunaSolRooms_FlashCurrentStatueLights().

◆ SolSanctumLunaSolRooms_DrawAlternateSavedStatueLights()

void SolSanctumLunaSolRooms_DrawAlternateSavedStatueLights ( void )
static

Draws the saved lights using their alternate tile rows.

Definition at line 229 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_DrawAlternateSavedStatueLights(), and SolSanctumLunaSolRooms_FlashSavedStatueLights().

◆ SolSanctumLunaSolRooms_FlashCurrentStatueLights()

void SolSanctumLunaSolRooms_FlashCurrentStatueLights ( s32 frames)
inlinestatic

Flashes both tile sets of the current statue lights at this pace.

Definition at line 235 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_FlashCurrentStatueLights(), SolSanctumLunaSolRooms_RunStatueLightSequence(), and SolSanctumLunaSolRooms_SpringStatueTrap().

◆ SolSanctumLunaSolRooms_FlashSavedStatueLights()

void SolSanctumLunaSolRooms_FlashSavedStatueLights ( s32 frames)
inlinestatic

Flashes both tile sets of the saved statue lights at this pace.

Definition at line 245 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_AnimateSavedStatueLights(), and SolSanctumLunaSolRooms_FlashSavedStatueLights().

◆ Event_KradenFindsHall()

void Event_KradenFindsHall ( void )
static

Walking into the hall the first time: Kraden studies the symbols and asks the party to keep exploring.

"This is it! We've found it!" Reached by stepping on cell code 11; plays until FLAG_SOL_SANCTUM_FOUND is set, and after the eruption tints the room as cell code 13 does. Sets FLAG_SOL_SANCTUM_FOUND and FLAG_RETREAT_BLOCKED.

Definition at line 259 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_KradenFindsHall().

◆ Event_KradenStopsPartyLeaving()

void Event_KradenStopsPartyLeaving ( void )
static

Heading out of the hall before the passage is found: Kraden hurries over.

"That way leads out of the sanctum." Reached by stepping on cell code 9 once FLAG_SOL_SANCTUM_FOUND is set and until FLAG_SOL_SANCTUM_STAR_ROOM_PASSAGE_OPEN is; after the eruption the room only fades back to its plain colours (Event_RestorePlainTint).

Definition at line 523 of file sol_sanctum_luna_sol_rooms.c.

◆ SolSanctumLunaSolRooms_UpdateFirstStatueLight()

void SolSanctumLunaSolRooms_UpdateFirstStatueLight ( void )
static

Animates the first falling light and manages the shared shake pulse.

Run each frame as a callback that SolSanctumLunaSolRooms_RunStatueLightSequence adds and removes.

Definition at line 588 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_RunStatueLightSequence(), and SolSanctumLunaSolRooms_UpdateFirstStatueLight().

◆ SolSanctumLunaSolRooms_UpdateSecondStatueLight()

void SolSanctumLunaSolRooms_UpdateSecondStatueLight ( void )
static

Animates the second falling light with its own random restart delay, as the first.

Definition at line 634 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_RunStatueLightSequence(), and SolSanctumLunaSolRooms_UpdateSecondStatueLight().

◆ SolSanctumLunaSolRooms_UpdateThirdStatueLight()

void SolSanctumLunaSolRooms_UpdateThirdStatueLight ( void )
static

Animates the third falling light with its own random restart delay, as the first.

Definition at line 672 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_RunStatueLightSequence(), and SolSanctumLunaSolRooms_UpdateThirdStatueLight().

◆ SolSanctumLunaSolRooms_UpdateFourthStatueLight()

void SolSanctumLunaSolRooms_UpdateFourthStatueLight ( void )
static

Animates the fourth falling light with its own random restart delay, as the first.

Definition at line 710 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_RunStatueLightSequence(), and SolSanctumLunaSolRooms_UpdateFourthStatueLight().

◆ SolSanctumLunaSolRooms_PrepareStatueTransition()

void SolSanctumLunaSolRooms_PrepareStatueTransition ( void )
static

Opens on Kraden in the room of Luna with its first tint, as a flash crosses it.

Shared by the three cutscenes that play on arriving from the statue room. Sets FLAG_SCENE_TEMP_01 and clears _00 and _02.

Definition at line 749 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_AnimateSavedStatueLights(), SolSanctumLunaSolRooms_PrepareStatueTransition(), SolSanctumLunaSolRooms_RunStatueLightSequence(), and SolSanctumLunaSolRooms_SpringStatueTrap().

◆ SolSanctumLunaSolRooms_SpringStatueTrap()

void SolSanctumLunaSolRooms_SpringStatueTrap ( void )
static

The seals' lights flash ever faster around Kraden, who hurries back to Isaac.

"What's happening?" Called by SolSanctumLunaSolRooms_Initialize at entrance 4 until FLAG_SOL_SANCTUM_STATUE_TRAP_SPRUNG is set. Sets FLAG_SOL_SANCTUM_STATUE_TRAP_SPRUNG and takes exit 3, back to the statue room (scene 12, entrance 3).

Definition at line 783 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_Initialize(), and SolSanctumLunaSolRooms_SpringStatueTrap().

◆ SolSanctumLunaSolRooms_RunStatueLightSequence()

void SolSanctumLunaSolRooms_RunStatueLightSequence ( void )
static

The seals' lights flash and lights fall through the room of Luna while Kraden calls on Isaac to stop.

Called by SolSanctumLunaSolRooms_Initialize at entrance 5 until FLAG_SOL_SANCTUM_FALLING_LIGHTS_SEEN is set; the caller then sets it and closes all four seals. Takes exit 4, back to the statue room (scene 12, entrance 4).

Definition at line 838 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_Initialize(), and SolSanctumLunaSolRooms_RunStatueLightSequence().

◆ SolSanctumLunaSolRooms_AnimateSavedStatueLights()

void SolSanctumLunaSolRooms_AnimateSavedStatueLights ( void )
static

The lights of the seals Isaac has opened since flash ever faster in the room of Luna.

"You found it, Isaac." Called by SolSanctumLunaSolRooms_Initialize at entrance 6 once FLAG_SOL_SANCTUM_FALLING_LIGHTS_SEEN is set. Toggles each open seal's FLAG_SOL_SANCTUM_*_LIGHT_SHOWN; Kraden speaks until the caller sets FLAG_SOL_SANCTUM_KRADEN_SAID_YOU_FOUND_IT. Takes exit 5, back to the statue room (scene 12, entrance 5).

Definition at line 916 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_AnimateSavedStatueLights(), and SolSanctumLunaSolRooms_Initialize().

◆ Event_KradenSeesLunaPictureChange()

void Event_KradenSeesLunaPictureChange ( void )
static

Walking up to Kraden once all four seals are open: the picture of Luna has changed to Sol.

"Look, Isaac! The picture of Luna..." Reached by stepping on cell code 8, until FLAG_SOL_SANCTUM_LUNA_PICTURE_CHANGED is set, which it sets.

Definition at line 1002 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_KradenSeesLunaPictureChange().

◆ Event_RiseToElementalStarRoom()

void Event_RiseToElementalStarRoom ( void )
static

Searching the floor symbol after Kraden has seen it change: the floor opens, and Isaac then Kraden rise into the Elemental Star room.

Reached by searching cell code 20; does nothing until FLAG_SOL_SANCTUM_FLOOR_SYMBOL_SEEN is set. Sets FLAG_SOL_SANCTUM_STAR_ROOM_PASSAGE_OPEN the first time and takes exit 7, into the Elemental Star room (scene 17, entrance 10).

Definition at line 1096 of file sol_sanctum_luna_sol_rooms.c.

Referenced by Event_RiseToElementalStarRoom().

◆ SolSanctumLunaSolRooms_Initialize()

s32 SolSanctumLunaSolRooms_Initialize ( void )

Restores puzzle tiles and plays the cutscene this entrance calls for.

Called by Field_RunScene once the actors exist. Blocks Retreat (FLAG_RETREAT_BLOCKED) between finding the hall and opening the passage before the eruption; sets FLAG_SCENE_TEMP_00 on an ordinary entrance; copies each open seal into its FLAG_SOL_SANCTUM_*_LIGHT_SHOWN; plays the trap at entrance 4, the falling lights at entrance 5 (then closing the four seals), the saved lights at entrance 6, and the floating eye at entrance 8 until FLAG_SOL_SANCTUM_FLOATING_EYE_SEEN is set.

Definition at line 1258 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_Initialize().

◆ Event_TalkToKraden()

void Event_TalkToKraden ( void )
static

Talking to Kraden: his answer depends on whether Isaac agreed to search.

"Let me know what you find" once Isaac agreed, otherwise "Just wait over there." Reached by talking to Kraden (actor 16).

Definition at line 1534 of file sol_sanctum_luna_sol_rooms.c.

Variable Documentation

◆ gSolSanctumLunaSolRoomsEntrances

struct SceneEntrance gSolSanctumLunaSolRoomsEntrances[]
Initial value:
= {
{0, CONDITION_ALWAYS, 288, 0, 157, FACING_SOUTH, 0, 0, 0, 752, 496, 0},
{1, CONDITION_ALWAYS, 55, 0, 477, FACING_NORTH, 0, 0, 0, 752, 496, 0},
{2, CONDITION_ALWAYS, 647, 0, 327, FACING_SOUTH, 0, 0, 0, 752, 496, 0},
{3, CONDITION_ALWAYS, 287, 0, 218, FACING_SOUTH, 0, 0, 0, 752, 496, 0},
{4, CONDITION_ALWAYS, 576, 0, 8, FACING_SOUTH, 0, 0, 0, 752, 496, 0},
{5, CONDITION_ALWAYS, 576, 0, 8, FACING_SOUTH, 0, 0, 0, 752, 496, 0},
{6, CONDITION_ALWAYS, 576, 0, 8, FACING_SOUTH, 0, 0, 0, 752, 496, 0},
{7, CONDITION_ALWAYS, 576, 0, 8, FACING_SOUTH, 0, 0, 0, 752, 496, 0},
{8, CONDITION_ALWAYS, 297, 0, 119, FACING_NORTHWEST, 0, 0, 0, 752, 496, 0},
}
@ SCENE_TABLE_END
Definition field_scene.h:43
@ CONDITION_ALWAYS
Definition field_scene.h:44
@ FACING_NORTH
Definition field_scene.h:32
@ FACING_NORTHWEST
Definition field_scene.h:31
@ FACING_SOUTH
Definition field_scene.h:28

Definition at line 1546 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_GetEntrances().

◆ gSolSanctumLunaSolRoomsExits

u32 gSolSanctumLunaSolRoomsExits[]
Initial value:
= {
SCENE_EXITS(11), SCENE_EXIT(1, 16, 16), SCENE_EXIT(2, 12, 1),
SCENE_EXIT(3, 12, 3), SCENE_EXIT(4, 12, 4), SCENE_EXIT(5, 12, 5),
SCENE_EXIT(6, 12, 6), SCENE_EXIT(7, 17, 10), SCENE_EXIT(10, 510, 1),
}
#define SCENE_EXITS(scene)
Definition field_scene.h:72
#define SCENE_EXIT(exit, scene, entrance)
Definition field_scene.h:73
#define SCENE_EXITS_END
Definition field_scene.h:77

Definition at line 1559 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_GetExits().

◆ gSolSanctumLunaSolRoomsPlacements

struct ScenePlacement gSolSanctumLunaSolRoomsPlacements[]
Initial value:
= {
PIXELS(1608), 0, PIXELS(1608), FACING_NORTH, TALK_FACE_PARTY, 0 },
PIXELS(1608), 0, PIXELS(1608), FACING_NORTH, TALK_FACE_PARTY, 0 },
PIXELS(1608), 0, PIXELS(1608), FACING_NORTH, TALK_FACE_PARTY, 0 },
}
#define GARET
Jerald.
#define JENNA
Jasmine.
@ FACING_STEP
Definition field_scene.h:36
@ TALK_FACE_PARTY
@ ACTOR_STAND
@ FACING_SOUTHEAST
Definition field_scene.h:27
#define PIXELS(value)

Definition at line 1567 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_GetPlacements().

◆ gSolSanctumLunaSolRoomsEvents

struct SceneEvent gSolSanctumLunaSolRoomsEvents[]
Initial value:
= {
{0x21, 2, CONDITION_ALWAYS, 2},
}
#define SCENE_EVENTS_END
#define FIND_ITEM(item)
@ EVENT_TOUCH
@ EVENT_EXIT
@ EVENT_TALK
#define EVENT_SCRIPT(script)
#define SEARCH(target)
@ SEARCH_UNNAMED
@ SEARCH_CHEST
#define FLAG_SOL_SANCTUM_HERB_FOUND
Definition flags.h:688
@ ITEM_HERB
Definition item_ids.h:40
static void Event_KradenStopsPartyLeaving(void)
Heading out before the stars are bagged: the party is called back.
static void Event_UpdateRoomTintInverse(void)
Crossing cell code 14: as code 13, with the tints the other way round.
static void Event_RestorePlainTint(void)
Crossing cell code 15: the room fades back to its plain colours.
static void Event_TalkToKraden(void)
Talking to Kraden: his answer depends on whether Isaac agreed to search.
static void Event_KradenSeesLunaPictureChange(void)
Walking up to Kraden once all four seals are open: the picture of Luna has changed to Sol.
static void Event_RiseToElementalStarRoom(void)
Searching the floor symbol after Kraden has seen it change: the floor opens, and Isaac then Kraden ri...
static void Event_KradenFindsHall(void)
Walking into the hall the first time: Kraden studies the symbols and asks the party to keep exploring...
static void Event_ClearBackdropColor(void)
Crossing cell code 19: the backdrop turns black.
static void Event_ApplySecondRoomTint(void)
Crossing cell code 12: the room fades to its second tint.
static void Event_UpdateRoomTint(void)
Crossing cell code 13: the room fades to the tint that matches the seals' lights.

Definition at line 1594 of file sol_sanctum_luna_sol_rooms.c.

Referenced by SolSanctumLunaSolRooms_GetEvents().