Digimon World 3 decomp
The European version, SLES_039.36
Loading...
Searching...
No Matches
wstag800.c File Reference

WSTAG800: Magasta B2F, Undersea Base. More...

Include dependency graph for wstag800.c:

Go to the source code of this file.

Macros

#define TIMER_SHEET   0x6FE
 
#define STAGE_CHILDREN_SIZE   0x20
 
#define STAGE_TEXT   TEXT_FILE(TEXT_TALKS_07)
 
#define EVENT_TEXT_FILE   (TEXT_EVENTS_800 - 1)
 
#define STAGE_FILE   0x6FE
 
#define STAGE_FILE_8   0x725
 

Functions

void updateTilePair16 (StageTilePair16 *task)
 Shows the first map object animated while running; when done, both.
 
void handleCommand837 (StageTilePair16 *task, s32 id)
 Plays the first map object's one-shot animation when the event of map object 0x35B happens.
 
void * createTilePair16 (s32 arg)
 Creates the button's map objects of event 850 (updateTilePair16) with an id.
 
void * createTilePair16Done (void)
 Creates the tile pair object, started in TASK_DONE.
 
s32 stepTileAnimation2 (StageTileAnimFlag *obj, AnimFrame *frames, s32 once, s32 depth)
 stepTileAnimation for a StageTileAnimFlag
 
void updateTileOnce (StageTileOnce *task)
 Plays the map objects with animations 3 and 4 once, then ends.
 
void * createCommand839 (s32 arg)
 Command 839 of the event scripts: the button the player pushes in event 871 to stop the Juggernaut (updateTileOnce)
 
void updateTimer (StageTask *task, void **children)
 The timer: counts GAME.countdown down while nothing stops it, then starts event 0x5E2.
 
void updateStage (StageTask *task, void **children)
 Creates the timer, the stage's four effects, the event object of flags 0x4044/0x4045 and one of two objects by flag 0x4061.
 
void endEvent850 (void)
 After event 850, with the player: sets flag 0x1C0A and keeps it from playing again.
 
void endEvent870 (void)
 After event 870, with Mech Soldier: starts the stage's event battle 0 and keeps it from playing again.
 
void endEvent871 (void)
 After event 871, with the player: gives the player the Dramon Guard and keeps it from playing again.
 
void setupStage (void)
 Sets the stage up: its map, actors, battles and events, playing BGM_0011.
 

Variables

AnimFrame updateTilePair16Frames0 []
 Defined below, after the code that uses them.
 
AnimFrame updateTilePair16Frames2 []
 
AnimFrame updateTilePair16Frames1 []
 
StageEffectSpot updateStageSpots []
 
AnimFrame * updateTileOnceFrames []
 
s16 timerDigitX []
 
AnimFrame updateTileOnceFrames_0 []
 
AnimFrame updateTileOnceFrames_1 []
 
s16 script850 []
 
s16 script870 []
 
s16 script871 []
 
s16 script1506 []
 
AnimFrame effectClutFrames []
 
AnimFrame effectFrames []
 
