Digimon World 3 decomp
The European version, SLES_039.36
Loading...
Searching...
No Matches
wstag641.c
Go to the documentation of this file.
1/*
2 * WSTAG641: Mobius Desert, West Sector: the looping part, on the Amaterasu
3 * server. On the Amaterasu server; its Asuka server twin is WSTAG640.
4 */
5
6#include "common.h"
7#include "field/stage.h"
8
12
13#if VERSION_US || VERSION_JP
14#define STAGE_TEXT TEXT_FILE(TEXT_TALKS_07)
15#define STAGE_FILE 0x623
16#elif VERSION_EU
17#define STAGE_TEXT TEXT_FILE(TEXT_TALKS_07)
18#define STAGE_FILE 0x633
19#endif
20/* Sets the stage up: its map, actors and battles, playing the ambience ENV_0016 */
39
40StagePoint placePoints1_1Point3 = { 0x2C1, 1, 1, 0x368, 0x2EC, 3, NULL };
41StagePoint placePoints1_1Point2 = { 0x2C1, 1, 3, 0x340, 240, 1, &placePoints1_1Point3 };
42StagePoint placePoints1_1Point1 = { 0x2C1, 1, 2, 0x110, 0x108, 7, &placePoints1_1Point2 };
43StagePoint placePoints1_1Point0 = { 0x2C0, 0, 0, 0x100, 0x278, 5, &placePoints1_1Point1 };
45StagePoint placePoints1_2Point3 = { 0x2C1, 1, 2, 0x368, 0x2EC, 3, NULL };
46StagePoint placePoints1_2Point2 = { 0x2C1, 1, 4, 0x340, 240, 1, &placePoints1_2Point3 };
47StagePoint placePoints1_2Point1 = { 0x2C1, 1, 1, 0x110, 0x108, 7, &placePoints1_2Point2 };
48StagePoint placePoints1_2Point0 = { 0x2C0, 0, 0, 0x100, 0x278, 5, &placePoints1_2Point1 };
50StagePoint placePoints1_3Point3 = { 0x2C1, 1, 4, 0x368, 0x2EC, 3, NULL };
51StagePoint placePoints1_3Point2 = { 0x2C1, 1, 5, 0x340, 240, 1, &placePoints1_3Point3 };
52StagePoint placePoints1_3Point1 = { 0x2C1, 1, 3, 0x110, 0x108, 7, &placePoints1_3Point2 };
53StagePoint placePoints1_3Point0 = { 0x2C1, 1, 1, 0x128, 0x2F4, 5, &placePoints1_3Point1 };
55StagePoint placePoints1_4Point3 = { 0x2C1, 1, 3, 0x368, 0x2EC, 3, NULL };
56StagePoint placePoints1_4Point2 = { 0x2C1, 1, 6, 0x340, 240, 1, &placePoints1_4Point3 };
57StagePoint placePoints1_4Point1 = { 0x2C1, 1, 4, 0x110, 0x108, 7, &placePoints1_4Point2 };
58StagePoint placePoints1_4Point0 = { 0x2C1, 1, 2, 0x128, 0x2F4, 5, &placePoints1_4Point1 };
60StagePoint placePoints1_5Point3 = { 0x2C1, 1, 5, 0x368, 0x2EC, 3, NULL };
61StagePoint placePoints1_5Point2 = { 0x2C1, 1, 7, 0x340, 240, 1, &placePoints1_5Point3 };
62StagePoint placePoints1_5Point1 = { 0x2C1, 1, 6, 0x110, 0x108, 7, &placePoints1_5Point2 };
63StagePoint placePoints1_5Point0 = { 0x2C1, 1, 3, 0x128, 0x2F4, 5, &placePoints1_5Point1 };
65StagePoint placePoints1_6Point3 = { 0x2C1, 1, 6, 0x368, 0x2EC, 3, NULL };
66StagePoint placePoints1_6Point2 = { 0x2C1, 1, 8, 0x340, 240, 1, &placePoints1_6Point3 };
67StagePoint placePoints1_6Point1 = { 0x2C1, 1, 5, 0x110, 0x108, 7, &placePoints1_6Point2 };
68StagePoint placePoints1_6Point0 = { 0x2C1, 1, 4, 0x128, 0x2F4, 5, &placePoints1_6Point1 };
70StagePoint placePoints1_7Point3 = { 0x2C1, 1, 8, 0x368, 0x2EC, 3, NULL };
71StagePoint placePoints1_7Point2 = { 0x2C1, 1, 1, 0x340, 240, 1, &placePoints1_7Point3 };
72StagePoint placePoints1_7Point1 = { 0x2C1, 1, 7, 0x110, 0x108, 7, &placePoints1_7Point2 };
73StagePoint placePoints1_7Point0 = { 0x2C1, 1, 5, 0x128, 0x2F4, 5, &placePoints1_7Point1 };
75StagePoint placePoints1_8Point3 = { 0x2C1, 1, 7, 0x368, 0x2EC, 3, NULL };
76StagePoint placePoints1_8Point2 = { 0x2C1, 1, 2, 0x340, 240, 1, &placePoints1_8Point3 };
77StagePoint placePoints1_8Point1 = { 0x2C1, 1, 8, 0x110, 0x108, 7, &placePoints1_8Point2 };
78StagePoint placePoints1_8Point0 = { 0x2C1, 1, 6, 0x128, 0x2F4, 5, &placePoints1_8Point1 };
99AreaBattle area1Battle0 = { 0, 0, MUSIC(1, 0) };
100AreaBattle area1Battle1 = { 0, 0, MUSIC(1, 0) };
101AreaBattle area1Battle2 = { 0, 0, MUSIC(1, 0) };
102AreaBattle area1Battle3 = { 0, 0, MUSIC(1, 0) };
103AreaBattle area1Battle4 = { 0, 0, MUSIC(1, 0) };
104AreaBattle area1Battle5 = { 0, 0, MUSIC(1, 0) };
105AreaBattle area1Battle6 = { 0, 0, MUSIC(1, 0) };
106AreaBattle area1Battle7 = { 0, 0, MUSIC(1, 0) };
112AreaBattle area2Battle0 = { 0, 0, MUSIC(1, 0) };
113AreaBattle area2Battle1 = { 0, 0, MUSIC(1, 0) };
114AreaBattle area2Battle2 = { 0, 0, MUSIC(1, 0) };
115AreaBattle area2Battle3 = { 0, 0, MUSIC(1, 0) };
116AreaBattle area2Battle4 = { 0, 0, MUSIC(1, 0) };
117AreaBattle area2Battle5 = { 0, 0, MUSIC(1, 0) };
118AreaBattle area2Battle6 = { 0, 0, MUSIC(1, 0) };
119AreaBattle area2Battle7 = { 0, 0, MUSIC(1, 0) };
125AreaBattle area3Battle0 = { 0, 0, MUSIC(1, 0) };
126AreaBattle area3Battle1 = { 0, 0, MUSIC(1, 0) };
127AreaBattle area3Battle2 = { 0, 0, MUSIC(1, 0) };
128AreaBattle area3Battle3 = { 0, 0, MUSIC(1, 0) };
129AreaBattle area3Battle4 = { 0, 0, MUSIC(1, 0) };
130AreaBattle area3Battle5 = { 0, 0, MUSIC(1, 0) };
131AreaBattle area3Battle6 = { 0, 0, MUSIC(1, 0) };
132AreaBattle area3Battle7 = { 0, 0, MUSIC(1, 0) };
142 { 0x200, 0x100, 0x21C, 0x1A6, 0x70, 0xA6, 0x230, 0x1FE },
143 { 0x200, 0x100, 0x200, 0x100, 0, 0, 0x220, 0x1FE },
144 { 0x200, 0x100, 0x216, 0x138, 0x58, 0x38, 0x200, 0x1FD },
145 { 0x200, 0x100, 0x208, 0x1BC, 0x20, 0xBC, 0x210, 0x1FD },
146 { 0x200, 0x100, 0x210, 0x1BC, 0x40, 0xBC, 0x220, 0x1FD },
147 { 0x200, 0x100, 0x200, 0x1BC, 0, 0xBC, 0x230, 0x1FD },
148};
150 { 1, 0, 0x40, 2, 0, 0, 0, 0, 0, 0, 324, 536, 0, 0 },
151 { 1, 0, 0x40, 2, 0, 0, 0, 0, 0, 0, 372, 224, 0, 0 },
152 { 1, 0, 0x40, 2, 0, 0, 0, 0, 0, 0, 516, 664, 0, 0 },
153 { 1, 0, 0x40, 2, 0, 0, 0, 0, 0, 0, 532, 288, 0, 0 },
154 { 1, 0, 0x40, 2, 0, 0, 0, 0, 0, 0, 580, 456, 0, 0 },
155 { 1, 0, 0x40, 2, 0, 0, 0, 0, 0, 0, 708, 616, 0, 0 },
156 { 1, 0, 0x40, 2, 0, 0, 0, 0, 0, 0, 724, 272, 0, 0 },
157 { 1, 0, 0x40, 2, 0, 0, 0, 0, 0, 0, 788, 464, 0, 0 },
158 { 1, 0, 0x60, 4, 1, 0, 0, 0, 0, 0, 388, 238, 328, 0 },
159 { 1, 0, 0x60, 4, 2, 0, 0, 0, 0, 0, 548, 302, 392, 0 },
160 { 1, 0, 0x60, 4, 3, 0, 0, 0, 0, 0, 740, 286, 377, 0 },
161 { 1, 0, 0x60, 4, 4, 0, 0, 0, 0, 0, 596, 470, 561, 0 },
162 { 1, 0, 0x60, 4, 5, 0, 0, 0, 0, 0, 804, 478, 568, 0 },
163 { 1, 0, 0x60, 4, 6, 0, 0, 0, 0, 0, 340, 550, 640, 0 },
164 { 1, 0, 0x60, 4, 7, 0, 0, 0, 0, 0, 532, 678, 768, 0 },
165 { 1, 0, 0x60, 4, 8, 0, 0, 0, 0, 0, 724, 630, 717, 0 },
166 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
167};
169 { { { CODES_END, 0 }, { CODES_END, 0 } }, SLOT_EXIT, 0x2C2, 0x358, 0xFC, 5, 0, 0, 0 },
170 { { { CODES_END, 0 }, { CODES_END, 0 } }, SLOT_EXIT, 0x2C2, 0x350, 0x2F8, 7, 0, 0, 0 },
171 { { { CODES_END, 0 }, { CODES_END, 0 } }, SLOT_EXIT, 0x2C2, 0x118, 0x2EC, 1, 0, 0, 0 },
172 { { { CODES_END, 0 }, { CODES_END, 0 } }, SLOT_EXIT, 0x2C2, 0x120, 0x100, 3, 0, 0, 0 },
173 { { { CODES_END, 0 }, { CODES_END, 0 } }, 0, 0, 0, 0, 0, 0, 0, 0 },
174};
175void (*stageFuncs[])(void) = {
177};
#define NULL
Definition common.h:17
The stage overlays (AAA/PRO/WSTAG###.PRO), loaded at 0x800A4CA4 on top of FIELDSTG.
#define FIELD_MAP_FLOOR0
Some of FieldMap's maps (files): those of the floors the player walks on come first,...
Definition field_map.h:85
#define SLOT_EXIT
The kinds of StageSlot (type).
Definition field_map.h:255
#define FIELD_MAP_AREAS
a cell's value: its battle area (FieldBattles), or 0
Definition field_map.h:87
#define FIELD_MAP_TRIGGERS
a cell's value: a direction (3 bits) and a StageSlot (5)
Definition field_map.h:88
FieldMap FIELDSTG_map
Definition fieldstg.c:3660
FieldState FIELDSTG_state
Definition fieldstg.c:2641
#define CODES_END
Definition game_state.h:83
#define MUSIC_BATTLE
BATL0000: the maps' random battles (AreaBattle, nearly all of them)
Definition sound.h:76
#define MUSIC_DESERT
ENV_0016: the West Sector's deserts and the Mirage Tower.
Definition sound.h:132
#define MUSIC(bank, n)
A field's or a battle's music (FieldState.music, Battle.music): track (SEP) n of the first sequence o...
Definition sound.h:70
#define MUSIC_BANK(music)
The sound bank of a music, which a stage loads for it (FieldState.soundBank)
Definition sound.h:148
FIELDSTG's start of the stage (StageEntry.init in FIELDSTG_stages): the stage's task,...
Where an actor's frames go in VRAM: one of the records after the FieldImage (Actor....
Definition field_map.h:114
A battle of an area's BattleList, which can start on the field (see FIELDSTG_startEncounter); FIGHTST...
Definition field_map.h:402
The battles of an area of the map (its cells' value at FieldMap.files[4]), one picked at random.
Definition field_map.h:411
The battles of a place (FieldState.battles), by area of the map: the fourth area's are also the ones ...
Definition field_map.h:422
void(* setFile)(s32 index, s32 file)
FIELDSTG_setMapFile.
Definition field_map.h:100
void(* setFirstMap)(s32 index)
FIELDSTG_setFirstMap: the map the player starts on (GAME.mapIndex), when the mode is new.
Definition field_map.h:104
s32 sheetEntry
the stage's sprite sheet, loaded before the field starts, or 0
Definition field_map.h:445
s32 soundBank
SOUND.loadBank's, or 0.
Definition field_map.h:459
StageTile * objects
the map objects, up to the first margin 0
Definition field_map.h:446
s32 imageFile
or an image archive file, or 0
Definition field_map.h:449
FieldBattles * battles
Definition field_map.h:450
Vec2 start
where the player starts
Definition field_map.h:456
StageSlot * slots
up to the first type 0
Definition field_map.h:447
ActorImage * actors
then the actors', from actors[2]
Definition field_map.h:454
s32 mapFile
the file of the map's tiles (FIELDSTG_createMapStreamer)
Definition field_map.h:444
s32 startDir
and its direction
Definition field_map.h:457
s32 textFile
the stage's text file, for the talks
Definition field_map.h:461
union FieldState::@12 images
s32 music
SOUND.playSound's, or 0.
Definition field_map.h:460
Where an exit (StageSlot) leads: copyPlacePoints copies a place's points to the stage's first slots,...
Definition stage.h:50
The points of a place (GAME.place and GAME.placeArg, which the exit the player came through set)
Definition stage.h:62
What the player can trigger on a map (FIELDSTG_updateTriggers): a record of the table at FieldState....
Definition field_map.h:276
An object of a map, which FIELDSTG draws: a record of the table at FieldState.objects,...
Definition field_map.h:208
Definition gfx.h:352
AreaBattle area2Battle7
Definition wstag641.c:119
StagePoints placePoints1_5
Definition wstag641.c:64
StagePoint placePoints1_7Point3
Definition wstag641.c:70
void(* stageFuncs[])(void)
The stage's functions (common/start_stage.inc.c calls the first): a StageFuncs in the stages with a t...
Definition wstag641.c:175
StagePoint placePoints1_3Point3
Definition wstag641.c:50
StagePoints placePoints1_7
Definition wstag641.c:74
StagePoint placePoints1_1Point0
Definition wstag641.c:43
StagePoint placePoints1_5Point3
Definition wstag641.c:60
AreaBattle area2Battle6
Definition wstag641.c:118
StagePoint placePoints1_5Point2
Definition wstag641.c:61
StagePoint placePoints1_7Point0
Definition wstag641.c:73
StagePoints placePoints1_2
Definition wstag641.c:49
StagePoint placePoints1_8Point1
Definition wstag641.c:77
AreaBattle area1Battle6
Definition wstag641.c:105
StagePoint placePoints1_6Point2
Definition wstag641.c:66
StagePoint placePoints1_5Point0
Definition wstag641.c:63
AreaBattle area0Battle7
Definition wstag641.c:93
AreaBattle area3Battle4
Definition wstag641.c:129
AreaBattle area3Battle3
Definition wstag641.c:128
StagePoint placePoints1_3Point0
Definition wstag641.c:53
AreaBattle area0Battle1
Definition wstag641.c:87
StagePoint placePoints1_2Point0
Definition wstag641.c:48
AreaBattle area2Battle0
Definition wstag641.c:112
StagePoints placePoints1_8
Definition wstag641.c:79
AreaBattle area1Battle2
Definition wstag641.c:101
StagePoint placePoints1_2Point2
Definition wstag641.c:46
AreaBattle area3Battle0
Definition wstag641.c:125
AreaBattle area0Battle6
Definition wstag641.c:92
AreaBattle area3Battle2
Definition wstag641.c:127
StagePoint placePoints1_4Point1
Definition wstag641.c:57
StagePoint placePoints1_4Point3
Definition wstag641.c:55
StagePoint placePoints1_6Point3
Definition wstag641.c:65
StagePoint placePoints1_2Point3
Definition wstag641.c:45
AreaBattle area3Battle1
Definition wstag641.c:126
StagePoint placePoints1_1Point2
Definition wstag641.c:41
AreaBattle area0Battle3
Definition wstag641.c:89
AreaBattle area3Battle6
Definition wstag641.c:131
StagePoint placePoints1_6Point1
Definition wstag641.c:67
StagePoints placePoints1_1
Definition wstag641.c:44
StagePoint placePoints1_1Point1
Definition wstag641.c:42
ActorImage stageImages[]
Definition wstag641.c:141
void setupStage(void)
Sets the stage up: its map, actors and battles, playing the ambience ENV_0016.
Definition wstag641.c:21
StagePoints * placePoints[]
Names some stages define.
Definition wstag641.c:81
AreaBattle area2Battle4
Definition wstag641.c:116
StagePoint placePoints1_8Point3
Definition wstag641.c:75
StageTile stageObjects[]
The tables and color setupStage gives FIELDSTG_state (FieldState)
Definition wstag641.c:149
StagePoint placePoints1_5Point1
Definition wstag641.c:62
StagePoint placePoints1_4Point2
Definition wstag641.c:56
BattleList area3Battles
Definition wstag641.c:133
AreaBattle area3Battle5
Definition wstag641.c:130
AreaBattle area0Battle5
Definition wstag641.c:91
BattleList area1Battles
Definition wstag641.c:107
StagePoints placePoints0_0
Definition wstag641.c:80
StagePoint placePoints1_7Point1
Definition wstag641.c:72
StagePoint placePoints1_2Point1
Definition wstag641.c:47
BattleList area2Battles
Definition wstag641.c:120
StagePoint placePoints1_4Point0
Definition wstag641.c:58
AreaBattle area1Battle4
Definition wstag641.c:103
AreaBattle area2Battle2
Definition wstag641.c:114
AreaBattle area1Battle5
Definition wstag641.c:104
StagePoint placePoints1_3Point1
Definition wstag641.c:52
StageSlot stageSlots[]
Definition wstag641.c:168
AreaBattle area2Battle1
Definition wstag641.c:113
StagePoints placePoints1_4
Definition wstag641.c:59
AreaBattle area1Battle3
Definition wstag641.c:102
AreaBattle area1Battle0
Definition wstag641.c:99
StagePoint placePoints1_1Point3
Definition wstag641.c:40
StagePoint placePoints1_8Point0
Definition wstag641.c:78
AreaBattle area0Battle0
Definition wstag641.c:86
AreaBattle area0Battle2
Definition wstag641.c:88
#define STAGE_FILE
Definition wstag641.c:18
AreaBattle area2Battle5
Definition wstag641.c:117
AreaBattle area1Battle1
Definition wstag641.c:100
StagePoint placePoints1_6Point0
Definition wstag641.c:68
AreaBattle area2Battle3
Definition wstag641.c:115
StagePoint placePoints1_8Point2
Definition wstag641.c:76
StagePoint placePoints1_7Point2
Definition wstag641.c:71
AreaBattle area0Battle4
Definition wstag641.c:90
#define STAGE_TEXT
Definition wstag641.c:17
StagePoint placePoints1_3Point2
Definition wstag641.c:51
StagePoints placePoints1_6
Definition wstag641.c:69
AreaBattle area3Battle7
Definition wstag641.c:132
BattleList area0Battles
Definition wstag641.c:94
AreaBattle area1Battle7
Definition wstag641.c:106
StagePoints placePoints1_3
Definition wstag641.c:54
FieldBattles stageBattles[]
Definition wstag641.c:138