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

WSTAG805: Magasta 1F, Undersea Base. More...

#include "common.h"
#include "field/stage.h"
#include "common/is_on_screen.inc.c"
#include "common/start_stage.inc.c"
Include dependency graph for wstag805.c:

Go to the source code of this file.

Macros

#define STAGE_CHILDREN_SIZE   0xC
 
#define STAGE_TEXT   TEXT_FILE(TEXT_TALKS_07)
 
#define EVENT_TEXT_FILE   (TEXT_EVENTS_800 - 1)
 
#define STAGE_FILE   0x672
 

Functions

StageFloater * createFloater (s32 x, s32 y, s32 up)
 Defined below, after the code that uses them.
 
void updateFloaterChain (StageFloaterChain *task, StageFloaters *children)
 Creates the 27 floaters; in TASK_DONE sets them moving one after the other.
 
void handleCommand841 (StageFloaterChain *task, s32 id)
 Starts the chain when the event of map object 0x335 happens.
 
void * createFloaterChain (s32 arg)
 Creates the chain of floaters.
 
s32 stepTileLoop (StageTileAnim *obj, StageTileLoopFrame *frames, s32 depth)
 Advances a looping animation, returns its frame.
 
void updateTileQuad (StageTileQuad *task)
 Animates the map objects with animations 1 to 4: 2 and 3 hidden while running.
 
void handleCommand840 (StageTileQuad *task, s32 id)
 Plays a sound and starts the map objects' TASK_DONE animations when the event of map object 0x35B happens.
 
void * createTileQuad (s32 arg)
 Creates the map objects of event 881, where the Juggernaut launches (updateTileQuad), with an id.
 
s32 stepFloaterPart (StageFloaterPart *obj, StageFloaterFrame *frames, s32 once, s32 depth)
 Advances a part's animation (adding up its deltas when once), returns its frame.
 
void drawFloaterPart (StageFloater *task, Layer *layer, s32 idx)
 Draws a part of a floater.
 
void updateFloater (StageFloater *task)
 A floater: animated in place while running, moving up or down with a sound in TASK_DONE.
 
void updateStage (StageTask *task, void **children)
 Creates two objects and the event object of flags 0x4046/0x4048 that applies.
 
void endEvent880 (void)
 After event 880, with Royal Guard: starts the stage's event battle 0 and keeps it from playing again.
 
void endEvent881 (void)
 After event 881, with the player: gives the player the Wing Helmet.
 
void endEvent882 (void)
 After event 882, with Royal Guard: keeps it from playing again.
 
void setupStage (void)
 Sets the stage up: its map, actors, battles and events, playing BGM_0011.
 

Variables

StageFloaterSpot updateFloaterChainSpots []
 
s16 floaterChainTimes []
 
StageTileLoopFrame * updateTileQuadFrames []
 
StageFloaterFrame updateFloaterFrames0 []
 
StageFloaterFrame updateFloaterFrames2 []
 
StageFloaterFrame updateFloaterFrames3 []
 
StageFloaterFrame updateFloaterFrames1 []
 
StageTileLoopFrame updateTileQuadFrames_3 []
 
StageTileLoopFrame updateTileQuadFrames_0 []
 
StageTileLoopFrame updateTileQuadFrames_1 []
 
StageTileLoopFrame updateTileQuadFrames_2 []
 
const CVECTOR stageColor = { 0x80, 0x80, 0x80, 0x00 }
 the color the setup copies to FIELDSTG_state.spriteColor
 
s16 script880 []
 
s16 script881 []
 
s16 script882 []
 
AreaBattle area0Battle0 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) }
 
