Alchemy
Loading...
Searching...
No Matches

sol_sanctum_maze.c

Go to the documentation of this file.
1/// @file
2/// A maze of Sol Sanctum, scene 14: two exits to scene 16 and the chest that
3/// holds the second Small Jewel (item 0xe1).
4
7#include "battle.h"
8#include "debug.h"
9#include "field.h"
10#include "game.h"
11#include "graphics.h"
12#include "menu.h"
13#include "minigame.h"
14#include "sound.h"
15#include "system.h"
16#include "types.h"
17#include "scene.h"
18
19#include "resource_37de_scene.h"
20#include "field_scene.h"
21#include "field_obj.h"
22
23#include "field_event.h"
24#include "flags.h"
25#include "item_ids.h"
26
27const struct SceneEntrance *Scene_GetEntrances(void) {
29}
30
31const struct SceneRegion *Scene_GetRegions(void) { return NULL; }
32
33const u32 *Scene_GetExits(void) { return gSolSanctumMazeExits; }
34
37}
38
39/// The exits, and the Small Jewel's chest.
40const struct SceneEvent *Scene_GetEvents(void) { return gSolSanctumMazeEvents; }
41
43
45 {0, CONDITION_ALWAYS, 120, 0, 100, FACING_SOUTH, 0, -1, -1, -1, -1, 0},
46 {1, CONDITION_ALWAYS, 424, 0, 615, FACING_SOUTH, 0, -1, -1, -1, -1, 0},
47 {2, CONDITION_ALWAYS, 376, 0, 53, FACING_SOUTH, 0, -1, -1, -1, -1, 0},
49};
50
52 SCENE_EXITS(14),
53 SCENE_EXIT(1, 16, 7),
54 SCENE_EXIT(2, 16, 14),
56};
57
60};
61
63 {0x31, 1, CONDITION_ALWAYS, 1},
68};
const struct ScenePlacement * Scene_GetPlacements(void)
const struct SceneEntrance * Scene_GetEntrances(void)
const struct SceneEvent * Scene_GetEvents(void)
const u32 * Scene_GetExits(void)
Both scenes share one exit table.
const struct SceneRegion * Scene_GetRegions(void)
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,...
Field objects and actors, and the scene transition styles.
The scene table formats: entrances, exits, placements and events, and the macros that write them.
#define SCENE_EVENTS_END
#define FIND_ITEM(item)
@ EVENT_EXIT
#define SCENE_EXITS(scene)
Definition field_scene.h:72
#define SCENE_EXIT(exit, scene, entrance)
Definition field_scene.h:73
@ SCENE_TABLE_END
Definition field_scene.h:43
@ CONDITION_ALWAYS
Definition field_scene.h:44
#define SEARCH(target)
#define SCENE_EXITS_END
Definition field_scene.h:77
@ FACING_SOUTH
Definition field_scene.h:28
@ SEARCH_CHEST
Game flags, named where their meaning is shown.
#define FLAG_SOL_SANCTUM_SECOND_SMALL_JEWEL_FOUND
Definition flags.h:687
The screen blend's globals and the graphics routines.
Item numbers, named from the English release.
@ ITEM_SMALL_JEWEL
Definition item_ids.h:66
The reel game's title lettering.
A scene overlay's imports: queueing a scene sound and setting up its record buffer.
FIELD_AT_OFFSET and the entity and camera views older scene code reads.
struct SceneEntrance gSolSanctumMazeEntrances[]
u32 gSolSanctumMazeExits[]
struct ScenePlacement gSolSanctumMazePlacements[]
struct SceneEvent gSolSanctumMazeEvents[]
#define NULL
Definition bilibin.h:6
Sol Sanctum's corridor and maze: the scenes' initialization.
A scene entrance: where and facing which way the party arrives, and the camera's bounds there (-1 for...
Definition field_scene.h:54
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,...
Definition field_scene.h:81
A scene's exit region: the box that, while its condition holds, takes the party leader out through it...
The system's routines and globals: interrupts, BIOS sound bias, random numbers and sleep.
The integer types, TRUE, UNUSED and the fixed-address macros.
unsigned int u32
Definition types.h:15