Digimon World 3 decomp
The European version, SLES_039.36
Loading...
Searching...
No Matches
wstag225.c
Go to the documentation of this file.
1/*
2 * WSTAG225: Login Room, Asuka City.
3 */
4
5#include "common.h"
6#include "field/stage.h"
7/* Defined below, after the code that uses them */
9extern s8 tileEffectSortY[];
10extern s8 tileEffectY[];
11extern s16 tileEffectPlaces[][2];
12
14
16
17/* Once the substate is set to 1, moves the map objects of animations 1-3 to (x, y), plays a sound and animates them once */
19 StageTile *tile;
20 StageTile *t;
21 s32 i;
22 s32 n;
23 s32 j;
24 s32 frame;
25 s32 done;
26
27 switch (task->state) {
28 case TASK_INIT:
29 default:
30 resetTileEffect(task);
31 task->nextState(task);
32 break;
33 case TASK_RUN:
34 switch (task->substate) {
35 case 0:
36 break;
37 case 1:
38 switch (task->step) {
39 case 0:
40 n = 0;
41 for (t = FIELDSTG_state.objects; t->margin != 0; t++) {
42 if (t->anim >= 1 && t->anim <= 3) {
43 task->anims[n].tile = t;
44 t->x = task->x;
45 t->y = task->y + tileEffectY[n];
46 t->sortY = task->y + tileEffectSortY[n];
47 n++;
48 }
49 }
51 task->nextStep(task);
52 /* fallthrough */
53 case 1:
54 done = 0;
55 for (i = 0; i < 3; i++) {
56 tile = task->anims[i].tile;
57 frame = stepAnimationOnce(&task->anims[i], updateTileEffectFrames[i], 0);
58 switch (frame) {
59 case 0xFF:
60 done++;
61 tile->visible = 0;
62 tile->frame = 0;
63 break;
64 case 0x12C:
65 tile->visible = 0;
66 tile->frame = 0;
67 break;
68 default:
69 tile->visible = 1;
70 tile->frame = frame;
71 break;
72 }
73 }
74 if (done < 3) {
75 break;
76 }
77 task->nextStep(task);
78 /* fallthrough */
79 case 2:
80 for (j = 0; j < 3; j++) {
81 task->anims[j].tile->visible = 0;
82 }
83 resetTileEffect(task);
84 task->setSubstate(task, 0);
85 break;
86 }
87 break;
88 }
89 break;
90 case TASK_DONE:
91 case TASK_KILL:
92 break;
93 }
94}
95
96/* Starts the effect at the place of map object 0x346 or 0x347 */
98 s32 i;
99
100 if (task != NULL) {
101 i = 0;
102 switch (id) {
103 case 0x347:
104 i = 1;
105 /* fallthrough */
106 case 0x346:
107 task->x = tileEffectPlaces[i][0];
108 task->y = tileEffectPlaces[i][1];
109 task->setSubstate(task, 1);
110 break;
111 }
112 }
113}
114
115/*
116 * Command 815 of the event scripts: the effect of event 5, the player's
117 * arrival at the Asuka Server
118 */
120 return createTaskWithId(updateTileEffect, sizeof(StageTileEffect), 0, arg);
121}
122
123/* Creates the arrival effect (updateTileEffect) without an id; nothing in the game calls it */
124void *createTileEffect(void) {
125 return createTask(updateTileEffect, sizeof(StageTileEffect), 0);
126}
127
128/* Creates the event object of progress 1 */
129void updateStage(StageTask *task, void **children) {
130 switch (task->state) {
131 case TASK_INIT:
132 default:
134 children[0] = FIELDSTG_startEvent(5);
135 }
136 task->nextState(task);
137 break;
138 case TASK_RUN:
139 case TASK_DONE:
140 case TASK_KILL:
141 break;
142 }
143}
144
145#define STAGE_CHILDREN_SIZE 4
147
148/* After event 5, with Account Clerk: moves the story on to STORY_LOGGED_IN */
149void endEvent5(void) {
151}
152
153#if VERSION_US || VERSION_JP
154#define STAGE_TEXT TEXT_FILE(TEXT_TALKS_05)
155#define EVENT_TEXT_FILE (TEXT_EVENTS_200 - 1)
156#define STAGE_FILE 0x191
157#define STAGE_ARCHIVE 0x3BD
158#elif VERSION_EU
159#define STAGE_TEXT TEXT_FILE(TEXT_TALKS_05)
160#define EVENT_TEXT_FILE (TEXT_EVENTS_200 - 1)
161#define STAGE_FILE 0x19F
162#define STAGE_ARCHIVE 0x3CD
163#endif
164/*
165 * Sets the stage up: its map, actors and events, playing the ambience
166 * ENV_0011; BGM_0029 instead at story steps 0x14 to 0x17 and 0x27 to 0x28
167 */
194
196 SCRIPT_LOOK_AT(1, 0x11E, 0x127),
197 SCRIPT_PLACE(1, 0, 0),
198 SCRIPT_POSE(1, 1, 0),
199 SCRIPT_PLACE(0xD, 0x10F, 0x191),
200 SCRIPT_POSE(0xD, 1, 3),
201 SCRIPT_COMMAND(0x32F, 0x345, 1),
202 SCRIPT_WAIT(0x78),
203 SCRIPT_WAIT(0x1E),
204 SCRIPT_COMMAND(0x32F, 0x346, 1),
205 SCRIPT_WAIT(0x5A),
206 SCRIPT_WAIT(0x5A),
207 SCRIPT_PLACE(1, 0x170, 0x11F),
208 SCRIPT_POSE(1, 1, 1),
209 SCRIPT_WAIT(0xB4),
210 SCRIPT_WAIT(0x1E),
211 SCRIPT_WALK(1, 0x150, 0x130, 1),
213 SCRIPT_POSE(1, 0x3A, 1),
214 SCRIPT_WAIT(0xB4),
215 SCRIPT_TALK(0, 1, 1, 0),
216 SCRIPT_POSE(1, 1, 1),
218 SCRIPT_WAIT(0x1E),
219 SCRIPT_WALK(1, 0x130, 0x160, 1),
221 SCRIPT_FOLLOW(0, 1),
222 SCRIPT_WALK(1, 0xF0, 0x180, 1),
224 SCRIPT_POSE(1, 1, 7),
225 SCRIPT_WAIT(0x1E),
226 SCRIPT_TALK(0, 2, 0xD, 2),
227 SCRIPT_POSE(0xD, 7, 3),
229 SCRIPT_POSE(0xD, 1, 3),
230 SCRIPT_WAIT(0x1E),
231 SCRIPT_TALK(0, 3, 1, 1),
232 SCRIPT_POSE(1, 7, 7),
234 SCRIPT_POSE(1, 1, 7),
235 SCRIPT_WAIT(0x1E),
236 SCRIPT_POSE(0xD, 1, 1),
238 SCRIPT_WALK(1, 0x50, 0x1D0, 7),
239 SCRIPT_WAIT(6),
240 SCRIPT_LEAVE(0x203, 0x2DA, 0x17E, 1),
242 /* after the end, the original's padding up to a word, which isn't zeros */
243#if VERSION_US
244 0x8FB0,
245#endif
246};
248 { 70, 4 }, { 71, 4 }, { 70, 4 }, { 71, 4 },
249 { 255, 0x3E7 },
250};
252 { 0x12C, 56 }, { 85, 6 }, { 86, 6 }, { 87, 4 },
253 { 88, 4 }, { 89, 4 }, { 90, 4 }, { 88, 4 },
254 { 89, 4 }, { 90, 4 }, { 88, 4 }, { 89, 4 },
255 { 90, 4 }, { 88, 4 }, { 89, 4 }, { 90, 4 },
256 { 88, 4 }, { 89, 4 }, { 90, 4 }, { 255, 0x3E7 },
257};
259 { 0x12C, 16 }, { 72, 4 }, { 73, 4 }, { 74, 4 },
260 { 73, 4 }, { 75, 6 }, { 76, 6 }, { 77, 14 },
261 { 78, 114 }, { 79, 6 }, { 80, 6 }, { 81, 6 },
262 { 82, 6 }, { 83, 6 }, { 84, 8 }, { 255, 0x3E7 },
263};
268 30, 30, 30, 0,
269};
271 0, -0x2F, -0x2F, 0,
272};
274 { 0x150, 0x112 }, { 112, 0x112 },
275};
277 { 0x200, 0x100, 0x21C, 0x1A6, 0x70, 0xA6, 0x230, 0x1FE },
278 { 0x200, 0x100, 0x200, 0x100, 0, 0, 0x220, 0x1FE },
279 { 0x200, 0x100, 0x216, 0x138, 0x58, 0x38, 0x200, 0x1FD },
280 { 0x200, 0x100, 0x208, 0x1BC, 0x20, 0xBC, 0x210, 0x1FD },
281 { 0x200, 0x100, 0x210, 0x1BC, 0x40, 0xBC, 0x220, 0x1FD },
282 { 0x200, 0x100, 0x200, 0x1BC, 0, 0xBC, 0x230, 0x1FD },
283 { 0x140, 0x100, 0x152, 0x1D0, 0x48, 0xD0, 0x170, 0x1FE },
284 { 0x140, 0x100, 0x170, 0x1B0, 0xC0, 0xB0, 0x160, 0x1FD },
285 { 0x140, 0x100, 0x14A, 0x1B8, 0x28, 0xB8, 0x170, 0x1FD },
286 { 0x140, 0x100, 0x162, 0x1D0, 0x88, 0xD0, 0x150, 0x1FC },
287 { 0x140, 0x100, 0x15A, 0x1D0, 0x68, 0xD0, 0x160, 0x1FC },
288};
290 { NULL, NULL, 0x1C },
291 { NULL, NULL, 0 },
292};
294 { NULL, NULL, 0x19A },
295 { NULL, NULL, 0 },
296};
298 { NULL, NULL, 0x19B },
299 { NULL, NULL, 0 },
300};
302 { NULL, NULL, 0x19D },
303 { NULL, NULL, 0 },
304};
306 { NULL, NULL, 0x1A1 },
307 { NULL, NULL, 0 },
308};
310 { NULL, NULL, 0x1A2 },
311 { NULL, NULL, 0 },
312};
314 { NULL, NULL, 0x19C },
315 { NULL, NULL, 0 },
316};
318 { NULL, NULL, 0x19E },
319 { NULL, NULL, 0 },
320};
322 { NULL, NULL, 0x19F },
323 { NULL, NULL, 0 },
324};
326 { NULL, NULL, 0x1A3 },
327 { NULL, NULL, 0 },
328};
330 { NULL, NULL, 0x1B1 },
331 { NULL, NULL, 0 },
332};
334 { NULL, NULL, 0x1A0 },
335 { NULL, NULL, 0 },
336};
338 { NULL, NULL, 0x1B0 },
339 { NULL, NULL, 0 },
340};
374 &actor0,
375 &actor1,
376 &actor2,
377 &actor3,
378 &actor4,
379 &actor5,
380 &actor6,
381 &actor7,
382 &actor8,
383 &actor9,
384 &actor10,
385 &actor11,
386 &actor12,
387 &actor13,
388 &actor14,
389 &actor15,
390 NULL,
391};
393 { 0, 1, 0x50, 6, 0x46, 0, 0, 0, 0, 0, 112, 274, 0, 0 },
394 { 1, 0, 0x40, 6, 0x3F, 1, 0x3F, 0x42, 6, 0, 116, 258, 0, 0 },
395 { 1, 0, 0x40, 6, 0x3F, 1, 0x3F, 0x42, 6, 0, 228, 282, 0, 0 },
396 { 1, 0, 0x40, 6, 0x3F, 1, 0x3F, 0x42, 6, 0, 340, 258, 0, 0 },
397 { 1, 0, 0x40, 6, 0x3F, 1, 0x3F, 0x42, 6, 0, 355, 346, 0, 0 },
398 { 0, 2, 0x50, 4, 0x48, 0, 0, 0, 0, 0, 112, 227, 301, 0 },
399 { 0, 3, 0x50, 4, 0x55, 0, 0, 0, 0, 0, 112, 227, 294, 0 },
400 { 1, 0, 0x40, 4, 0x3B, 1, 0x3B, 0x3E, 6, 0, 116, 274, 300, 0 },
401 { 1, 0, 0x40, 4, 0x3B, 1, 0x3B, 0x3E, 6, 0, 228, 298, 324, 0 },
402 { 1, 0, 0x40, 4, 0x3B, 1, 0x3B, 0x3E, 6, 0, 340, 274, 300, 0 },
403 { 1, 0, 0x40, 4, 0x3B, 1, 0x3B, 0x3E, 6, 0, 355, 362, 388, 0 },
404 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
405};
407 { { { CODES_END, 0 }, { CODES_END, 0 } }, SLOT_EXIT, 0x203, 0x2DA, 0x17E, 1, 0, 0, 0 },
408 { { { CODES_END, 0 }, { CODES_END, 0 } }, 0, 0, 0, 0, 0, 0, 0, 0 },
409};
410void (*stageFuncs[])(void) = {
412};
414 { 5, script5, EVENT_TEXT(0), NULL, endEvent5 },
415 { -1, NULL, 0, NULL, NULL },
416};
#define NULL
Definition common.h:17
signed int s32
Definition common.h:11
signed char s8
Definition common.h:7
signed short s16
Definition common.h:9
unsigned short u16
Definition common.h:10
GameState GAME
The save data, the game mode and the methods.
Definition state.c:64
#define TASK_RUN
Definition task.h:35
#define TASK_KILL
Definition task.h:37
#define TASK_INIT
Tasks: every game object is a task, a heap block that starts with this header and is updated once per...
Definition task.h:34
#define TASK_DONE
Definition task.h:36
EventTask * FIELDSTG_startEvent(s32 id)
Starts the event id of FieldState.events: its script, start and end, and its text; the player stands ...
Definition event.c:250
The stage overlays (AAA/PRO/WSTAG###.PRO), loaded at 0x800A4CA4 on top of FIELDSTG.
#define EVENT_TEXT(n)
An entry of the stage's events' text file, for FieldEvent.text.
Definition stage.h:732
#define SOUND_LOGINEF
Definition stage.h:750
void updateStage()
The names every stage defines, each its own (config/<version>/stages/<stage>.txt).
#define SCRIPT_WAIT_WALK(id)
until the character gets to its goal
Definition field_map.h:168
#define SCRIPT_END
The commands of an event script (FieldEvent.script), as FIELDSTG_runEvent reads them: a halfword kind...
Definition field_map.h:156
#define SCRIPT_LOOK_AT(snap, x, y)
FIELDSTG_pointCamera.
Definition field_map.h:172
#define SCRIPT_LEAVE(mode, x, y, dir)
FIELDSTG_leaveField; ends the event.
Definition field_map.h:170
#define SCRIPT_COMMAND(id, command, arg)
the same word for a script command's id: FIELDSTG_setEventPose creates its task if none runs and hand...
Definition field_map.h:161
#define SCRIPT_FOLLOW(snap, id)
FIELDSTG_followWithCamera.
Definition field_map.h:171
#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 SCRIPT_WALK(id, x, y, dir)
Actor.setGoal: walks to (x, y), then faces dir.
Definition field_map.h:162
#define SCRIPT_WAIT_BOX
until box 0 closes
Definition field_map.h:167
#define SLOT_EXIT
The kinds of StageSlot (type).
Definition field_map.h:255
#define SCRIPT_POSE(id, set, dir)
Actor.setPose: its animation set, facing dir.
Definition field_map.h:158
#define FIELD_MAP_TRIGGERS
a cell's value: a direction (3 bits) and a StageSlot (5)
Definition field_map.h:88
#define SCRIPT_WAIT(frames)
Definition field_map.h:166
#define SCRIPT_PLACE(id, x, y)
puts a character at (x, y)
Definition field_map.h:157
#define SCRIPT_TALK(box, entry, id, kind)
box of the event's boxes shows the event text's entry: a talk box at the corner kind next to the char...
Definition field_map.h:165
FieldMap FIELDSTG_map
Definition fieldstg.c:3660
FieldState FIELDSTG_state
Definition fieldstg.c:2641
#define CODES_END
Definition game_state.h:83
#define PROGRESS(n)
GAME.progress is n.
Definition game_state.h:69
void resetTileEffect(StageTileEffect *task)
Restarts the three animations of a StageTileEffect, from the stage's updateTileEffectFrames.
SoundState SOUND
rsin and rcos (libgte) read rsin_tbl[a - 0x800] and the like: their addresses before the table fall i...
Definition sound.c:180
#define MUSIC_DIGIMON_LAB
ENV_0011: Asuka's Digimon Lab and Login Room.
Definition sound.h:127
#define MUSIC_CITY_CRISIS
BGM_0029: the cities and their streets instead of their music while the story is at a crisis (Knightm...
Definition sound.h:105
#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,...
s32 stepAnimationOnce(StageTileAnim *obj, AnimFrame *frames, s32 depth)
Steps OBJ's animation through FRAMES by the frame time (at most 4) and returns its frame,...
#define SPECIAL_STORY_JUNGLE_SOUND_TO_AMATERASU_BRIDGE
GAME.progress is from STORY_JUNGLE_SOUND to STORY_AMATERASU_BRIDGE (PROGRESS_RANGES[0x12])
Definition story.h:1917
@ STORY_PRESIDENT_ARRESTED
WSTAG226 (Login Room, Amaterasu City), event 935, after the President of MAGAMI gives himself up (WST...
Definition story.h:136
@ STORY_LOGGED_IN
WSTAG225 (Login Room, Asuka City), event 5: the first login, where the account clerk explains Digimon...
Definition story.h:29
@ STORY_BYAKKO_LEADER_FOUGHT
WSTAG620 (the rebels' hideout), event 534: the Byakko Leader takes the player for the A....
Definition story.h:85
@ STORY_CONTROL_ROOM
WSTAG325 (Control Room, Asuka City), event 560: a Soldier guards the way.
Definition story.h:90
@ STORY_GUNSLINGER
WSTAG810 (Gunslinger 1F), event 1035.
Definition story.h:143
@ STORY_GENJI_BEATEN
WSTAG200, event 52: after the first battle, won against Tamer Genji (event 50), the Digimon Navi give...
Definition story.h:36
@ STORY_KNIGHTMON_REPROGRAMMED
WSTAG210 (Main Lobby, Asuka City), event 685: the A.o.A have reprogrammed Knightmon,...
Definition story.h:97
@ STORY_TEDDY_FOUND
WSTAG212, event 352: Teddy is found; MAGAMI is part of the A.o.A, and the player sets off to beat the...
Definition story.h:67
@ STORY_LOOKING_FOR_TEDDY
WSTAG212, event 273: Kail and the player will put on the Agumon Suits to look for Teddy.
Definition story.h:61
@ STORY_ACCOUNT_REGISTERED
WSTAG785, event 1: the account is registered, and the clerk sends Junior to the Chamber Room.
Definition story.h:26
@ STORY_MOVIE_BATTLES
WSTAG820, event 1080, with Snatchmon: each encounter plays MODE_BATTLE_MOVIE first.
Definition story.h:146
@ STORY_ASUKA_HEADQUARTERS
WSTAG310 (A.o.A Headquarters, Asuka City), event 961.
Definition story.h:138
@ STORY_AGUMON_DISGUISE
WSTAG237 (Underground Path), event 300: in the Agumon Suit; Kail goes on ahead alone.
Definition story.h:64
#define SPECIAL_STORY_ASUKA_HEADQUARTERS_TO_OPERATION_SIGMA
GAME.progress is from STORY_ASUKA_HEADQUARTERS to STORY_OPERATION_SIGMA (PROGRESS_RANGES[0x13])
Definition story.h:1920
#define SPECIAL_STORY_DE_SINCERITY_TO_LISA_SAVED
GAME.progress is from STORY_DE_SINCERITY to STORY_LISA_SAVED (PROGRESS_RANGES[0xF])
Definition story.h:1908
#define SPECIAL_STORY_SEIRYU_BADGE_TO_ZANBAMON_DRIVEN_OFF
GAME.progress is from STORY_SEIRYU_BADGE to STORY_ZANBAMON_DRIVEN_OFF (PROGRESS_RANGES[0xE])
Definition story.h:1905
#define SPECIAL_STORY_KNIGHTMON_REPROGRAMMED_TO_BULBMON_FOUND
GAME.progress is from STORY_KNIGHTMON_REPROGRAMMED to STORY_BULBMON_FOUND (PROGRESS_RANGES[0x11])
Definition story.h:1914
Where an actor's frames go in VRAM: one of the records after the FieldImage (Actor....
Definition field_map.h:114
One frame of a sprite animation; frame 0xFF ends it (or loops it)
Definition gfx.h:296
A character of the field (FieldState.actors, a list of pointers up to NULL), which FIELDSTG_updateFie...
Definition field_map.h:194
An event of the table FieldState.events, up to the first id -1, which FIELDSTG_startEvent starts.
Definition field_map.h:141
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
FieldEvent * events
up to the first id -1
Definition field_map.h:451
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
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
What a character says (FIELDSTG_runActorAction): the first whose conditions hold, or the last,...
Definition field_map.h:176
short(* playSound)(s32 id)
returns the voice of a key-on
Definition sound.h:187
What the player can trigger on a map (FIELDSTG_updateTriggers): a record of the table at FieldState....
Definition field_map.h:276
The task a stage starts (startStage), updated by its updateStage.
Definition stage.h:26
void(* nextState)(struct StageTask *task)
Definition stage.h:27
s32 state
Definition stage.h:27
StageTile * tile
Definition stage.h:109
Three map objects (animations 1 to 3) moved to (x, y) and animated once when the substate is set to 1...
Definition stage.h:117
StageTileAnim anims[3]
Definition stage.h:121
void(* setSubstate)(struct StageTileEffect *task, s32 substate)
Definition stage.h:118
void(* nextState)(struct StageTileEffect *task)
Definition stage.h:118
void(* nextStep)(struct StageTileEffect *task)
Definition stage.h:118
An object of a map, which FIELDSTG draws: a record of the table at FieldState.objects,...
Definition field_map.h:208
u8 margin
how far off the view it is still drawn; 0 ends the table
Definition field_map.h:214
u8 anim
which of a stage's animations sets frame (1-3); FIELDSTG finds objects by it (its lift,...
Definition field_map.h:210
s16 sortY
drawn sorted at this y, or 0
Definition field_map.h:224
Definition gfx.h:352
void * createTask(void(*update)(), s32 size, s32 childrenSize)
createTaskWithId for a task nothing needs to find
Definition task.c:105
void * createTaskWithId(void(*update)(), s32 size, s32 childrenSize, s32 id)
Allocates a zeroed task of size bytes (header included) with room for childrenSize / 4 child tasks.
Definition task.c:80
u16 actor1Conditions[]
Definition wstag225.c:342
FieldActorEntry actor0
Definition wstag225.c:357
void(* stageFuncs[])(void)
The stage's functions (common/start_stage.inc.c calls the first): a StageFuncs in the stages with a t...
Definition wstag225.c:410
FieldActorEntry actor6
Definition wstag225.c:363
u16 actor11Conditions[]
Definition wstag225.c:352
FieldTalk actor2Talks[]
Definition wstag225.c:289
void handleCommand815(StageTileEffect *task, s32 id)
Starts the effect at the place of map object 0x346 or 0x347.
Definition wstag225.c:97
void * createCommand815(s32 arg)
Command 815 of the event scripts: the effect of event 5, the player's arrival at the Asuka Server.
Definition wstag225.c:119
void endEvent5(void)
After event 5, with Account Clerk: moves the story on to STORY_LOGGED_IN.
Definition wstag225.c:149
u16 actor10Conditions[]
Definition wstag225.c:351
void updateTileEffect(StageTileEffect *task)
Once the substate is set to 1, moves the map objects of animations 1-3 to (x, y), plays a sound and a...
Definition wstag225.c:18
AnimFrame * updateTileEffectFrames[]
Defined below, after the code that uses them.
Definition wstag225.c:264
FieldTalk actor5Talks[]
Definition wstag225.c:301
FieldActorEntry actor5
Definition wstag225.c:362
s8 tileEffectSortY[]
Definition wstag225.c:267
FieldActorEntry actor2
Definition wstag225.c:359
u16 actor9Conditions[]
Definition wstag225.c:350
FieldActorEntry * stageActors[]
Definition wstag225.c:373
s8 tileEffectY[]
Definition wstag225.c:270
u16 actor13Conditions[]
Definition wstag225.c:354
#define STAGE_ARCHIVE
Definition wstag225.c:162
FieldActorEntry actor10
Definition wstag225.c:367
AnimFrame updateTileEffectFrames_0[]
Definition wstag225.c:247
FieldTalk actor4Talks[]
Definition wstag225.c:297
u16 actor4Conditions[]
Definition wstag225.c:345
FieldActorEntry actor4
Definition wstag225.c:361
u16 actor3Conditions[]
Definition wstag225.c:344
s16 tileEffectPlaces[][2]
Definition wstag225.c:273
FieldTalk actor11Talks[]
Definition wstag225.c:325
FieldActorEntry actor8
Definition wstag225.c:365
ActorImage stageImages[]
Definition wstag225.c:276
FieldTalk actor6Talks[]
Definition wstag225.c:305
void setupStage(void)
Sets the stage up: its map, actors and events, playing the ambience ENV_0011; BGM_0029 instead at sto...
Definition wstag225.c:168
s16 script5[]
Definition wstag225.c:195
StageTile stageObjects[]
The tables and color setupStage gives FIELDSTG_state (FieldState)
Definition wstag225.c:392
FieldActorEntry actor9
Definition wstag225.c:366
u16 actor8Conditions[]
Definition wstag225.c:349
u16 actor5Conditions[]
Definition wstag225.c:346
FieldTalk actor10Talks[]
Definition wstag225.c:321
FieldTalk actor3Talks[]
Definition wstag225.c:293
FieldTalk actor9Talks[]
Definition wstag225.c:317
FieldTalk actor15Talks[]
Definition wstag225.c:337
FieldActorEntry actor15
Definition wstag225.c:372
FieldActorEntry actor12
Definition wstag225.c:369
u16 actor15Conditions[]
Definition wstag225.c:356
u16 actor6Conditions[]
Definition wstag225.c:347
u16 actor14Conditions[]
Definition wstag225.c:355
AnimFrame updateTileEffectFrames_2[]
Definition wstag225.c:251
FieldActorEntry actor7
Definition wstag225.c:364
StageSlot stageSlots[]
Definition wstag225.c:406
FieldActorEntry actor13
Definition wstag225.c:370
void * createTileEffect(void)
Creates the arrival effect (updateTileEffect) without an id; nothing in the game calls it.
Definition wstag225.c:124
AnimFrame updateTileEffectFrames_1[]
Definition wstag225.c:258
FieldActorEntry actor11
Definition wstag225.c:368
FieldActorEntry actor1
Definition wstag225.c:358
FieldTalk actor13Talks[]
Definition wstag225.c:333
#define STAGE_FILE
Definition wstag225.c:161
u16 actor7Conditions[]
Definition wstag225.c:348
u16 actor2Conditions[]
Definition wstag225.c:343
FieldTalk actor7Talks[]
Definition wstag225.c:309
#define STAGE_TEXT
Definition wstag225.c:159
FieldTalk actor8Talks[]
Definition wstag225.c:313
FieldTalk actor12Talks[]
Definition wstag225.c:329
FieldActorEntry actor3
Definition wstag225.c:360
FieldActorEntry actor14
Definition wstag225.c:371
FieldEvent stageEvents[]
Definition wstag225.c:413
u16 actor12Conditions[]
Definition wstag225.c:353
u16 actor0Conditions[]
Definition wstag225.c:341