AreaBattle area0Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 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 = { 22, 18, (0x60000000 | ( 0x23 ) << 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 actor0Conditions [] = { (0x6000 | ( STORY_REAL_WORLD )) , 1, 0xFFFF }
 
u16 actor1Conditions []
 
u16 actor2Conditions [] = { (0x6000 | ( STORY_REAL_WORLD )) , 1, 0xFFFF }
 
FieldActorEntry actor0 = { actor0Conditions, ((void *)0) , 1, 4, 0, 0, 0 }
 
FieldActorEntry actor1 = { actor1Conditions, ((void *)0) , 0xD2, 5, 360, 197, 3 }
 
FieldActorEntry actor2 = { actor2Conditions, ((void *)0) , 0x13C, 6, 0, 0, 1 }
 
FieldActorEntry * stageActors []
 
StageTile stageObjects []
 The tables and color setupStage gives FIELDSTG_state (FieldState)
 
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

WSTAG805: Magasta 1F, Undersea Base.

Where the Juggernaut launches.

Definition in file wstag805.c.

Macro Definition Documentation

◆ STAGE_CHILDREN_SIZE

#define STAGE_CHILDREN_SIZE   0xC

Definition at line 348 of file wstag805.c.

◆ STAGE_TEXT

#define STAGE_TEXT   TEXT_FILE(TEXT_TALKS_07)

Definition at line 376 of file wstag805.c.

◆ EVENT_TEXT_FILE

#define EVENT_TEXT_FILE   (TEXT_EVENTS_800 - 1)

Definition at line 377 of file wstag805.c.

◆ STAGE_FILE

#define STAGE_FILE   0x672

Definition at line 378 of file wstag805.c.

Function Documentation

◆ createFloater()

StageFloater * createFloater ( s32  x,
s32  y,
s32  up 
)

Defined below, after the code that uses them.

Creates a floater at (x, y)

Definition at line 307 of file wstag805.c.

Referenced by updateFloaterChain().

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

◆ updateFloaterChain()

void updateFloaterChain ( StageFloaterChain *  task,
StageFloaters *  children 
)

Creates the 27 floaters; in TASK_DONE sets them moving one after the other.

Definition at line 22 of file wstag805.c.

Referenced by createFloaterChain().

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

◆ handleCommand841()

void handleCommand841 ( StageFloaterChain *  task,
s32  id 
)

Starts the chain when the event of map object 0x335 happens.

Definition at line 51 of file wstag805.c.

◆ createFloaterChain()

void * createFloaterChain ( s32  arg)

Creates the chain of floaters.

Definition at line 60 of file wstag805.c.

Referenced by updateStage().

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

◆ stepTileLoop()

s32 stepTileLoop ( StageTileAnim *  obj,
StageTileLoopFrame *  frames,
s32  depth 
)

Advances a looping animation, returns its frame.

Definition at line 65 of file wstag805.c.

Referenced by stepTileLoop(), and updateTileQuad().

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

◆ updateTileQuad()

void updateTileQuad ( StageTileQuad *  task)

Animates the map objects with animations 1 to 4: 2 and 3 hidden while running.

Definition at line 92 of file wstag805.c.

Referenced by createTileQuad().

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

◆ handleCommand840()

void handleCommand840 ( StageTileQuad *  task,
s32  id 
)

Plays a sound and starts the map objects' TASK_DONE animations when the event of map object 0x35B happens.

Definition at line 186 of file wstag805.c.

◆ createTileQuad()

void * createTileQuad ( s32  arg)

Creates the map objects of event 881, where the Juggernaut launches (updateTileQuad), with an id.

Definition at line 197 of file wstag805.c.

Referenced by updateStage().

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

◆ stepFloaterPart()

s32 stepFloaterPart ( StageFloaterPart *  obj,
StageFloaterFrame *  frames,
s32  once,
s32  depth 
)

Advances a part's animation (adding up its deltas when once), returns its frame.

Definition at line 202 of file wstag805.c.

Referenced by stepFloaterPart(), and updateFloater().

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

◆ drawFloaterPart()

void drawFloaterPart ( StageFloater *  task,
Layer *  layer,
s32  idx 
)

Draws a part of a floater.

Definition at line 238 of file wstag805.c.

Referenced by updateFloater().

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

◆ updateFloater()

void updateFloater ( StageFloater *  task)

A floater: animated in place while running, moving up or down with a sound in TASK_DONE.

< the map, its objects and characters, and the menus

Definition at line 250 of file wstag805.c.

Referenced by createFloater().

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

◆ updateStage()

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

Creates two objects and the event object of flags 0x4046/0x4048 that applies.

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

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

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

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

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

< 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 317 of file wstag805.c.

Here is the call graph for this function:

◆ endEvent880()

void endEvent880 ( void  )

After event 880, with Royal Guard: 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 355 of file wstag805.c.

◆ endEvent881()

void endEvent881 ( void  )

After event 881, with the player: gives the player the Wing Helmet.

Definition at line 361 of file wstag805.c.

◆ endEvent882()

void endEvent882 ( void  )

After event 882, with Royal Guard: keeps it from playing again.

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

Definition at line 366 of file wstag805.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

Definition at line 381 of file wstag805.c.

Variable Documentation

◆ updateFloaterChainSpots

StageFloaterSpot updateFloaterChainSpots
Initial value:
= {
{ 8, 140, 0 },
{ 28, 0x12C, 1 },
{ 48, 120, 0 },
{ 68, 0x118, 1 },
{ 88, 100, 0 },
{ 108, 0x104, 1 },
{ 128, 80, 0 },
{ 148, 240, 1 },
{ 168, 60, 0 },
{ 188, 220, 1 },
{ 208, 40, 1 },
{ 228, 200, 0 },
{ 248, 20, 1 },
{ 0x120, 0, 1 },
{ 0x148, -0x14, 1 },
{ 0x15C, 140, 1 },
{ 0x170, -0x28, 0 },
{ 0x184, 120, 1 },
{ 0x198, -0x3C, 0 },
{ 0x1AC, 100, 1 },
{ 0x1C0, -0x50, 0 },
{ 0x1D4, 80, 1 },
{ 0x1FC, 60, 1 },
{ 0x224, 40, 1 },
{ 0x24C, 20, 1 },
{ 0x274, 0, 1 },
{ 0x29C, -0x14, 1 },
}

Definition at line 551 of file wstag805.c.

Referenced by updateFloaterChain().

◆ floaterChainTimes

s16 floaterChainTimes
Initial value:
= {
0, 4, 12, 16, 24, 28, 36, 40,
48, 52, 60, 64, 72, 84, 96, 100,
108, 112, 120, 124, 132, 136, 148, 160,
172, 184, 196, 0x1000,
}

Definition at line 580 of file wstag805.c.

Referenced by updateFloaterChain().

◆ updateTileQuadFrames

StageTileLoopFrame * updateTileQuadFrames
Initial value:
= {
}
StageTileLoopFrame updateTileQuadFrames_2[]
Definition wstag805.c:620
StageTileLoopFrame updateTileQuadFrames_0[]
Definition wstag805.c:586
StageTileLoopFrame updateTileQuadFrames_3[]
Definition wstag805.c:602
StageTileLoopFrame updateTileQuadFrames_1[]
Definition wstag805.c:611

Definition at line 630 of file wstag805.c.

Referenced by updateTileQuad().

◆ updateFloaterFrames0

StageFloaterFrame updateFloaterFrames0
Initial value:
= {
{ 42, 4, 0 },
{ 42, 4, 0 },
{ 43, 4, 0 },
{ 43, 4, 0 },
{ 44, 4, 0 },
{ 44, 4, 0 },
{ 45, 4, 0 },
{ 45, 4, 0 },
{ 255, 0, 0 },
}

Definition at line 636 of file wstag805.c.

Referenced by updateFloater().

◆ updateFloaterFrames2

StageFloaterFrame updateFloaterFrames2
Initial value:
= {
{ 0, 4, 0 },
{ 1, 4, 0 },
{ 0, 4, 0 },
{ 1, 4, 0 },
{ 0, 4, 0 },
{ 1, 4, 0 },
{ 0, 4, 0 },
{ 1, 4, 0 },
{ 255, 0, 0 },
}

Definition at line 647 of file wstag805.c.

Referenced by updateFloater().

◆ updateFloaterFrames3

StageFloaterFrame updateFloaterFrames3
Initial value:
= {
{ 11, 4, 0 },
{ 12, 4, 0 },
{ 13, 4, 0 },
{ 14, 4, 0 },
{ 15, 4, 0 },
{ 16, 4, 0 },
{ 17, 4, 0 },
{ 17, 4, 0 },
{ 18, 30, 64 },
{ 18, 30, 0 },
{ 255, 0x3E7, 0 },
}

Definition at line 658 of file wstag805.c.

Referenced by updateFloater().

◆ updateFloaterFrames1

StageFloaterFrame updateFloaterFrames1
Initial value:
= {
{ 0, 8, 0 },
{ 1, 8, 0 },
{ 2, 8, 0 },
{ 3, 8, 0 },
{ 4, 8, 0 },
{ 5, 8, 0 },
{ 255, 0, 0 },
}

Definition at line 671 of file wstag805.c.

Referenced by updateFloater().

◆ updateTileQuadFrames_3

StageTileLoopFrame updateTileQuadFrames_3
Initial value:
= {
{ 0, 8, 0 },
{ 1, 8, 0 },
{ 2, 8, 0 },
{ 3, 8, 0 },
{ 4, 8, 0 },
{ 5, 8, 0 },
{ 255, 0, 0 },
}

Definition at line 602 of file wstag805.c.

Referenced by updateTileQuad().

◆ updateTileQuadFrames_0

StageTileLoopFrame updateTileQuadFrames_0
Initial value:
= {
{ 23, 4, 0 },
{ 24, 4, 0 },
{ 25, 4, 0 },
{ 26, 4, 0 },
{ 27, 4, 0 },
{ 28, 4, 0 },
{ 29, 4, 0 },
{ 30, 4, 0 },
{ 31, 4, 0 },
{ 32, 4, 0 },
{ 33, 4, 0 },
{ 34, 8, 0 },
{ 35, 8, 0 },
{ 255, 0, 11 },
}

Definition at line 586 of file wstag805.c.

Referenced by updateTileQuad().

◆ updateTileQuadFrames_1

StageTileLoopFrame updateTileQuadFrames_1
Initial value:
= {
{ 0, 8, 0 },
{ 1, 8, 0 },
{ 2, 8, 0 },
{ 3, 6, 0 },
{ 4, 6, 0 },
{ 5, 6, 0 },
{ 255, 0, 0 },
}

Definition at line 611 of file wstag805.c.

Referenced by updateTileQuad().

◆ updateTileQuadFrames_2

StageTileLoopFrame updateTileQuadFrames_2
Initial value:
= {
{ 0x12C, 4, 0 },
{ 0, 8, 0 },
{ 1, 8, 0 },
{ 2, 8, 0 },
{ 3, 6, 0 },
{ 4, 6, 0 },
{ 5, 6, 0 },
{ 255, 0, 1 },
}

Definition at line 620 of file wstag805.c.

Referenced by updateTileQuad().

◆ stageColor

const CVECTOR stageColor = { 0x80, 0x80, 0x80, 0x00 }

the color the setup copies to FIELDSTG_state.spriteColor

the color the setup copies to FIELDSTG_state.spriteColor

It starts the stage, before its jump tables: in wstag924.c GCC would align them to 8 bytes after it, so it is a file of its own, linked first

Definition at line 370 of file wstag805.c.

Referenced by setupStage().

◆ script880

s16 script880[]

Definition at line 400 of file wstag805.c.

◆ script881

s16 script881[]

Definition at line 445 of file wstag805.c.

◆ script882

s16 script882[]

Definition at line 514 of file wstag805.c.

◆ area0Battle0

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

Definition at line 680 of file wstag805.c.

◆ area0Battle1

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

Definition at line 681 of file wstag805.c.

◆ area0Battle2

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

Definition at line 682 of file wstag805.c.

◆ area0Battle3

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

Definition at line 683 of file wstag805.c.

◆ area0Battle4

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

Definition at line 684 of file wstag805.c.

◆ area0Battle5

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

Definition at line 685 of file wstag805.c.

◆ area0Battle6

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

Definition at line 686 of file wstag805.c.

◆ area0Battle7

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

Definition at line 687 of file wstag805.c.

◆ area0Battles

BattleList area0Battles
Initial value:
= {
0,
}
AreaBattle area0Battle7
Definition wstag805.c:687
AreaBattle area0Battle1
Definition wstag805.c:681
AreaBattle area0Battle6
Definition wstag805.c:686
AreaBattle area0Battle3
Definition wstag805.c:683
AreaBattle area0Battle5
Definition wstag805.c:685
AreaBattle area0Battle0
Definition wstag805.c:680
AreaBattle area0Battle2
Definition wstag805.c:682
AreaBattle area0Battle4
Definition wstag805.c:684

Definition at line 688 of file wstag805.c.

◆ area1Battle0

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

Definition at line 693 of file wstag805.c.

◆ area1Battle1

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

Definition at line 694 of file wstag805.c.

◆ area1Battle2

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

Definition at line 695 of file wstag805.c.

◆ area1Battle3

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

Definition at line 696 of file wstag805.c.

◆ area1Battle4

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

Definition at line 697 of file wstag805.c.

◆ area1Battle5

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

Definition at line 698 of file wstag805.c.

◆ area1Battle6

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

Definition at line 699 of file wstag805.c.

◆ area1Battle7

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

Definition at line 700 of file wstag805.c.

◆ area1Battles

BattleList area1Battles
Initial value:
= {
0,
}
AreaBattle area1Battle6
Definition wstag805.c:699
AreaBattle area1Battle2
Definition wstag805.c:695
AreaBattle area1Battle4
Definition wstag805.c:697
AreaBattle area1Battle5
Definition wstag805.c:698
AreaBattle area1Battle3
Definition wstag805.c:696
AreaBattle area1Battle0
Definition wstag805.c:693
AreaBattle area1Battle1
Definition wstag805.c:694
AreaBattle area1Battle7
Definition wstag805.c:700

Definition at line 701 of file wstag805.c.

◆ area2Battle0

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

Definition at line 706 of file wstag805.c.

◆ area2Battle1

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

Definition at line 707 of file wstag805.c.

◆ area2Battle2

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

Definition at line 708 of file wstag805.c.

◆ area2Battle3

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

Definition at line 709 of file wstag805.c.

◆ area2Battle4

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

Definition at line 710 of file wstag805.c.

◆ area2Battle5

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

Definition at line 711 of file wstag805.c.

◆ area2Battle6

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

Definition at line 712 of file wstag805.c.

◆ area2Battle7

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

Definition at line 713 of file wstag805.c.

◆ area2Battles

BattleList area2Battles
Initial value:
= {
0,
}
AreaBattle area2Battle7
Definition wstag805.c:713
AreaBattle area2Battle6
Definition wstag805.c:712
AreaBattle area2Battle0
Definition wstag805.c:706
AreaBattle area2Battle4
Definition wstag805.c:710
AreaBattle area2Battle2
Definition wstag805.c:708
AreaBattle area2Battle1
Definition wstag805.c:707
AreaBattle area2Battle5
Definition wstag805.c:711
AreaBattle area2Battle3
Definition wstag805.c:709

Definition at line 714 of file wstag805.c.

◆ area3Battle0

AreaBattle area3Battle0 = { 22, 18, (0x60000000 | ( 0x23 ) << 18 | ( 0 )) }

Definition at line 719 of file wstag805.c.

◆ area3Battle1

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

Definition at line 720 of file wstag805.c.

◆ area3Battle2

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

Definition at line 721 of file wstag805.c.

◆ area3Battle3

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

Definition at line 722 of file wstag805.c.

◆ area3Battle4

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

Definition at line 723 of file wstag805.c.

◆ area3Battle5

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

Definition at line 724 of file wstag805.c.

◆ area3Battle6

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

Definition at line 725 of file wstag805.c.

◆ area3Battle7

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

Definition at line 726 of file wstag805.c.

◆ area3Battles

BattleList area3Battles
Initial value:
= {
0,
}
AreaBattle area3Battle4
Definition wstag805.c:723
AreaBattle area3Battle3
Definition wstag805.c:722
AreaBattle area3Battle0
Definition wstag805.c:719
AreaBattle area3Battle2
Definition wstag805.c:721
AreaBattle area3Battle1
Definition wstag805.c:720
AreaBattle area3Battle6
Definition wstag805.c:725
AreaBattle area3Battle5
Definition wstag805.c:724
AreaBattle area3Battle7
Definition wstag805.c:726

Definition at line 727 of file wstag805.c.

◆ stageBattles

FieldBattles stageBattles[]
Initial value:
= {
}
BattleList area3Battles
Definition wstag805.c:727
BattleList area1Battles
Definition wstag805.c:701
BattleList area2Battles
Definition wstag805.c:714
BattleList area0Battles
Definition wstag805.c:688

Definition at line 732 of file wstag805.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 },
{ 0x140, 0x100, 0x159, 0x120, 0x64, 0x20, 0x140, 0x1F5 },
{ 0x140, 0x100, 0x147, 0x100, 0x1C, 0, 0x150, 0x1F5 },
{ 0x140, 0x100, 0x144, 0x1D8, 0x10, 0xD8, 0x160, 0x1F5 },
}

