Alchemy
Loading...
Searching...
No Matches

kolima_forest_river.c File Reference

Kolima Forest's river, between the clearing and the bend. More...

Go to the source code of this file.

Macros

#define DIRECTION_STEP(dx, dz)
 Pixel step by direction: X in the upper halfword, Z in the lower.

Enumerations

enum  { RIVER_LOG = 10 }
 Actors 8 to 10 are the logs; 10 is the one that can reach the river. More...

Functions

const struct SceneEntrance * KolimaForestRiver_GetEntrances (void)
const struct SceneRegion * KolimaForestRiver_GetRegions (void)
const u32 * KolimaForestRiver_GetExits (void)
const struct ScenePlacement * KolimaForestRiver_GetPlacements (void)
 The three logs.
static void KolimaForestRiver_PushLog (void)
 Walking into a log: it rolls ahead until something stops it.
const struct SceneEvent * KolimaForestRiver_GetEvents (void)
 The logs, the two paths and the jump east from the bank.
s32 KolimaForestRiver_Initialize (void)
 On entry a log already in the river floats there again, the logs mark the cells they cover, and the forest keeps its cursed colours until the curse is lifted.

Variables

s32 gStagedActor_DirectionSteps []
 Pixel step by direction: X in the upper halfword, Z in the lower.
u32 gStagedActor_FootprintKinds []
s32 gStagedActor_FootprintBounds []
struct SceneEntrance gKolimaForestRiverEntrances []
u32 gKolimaForestRiverExits []
 Exit 1 to the bend (scene 43), exit 2 to the clearing (scene 41).
struct ScenePlacement gKolimaForestRiverPlacements []
struct SceneEvent gKolimaForestRiverEvents []
u8 gKolimaPalette_First [1792]
u8 gKolimaPalette_Second [896]

Detailed Description

Kolima Forest's river, between the clearing and the bend.

Of its three logs, the one pushed west to the bank tips into the river and floats there, a bridge to the far side.

FLAG_SCENE_TEMP_01: the log is in the river.

Definition in file kolima_forest_river.c.

Macro Definition Documentation

◆ DIRECTION_STEP

#define DIRECTION_STEP ( dx,
dz )
Value:
(((dx) << 16) | ((dz) & 0xffff))

Pixel step by direction: X in the upper halfword, Z in the lower.

Definition at line 116 of file kolima_forest_river.c.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Actors 8 to 10 are the logs; 10 is the one that can reach the river.

Enumerator
RIVER_LOG 

Definition at line 38 of file kolima_forest_river.c.

Function Documentation

◆ KolimaForestRiver_GetEntrances()

const struct SceneEntrance * KolimaForestRiver_GetEntrances ( void )

Definition at line 42 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_GetEntrances().

◆ KolimaForestRiver_GetRegions()

const struct SceneRegion * KolimaForestRiver_GetRegions ( void )

Definition at line 46 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_GetRegions().

◆ KolimaForestRiver_GetExits()

const u32 * KolimaForestRiver_GetExits ( void )

Definition at line 48 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_GetExits().

◆ KolimaForestRiver_GetPlacements()

const struct ScenePlacement * KolimaForestRiver_GetPlacements ( void )

The three logs.

Definition at line 51 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_GetPlacements().

◆ KolimaForestRiver_PushLog()

void KolimaForestRiver_PushLog ( void )
static

Walking into a log: it rolls ahead until something stops it.

The river log, stopped at the bank (cell column 12), tips over with a splash and floats in the water; its cells become ground the party can cross.

Definition at line 58 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_PushLog().

◆ KolimaForestRiver_GetEvents()

const struct SceneEvent * KolimaForestRiver_GetEvents ( void )

The logs, the two paths and the jump east from the bank.

Definition at line 84 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_GetEvents().

◆ KolimaForestRiver_Initialize()

s32 KolimaForestRiver_Initialize ( void )

On entry a log already in the river floats there again, the logs mark the cells they cover, and the forest keeps its cursed colours until the curse is lifted.

Definition at line 91 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_Initialize().

