Digimon World 3 decomp
The European version, SLES_039.36
Loading...
Searching...
No Matches
wstag660.c
Go to the documentation of this file.
1/*
2 * WSTAG660: Byakko City, West Sector.
3 */
4
5#include "common.h"
6#include "field/stage.h"
7
10
11const CVECTOR stageColor = { 0x54, 0x67, 0x96, 0x00 };
12#if VERSION_US || VERSION_JP
13#define STAGE_TEXT TEXT_FILE(TEXT_TALKS_01)
14#define EVENT_TEXT_FILE (TEXT_EVENTS_600 - 1)
15#define STAGE_FILE 0x4B7
16#elif VERSION_EU
17#define STAGE_TEXT TEXT_FILE(TEXT_TALKS_01)
18#define EVENT_TEXT_FILE (TEXT_EVENTS_600 - 1)
19#define STAGE_FILE 0x4C7
20#endif
21/*
22 * Sets the stage up: its map, actors and events, playing BGM_0021; BGM_0029
23 * instead at story steps 0x27 to 0x28 and 0xF to 0x17
24 */
52
54 SCRIPT_FOLLOW(0, 2),
55 SCRIPT_WALK(2, 0x186, 0x320, 5),
56 SCRIPT_PLACE(0x45, 0x127, 0x266),
57 SCRIPT_POSE(0x45, 1, 7),
58 SCRIPT_PLACE(0x46, 0x1E0, 0x2D1),
59 SCRIPT_POSE(0x46, 1, 1),
60 SCRIPT_PLACE(0x47, 0x201, 0x2E1),
61 SCRIPT_POSE(0x47, 1, 1),
62 SCRIPT_PLACE(0x48, 0x221, 0x2F1),
63 SCRIPT_POSE(0x48, 1, 1),
66 SCRIPT_COMMAND(0x323, 0x325, 2),
67 SCRIPT_WAIT(0x3C),
68 SCRIPT_COMMAND(0x323, 0x326, 2),
69 SCRIPT_WAIT(0x1E),
70 SCRIPT_TALK(0, 1, 2, 0),
72 SCRIPT_WAIT(0x1E),
73 SCRIPT_WALK(2, 0x1BD, 0x320, 6),
75 SCRIPT_POSE(2, 1, 3),
76 SCRIPT_WAIT(0x1E),
77 SCRIPT_LOOK_AT(0, 0x190, 0x282),
78 SCRIPT_COMMAND(0x323, 0x325, 0x45),
79 SCRIPT_WAIT(0x3C),
80 SCRIPT_COMMAND(0x323, 0x326, 0x45),
81 SCRIPT_WAIT(0x1E),
82 SCRIPT_TALK(0, 2, 0x45, 3),
84 SCRIPT_WAIT(0x1E),
85 SCRIPT_TALK(0, 3, 0x45, 3),
87 SCRIPT_WAIT(0x1E),
88 SCRIPT_LOOK_AT(0, 0x202, 0x2CA),
89 SCRIPT_POSE(0x46, 1, 2),
90 SCRIPT_POSE(0x48, 1, 0),
91 SCRIPT_WAIT(0x3C),
92 SCRIPT_TALK(0, 4, 0x46, 2),
94 SCRIPT_WAIT(0x1E),
95 SCRIPT_TALK(0, 5, 0x47, 1),
97 SCRIPT_WAIT(0x1E),
98 SCRIPT_TALK(0, 6, 0x48, 0),
100 SCRIPT_POSE(0x46, 1, 1),
101 SCRIPT_POSE(0x48, 1, 1),
102 SCRIPT_WAIT(0x1E),
103 SCRIPT_FOLLOW(0, 2),
104 SCRIPT_WAIT(0x3C),
105 SCRIPT_TALK(0, 8, 2, 1),
107 SCRIPT_WAIT(0x1E),
108 SCRIPT_LEAVE(0x248, 0x1F0, 0x68, 1),
110};
112 SCRIPT_WALK(2, 0x43E, 0x204, 5),
113 SCRIPT_PLACE(0x15, 0x45F, 0x1F6),
114 SCRIPT_POSE(0x15, 1, 1),
117 SCRIPT_POSE(2, 1, 5),
118 SCRIPT_WAIT(6),
119 SCRIPT_WAIT(0x1E),
120 SCRIPT_TALK(0, 1, 0x15, 0),
122 SCRIPT_WAIT(0x1E),
123 SCRIPT_POSE(0x15, 0x36, 1),
125 SCRIPT_WAIT_ANIM(0x15),
126 SCRIPT_POSE(0x15, 0x37, 1),
127 SCRIPT_WAIT(0x5A),
128 SCRIPT_LEAVE(0xC06, 0, 0, 0),
130 /* after the end, the original's padding up to a word, which isn't zeros */
131#if VERSION_EU
132 0x6004,
133#endif
134};
136 { 0x200, 0x100, 0x21C, 0x1A6, 0x70, 0xA6, 0x230, 0x1FE },
137 { 0x200, 0x100, 0x200, 0x100, 0, 0, 0x220, 0x1FE },
138 { 0x200, 0x100, 0x216, 0x138, 0x58, 0x38, 0x200, 0x1FD },
139 { 0x200, 0x100, 0x208, 0x1BC, 0x20, 0xBC, 0x210, 0x1FD },
140 { 0x200, 0x100, 0x210, 0x1BC, 0x40, 0xBC, 0x220, 0x1FD },
141 { 0x200, 0x100, 0x200, 0x1BC, 0, 0xBC, 0x230, 0x1FD },
142 { 0x1C0, 0x100, 0x1E4, 0x1B0, 0x290, 0xB0, 0x150, 0x1FB },
143 { 0x180, 0x100, 0x180, 0x1CF, 0x100, 0xCF, 0x160, 0x1FB },
144 { 0x1C0, 0x100, 0x1F2, 0x128, 0x2C8, 0x28, 0x170, 0x1FB },
145 { 0x1C0, 0x100, 0x1E2, 0x132, 0x288, 0x32, 0x150, 0x1FA },
146 { 0x1C0, 0x100, 0x1EE, 0x100, 0x2B8, 0, 0x160, 0x1FA },
147 { 0x140, 0x100, 0x170, 0x1CE, 0xC0, 0xCE, 0x170, 0x1FA },
148 { 0x1C0, 0x100, 0x1C0, 0x138, 0x200, 0x38, 0x140, 0x1F9 },
149 { 0x1C0, 0x100, 0x1EC, 0x1B0, 0x2B0, 0xB0, 0x150, 0x1F9 },
150 { 0x1C0, 0x100, 0x1D6, 0x144, 0x258, 0x44, 0x160, 0x1F9 },
151 { 0x1C0, 0x100, 0x1C8, 0x14D, 0x220, 0x4D, 0x170, 0x1F9 },
152 { 0x1C0, 0x100, 0x1EC, 0x150, 0x2B0, 0x50, 0x140, 0x1F8 },
153 { 0x1C0, 0x100, 0x1F4, 0x150, 0x2D0, 0x50, 0x150, 0x1F8 },
154 { 0x1C0, 0x100, 0x1DE, 0x152, 0x278, 0x52, 0x160, 0x1F8 },
155 { 0x1C0, 0x100, 0x1F4, 0x1B0, 0x2D0, 0xB0, 0x170, 0x1F8 },
156 { 0x1C0, 0x100, 0x1D0, 0x1B2, 0x240, 0xB2, 0x140, 0x1F7 },
157 { 0x1C0, 0x100, 0x1D8, 0x1B2, 0x260, 0xB2, 0x150, 0x1F7 },
158};
165 { NULL, actor0Talk0Actions, 5 },
166 { NULL, NULL, 0 },
167};
169 { NULL, actor1Talk0Actions, 2 },
170 { NULL, NULL, 0 },
171};
173 { NULL, actor2Talk0Actions, 0xF3 },
174 { NULL, NULL, 0 },
175};
177 { NULL, actor3Talk0Actions, 0xF2 },
178 { NULL, NULL, 0 },
179};
181 { NULL, actor4Talk0Actions, 0x4C },
182 { NULL, NULL, 0 },
183};
185 { NULL, NULL, 0x155 },
186 { NULL, NULL, 0 },
187};
189 { NULL, NULL, 0x154 },
190 { NULL, NULL, 0 },
191};
193 { NULL, NULL, 0x151 },
194 { NULL, NULL, 0 },
195};
197 { NULL, NULL, 0x152 },
198 { NULL, NULL, 0 },
199};
201 { NULL, NULL, 0x147 },
202 { NULL, NULL, 0 },
203};
205 { NULL, NULL, 0x14B },
206 { NULL, NULL, 0 },
207};
209 { NULL, NULL, 0x148 },
210 { NULL, NULL, 0 },
211};
213 { NULL, NULL, 0x149 },
214 { NULL, NULL, 0 },
215};
217 { NULL, NULL, 0x14C },
218 { NULL, NULL, 0 },
219};
221 { NULL, NULL, 0x150 },
222 { NULL, NULL, 0 },
223};
225 { NULL, NULL, 0x14D },
226 { NULL, NULL, 0 },
227};
229 { NULL, NULL, 0x14E },
230 { NULL, NULL, 0 },
231};
233 { NULL, NULL, 0x145 },
234 { NULL, NULL, 0 },
235};
237 { NULL, NULL, 0x142 },
238 { NULL, NULL, 0 },
239};
241 { NULL, NULL, 0x144 },
242 { NULL, NULL, 0 },
243};
245 { NULL, NULL, 0x146 },
246 { NULL, NULL, 0 },
247};
249 { NULL, NULL, 0x143 },
250 { NULL, NULL, 0 },
251};
253 { NULL, NULL, 0x14A },
254 { NULL, NULL, 0 },
255};
257 { NULL, NULL, 0x14F },
258 { NULL, NULL, 0 },
259};
261 { NULL, NULL, 0x153 },
262 { NULL, NULL, 0 },
263};
281u16 actor17Conditions[] = { FLAG(0x1C, 0x26), 1, CODES_END };
283u16 actor19Conditions[] = { FLAG(0x1C, 0x26), 1, CODES_END };
285u16 actor21Conditions[] = { FLAG(0x1C, 0x26), 1, CODES_END };
287u16 actor23Conditions[] = { FLAG(0x1C, 0x26), 1, CODES_END };
302FieldActorEntry actor9 = { actor9Conditions, actor9Talks, 0x36, 0xA, 993, 531, 7 };
310FieldActorEntry actor17 = { actor17Conditions, NULL, 0x45, 0xC, 295, 614, 7 };
312FieldActorEntry actor19 = { actor19Conditions, NULL, 0x46, 0xD, 480, 721, 1 };
314FieldActorEntry actor21 = { actor21Conditions, NULL, 0x47, 0xE, 513, 737, 1 };
316FieldActorEntry actor23 = { actor23Conditions, NULL, 0x48, 0xF, 545, 753, 1 };
318FieldActorEntry actor25 = { actor25Conditions, actor25Talks, 0x49, 0x10, 1329, 411, 1 };
323 &actor0,
324 &actor1,
325 &actor2,
326 &actor3,
327 &actor4,
328 &actor5,
329 &actor6,
330 &actor7,
331 &actor8,
332 &actor9,
333 &actor10,
334 &actor11,
335 &actor12,
336 &actor13,
337 &actor14,
338 &actor15,
339 &actor16,
340 &actor17,
341 &actor18,
342 &actor19,
343 &actor20,
344 &actor21,
345 &actor22,
346 &actor23,
347 &actor24,
348 &actor25,
349 &actor26,
350 &actor27,
351 &actor28,
352 NULL,
353};
355 { 1, 0, 0xC8, 2, 0x5A, 1, 0x5A, 0x61, 0xA, 0, 1314, 270, 0, 0 },
356 { 1, 0, 0x48, 2, 0, 0, 0, 0, 0, 0, 444, 419, 0, 0 },
357 { 1, 0, 0x58, 2, 0xD, 0, 0, 0, 0, 0, 683, 345, 0, 0 },
358 { 1, 0, 0x4C, 2, 0xE, 0, 0, 0, 0, 0, 947, 492, 0, 0 },
359 { 1, 0, 0x60, 2, 0x10, 0, 0, 0, 0, 0, 640, 515, 0, 0 },
360 { 1, 0, 0x74, 2, 0x11, 0, 0, 0, 0, 0, 624, 524, 0, 0 },
361 { 1, 0, 0x44, 2, 0x12, 0, 0, 0, 0, 0, 304, 556, 0, 0 },
362 { 1, 0, 0x40, 2, 7, 1, 7, 0xC, 4, 0, 379, 317, 0, 0 },
363 { 1, 0, 0x40, 2, 7, 1, 7, 0xC, 4, 0, 924, 587, 0, 0 },
364 { 1, 0, 0x41, 2, 3, 0, 0, 0, 0, 0, 960, 418, 0, 0 },
365 { 1, 0, 0x62, 2, 0xF, 0, 0, 0, 0, 0, 938, 609, 0, 0 },
366 { 1, 0, 0x40, 6, 0x32, 2, 0, 5, 8, 0, 1378, 348, 0, 0 },
367 { 1, 0, 0x40, 6, 0x33, 2, 0, 5, 8, 0, 1391, 358, 0, 0 },
368 { 1, 0, 0x40, 6, 0x34, 2, 0, 5, 8, 0, 1250, 357, 0, 0 },
369 { 1, 0, 0x40, 6, 0x34, 2, 0, 5, 8, 0, 1263, 350, 0, 0 },
370 { 1, 0, 0x40, 6, 0x35, 1, 0x35, 0x38, 4, 0, 1217, 367, 0, 0 },
371 { 1, 0, 0x40, 6, 0x35, 1, 0x35, 0x38, 4, 0, 1417, 367, 0, 0 },
372 { 1, 0, 0x40, 6, 0x39, 2, 0, 3, 6, 0, 1310, 259, 0, 0 },
373 { 1, 0, 0xC8, 6, 0x57, 1, 0x57, 0x59, 6, 0, 1144, 428, 0, 0 },
374 { 1, 0, 0x40, 6, 0x3C, 1, 0x3C, 0x3E, 0xA, 0, 939, 765, 0, 0 },
375 { 1, 0, 0x40, 6, 0x3C, 1, 0x3C, 0x3E, 0xA, 0, 1005, 684, 0, 0 },
376 { 1, 0, 0x40, 6, 0x3C, 1, 0x3C, 0x3E, 0xA, 0, 1163, 605, 0, 0 },
377 { 1, 0, 0x40, 6, 0x3C, 1, 0x3C, 0x3E, 0xA, 0, 1324, 525, 0, 0 },
378 { 1, 0, 0x40, 6, 0x3F, 1, 0x3F, 0x41, 0xA, 0, 971, 701, 0, 0 },
379 { 1, 0, 0x40, 6, 0x3F, 1, 0x3F, 0x41, 0xA, 0, 1013, 599, 0, 0 },
380 { 1, 0, 0x40, 6, 0x3F, 1, 0x3F, 0x41, 0xA, 0, 1160, 527, 0, 0 },
381 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 337, 398, 0, 0 },
382 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 411, 485, 0, 0 },
383 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 489, 399, 0, 0 },
384 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 701, 294, 0, 0 },
385 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 815, 743, 0, 0 },
386 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 995, 695, 0, 0 },
387 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 1025, 674, 0, 0 },
388 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 1079, 362, 0, 0 },
389 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 1139, 536, 0, 0 },
390 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 1182, 595, 0, 0 },
391 { 1, 0, 0x40, 6, 0x42, 1, 0x42, 0x44, 0xA, 0, 1306, 536, 0, 0 },
392 { 1, 0, 0x40, 6, 0x45, 1, 0x45, 0x47, 0xA, 0, 551, 531, 0, 0 },
393 { 1, 0, 0x40, 6, 0x45, 1, 0x45, 0x47, 0xA, 0, 733, 621, 0, 0 },
394 { 1, 0, 0x40, 6, 0x45, 1, 0x45, 0x47, 0xA, 0, 873, 609, 0, 0 },
395 { 1, 0, 0x40, 6, 0x45, 1, 0x45, 0x47, 0xA, 0, 886, 745, 0, 0 },
396 { 1, 0, 0x40, 6, 0x48, 1, 0x48, 0x4A, 0xA, 0, 345, 477, 0, 0 },
397 { 1, 0, 0x40, 6, 0x48, 1, 0x48, 0x4A, 0xA, 0, 575, 542, 0, 0 },
398 { 1, 0, 0x40, 6, 0x48, 1, 0x48, 0x4A, 0xA, 0, 814, 580, 0, 0 },
399 { 1, 0, 0x40, 6, 0x48, 1, 0x48, 0x4A, 0xA, 0, 896, 701, 0, 0 },
400 { 1, 0, 0x40, 6, 0x4B, 1, 0x4B, 0x4D, 0xA, 0, 869, 689, 0, 0 },
401 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 273, 423, 0, 0 },
402 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 289, 417, 0, 0 },
403 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 297, 409, 0, 0 },
404 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 310, 410, 0, 0 },
405 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 510, 386, 0, 0 },
406 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 531, 377, 0, 0 },
407 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 719, 281, 0, 0 },
408 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 804, 560, 0, 0 },
409 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 817, 561, 0, 0 },
410 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 922, 500, 0, 0 },
411 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 964, 753, 0, 0 },
412 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 977, 754, 0, 0 },
413 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 1101, 351, 0, 0 },
414 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 1171, 513, 0, 0 },
415 { 1, 0, 0x40, 6, 0x4E, 1, 0x4E, 0x50, 0xA, 0, 1174, 506, 0, 0 },
416 { 1, 0, 0xC8, 0xA, 0x51, 1, 0x51, 0x53, 6, 0, 799, 318, 0, 0 },
417 { 1, 0, 0xC8, 0xA, 0x54, 1, 0x54, 0x56, 6, 0, 1052, 371, 0, 0 },
418 { 1, 0, 0x40, 4, 5, 0, 0, 0, 0, 0, 944, 515, 569, 0 },
419 { 1, 0, 0x40, 4, 6, 0, 0, 0, 0, 0, 582, 424, 454, 0 },
420 { 1, 0, 0x40, 4, 1, 0, 0, 0, 0, 0, 1056, 269, 327, 0 },
421 { 1, 0, 0x41, 4, 4, 0, 0, 0, 0, 0, 369, 703, 751, 0 },
422 { 1, 0, 0x41, 4, 4, 0, 0, 0, 0, 0, 449, 743, 791, 0 },
423 { 1, 0, 0x60, 4, 2, 0, 0, 0, 0, 0, 914, 233, 303, 0 },
424 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
425};
427 { { { CODES_END, 0 }, { CODES_END, 0 } }, SLOT_EXIT, 0x25E, 0x100, 0x220, 5, 0, 0, 0 },
428 { { { CODES_END, 0 }, { CODES_END, 0 } }, SLOT_EXIT, 0x248, 0x1F0, 0x68, 1, 0, 0, 0 },
429 { { { CODES_END, 0 }, { CODES_END, 0 } }, SLOT_CLIMB_DOWN, 4, 0x170, 0x268, 0, 0, 0, 0 },
430 { { { CODES_END, 0 }, { CODES_END, 0 } }, SLOT_CLIMB_UP, 4, 0x180, 0x2B0, 0, 0, 0, 0 },
431 { { { FLAG(0x1C, 0x26), 1 }, { CODES_END, 0 } }, SLOT_EVENT, 0x19F, 0, 0, 0, 0, 0, 0 },
432 { { { CODES_END, 0 }, { CODES_END, 0 } }, 0, 0, 0, 0, 0, 0, 0, 0 },
433};
434void (*stageFuncs[])(void) = {
436};
438 { 1231, script1231, EVENT_TEXT(7), NULL, NULL },
439 { 415, script415, EVENT_TEXT(0xE), NULL, NULL },
440 { -1, NULL, 0, NULL, NULL },
441};
#define NULL
Definition common.h:17
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
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 SLOT_CLIMB_UP
Definition field_map.h:256
#define SCRIPT_WAIT_WALK(id)
until the character gets to its goal
Definition field_map.h:168
#define FIELD_COMMAND_HALT_PARTNERS
The field commands, which an event script hands FIELD_TASK_COMMANDS as the first argument of a pose c...
Definition field_map.h:41
#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 FIELD_COMMAND_PLAY_SAVEDEMO
Definition field_map.h:65
#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 SLOT_CLIMB_DOWN
Definition field_map.h:257
#define SLOT_EVENT
starts the event arg
Definition field_map.h:262
#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_WAIT_ANIM(id)
until its animation ends
Definition field_map.h:169
#define FIELD_TASK_COMMANDS
script command 813 (FIELDSTG_startCommandTask): the field commands
Definition field_map.h:33
#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 START_EVENT(index)
action: FIELDSTG_startListedEvent
Definition game_state.h:81
#define CODES_END
Definition game_state.h:83
#define PROGRESS(n)
GAME.progress is n.
Definition game_state.h:69
#define FLAG(group, id)
The codes of the (code, value) pairs that FLAGS_00 checks as conditions and applies as actions (event...
Definition game_state.h:68
#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_BYAKKO_CITY
BGM_0021: Byakko City and the Bai Hu Dome.
Definition sound.h:97
#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,...
#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_GUNSLINGER
WSTAG810 (Gunslinger 1F), event 1035.
Definition story.h:143
@ STORY_KNIGHTMON_REPROGRAMMED
WSTAG210 (Main Lobby, Asuka City), event 685: the A.o.A have reprogrammed Knightmon,...
Definition story.h:97
@ 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_DE_SINCERITY
WSTAG460 (Reliability Spot), event 370: the Qing Long Chief, asked for the Digi-Egg of Knowledge,...
Definition story.h:70
#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_SINCE_KNIGHTMON_REPROGRAMMED
GAME.progress is STORY_KNIGHTMON_REPROGRAMMED or later (PROGRESS_RANGES[8], to 0x63)
Definition story.h:1887
#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
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
CVECTOR spriteColor
the field's sprites' color, unless cd is 0
Definition field_map.h:458
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
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
u16 actor1Conditions[]
Definition wstag660.c:265
u16 actor26Conditions[]
Definition wstag660.c:290
u16 actor0Talk0Actions[]
Definition wstag660.c:159
FieldActorEntry actor0
Definition wstag660.c:293
void(* stageFuncs[])(void)
The stage's functions (common/start_stage.inc.c calls the first): a StageFuncs in the stages with a t...
Definition wstag660.c:434
FieldActorEntry actor6
Definition wstag660.c:299
u16 actor11Conditions[]
Definition wstag660.c:275
FieldTalk actor2Talks[]
Definition wstag660.c:172
u16 actor10Conditions[]
Definition wstag660.c:274
FieldActorEntry actor25
Definition wstag660.c:318
FieldActorEntry actor24
Definition wstag660.c:317
u16 actor18Conditions[]
Definition wstag660.c:282
FieldActorEntry actor17
Definition wstag660.c:310
FieldTalk actor14Talks[]
Definition wstag660.c:220
u16 actor24Conditions[]
Definition wstag660.c:288
FieldActorEntry actor18
Definition wstag660.c:311
FieldTalk actor5Talks[]
Definition wstag660.c:184
FieldActorEntry actor5
Definition wstag660.c:298
u16 actor22Conditions[]
Definition wstag660.c:286
FieldActorEntry actor2
Definition wstag660.c:295
const CVECTOR stageColor
the color the setup copies to FIELDSTG_state.spriteColor
Definition wstag660.c:11
FieldActorEntry actor23
Definition wstag660.c:316
FieldActorEntry actor19
Definition wstag660.c:312
u16 actor9Conditions[]
Definition wstag660.c:273
FieldActorEntry * stageActors[]
Definition wstag660.c:322
FieldActorEntry actor28
Definition wstag660.c:321
u16 actor23Conditions[]
Definition wstag660.c:287
FieldActorEntry actor22
Definition wstag660.c:315
s16 script415[]
Definition wstag660.c:53
FieldTalk actor1Talks[]
Definition wstag660.c:168
u16 actor13Conditions[]
Definition wstag660.c:277
FieldTalk actor0Talks[]
Definition wstag660.c:164
FieldActorEntry actor27
Definition wstag660.c:320
FieldTalk actor20Talks[]
Definition wstag660.c:236
FieldActorEntry actor10
Definition wstag660.c:303
u16 actor2Talk0Actions[]
Definition wstag660.c:161
u16 actor19Conditions[]
Definition wstag660.c:283
FieldTalk actor4Talks[]
Definition wstag660.c:180
u16 actor4Conditions[]
Definition wstag660.c:268
FieldTalk actor27Talks[]
Definition wstag660.c:256
FieldActorEntry actor4
Definition wstag660.c:297
u16 actor3Conditions[]
Definition wstag660.c:267
FieldTalk actor11Talks[]
Definition wstag660.c:208
FieldActorEntry actor8
Definition wstag660.c:301
ActorImage stageImages[]
Definition wstag660.c:135
FieldTalk actor28Talks[]
Definition wstag660.c:260
FieldTalk actor6Talks[]
Definition wstag660.c:188
void setupStage(void)
Sets the stage up: its map, actors and events, playing BGM_0021; BGM_0029 instead at story steps 0x27...
Definition wstag660.c:25
FieldTalk actor25Talks[]
Definition wstag660.c:248
u16 actor16Conditions[]
Definition wstag660.c:280
StageTile stageObjects[]
The tables and color setupStage gives FIELDSTG_state (FieldState)
Definition wstag660.c:354
FieldActorEntry actor9
Definition wstag660.c:302
u16 actor8Conditions[]
Definition wstag660.c:272
FieldActorEntry actor20
Definition wstag660.c:313
FieldTalk actor26Talks[]
Definition wstag660.c:252
u16 actor5Conditions[]
Definition wstag660.c:269
FieldTalk actor10Talks[]
Definition wstag660.c:204
FieldTalk actor3Talks[]
Definition wstag660.c:176
FieldTalk actor9Talks[]
Definition wstag660.c:200
FieldTalk actor15Talks[]
Definition wstag660.c:224
FieldActorEntry actor15
Definition wstag660.c:308
FieldActorEntry actor12
Definition wstag660.c:305
u16 actor27Conditions[]
Definition wstag660.c:291
FieldActorEntry actor16
Definition wstag660.c:309
u16 actor15Conditions[]
Definition wstag660.c:279
u16 actor6Conditions[]
Definition wstag660.c:270
s16 script1231[]
Definition wstag660.c:111
u16 actor14Conditions[]
Definition wstag660.c:278
FieldActorEntry actor7
Definition wstag660.c:300
StageSlot stageSlots[]
Definition wstag660.c:426
u16 actor1Talk0Actions[]
Definition wstag660.c:160
FieldActorEntry actor13
Definition wstag660.c:306
FieldTalk actor24Talks[]
Definition wstag660.c:244
FieldActorEntry actor11
Definition wstag660.c:304
u16 actor25Conditions[]
Definition wstag660.c:289
FieldActorEntry actor1
Definition wstag660.c:294
FieldActorEntry actor21
Definition wstag660.c:314
FieldTalk actor13Talks[]
Definition wstag660.c:216
#define STAGE_FILE
Definition wstag660.c:19
u16 actor4Talk0Actions[]
Definition wstag660.c:163
u16 actor7Conditions[]
Definition wstag660.c:271
u16 actor2Conditions[]
Definition wstag660.c:266
FieldTalk actor18Talks[]
Definition wstag660.c:232
FieldTalk actor7Talks[]
Definition wstag660.c:192
u16 actor20Conditions[]
Definition wstag660.c:284
#define STAGE_TEXT
Definition wstag660.c:17
u16 actor3Talk0Actions[]
Definition wstag660.c:162
FieldTalk actor8Talks[]
Definition wstag660.c:196
FieldTalk actor12Talks[]
Definition wstag660.c:212
u16 actor21Conditions[]
Definition wstag660.c:285
u16 actor28Conditions[]
Definition wstag660.c:292
FieldTalk actor16Talks[]
Definition wstag660.c:228
u16 actor17Conditions[]
Definition wstag660.c:281
FieldActorEntry actor3
Definition wstag660.c:296
FieldActorEntry actor26
Definition wstag660.c:319
FieldActorEntry actor14
Definition wstag660.c:307
FieldEvent stageEvents[]
Definition wstag660.c:437
u16 actor12Conditions[]
Definition wstag660.c:276
FieldTalk actor22Talks[]
Definition wstag660.c:240
u16 actor0Conditions[]
Definition wstag660.c:264