Alchemy
Loading...
Searching...
No Matches

lemurian_ship.h File Reference

Go to the source code of this file.

Functions

const struct SceneEntrance * LemurianShip_GetEntrances (void)
const struct SceneRegion * LemurianShip_GetRegions (void)
const u32 * LemurianShip_GetExits (void)
const struct ScenePlacement * LemurianShip_GetPlacements (void)
 The ship's two pieces; the party's own actors fill the first three rows.
const struct SceneEvent * LemurianShip_GetEvents (void)
 The exit, Reveal and the Black Orb at the water's edge (cell code 10).
s32 LemurianShip_SetupScene (void)
 Sets the harbor up: the ship sunk 90 pixels, its pieces and the party drawn behind the water layers, and the ripple running.
void DisplayScroll_ArmHBlankDma (void)
 Scheduler callback for the wavy background: restarts DMA 0 each frame to copy the current page's BG1 to BG3 scroll offsets into the scroll registers one scanline at a time.
void DisplayScroll_BuildAndSwapHBlankPage (void)
 Scheduler callback for the wavy background: fills the hidden page with each scanline's BG3, BG2 and BG1 offsets, the scroll plus a sine wave for x and for y (an axis with no step stays flat), then shows that page.

Variables

u16 gShipGlowPalettes []
 The ship's glow: ShipGlow_CyclePalette shows six of these colours at a time, from a start that moves one colour every 6 frames.
s32 gSprayFallScript []
 A drop of spray, at the end of its rise: freed.
s16 gRippleSine [256]
struct SceneEntrance gLemurianShipEntrances []
u32 gLemurianShipExits []
struct ScenePlacement gLemurianShipPlacements []
struct SceneEvent gLemurianShipEvents []
s32 gOrbGlowActive
s32 gOrbGlowPhase
s32 gOrbGlowStrength
s32 gOrbGlowFadeFrames
s32 gSprayActive
s32 gSwellActive
s32 gSwellPhase
s32 gShipHullY
s32 gShipDeckY
s32 gLeaderDeckY
s32 gGaretDeckY
s32 gMiaDeckY
s32 gIvanDeckY
u32 gShipGlowStep []
s32 gLeaderBoardsShip []
s32 gGaretBoardsShip []
s32 gIvanBoardsShip []
s32 gMiaBoardsShip []

Function Documentation

◆ LemurianShip_GetEntrances()

const struct SceneEntrance * LemurianShip_GetEntrances ( void )

Definition at line 87 of file lemurian_ship.c.

Referenced by LemurianShip_GetEntrances().

◆ LemurianShip_GetRegions()

const struct SceneRegion * LemurianShip_GetRegions ( void )

Definition at line 91 of file lemurian_ship.c.

Referenced by LemurianShip_GetRegions().

◆ LemurianShip_GetExits()

const u32 * LemurianShip_GetExits ( void )

Definition at line 93 of file lemurian_ship.c.

Referenced by LemurianShip_GetExits().

◆ LemurianShip_GetPlacements()

const struct ScenePlacement * LemurianShip_GetPlacements ( void )

The ship's two pieces; the party's own actors fill the first three rows.

Definition at line 96 of file lemurian_ship.c.

Referenced by LemurianShip_GetPlacements().

◆ LemurianShip_GetEvents()

const struct SceneEvent * LemurianShip_GetEvents ( void )

The exit, Reveal and the Black Orb at the water's edge (cell code 10).

Definition at line 122 of file lemurian_ship.c.

Referenced by LemurianShip_GetEvents().

◆ LemurianShip_SetupScene()

s32 LemurianShip_SetupScene ( void )

Sets the harbor up: the ship sunk 90 pixels, its pieces and the party drawn behind the water layers, and the ripple running.

The scene's initialization; arriving by entrance 99, which the entrance table does not list, first gives the leader the Black Orb.

Definition at line 694 of file lemurian_ship.c.

Referenced by LemurianShip_SetupScene().

◆ DisplayScroll_ArmHBlankDma()

void DisplayScroll_ArmHBlankDma ( void )

Scheduler callback for the wavy background: restarts DMA 0 each frame to copy the current page's BG1 to BG3 scroll offsets into the scroll registers one scanline at a time.

The first line is written directly; the DMA writes three words at each HBlank from then on.

Definition at line 11 of file wave_scroll.c.

Referenced by DisplayScroll_ArmHBlankDma(), DisplayScroll_DisarmHBlankDma(), DisplayScroll_InitializeHBlankDma(), and Ripple_Stop().

◆ DisplayScroll_BuildAndSwapHBlankPage()

void DisplayScroll_BuildAndSwapHBlankPage ( void )

Scheduler callback for the wavy background: fills the hidden page with each scanline's BG3, BG2 and BG1 offsets, the scroll plus a sine wave for x and for y (an axis with no step stays flat), then shows that page.

Definition at line 44 of file wave_scroll.c.