Variable Documentation

◆ gStagedActor_DirectionSteps

s32 gStagedActor_DirectionSteps[]
Initial value:
= {
DIRECTION_STEP(0, 16), DIRECTION_STEP(-16, 0), DIRECTION_STEP(-16, 0),
DIRECTION_STEP(-16, 0), DIRECTION_STEP(-16, 0), DIRECTION_STEP(0, -16),
DIRECTION_STEP(0, -16), DIRECTION_STEP(0, -16), DIRECTION_STEP(0, -16),
}
#define DIRECTION_STEP(dx, dz)
Pixel step by direction: X in the upper halfword, Z in the lower.

Pixel step by direction: X in the upper halfword, Z in the lower.

Definition at line 118 of file kolima_forest_river.c.

◆ gStagedActor_FootprintKinds

u32 gStagedActor_FootprintKinds[]
Initial value:
= {
207, 205, 228, 229, 298, 297,
}

Definition at line 128 of file kolima_forest_river.c.

◆ gStagedActor_FootprintBounds

s32 gStagedActor_FootprintBounds[]
Initial value:
= {
-32, -8, 32, 8,
-8, -32, 8, 32,
-32, -16, 32, 0,
-8, -32, 8, 32,
-32, -8, 32, 8,
-8, -32, 8, 32,
}

Definition at line 132 of file kolima_forest_river.c.

◆ gKolimaForestRiverEntrances

struct SceneEntrance gKolimaForestRiverEntrances[]
Initial value:
= {
{ 0, CONDITION_ALWAYS, 209, 0, 279, FACING_SOUTH, 0, -1, -1, -1, -1, 0 },
{ 1, CONDITION_ALWAYS, 320, 0, 488, FACING_NORTH, 0, -1, -1, -1, -1, 0 },
{ 2, CONDITION_ALWAYS, 480, 0, 104, FACING_WEST, 0, -1, -1, -1, -1, 0 },
}
@ SCENE_TABLE_END
Definition field_scene.h:43
@ CONDITION_ALWAYS
Definition field_scene.h:44
@ FACING_NORTH
Definition field_scene.h:32
@ FACING_SOUTH
Definition field_scene.h:28
@ FACING_WEST
Definition field_scene.h:30

Definition at line 141 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_GetEntrances().

◆ gKolimaForestRiverExits

u32 gKolimaForestRiverExits[]
Initial value:
= {
SCENE_EXIT(1, 43, 1),
SCENE_EXIT(2, 41, 2),
}
#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

Exit 1 to the bend (scene 43), exit 2 to the clearing (scene 41).

Definition at line 149 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_GetExits().

◆ gKolimaForestRiverPlacements

struct ScenePlacement gKolimaForestRiverPlacements[]
Initial value:
= {
{ 0xcf, CONDITION_ALWAYS, 7,
{ 0xcf, CONDITION_ALWAYS, 7,
{ 0xcd, CONDITION_ALWAYS, 7,
}
@ TALK_KEEP_FACING
#define PIXELS(value)

Definition at line 156 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_GetPlacements().

◆ gKolimaForestRiverEvents

struct SceneEvent gKolimaForestRiverEvents[]
Initial value:
= {
EVENT_SCRIPT(KolimaForest_HopEast)},
}
#define SCENE_EVENTS_END
@ EVENT_TOUCH
@ EVENT_EXIT
#define EVENT_SCRIPT(script)
#define EVENT_TOUCH_WALKING
#define TOUCH_WALKING_INTO(facing)
@ FACING_EAST
Definition field_scene.h:26
static void KolimaForestRiver_PushLog(void)
Walking into a log: it rolls ahead until something stops it.

Definition at line 167 of file kolima_forest_river.c.

Referenced by KolimaForestRiver_GetEvents().

◆ gKolimaPalette_First

u8 gKolimaPalette_First[1792]

Definition at line 178 of file kolima_forest_river.c.

◆ gKolimaPalette_Second

u8 gKolimaPalette_Second[896]

Definition at line 179 of file kolima_forest_river.c.