AreaBattle area0Battle0 = { 123, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle1 = { 123, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle2 = { 123, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle3 = { 122, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle4 = { 122, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle5 = { 122, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle6 = { 102, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle7 = { 102, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }
 
BattleList area0Battles
 
AreaBattle area1Battle0 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area1Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area1Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area1Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area1Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area1Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area1Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area1Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
BattleList area1Battles
 
AreaBattle area2Battle0 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area2Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area2Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area2Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area2Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area2Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area2Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area2Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
BattleList area2Battles
 
AreaBattle area3Battle0 = { 193, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }
 
AreaBattle area3Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area3Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area3Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area3Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area3Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area3Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area3Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
BattleList area3Battles
 
FieldBattles stageBattles []
 
ActorImage stageImages []
 
u16 actor0Talk0Actions [] = { (( 2 ) << 8 | ( 0x45 )) , 1, (0x8000 | ( 5 ) << 9 | ( 0xE0 )), 1, 0xFFFF }
 
u16 actor1Talk0Actions [] = { (( 2 ) << 8 | ( 0x46 )) , 1, (0x8000 | ( 5 ) << 9 | ( 0xEA )), 1, 0xFFFF }
 
u16 actor2Talk0Actions [] = { (( 2 ) << 8 | ( 0x47 )) , 1, (0x8000 | ( 1 ) << 9 | ( 0x2C )), 1, 0xFFFF }
 
u16 actor3Talk0Actions [] = { (( 2 ) << 8 | ( 0x48 )) , 1, 0xFFFF }
 
u16 actor4Talk0Actions [] = { (( 2 ) << 8 | ( 0x49 )) , 1, (0x8000 | ( 5 ) << 9 | ( 0x111 )), 1, 0xFFFF }
 
FieldTalk actor0Talks []
 
FieldTalk actor1Talks []
 
FieldTalk actor2Talks []
 
FieldTalk actor3Talks []
 
FieldTalk actor4Talks []
 
u16 actor0Conditions [] = { (( 2 ) << 8 | ( 0x45 )) , 0, 0xFFFF }
 
u16 actor1Conditions [] = { (( 2 ) << 8 | ( 0x46 )) , 0, 0xFFFF }
 
u16 actor2Conditions [] = { (( 2 ) << 8 | ( 0x47 )) , 0, 0xFFFF }
 
u16 actor3Conditions [] = { (( 2 ) << 8 | ( 0x48 )) , 0, 0xFFFF }
 
u16 actor4Conditions [] = { (( 2 ) << 8 | ( 0x49 )) , 0, 0xFFFF }
 
u16 actor5Conditions []
 
u16 actor6Conditions [] = { (0x6000 | ( STORY_REAL_WORLD )) , 1, 0xFFFF }
 
FieldActorEntry actor0 = { actor0Conditions, actor0Talks, 0x21, 4, 1024, 168, 1 }
 
FieldActorEntry actor1 = { actor1Conditions, actor1Talks, 0x4D, 5, 640, 938, 1 }
 
FieldActorEntry actor2 = { actor2Conditions, actor2Talks, 0x4E, 6, 1217, 328, 1 }
 
FieldActorEntry actor3 = { actor3Conditions, actor3Talks, 0x4F, 7, 1249, 281, 1 }
 
FieldActorEntry actor4 = { actor4Conditions, actor4Talks, 0x50, 8, 352, 697, 1 }
 
FieldActorEntry actor5 = { actor5Conditions, ((void *)0) , 0xD0, 9, 1473, 409, 5 }
 
FieldActorEntry actor6 = { actor6Conditions, ((void *)0) , 0x13C, 0xA, 0, 0, 1 }
 
FieldActorEntry * stageActors []
 
StageTile stageObjects []
 The tables and color setupStage gives FIELDSTG_state (FieldState)
 
StageSlot stageSlots []
 
void(* stageFuncs [])(void)
 The stage's functions (common/start_stage.inc.c calls the first): a StageFuncs in the stages with a tween, which define STAGE_TWEEN before they include this file, and in the others an array of just setupStage.
 
FieldEvent stageEvents []
 

Detailed Description

WSTAG800: Magasta B2F, Undersea Base.

Where the player tries to stop the Juggernaut's launch.

Definition in file wstag800.c.

Macro Definition Documentation

◆ TIMER_SHEET

#define TIMER_SHEET   0x6FE

Definition at line 11 of file wstag800.c.

◆ STAGE_CHILDREN_SIZE

#define STAGE_CHILDREN_SIZE   0x20

Definition at line 292 of file wstag800.c.

◆ STAGE_TEXT

#define STAGE_TEXT   TEXT_FILE(TEXT_TALKS_07)

Definition at line 330 of file wstag800.c.

◆ EVENT_TEXT_FILE

#define EVENT_TEXT_FILE   (TEXT_EVENTS_800 - 1)

Definition at line 331 of file wstag800.c.

◆ STAGE_FILE

#define STAGE_FILE   0x6FE

Definition at line 332 of file wstag800.c.

◆ STAGE_FILE_8

#define STAGE_FILE_8   0x725

Definition at line 333 of file wstag800.c.

Function Documentation

◆ updateTilePair16()

void updateTilePair16 ( StageTilePair16 *  task)

Shows the first map object animated while running; when done, both.

Definition at line 27 of file wstag800.c.

Referenced by createTilePair16(), and createTilePair16Done().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ handleCommand837()

void handleCommand837 ( StageTilePair16 *  task,
s32  id 
)

Plays the first map object's one-shot animation when the event of map object 0x35B happens.

Definition at line 105 of file wstag800.c.

◆ createTilePair16()

void * createTilePair16 ( s32  arg)

Creates the button's map objects of event 850 (updateTilePair16) with an id.

Definition at line 115 of file wstag800.c.

Referenced by updateStage().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createTilePair16Done()

void * createTilePair16Done ( void  )

Creates the tile pair object, started in TASK_DONE.

Definition at line 120 of file wstag800.c.

Referenced by updateStage().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ stepTileAnimation2()

s32 stepTileAnimation2 ( StageTileAnimFlag *  obj,
AnimFrame *  frames,
s32  once,
s32  depth 
)

stepTileAnimation for a StageTileAnimFlag

Definition at line 128 of file wstag800.c.

Referenced by stepTileAnimation2(), and updateTileOnce().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateTileOnce()

void updateTileOnce ( StageTileOnce *  task)

Plays the map objects with animations 3 and 4 once, then ends.

Definition at line 157 of file wstag800.c.

Referenced by createCommand839().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createCommand839()

void * createCommand839 ( s32  arg)

Command 839 of the event scripts: the button the player pushes in event 871 to stop the Juggernaut (updateTileOnce)

Definition at line 220 of file wstag800.c.

Here is the call graph for this function:

◆ updateTimer()

void updateTimer ( StageTask *  task,
void **  children 
)

The timer: counts GAME.countdown down while nothing stops it, then starts event 0x5E2.

< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40

< SYSTEM10: a number counts up or down

Definition at line 227 of file wstag800.c.

Here is the call graph for this function:

◆ updateStage()

void updateStage ( StageTask *  task,
void **  children 
)

Creates the timer, the stage's four effects, the event object of flags 0x4044/0x4045 and one of two objects by flag 0x4061.

< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40

< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40

< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40

Definition at line 263 of file wstag800.c.

Here is the call graph for this function:

◆ endEvent850()

void endEvent850 ( void  )

After event 850, with the player: sets flag 0x1C0A and keeps it from playing again.

< 0x1C 0x00-0x40: FLAGS_00, GAME.flags02-flags40

< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40

Definition at line 301 of file wstag800.c.

◆ endEvent870()

void endEvent870 ( void  )

After event 870, with Mech Soldier: starts the stage's event battle 0 and keeps it from playing again.

< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40

< action: FIELDSTG_battleFuncs.startEventBattle

Definition at line 310 of file wstag800.c.

◆ endEvent871()

void endEvent871 ( void  )

After event 871, with the player: gives the player the Dramon Guard and keeps it from playing again.

< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40

Definition at line 319 of file wstag800.c.

◆ setupStage()

void setupStage ( void  )

Sets the stage up: its map, actors, battles and events, playing BGM_0011.

Sets the stage up: its map, actors, battles and events, playing KANRIBGM; BGM_0029 instead except at STORY_PRESIDENT_ARRESTED once flag 0x1A0A is set.

< BGM_0011: the Undersea Base (Magasta), and the Deeper Crevice's gondola

< BGM_0011: the Undersea Base (Magasta), and the Deeper Crevice's gondola

< a cell's value: a direction (3 bits) and a StageSlot (5)

< a cell's value: its battle area (FieldBattles), or 0

Definition at line 336 of file wstag800.c.

Variable Documentation

◆ updateTilePair16Frames0

AnimFrame updateTilePair16Frames0
Initial value:
= {
{ 0, 8 }, { 1, 8 }, { 255, 0 },
}

Defined below, after the code that uses them.

Definition at line 535 of file wstag800.c.

Referenced by updateTilePair16().

◆ updateTilePair16Frames2

AnimFrame updateTilePair16Frames2
Initial value:
= {
{ 71, 4 }, { 72, 4 }, { 73, 4 }, { 74, 4 },
{ 75, 4 }, { 76, 4 }, { 77, 4 }, { 78, 4 },
{ 79, 4 }, { 80, 4 }, { 255, 0 },
}

Definition at line 538 of file wstag800.c.

Referenced by handleCommand837(), and updateTilePair16().

◆ updateTilePair16Frames1

AnimFrame updateTilePair16Frames1
Initial value:
= {
{ 0, 6 }, { 1, 6 }, { 2, 6 }, { 3, 6 },
{ 4, 6 }, { 5, 6 }, { 255, 0 },
}

Definition at line 543 of file wstag800.c.

Referenced by updateTilePair16().

◆ updateStageSpots

StageEffectSpot updateStageSpots[]
Initial value:
= {
{ 28, 0, 0x4BC, 0x273 },
{ 28, 0, 0x39C, 0x373 },
{ 20, 0, 0x2BC, 211 },
{ 20, 0, 0x43C, 0x323 },
}

Definition at line 567 of file wstag800.c.

Referenced by updateStage().

◆ updateTileOnceFrames

AnimFrame * updateTileOnceFrames
Initial value:
= {
}
AnimFrame updateTileOnceFrames_0[]
Definition wstag800.c:547
AnimFrame updateTileOnceFrames_1[]
Definition wstag800.c:554

Definition at line 561 of file wstag800.c.

Referenced by updateTileOnce().

◆ timerDigitX

s16 timerDigitX[]
Initial value:
= {
226, 253, 0x118, 0,
}

Definition at line 564 of file wstag800.c.

◆ updateTileOnceFrames_0

AnimFrame updateTileOnceFrames_0
Initial value:
= {
{ 52, 6 }, { 53, 6 }, { 54, 6 }, { 55, 6 },
{ 56, 6 }, { 57, 6 }, { 58, 6 }, { 59, 6 },
{ 60, 6 }, { 61, 6 }, { 62, 6 }, { 63, 6 },
{ 64, 6 }, { 65, 6 }, { 66, 6 }, { 67, 6 },
{ 68, 6 }, { 69, 6 }, { 255, 0 },
}

Definition at line 547 of file wstag800.c.

Referenced by updateTileOnce().

◆ updateTileOnceFrames_1

AnimFrame updateTileOnceFrames_1
Initial value:
= {
{ 0, 6 }, { 1, 6 }, { 2, 6 }, { 3, 6 },
{ 4, 6 }, { 5, 6 }, { 0, 6 }, { 1, 6 },
{ 2, 6 }, { 3, 6 }, { 4, 6 }, { 5, 6 },
{ 0, 6 }, { 1, 6 }, { 2, 6 }, { 3, 6 },
{ 4, 6 }, { 5, 6 }, { 255, 0 },
}

Definition at line 554 of file wstag800.c.

Referenced by updateTileOnce().

◆ script850

s16 script850[]

Definition at line 357 of file wstag800.c.

◆ script870

s16 script870[]
Initial value:
= {
0x102, 2 , 0x590 , 0x1B0 , 5 ,
0x101, 0x32D , 0x337 , 2 ,
0x302, 2 ,
0x101, 2 , 1 , 5 ,
0x300, 0x1E ,
0x200, 0 , 1 , 2 , 0 ,
0x101, 2 , 7 , 5 ,
0x301 ,
0x101, 2 , 1 , 5 ,
0x300, 0x1E ,
0x101, 0x323 , 0x325 , 0xD0 ,
0x300, 0x5A ,
0x101, 0x323 , 0x326 , 0xD0 ,
0x300, 0x1E ,
0x101, 0xD0 , 1 , 1 ,
0x300, 0x1E ,
0x200, 0 , 2 , 0xD0 , 0 ,
0x301 ,
0x300, 0x1E ,
0x102, 0xD0 , 0x5A8 , 0x1A4 , 1 ,
0x302, 0xD0 ,
0 ,
}

Definition at line 397 of file wstag800.c.

◆ script871

s16 script871[]

Definition at line 421 of file wstag800.c.

◆ script1506

s16 script1506[]
Initial value:
= {
0x300, 0x1E ,
0x101, 0x323 , 0x325 , 2 ,
0x300, 0x5A ,
0x101, 0x323 , 0x326 , 2 ,
0x300, 0x1E ,
0x101, 2 , 1 , 0 ,
0x300, 0x1E ,
0x200, 0 , 1 , 2 , 2 ,
0x101, 2 , 7 , 0 ,
0x301 ,
0x101, 2 , 1 , 0 ,
0x300, 0x1E ,
0x304, 0x26D , 1 , 1 , 1 ,
0 ,
}

Definition at line 519 of file wstag800.c.

◆ effectClutFrames

AnimFrame effectClutFrames[]
Initial value:
= {
{ 0, 6 }, { 1, 6 }, { 2, 68 }, { 1, 4 },
{ 0, 4 }, { 255, 0 },
}

Definition at line 573 of file wstag800.c.

◆ effectFrames

AnimFrame effectFrames[]
Initial value:
= {
{ 0x12C, 18 }, { 1, 6 }, { 2, 6 }, { 3, 6 },
{ 4, 6 }, { 5, 4 }, { 6, 4 }, { 7, 4 },
{ 5, 4 }, { 6, 4 }, { 7, 4 }, { 5, 4 },
{ 6, 4 }, { 7, 4 }, { 5, 4 }, { 6, 4 },
{ 7, 4 }, { 4, 4 }, { 3, 4 }, { 2, 4 },
{ 1, 4 }, { 255, 0x3E7 },
}

Definition at line 577 of file wstag800.c.

◆ area0Battle0

AreaBattle area0Battle0 = { 123, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }

Definition at line 585 of file wstag800.c.

◆ area0Battle1

AreaBattle area0Battle1 = { 123, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }

Definition at line 586 of file wstag800.c.

◆ area0Battle2

AreaBattle area0Battle2 = { 123, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }

Definition at line 587 of file wstag800.c.

◆ area0Battle3

AreaBattle area0Battle3 = { 122, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }

Definition at line 588 of file wstag800.c.

◆ area0Battle4

AreaBattle area0Battle4 = { 122, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }

Definition at line 589 of file wstag800.c.

◆ area0Battle5

AreaBattle area0Battle5 = { 122, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }

Definition at line 590 of file wstag800.c.

◆ area0Battle6

AreaBattle area0Battle6 = { 102, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }

Definition at line 591 of file wstag800.c.

◆ area0Battle7

AreaBattle area0Battle7 = { 102, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }

Definition at line 592 of file wstag800.c.

◆ area0Battles

BattleList area0Battles
Initial value:
= {
3,
}
AreaBattle area0Battle7
Definition wstag800.c:592
AreaBattle area0Battle1
Definition wstag800.c:586
AreaBattle area0Battle6
Definition wstag800.c:591
AreaBattle area0Battle3
Definition wstag800.c:588
AreaBattle area0Battle5
Definition wstag800.c:590
AreaBattle area0Battle0
Definition wstag800.c:585
AreaBattle area0Battle2
Definition wstag800.c:587
AreaBattle area0Battle4
Definition wstag800.c:589

Definition at line 593 of file wstag800.c.

◆ area1Battle0

AreaBattle area1Battle0 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 598 of file wstag800.c.

◆ area1Battle1

AreaBattle area1Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 599 of file wstag800.c.

◆ area1Battle2

AreaBattle area1Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 600 of file wstag800.c.

◆ area1Battle3

AreaBattle area1Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 601 of file wstag800.c.

◆ area1Battle4

AreaBattle area1Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 602 of file wstag800.c.

◆ area1Battle5

AreaBattle area1Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 603 of file wstag800.c.

◆ area1Battle6

AreaBattle area1Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 604 of file wstag800.c.

◆ area1Battle7

AreaBattle area1Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 605 of file wstag800.c.

◆ area1Battles

BattleList area1Battles
Initial value:
= {
0,
}
AreaBattle area1Battle6
Definition wstag800.c:604
AreaBattle area1Battle2
Definition wstag800.c:600
AreaBattle area1Battle4
Definition wstag800.c:602
AreaBattle area1Battle5
Definition wstag800.c:603
AreaBattle area1Battle3
Definition wstag800.c:601
AreaBattle area1Battle0
Definition wstag800.c:598
AreaBattle area1Battle1
Definition wstag800.c:599
AreaBattle area1Battle7
Definition wstag800.c:605

Definition at line 606 of file wstag800.c.

◆ area2Battle0

AreaBattle area2Battle0 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 611 of file wstag800.c.

◆ area2Battle1

AreaBattle area2Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 612 of file wstag800.c.

◆ area2Battle2

AreaBattle area2Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 613 of file wstag800.c.

◆ area2Battle3

AreaBattle area2Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 614 of file wstag800.c.

◆ area2Battle4

AreaBattle area2Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 615 of file wstag800.c.

◆ area2Battle5

AreaBattle area2Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 616 of file wstag800.c.

◆ area2Battle6

AreaBattle area2Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 617 of file wstag800.c.

◆ area2Battle7

AreaBattle area2Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 618 of file wstag800.c.

◆ area2Battles

BattleList area2Battles
Initial value:
= {
0,
}
AreaBattle area2Battle7
Definition wstag800.c:618
AreaBattle area2Battle6
Definition wstag800.c:617
AreaBattle area2Battle0
Definition wstag800.c:611
AreaBattle area2Battle4
Definition wstag800.c:615
AreaBattle area2Battle2
Definition wstag800.c:613
AreaBattle area2Battle1
Definition wstag800.c:612
AreaBattle area2Battle5
Definition wstag800.c:616
AreaBattle area2Battle3
Definition wstag800.c:614

Definition at line 619 of file wstag800.c.

◆ area3Battle0

AreaBattle area3Battle0 = { 193, 16, (0x60000000 | ( 2 ) << 18 | ( 0 )) }

Definition at line 624 of file wstag800.c.

◆ area3Battle1

AreaBattle area3Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 625 of file wstag800.c.

◆ area3Battle2

AreaBattle area3Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 626 of file wstag800.c.

◆ area3Battle3

AreaBattle area3Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 627 of file wstag800.c.

◆ area3Battle4

AreaBattle area3Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 628 of file wstag800.c.

◆ area3Battle5

AreaBattle area3Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 629 of file wstag800.c.

◆ area3Battle6

AreaBattle area3Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 630 of file wstag800.c.

◆ area3Battle7

AreaBattle area3Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }

Definition at line 631 of file wstag800.c.

◆ area3Battles

BattleList area3Battles
Initial value:
= {
0,
}
AreaBattle area3Battle4
Definition wstag800.c:628
AreaBattle area3Battle3
Definition wstag800.c:627
AreaBattle area3Battle0
Definition wstag800.c:624
AreaBattle area3Battle2
Definition wstag800.c:626
AreaBattle area3Battle1
Definition wstag800.c:625
AreaBattle area3Battle6
Definition wstag800.c:630
AreaBattle area3Battle5
Definition wstag800.c:629
AreaBattle area3Battle7
Definition wstag800.c:631

Definition at line 632 of file wstag800.c.

◆ stageBattles

FieldBattles stageBattles[]
Initial value:
= {
}
BattleList area3Battles
Definition wstag800.c:632
BattleList area1Battles
Definition wstag800.c:606
BattleList area2Battles
Definition wstag800.c:619
BattleList area0Battles
Definition wstag800.c:593

Definition at line 637 of file wstag800.c.

Referenced by setupStage().

◆ stageImages

ActorImage stageImages[]
Initial value:
= {
{ 0x200, 0x100, 0x21C, 0x1A6, 0x70, 0xA6, 0x230, 0x1FE },
{ 0x200, 0x100, 0x200, 0x100, 0, 0, 0x220, 0x1FE },
{ 0x200, 0x100, 0x216, 0x138, 0x58, 0x38, 0x200, 0x1FD },
{ 0x200, 0x100, 0x208, 0x1BC, 0x20, 0xBC, 0x210, 0x1FD },
{ 0x200, 0x100, 0x210, 0x1BC, 0x40, 0xBC, 0x220, 0x1FD },
{ 0x200, 0x100, 0x200, 0x1BC, 0, 0xBC, 0x230, 0x1FD },
{ 0x180, 0x100, 0x19C, 0x158, 0x170, 0x58, 0x170, 0x1D9 },
{ 0x180, 0x100, 0x1A2, 0x158, 0x188, 0x58, 0x170, 0x1D8 },
{ 0x180, 0x100, 0x1A8, 0x158, 0x1A0, 0x58, 0x170, 0x1D7 },
{ 0x180, 0x100, 0x18C, 0x170, 0x130, 0x70, 0x170, 0x1D6 },
{ 0x180, 0x100, 0x192, 0x170, 0x148, 0x70, 0x170, 0x1D5 },
{ 0x140, 0x100, 0x16E, 0x1A8, 0xB8, 0xA8, 0x170, 0x1D4 },
{ 0x140, 0x100, 0x17A, 0x1B0, 0xE8, 0xB0, 0x170, 0x1D3 },
}

Definition at line 640 of file wstag800.c.

Referenced by setupStage().

◆ actor0Talk0Actions

u16 actor0Talk0Actions[] = { (( 2 ) << 8 | ( 0x45 )) , 1, (0x8000 | ( 5 ) << 9 | ( 0xE0 )), 1, 0xFFFF }

Definition at line 655 of file wstag800.c.

◆ actor1Talk0Actions

u16 actor1Talk0Actions[] = { (( 2 ) << 8 | ( 0x46 )) , 1, (0x8000 | ( 5 ) << 9 | ( 0xEA )), 1, 0xFFFF }

Definition at line 656 of file wstag800.c.

◆ actor2Talk0Actions

u16 actor2Talk0Actions[] = { (( 2 ) << 8 | ( 0x47 )) , 1, (0x8000 | ( 1 ) << 9 | ( 0x2C )), 1, 0xFFFF }

Definition at line 657 of file wstag800.c.

◆ actor3Talk0Actions

u16 actor3Talk0Actions[] = { (( 2 ) << 8 | ( 0x48 )) , 1, 0xFFFF }

Definition at line 658 of file wstag800.c.

◆ actor4Talk0Actions

u16 actor4Talk0Actions[] = { (( 2 ) << 8 | ( 0x49 )) , 1, (0x8000 | ( 5 ) << 9 | ( 0x111 )), 1, 0xFFFF }

Definition at line 659 of file wstag800.c.

◆ actor0Talks

FieldTalk actor0Talks[]
Initial value:
= {
{ ((void *)0) , actor0Talk0Actions, 0x21B },
{ ((void *)0) , ((void *)0) , 0 },
}
u16 actor0Talk0Actions[]
Definition wstag800.c:655

Definition at line 660 of file wstag800.c.

◆ actor1Talks

FieldTalk actor1Talks[]
Initial value:
= {
{ ((void *)0) , actor1Talk0Actions, 0x21C },
{ ((void *)0) , ((void *)0) , 0 },
}
u16 actor1Talk0Actions[]
Definition wstag800.c:656

Definition at line 664 of file wstag800.c.

◆ actor2Talks

FieldTalk actor2Talks[]
Initial value:
= {
{ ((void *)0) , actor2Talk0Actions, 0x17D },
{ ((void *)0) , ((void *)0) , 0 },
}
u16 actor2Talk0Actions[]
Definition wstag800.c:657

Definition at line 668 of file wstag800.c.

◆ actor3Talks

FieldTalk actor3Talks[]
Initial value:
= {
{ ((void *)0) , actor3Talk0Actions, 0x191 },
{ ((void *)0) , ((void *)0) , 0 },
}
u16 actor3Talk0Actions[]
Definition wstag800.c:658

Definition at line 672 of file wstag800.c.

◆ actor4Talks

FieldTalk actor4Talks[]
Initial value:
= {
{ ((void *)0) , actor4Talk0Actions, 0x21F },
{ ((void *)0) , ((void *)0) , 0 },
}
u16 actor4Talk0Actions[]
Definition wstag800.c:659

Definition at line 676 of file wstag800.c.

◆ actor0Conditions

u16 actor0Conditions[] = { (( 2 ) << 8 | ( 0x45 )) , 0, 0xFFFF }

Definition at line 680 of file wstag800.c.

◆ actor1Conditions

u16 actor1Conditions[] = { (( 2 ) << 8 | ( 0x46 )) , 0, 0xFFFF }

Definition at line 681 of file wstag800.c.

◆ actor2Conditions

u16 actor2Conditions[] = { (( 2 ) << 8 | ( 0x47 )) , 0, 0xFFFF }

Definition at line 682 of file wstag800.c.

◆ actor3Conditions

u16 actor3Conditions[] = { (( 2 ) << 8 | ( 0x48 )) , 0, 0xFFFF }

Definition at line 683 of file wstag800.c.

◆ actor4Conditions

u16 actor4Conditions[] = { (( 2 ) << 8 | ( 0x49 )) , 0, 0xFFFF }

Definition at line 684 of file wstag800.c.

◆ actor5Conditions

u16 actor5Conditions[]
Initial value:
= {
(0x6000 | ( STORY_REAL_WORLD )) , 1,
(( 0x40 ) << 8 | ( 0x44 )) , 0,
0xFFFF ,
}
@ STORY_REAL_WORLD
WSTAG750 (the emergency Matrix Chamber), event 820: back in the real world, for 180 seconds.
Definition story.h:121

Definition at line 685 of file wstag800.c.

◆ actor6Conditions

u16 actor6Conditions[] = { (0x6000 | ( STORY_REAL_WORLD )) , 1, 0xFFFF }

Definition at line 690 of file wstag800.c.

◆ actor0

FieldActorEntry actor0 = { actor0Conditions, actor0Talks, 0x21, 4, 1024, 168, 1 }

Definition at line 691 of file wstag800.c.

◆ actor1

FieldActorEntry actor1 = { actor1Conditions, actor1Talks, 0x4D, 5, 640, 938, 1 }

Definition at line 692 of file wstag800.c.

◆ actor2

FieldActorEntry actor2 = { actor2Conditions, actor2Talks, 0x4E, 6, 1217, 328, 1 }

Definition at line 693 of file wstag800.c.

◆ actor3

FieldActorEntry actor3 = { actor3Conditions, actor3Talks, 0x4F, 7, 1249, 281, 1 }

Definition at line 694 of file wstag800.c.

◆ actor4

FieldActorEntry actor4 = { actor4Conditions, actor4Talks, 0x50, 8, 352, 697, 1 }

Definition at line 695 of file wstag800.c.

◆ actor5

FieldActorEntry actor5 = { actor5Conditions, ((void *)0) , 0xD0, 9, 1473, 409, 5 }

Definition at line 696 of file wstag800.c.

◆ actor6

FieldActorEntry actor6 = { actor6Conditions, ((void *)0) , 0x13C, 0xA, 0, 0, 1 }

Definition at line 697 of file wstag800.c.

◆ stageActors

FieldActorEntry* stageActors[]
Initial value:
= {
((void *)0) ,
}
FieldActorEntry actor0
Definition wstag800.c:691
FieldActorEntry actor6
Definition wstag800.c:697
FieldActorEntry actor5
Definition wstag800.c:696
FieldActorEntry actor2
Definition wstag800.c:693
FieldActorEntry actor4
Definition wstag800.c:695
FieldActorEntry actor1
Definition wstag800.c:692
FieldActorEntry actor3
Definition wstag800.c:694

Definition at line 698 of file wstag800.c.

Referenced by setupStage().

◆ stageObjects

StageTile stageObjects[]
Initial value:
= {
{ 1, 0, 0x40, 2, 0x32, 2, 0, 5, 4, 0, 728, 212, 0, 0 },
{ 1, 0, 0x40, 2, 0x32, 2, 0, 5, 4, 0, 760, 197, 0, 0 },
{ 1, 0, 0x40, 2, 0x32, 2, 0, 5, 4, 0, 952, 884, 0, 0 },
{ 1, 0, 0x40, 2, 0x32, 2, 0, 5, 4, 0, 984, 868, 0, 0 },
{ 1, 0, 0x40, 2, 0x32, 2, 0, 5, 4, 0, 1112, 804, 0, 0 },
{ 1, 0, 0x40, 2, 0x32, 2, 0, 5, 4, 0, 1144, 788, 0, 0 },
{ 1, 0, 0x40, 2, 0x32, 2, 0, 5, 4, 0, 1240, 629, 0, 0 },
{ 1, 0, 0x40, 2, 0x32, 2, 0, 5, 4, 0, 1272, 612, 0, 0 },
{ 1, 2, 0x64, 6, 0x51, 0, 0, 0, 0, 0, 898, 764, 0, 0 },
{ 1, 1, 0x64, 6, 0x46, 0, 0, 0, 0, 0, 898, 764, 0, 0 },
{ 1, 0, 0x40, 6, 0x32, 2, 0, 5, 4, 0, 656, 176, 0, 0 },
{ 1, 0, 0x40, 6, 0x32, 2, 0, 5, 4, 0, 688, 160, 0, 0 },
{ 1, 0, 0x40, 6, 0x32, 2, 0, 5, 4, 0, 880, 848, 0, 0 },
{ 1, 0, 0x40, 6, 0x32, 2, 0, 5, 4, 0, 912, 832, 0, 0 },
{ 1, 0, 0x40, 6, 0x32, 2, 0, 5, 4, 0, 1040, 768, 0, 0 },
{ 1, 0, 0x40, 6, 0x32, 2, 0, 5, 4, 0, 1072, 752, 0, 0 },
{ 1, 0, 0x40, 6, 0x32, 2, 0, 5, 4, 0, 1168, 592, 0, 0 },
{ 1, 0, 0x40, 6, 0x32, 2, 0, 5, 4, 0, 1200, 576, 0, 0 },
{ 0, 4, 0x64, 6, 0x33, 0, 0, 0, 0, 0, 1550, 338, 0, 0 },
{ 0, 3, 0x64, 6, 0x34, 0, 0, 0, 0, 0, 1550, 338, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
}

The tables and color setupStage gives FIELDSTG_state (FieldState)

Definition at line 708 of file wstag800.c.

Referenced by setupStage().

◆ stageSlots

StageSlot stageSlots[]
Initial value:
= {
{ { { 0xFFFF , 0 }, { 0xFFFF , 0 } }, 1 , 0x2DA, 0x4F2, 0x150, 3, 0, 0, 0 },
{ { { 0xFFFF , 0 }, { 0xFFFF , 0 } }, 1 , 0x2DA, 0x522, 0x1F6, 3, 0, 0, 0 },
{ { { 0xFFFF , 0 }, { 0xFFFF , 0 } }, 1 , 0x2DA, 0x552, 0x28E, 3, 0, 0, 0 },
{ { { 0xFFFF , 0 }, { 0xFFFF , 0 } }, 1 , 0x2DA, 0x554, 0x400, 3, 0, 0, 0 },
{ { { (0x6000 | ( STORY_REAL_WORLD )) , 1 }, { (( 0x40 ) << 8 | ( 0x44 )) , 0 } }, 8 , 0x366, 0, 0, 0, 0, 0, 0 },
{ { { (( 0x1C ) << 8 | ( 5 )) , 1 }, { (( 0x40 ) << 8 | ( 0x61 )) , 0 } }, 8 , 0x352, 0, 0, 0, 0, 0, 0 },
{ { { (( 0x1C ) << 8 | ( 5 )) , 1 }, { 0xFFFF , 0 } }, 13 , 0x2DB, 0x450, 0x330, 1, 0, 0, 0 },
{ { { (( 0x1C ) << 8 | ( 5 )) , 1 }, { 0xFFFF , 0 } }, 13 , 0x2DB, 0x2D0, 0xE0, 5, 0, 0, 0 },
{ { { 0xFFFF , 0 }, { 0xFFFF , 0 } }, 0, 0, 0, 0, 0, 0, 0, 0 },
}

Definition at line 731 of file wstag800.c.

Referenced by setupStage().

◆ stageFuncs

void(* stageFuncs[])(void) ( void  )
Initial value:
= {
}
void setupStage(void)
Sets the stage up: its map, actors, battles and events, playing BGM_0011.
Definition wstag800.c:336

The stage's functions (common/start_stage.inc.c calls the first): a StageFuncs in the stages with a tween, which define STAGE_TWEEN before they include this file, and in the others an array of just setupStage.

Definition at line 742 of file wstag800.c.

◆ stageEvents

FieldEvent stageEvents[]
Initial value:
= {
{ 850, script850, ( ( 0x152 - 1) << 16 | ( 0 )), ((void *)0) , endEvent850 },
{ 870, script870, ( ( 0x152 - 1) << 16 | ( 1 )), ((void *)0) , endEvent870 },
{ 871, script871, ( ( 0x152 - 1) << 16 | ( 2 )), ((void *)0) , endEvent871 },
{ 1506, script1506, ( ( 0x152 - 1) << 16 | ( 0x12 )), ((void *)0) , ((void *)0) },
{ -1, ((void *)0) , 0, ((void *)0) , ((void *)0) },
}
s16 script870[]
Definition wstag800.c:397
s16 script871[]
Definition wstag800.c:421
void endEvent871(void)
After event 871, with the player: gives the player the Dramon Guard and keeps it from playing again.
Definition wstag800.c:319
void endEvent870(void)
After event 870, with Mech Soldier: starts the stage's event battle 0 and keeps it from playing again...
Definition wstag800.c:310
s16 script850[]
Definition wstag800.c:357
s16 script1506[]
Definition wstag800.c:519
void endEvent850(void)
After event 850, with the player: sets flag 0x1C0A and keeps it from playing again.
Definition wstag800.c:301

Definition at line 745 of file wstag800.c.

Referenced by setupStage().