-
Notifications
You must be signed in to change notification settings - Fork 831
/
Copy pathCeruleanGym.asm
383 lines (318 loc) · 8.17 KB
/
CeruleanGym.asm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
object_const_def
const CERULEANGYM_ROCKET
const CERULEANGYM_MISTY
const CERULEANGYM_SWIMMER_GIRL1
const CERULEANGYM_SWIMMER_GIRL2
const CERULEANGYM_SWIMMER_GUY
const CERULEANGYM_GYM_GUIDE
CeruleanGym_MapScripts:
def_scene_scripts
scene_script CeruleanGymNoopScene, SCENE_CERULEANGYM_NOOP
scene_script CeruleanGymGruntRunsOutScene, SCENE_CERULEANGYM_GRUNT_RUNS_OUT
def_callbacks
CeruleanGymNoopScene:
end
CeruleanGymGruntRunsOutScene:
sdefer CeruleanGymGruntRunsOutScript
end
CeruleanGymGruntRunsOutScript:
applymovement CERULEANGYM_ROCKET, CeruleanGymGruntRunsDownMovement
playsound SFX_TACKLE
applymovement CERULEANGYM_ROCKET, CeruleanGymGruntRunsIntoYouMovement
playmusic MUSIC_ROCKET_ENCOUNTER
opentext
writetext CeruleanGymGruntIntroText
waitbutton
closetext
showemote EMOTE_SHOCK, CERULEANGYM_ROCKET, 15
applymovement CERULEANGYM_ROCKET, CeruleanGymGruntBacksAwayMovement
opentext
writetext CeruleanGymGruntBigMistakeText
waitbutton
closetext
applymovement CERULEANGYM_ROCKET, CeruleanGymGruntMovesCloseMovement
opentext
writetext CeruleanGymGruntByeText
waitbutton
closetext
applymovement CERULEANGYM_ROCKET, CeruleanGymGruntRunsOutMovement
playsound SFX_EXIT_BUILDING
disappear CERULEANGYM_ROCKET
setevent EVENT_MET_ROCKET_GRUNT_AT_CERULEAN_GYM
clearevent EVENT_ROUTE_24_ROCKET
clearevent EVENT_ROUTE_25_MISTY_BOYFRIEND
setscene SCENE_CERULEANGYM_NOOP
setmapscene ROUTE_25, SCENE_ROUTE25_MISTYS_DATE
setmapscene POWER_PLANT, SCENE_POWERPLANT_NOOP
waitsfx
special RestartMapMusic
pause 15
turnobject PLAYER, DOWN
pause 15
end
CeruleanGymMistyScript:
faceplayer
opentext
checkflag ENGINE_CASCADEBADGE
iftrue .FightDone
writetext MistyIntroText
waitbutton
closetext
winlosstext MistyWinLossText, 0
loadtrainer MISTY, MISTY1
startbattle
reloadmapafterbattle
setevent EVENT_BEAT_MISTY
setevent EVENT_BEAT_SWIMMERF_DIANA
setevent EVENT_BEAT_SWIMMERF_BRIANA
setevent EVENT_BEAT_SWIMMERM_PARKER
opentext
writetext ReceivedCascadeBadgeText
playsound SFX_GET_BADGE
waitsfx
setflag ENGINE_CASCADEBADGE
.FightDone:
writetext MistyFightDoneText
waitbutton
closetext
end
TrainerSwimmerfDiana:
trainer SWIMMERF, DIANA, EVENT_BEAT_SWIMMERF_DIANA, SwimmerfDianaSeenText, SwimmerfDianaBeatenText, 0, .Script
.Script:
endifjustbattled
opentext
writetext SwimmerfDianaAfterBattleText
waitbutton
closetext
end
TrainerSwimmerfBriana:
trainer SWIMMERF, BRIANA, EVENT_BEAT_SWIMMERF_BRIANA, SwimmerfBrianaSeenText, SwimmerfBrianaBeatenText, 0, .Script
.Script:
endifjustbattled
opentext
writetext SwimmerfBrianaAfterBattleText
waitbutton
closetext
end
TrainerSwimmermParker:
trainer SWIMMERM, PARKER, EVENT_BEAT_SWIMMERM_PARKER, SwimmermParkerSeenText, SwimmermParkerBeatenText, 0, .Script
.Script:
endifjustbattled
opentext
writetext SwimmermParkerAfterBattleText
waitbutton
closetext
end
CeruleanGymGuideScript:
faceplayer
opentext
checkevent EVENT_BEAT_MISTY
iftrue .CeruleanGymGuideWinScript
writetext CeruleanGymGuideText
waitbutton
closetext
end
.CeruleanGymGuideWinScript:
writetext CeruleanGymGuideWinText
waitbutton
closetext
end
CeruleanGymHiddenMachinePart:
hiddenitem MACHINE_PART, EVENT_FOUND_MACHINE_PART_IN_CERULEAN_GYM
CeruleanGymStatue1:
checkevent EVENT_TRAINERS_IN_CERULEAN_GYM
iffalse CeruleanGymStatue
opentext
writetext CeruleanGymNote1Text
waitbutton
closetext
end
CeruleanGymStatue2:
checkevent EVENT_TRAINERS_IN_CERULEAN_GYM
iffalse CeruleanGymStatue
opentext
writetext CeruleanGymNote2Text
waitbutton
closetext
end
CeruleanGymStatue:
checkflag ENGINE_CASCADEBADGE
iftrue .Beaten
jumpstd GymStatue1Script
.Beaten:
gettrainername STRING_BUFFER_4, MISTY, MISTY1
jumpstd GymStatue2Script
CeruleanGymGruntRunsDownMovement:
big_step DOWN
big_step DOWN
big_step DOWN
big_step DOWN
step_end
CeruleanGymGruntRunsOutMovement:
big_step RIGHT
big_step DOWN
step_end
CeruleanGymGruntRunsIntoYouMovement:
fix_facing
set_sliding
jump_step UP
remove_sliding
remove_fixed_facing
step_sleep 8
step_sleep 8
step DOWN
step DOWN
step_end
CeruleanGymGruntMovesCloseMovement:
big_step DOWN
step_end
CeruleanGymGruntBacksAwayMovement:
fix_facing
slow_step UP
remove_fixed_facing
step_end
CeruleanGymGruntIntroText:
text "Oops! I so sorry!"
line "You not hurt,"
cont "okay?"
para "I very busy."
line "No time for talk-"
cont "ing with you. Not"
cont "good for me if"
cont "seen by somebody."
done
CeruleanGymGruntBigMistakeText:
text "Oh no! You seen"
line "me already! I make"
cont "big mistake!"
done
CeruleanGymGruntByeText:
text "Hey, you! Forget"
line "you see me, okay?"
para "You see, hear,"
line "know nothing,"
para "okay?"
line "Bye, kid! Nothing!"
para "Bye-bye a go-go!"
done
CeruleanGymNote1Text:
text "Sorry, I'll be out"
line "for a while."
cont "MISTY, GYM LEADER"
done
CeruleanGymNote2Text:
text "Since MISTY's out,"
line "we'll be away too."
cont "GYM TRAINERS"
done
MistyIntroText:
text "MISTY: I was ex-"
line "pecting you, you"
cont "pest!"
para "You may have a"
line "lot of JOHTO GYM"
para "BADGES, but you'd"
line "better not take me"
cont "too lightly."
para "My water-type"
line "#MON are tough!"
done
MistyWinLossText:
text "MISTY: You really"
line "are good…"
para "I'll admit that"
line "you are skilled…"
para "Here you go. It's"
line "CASCADEBADGE."
done
ReceivedCascadeBadgeText:
text "<PLAYER> received"
line "CASCADEBADGE."
done
MistyFightDoneText:
text "MISTY: Are there"
line "many strong train-"
cont "ers in JOHTO? Like"
cont "you, I mean."
para "I'm going to"
line "travel one day, so"
para "I can battle some"
line "skilled trainers."
done
SwimmerfDianaSeenText:
text "Sorry about being"
line "away. Let's get on"
cont "with it!"
done
SwimmerfDianaBeatenText:
text "I give up! You're"
line "the winner!"
done
SwimmerfDianaAfterBattleText:
text "I'll be swimming"
line "quietly."
done
SwimmerfBrianaSeenText:
text "Don't let my ele-"
line "gant swimming un-"
cont "nerve you."
done
SwimmerfBrianaBeatenText:
text "Ooh, you calmly"
line "disposed of me…"
done
SwimmerfBrianaAfterBattleText:
text "Don't be too smug"
line "about beating me."
para "MISTY will destroy"
line "you if you get"
cont "complacent."
done
SwimmermParkerSeenText:
text "Glub…"
para "I'm first! Come"
line "and get me!"
done
SwimmermParkerBeatenText:
text "This can't be…"
done
SwimmermParkerAfterBattleText:
text "MISTY has gotten"
line "much better in the"
cont "past few years."
para "Don't let your"
line "guard down, or"
cont "you'll be crushed!"
done
CeruleanGymGuideText:
text "Yo! CHAMP in"
line "making!"
para "Since MISTY was"
line "away, I went out"
para "for some fun too."
line "He-he-he."
done
CeruleanGymGuideWinText:
text "Hoo, you showed me"
line "how tough you are."
para "As always, that"
line "was one heck of a"
cont "great battle!"
done
CeruleanGym_MapEvents:
db 0, 0 ; filler
def_warp_events
warp_event 4, 15, CERULEAN_CITY, 5
warp_event 5, 15, CERULEAN_CITY, 5
def_coord_events
def_bg_events
bg_event 3, 8, BGEVENT_ITEM, CeruleanGymHiddenMachinePart
bg_event 2, 13, BGEVENT_READ, CeruleanGymStatue1
bg_event 6, 13, BGEVENT_READ, CeruleanGymStatue2
def_object_events
object_event 4, 10, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_CERULEAN_GYM_ROCKET
object_event 5, 3, SPRITE_MISTY, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, CeruleanGymMistyScript, EVENT_TRAINERS_IN_CERULEAN_GYM
object_event 4, 6, SPRITE_SWIMMER_GIRL, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_TRAINER, 3, TrainerSwimmerfDiana, EVENT_TRAINERS_IN_CERULEAN_GYM
object_event 1, 9, SPRITE_SWIMMER_GIRL, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_TRAINER, 1, TrainerSwimmerfBriana, EVENT_TRAINERS_IN_CERULEAN_GYM
object_event 8, 9, SPRITE_SWIMMER_GUY, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 3, TrainerSwimmermParker, EVENT_TRAINERS_IN_CERULEAN_GYM
object_event 7, 13, SPRITE_GYM_GUIDE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, CeruleanGymGuideScript, EVENT_TRAINERS_IN_CERULEAN_GYM