Referenced by DisplayScroll_BuildAndSwapHBlankPage(), DisplayScroll_DisarmHBlankDma(), DisplayScroll_InitializeHBlankDma(), and Ripple_Stop().

Variable Documentation

◆ gShipGlowPalettes

u16 gShipGlowPalettes[]
extern

The ship's glow: ShipGlow_CyclePalette shows six of these colours at a time, from a start that moves one colour every 6 frames.

Definition at line 907 of file lemurian_ship.c.

Referenced by ShipGlow_CyclePalette().

◆ gSprayFallScript

s32 gSprayFallScript[]
extern

A drop of spray, at the end of its rise: freed.

Definition at line 913 of file lemurian_ship.c.

Referenced by Spray_Update().

◆ gRippleSine

s16 gRippleSine[256]
extern

Definition at line 918 of file lemurian_ship.c.

Referenced by Wave_Offset().

◆ gLemurianShipEntrances

struct SceneEntrance gLemurianShipEntrances[]
extern

Definition at line 954 of file lemurian_ship.c.

Referenced by LemurianShip_GetEntrances().

◆ gLemurianShipExits

u32 gLemurianShipExits[]
extern

Definition at line 960 of file lemurian_ship.c.

Referenced by LemurianShip_GetExits().

◆ gLemurianShipPlacements

struct ScenePlacement gLemurianShipPlacements[]
extern

Definition at line 966 of file lemurian_ship.c.

Referenced by LemurianShip_GetPlacements().

◆ gLemurianShipEvents

struct SceneEvent gLemurianShipEvents[]
extern

Definition at line 980 of file lemurian_ship.c.

Referenced by LemurianShip_GetEvents().

◆ gOrbGlowActive

s32 gOrbGlowActive
extern

Definition at line 991 of file lemurian_ship.c.

Referenced by RaiseTheShip(), and Ship_UpdateSwell().

◆ gOrbGlowPhase

s32 gOrbGlowPhase
extern

Definition at line 993 of file lemurian_ship.c.

Referenced by RaiseTheShip(), and Ship_UpdateSwell().

◆ gOrbGlowStrength

s32 gOrbGlowStrength
extern

Definition at line 995 of file lemurian_ship.c.

Referenced by OrbGlow_Fade(), and Ship_UpdateSwell().

◆ gOrbGlowFadeFrames

s32 gOrbGlowFadeFrames
extern

Definition at line 997 of file lemurian_ship.c.

Referenced by OrbGlow_Fade(), and RaiseTheShip().

◆ gSprayActive

s32 gSprayActive
extern

Definition at line 999 of file lemurian_ship.c.

Referenced by RaiseTheShip(), and Ship_UpdateSwell().

◆ gSwellActive

s32 gSwellActive
extern

Definition at line 1001 of file lemurian_ship.c.

Referenced by RaiseTheShip(), and Ship_UpdateSwell().

◆ gSwellPhase

s32 gSwellPhase
extern

Definition at line 1003 of file lemurian_ship.c.

Referenced by Ship_UpdateSwell().

◆ gShipHullY

s32 gShipHullY
extern

Definition at line 1005 of file lemurian_ship.c.

Referenced by RaiseTheShip(), and Ship_UpdateSwell().

◆ gShipDeckY

s32 gShipDeckY
extern

Definition at line 1007 of file lemurian_ship.c.

Referenced by RaiseTheShip(), and Ship_UpdateSwell().

◆ gLeaderDeckY

s32 gLeaderDeckY
extern

Definition at line 1009 of file lemurian_ship.c.

Referenced by Leader_StepOnDeck(), and Ship_UpdateSwell().

◆ gGaretDeckY

s32 gGaretDeckY
extern

Definition at line 1011 of file lemurian_ship.c.

Referenced by Garet_StepOnDeck(), and Ship_UpdateSwell().

◆ gMiaDeckY

s32 gMiaDeckY
extern

Definition at line 1013 of file lemurian_ship.c.

Referenced by Mia_StepOnDeck(), and Ship_UpdateSwell().

◆ gIvanDeckY

s32 gIvanDeckY
extern

Definition at line 1015 of file lemurian_ship.c.

Referenced by Ivan_StepOnDeck(), and Ship_UpdateSwell().

◆ gShipGlowStep

u32 gShipGlowStep[]
extern

Definition at line 1017 of file lemurian_ship.c.

Referenced by ShipGlow_CyclePalette().

◆ gLeaderBoardsShip

s32 gLeaderBoardsShip[]
extern

Definition at line 1021 of file lemurian_ship.c.

Referenced by SetSail().

◆ gGaretBoardsShip

s32 gGaretBoardsShip[]
extern

Definition at line 1045 of file lemurian_ship.c.

Referenced by SetSail().

◆ gIvanBoardsShip

s32 gIvanBoardsShip[]
extern

Definition at line 1067 of file lemurian_ship.c.

Referenced by SetSail().

◆ gMiaBoardsShip

s32 gMiaBoardsShip[]
extern

Definition at line 1091 of file lemurian_ship.c.

Referenced by SetSail().