Definition at line 735 of file wstag805.c.

Referenced by setupStage().

◆ actor0Conditions

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

Definition at line 746 of file wstag805.c.

◆ actor1Conditions

u16 actor1Conditions[]
Initial value:
= {
(0x6000 | ( STORY_REAL_WORLD )) , 1,
(( 0x40 ) << 8 | ( 0x46 )) , 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 747 of file wstag805.c.

◆ actor2Conditions

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

Definition at line 752 of file wstag805.c.

◆ actor0

FieldActorEntry actor0 = { actor0Conditions, ((void *)0) , 1, 4, 0, 0, 0 }

Definition at line 753 of file wstag805.c.

◆ actor1

FieldActorEntry actor1 = { actor1Conditions, ((void *)0) , 0xD2, 5, 360, 197, 3 }

Definition at line 754 of file wstag805.c.

◆ actor2

FieldActorEntry actor2 = { actor2Conditions, ((void *)0) , 0x13C, 6, 0, 0, 1 }

Definition at line 755 of file wstag805.c.

◆ stageActors

FieldActorEntry* stageActors[]
Initial value:
= {
((void *)0) ,
}
FieldActorEntry actor0
Definition wstag805.c:753
FieldActorEntry actor2
Definition wstag805.c:755
FieldActorEntry actor1
Definition wstag805.c:754

Definition at line 756 of file wstag805.c.

Referenced by setupStage().

◆ stageObjects

StageTile stageObjects[]
Initial value:
= {
{ 1, 1, 0xFF, 6, 0x13, 0, 0, 0, 0, 0, 235, 78, 0, 0 },
{ 1, 2, 0xFF, 6, 0x15, 0, 0, 0, 0, 0, 235, 78, 0, 0 },
{ 1, 3, 0xFF, 6, 0x16, 0, 0, 0, 0, 0, 235, 78, 0, 0 },
{ 1, 4, 0xFF, 6, 0x17, 0, 0, 0, 0, 0, 235, 78, 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 762 of file wstag805.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 wstag805.c:381

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 769 of file wstag805.c.

◆ stageEvents

FieldEvent stageEvents[]
Initial value:
= {
{ 880, script880, ( ( 0x152 - 1) << 16 | ( 3 )), ((void *)0) , endEvent880 },
{ 881, script881, ( ( 0x152 - 1) << 16 | ( 4 )), ((void *)0) , endEvent881 },
{ 882, script882, ( ( 0x152 - 1) << 16 | ( 5 )), ((void *)0) , endEvent882 },
{ -1, ((void *)0) , 0, ((void *)0) , ((void *)0) },
}
void endEvent881(void)
After event 881, with the player: gives the player the Wing Helmet.
Definition wstag805.c:361
void endEvent882(void)
After event 882, with Royal Guard: keeps it from playing again.
Definition wstag805.c:366
s16 script880[]
Definition wstag805.c:400
s16 script882[]
Definition wstag805.c:514
s16 script881[]
Definition wstag805.c:445
void endEvent880(void)
After event 880, with Royal Guard: starts the stage's event battle 0 and keeps it from playing again.
Definition wstag805.c:355

Definition at line 772 of file wstag805.c.

Referenced by setupStage().