|
Digimon World 3 decomp
The European version, SLES_039.36
|
WSTAG746: Dark Dungeon, North Sector. More...
#include "common.h"#include "field/stage.h"#include "common/update_darkness.inc.c"#include "common/start_stage.inc.c"#include "common/step_animation.inc.c"#include "common/draw_stage_effect.inc.c"#include "common/is_on_screen.inc.c"#include "common/update_stage_effect.inc.c"#include "common/create_stage_effect.inc.c"Go to the source code of this file.
Macros | |
| #define | STAGE_CHILDREN_SIZE 0x58 |
| #define | STAGE_TEXT TEXT_FILE(TEXT_TALKS_07) |
| #define | EVENT_TEXT_FILE (TEXT_EVENTS_700 - 1) |
| #define | STAGE_FILE 0x6CF |
Functions | |
| void * | createDarkness (void) |
| Creates the darkness task (id 0x19) | |
| void * | startEvent8000 (void) |
| Lifts the darkness (TASK_RUN) | |
| void * | startEvent8001 (void) |
| Brings the darkness back (TASK_DONE) | |
| void * | startEvent8002 (void) |
| Lifts the darkness and starts its countdown back (TASK_RUN, key1 = 1) | |
| void | updateStage (StageTask *task, void **children) |
| Creates the stage's twenty effects, another object and the event object of flags 0x4086/0x4087. | |
| void | endEvent1297 (void) |
| After event 1297, with Dark Master: starts the stage's event battle 0 and keeps it from playing again. | |
| void | endEvent1298 (void) |
| After event 1298, with Dark Master: gives the player the EXP Adapter and keeps it from playing again. | |
| void | setupStage (void) |
| Sets the stage up: its map, actors, battles and events, playing BGM_0023, with the Dark Dungeon's darkness off when the player comes in. | |
Variables | |
| StageEffectSpot | updateStageSpots [] |
| Defined below, after the code that uses them. | |
| s16 | script1297 [] |
| s16 | script1298 [] |
| AnimFrame | effectClutFrames [] |
| AnimFrame | effectFrames [] |
| AreaBattle | area0Battle0 = { 181, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
| AreaBattle | area0Battle1 = { 181, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
| AreaBattle | area0Battle2 = { 181, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
| AreaBattle | area0Battle3 = { 181, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
| AreaBattle | area0Battle4 = { 142, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
| AreaBattle | area0Battle5 = { 142, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
| AreaBattle | area0Battle6 = { 142, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
| AreaBattle | area0Battle7 = { 142, 26, (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 = { 29, 26, (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 | actor0Talk0Actions [] |
| u16 | actor3Talk0Conditions [] = { (0x7000 | ( 0x1D )) , 1, 0xFFFF } |
| u16 | actor3Talk1Conditions [] = { (0x6000 | ( STORY_AMATERASU_BRIDGE )) , 1, 0xFFFF } |
| u16 | actor3Talk2Conditions [] = { (0x6000 | ( STORY_PRESIDENT_ARRESTED )) , 1, 0xFFFF } |
| u16 | actor3Talk3Conditions [] = { (0x6000 | ( STORY_MOVIE_BATTLES )) , 1, 0xFFFF } |
| u16 | actor4Talk0Conditions [] = { (0x7000 | ( 0x1D )) , 1, 0xFFFF } |
| u16 | actor4Talk1Conditions [] = { (0x6000 | ( STORY_AMATERASU_BRIDGE )) , 1, 0xFFFF } |
| u16 | actor4Talk2Conditions [] = { (0x6000 | ( STORY_PRESIDENT_ARRESTED )) , 1, 0xFFFF } |
| u16 | actor4Talk3Conditions [] = { (0x6000 | ( STORY_MOVIE_BATTLES )) , 1, 0xFFFF } |
| FieldTalk | actor0Talks [] |
| FieldTalk | actor1Talks [] |
| FieldTalk | actor2Talks [] |
| FieldTalk | actor3Talks [] |
| FieldTalk | actor4Talks [] |
| u16 | actor0Conditions [] = { (( 2 ) << 8 | ( 0x5D )) , 0, 0xFFFF } |
| u16 | actor1Conditions [] |
| u16 | actor2Conditions [] |
| u16 | actor3Conditions [] |
| u16 | actor4Conditions [] |
| FieldActorEntry | actor0 = { actor0Conditions, actor0Talks, 0x21, 4, 785, 233, 1 } |
| FieldActorEntry | actor1 = { actor1Conditions, actor1Talks, 0x9D, 5, 240, 209, 7 } |
| FieldActorEntry | actor2 = { actor2Conditions, actor2Talks, 0x9D, 5, 240, 209, 7 } |
| FieldActorEntry | actor3 = { actor3Conditions, actor3Talks, 0xCD, 6, 240, 209, 7 } |
| FieldActorEntry | actor4 = { actor4Conditions, actor4Talks, 0xCD, 6, 240, 209, 7 } |
| 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 [] |
WSTAG746: Dark Dungeon, North Sector.
On the Amaterasu server; its Asuka server twin is WSTAG745.
Definition in file wstag746.c.
| #define STAGE_CHILDREN_SIZE 0x58 |
Definition at line 85 of file wstag746.c.
| #define STAGE_TEXT TEXT_FILE(TEXT_TALKS_07) |
Definition at line 116 of file wstag746.c.
| #define EVENT_TEXT_FILE (TEXT_EVENTS_700 - 1) |
Definition at line 117 of file wstag746.c.
| #define STAGE_FILE 0x6CF |
Definition at line 118 of file wstag746.c.
| void * createDarkness | ( | void | ) |
Creates the darkness task (id 0x19)
Definition at line 14 of file wstag746.c.
Referenced by updateStage().
| void * startEvent8000 | ( | void | ) |
Lifts the darkness (TASK_RUN)
Definition at line 19 of file wstag746.c.
| void * startEvent8001 | ( | void | ) |
Brings the darkness back (TASK_DONE)
Definition at line 33 of file wstag746.c.
| void * startEvent8002 | ( | void | ) |
Lifts the darkness and starts its countdown back (TASK_RUN, key1 = 1)
Definition at line 47 of file wstag746.c.
| void updateStage | ( | StageTask * | task, |
| void ** | children | ||
| ) |
Creates the stage's twenty effects, another object and the event object of flags 0x4086/0x4087.
< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40
< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40
Definition at line 61 of file wstag746.c.
| void endEvent1297 | ( | void | ) |
After event 1297, with Dark Master: 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 97 of file wstag746.c.
| void endEvent1298 | ( | void | ) |
After event 1298, with Dark Master: gives the player the EXP Adapter and keeps it from playing again.
< 0x40 0x00-0x40: FLAGS_00, GAME.flags02-flags40
Definition at line 106 of file wstag746.c.
| void setupStage | ( | void | ) |
Sets the stage up: its map, actors, battles and events, playing BGM_0023, with the Dark Dungeon's darkness off when the player comes in.
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_0023: the Ice, Fire and Dark Dungeons
< BGM_0023: the Ice, Fire and Dark Dungeons
< 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 124 of file wstag746.c.
| StageEffectSpot updateStageSpots[] |
Defined below, after the code that uses them.
Definition at line 205 of file wstag746.c.
Referenced by updateStage().
| s16 script1297[] |
Definition at line 148 of file wstag746.c.
| s16 script1298[] |
Definition at line 178 of file wstag746.c.
| AnimFrame effectClutFrames[] |
Definition at line 227 of file wstag746.c.
| AnimFrame effectFrames[] |
Definition at line 231 of file wstag746.c.
| AreaBattle area0Battle0 = { 181, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
Definition at line 239 of file wstag746.c.
| AreaBattle area0Battle1 = { 181, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
Definition at line 240 of file wstag746.c.
| AreaBattle area0Battle2 = { 181, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
Definition at line 241 of file wstag746.c.
| AreaBattle area0Battle3 = { 181, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
Definition at line 242 of file wstag746.c.
| AreaBattle area0Battle4 = { 142, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
Definition at line 243 of file wstag746.c.
| AreaBattle area0Battle5 = { 142, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
Definition at line 244 of file wstag746.c.
| AreaBattle area0Battle6 = { 142, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
Definition at line 245 of file wstag746.c.
| AreaBattle area0Battle7 = { 142, 26, (0x60000000 | ( 2 ) << 18 | ( 0 )) } |
Definition at line 246 of file wstag746.c.
| BattleList area0Battles |
Definition at line 247 of file wstag746.c.
| AreaBattle area1Battle0 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 252 of file wstag746.c.
| AreaBattle area1Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 253 of file wstag746.c.
| AreaBattle area1Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 254 of file wstag746.c.
| AreaBattle area1Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 255 of file wstag746.c.
| AreaBattle area1Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 256 of file wstag746.c.
| AreaBattle area1Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 257 of file wstag746.c.
| AreaBattle area1Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 258 of file wstag746.c.
| AreaBattle area1Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 259 of file wstag746.c.
| BattleList area1Battles |
Definition at line 260 of file wstag746.c.
| AreaBattle area2Battle0 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 265 of file wstag746.c.
| AreaBattle area2Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 266 of file wstag746.c.
| AreaBattle area2Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 267 of file wstag746.c.
| AreaBattle area2Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 268 of file wstag746.c.
| AreaBattle area2Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 269 of file wstag746.c.
| AreaBattle area2Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 270 of file wstag746.c.
| AreaBattle area2Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 271 of file wstag746.c.
| AreaBattle area2Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 272 of file wstag746.c.
| BattleList area2Battles |
Definition at line 273 of file wstag746.c.
| AreaBattle area3Battle0 = { 29, 26, (0x60000000 | ( 0x23 ) << 18 | ( 0 )) } |
Definition at line 278 of file wstag746.c.
| AreaBattle area3Battle1 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 279 of file wstag746.c.
| AreaBattle area3Battle2 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 280 of file wstag746.c.
| AreaBattle area3Battle3 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 281 of file wstag746.c.
| AreaBattle area3Battle4 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 282 of file wstag746.c.
| AreaBattle area3Battle5 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 283 of file wstag746.c.
| AreaBattle area3Battle6 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 284 of file wstag746.c.
| AreaBattle area3Battle7 = { 0, 0, (0x60000000 | ( 1 ) << 18 | ( 0 )) } |
Definition at line 285 of file wstag746.c.
| BattleList area3Battles |
Definition at line 286 of file wstag746.c.
| FieldBattles stageBattles[] |
| ActorImage stageImages[] |
Definition at line 294 of file wstag746.c.
Referenced by setupStage().
| u16 actor0Talk0Actions[] |
Definition at line 305 of file wstag746.c.
| u16 actor3Talk0Conditions[] = { (0x7000 | ( 0x1D )) , 1, 0xFFFF } |
Definition at line 311 of file wstag746.c.
| u16 actor3Talk1Conditions[] = { (0x6000 | ( STORY_AMATERASU_BRIDGE )) , 1, 0xFFFF } |
Definition at line 312 of file wstag746.c.
| u16 actor3Talk2Conditions[] = { (0x6000 | ( STORY_PRESIDENT_ARRESTED )) , 1, 0xFFFF } |
Definition at line 313 of file wstag746.c.
| u16 actor3Talk3Conditions[] = { (0x6000 | ( STORY_MOVIE_BATTLES )) , 1, 0xFFFF } |
Definition at line 314 of file wstag746.c.
| u16 actor4Talk0Conditions[] = { (0x7000 | ( 0x1D )) , 1, 0xFFFF } |
Definition at line 315 of file wstag746.c.
| u16 actor4Talk1Conditions[] = { (0x6000 | ( STORY_AMATERASU_BRIDGE )) , 1, 0xFFFF } |
Definition at line 316 of file wstag746.c.
| u16 actor4Talk2Conditions[] = { (0x6000 | ( STORY_PRESIDENT_ARRESTED )) , 1, 0xFFFF } |
Definition at line 317 of file wstag746.c.
| u16 actor4Talk3Conditions[] = { (0x6000 | ( STORY_MOVIE_BATTLES )) , 1, 0xFFFF } |
Definition at line 318 of file wstag746.c.
| FieldTalk actor0Talks[] |
Definition at line 319 of file wstag746.c.
| FieldTalk actor1Talks[] |
Definition at line 323 of file wstag746.c.
| FieldTalk actor2Talks[] |
Definition at line 327 of file wstag746.c.
| FieldTalk actor3Talks[] |
Definition at line 331 of file wstag746.c.
| FieldTalk actor4Talks[] |
Definition at line 338 of file wstag746.c.
| u16 actor0Conditions[] = { (( 2 ) << 8 | ( 0x5D )) , 0, 0xFFFF } |
Definition at line 345 of file wstag746.c.
| u16 actor1Conditions[] |
Definition at line 346 of file wstag746.c.
| u16 actor2Conditions[] |
Definition at line 351 of file wstag746.c.
| u16 actor3Conditions[] |
Definition at line 356 of file wstag746.c.
| u16 actor4Conditions[] |
Definition at line 362 of file wstag746.c.
| FieldActorEntry actor0 = { actor0Conditions, actor0Talks, 0x21, 4, 785, 233, 1 } |
Definition at line 368 of file wstag746.c.
| FieldActorEntry actor1 = { actor1Conditions, actor1Talks, 0x9D, 5, 240, 209, 7 } |
Definition at line 369 of file wstag746.c.
| FieldActorEntry actor2 = { actor2Conditions, actor2Talks, 0x9D, 5, 240, 209, 7 } |
Definition at line 370 of file wstag746.c.
| FieldActorEntry actor3 = { actor3Conditions, actor3Talks, 0xCD, 6, 240, 209, 7 } |
Definition at line 371 of file wstag746.c.
| FieldActorEntry actor4 = { actor4Conditions, actor4Talks, 0xCD, 6, 240, 209, 7 } |
Definition at line 372 of file wstag746.c.
| FieldActorEntry* stageActors[] |
Definition at line 373 of file wstag746.c.
Referenced by setupStage().
| StageTile stageObjects[] |
The tables and color setupStage gives FIELDSTG_state (FieldState)
Definition at line 381 of file wstag746.c.
Referenced by setupStage().
| StageSlot stageSlots[] |
Definition at line 398 of file wstag746.c.
Referenced by setupStage().
| void(* stageFuncs[])(void) | ( | 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.
Definition at line 425 of file wstag746.c.
| FieldEvent stageEvents[] |
Definition at line 428 of file wstag746.c.
Referenced by setupStage().