-
Notifications
You must be signed in to change notification settings - Fork 806
/
GoldenrodCity.asm
602 lines (488 loc) · 14.6 KB
/
GoldenrodCity.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
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
object_const_def
const GOLDENRODCITY_POKEFAN_M1
const GOLDENRODCITY_YOUNGSTER1
const GOLDENRODCITY_COOLTRAINER_F1
const GOLDENRODCITY_COOLTRAINER_F2
const GOLDENRODCITY_YOUNGSTER2
const GOLDENRODCITY_LASS
const GOLDENRODCITY_GRAMPS
const GOLDENRODCITY_ROCKETSCOUT
const GOLDENRODCITY_ROCKET1
const GOLDENRODCITY_ROCKET2
const GOLDENRODCITY_ROCKET3
const GOLDENRODCITY_ROCKET4
const GOLDENRODCITY_ROCKET5
const GOLDENRODCITY_ROCKET6
const GOLDENRODCITY_MOVETUTOR
GoldenrodCity_MapScripts:
def_scene_scripts
def_callbacks
callback MAPCALLBACK_NEWMAP, GoldenrodCityFlypointAndFloriaCallback
callback MAPCALLBACK_OBJECTS, GoldenrodCityMoveTutorCallback
GoldenrodCityFlypointAndFloriaCallback:
setflag ENGINE_FLYPOINT_GOLDENROD
setflag ENGINE_REACHED_GOLDENROD
checkevent EVENT_MET_FLORIA
iftrue .FloriaDone
clearevent EVENT_FLORIA_AT_SUDOWOODO
.FloriaDone:
endcallback
GoldenrodCityMoveTutorCallback:
checkevent EVENT_BEAT_ELITE_FOUR
iffalse .MoveTutorDone
checkitem COIN_CASE
iffalse .MoveTutorDisappear
readvar VAR_WEEKDAY
ifequal WEDNESDAY, .MoveTutorAppear
ifequal SATURDAY, .MoveTutorAppear
.MoveTutorDisappear:
disappear GOLDENRODCITY_MOVETUTOR
endcallback
.MoveTutorAppear:
checkflag ENGINE_DAILY_MOVE_TUTOR
iftrue .MoveTutorDone
appear GOLDENRODCITY_MOVETUTOR
.MoveTutorDone:
endcallback
MoveTutorScript:
faceplayer
opentext
writetext GoldenrodCityMoveTutorAskTeachAMoveText
yesorno
iffalse .Refused
special DisplayCoinCaseBalance
writetext GoldenrodCityMoveTutorAsk4000CoinsOkayText
yesorno
iffalse .Refused2
checkcoins 4000
ifequal HAVE_LESS, .NotEnoughMoney
writetext GoldenrodCityMoveTutorWhichMoveShouldITeachText
loadmenu .MoveMenuHeader
verticalmenu
closewindow
ifequal MOVETUTOR_FLAMETHROWER, .Flamethrower
ifequal MOVETUTOR_THUNDERBOLT, .Thunderbolt
ifequal MOVETUTOR_ICE_BEAM, .IceBeam
sjump .Incompatible
.Flamethrower:
setval MOVETUTOR_FLAMETHROWER
writetext GoldenrodCityMoveTutorMoveText
special MoveTutor
ifequal FALSE, .TeachMove
sjump .Incompatible
.Thunderbolt:
setval MOVETUTOR_THUNDERBOLT
writetext GoldenrodCityMoveTutorMoveText
special MoveTutor
ifequal FALSE, .TeachMove
sjump .Incompatible
.IceBeam:
setval MOVETUTOR_ICE_BEAM
writetext GoldenrodCityMoveTutorMoveText
special MoveTutor
ifequal FALSE, .TeachMove
sjump .Incompatible
.MoveMenuHeader:
db MENU_BACKUP_TILES ; flags
menu_coords 0, 2, 15, TEXTBOX_Y - 1
dw .MenuData
db 1 ; default option
.MenuData:
db STATICMENU_CURSOR ; flags
db 4 ; items
db "FLAMETHROWER@"
db "THUNDERBOLT@"
db "ICE BEAM@"
db "CANCEL@"
.Refused:
writetext GoldenrodCityMoveTutorAwwButTheyreAmazingText
waitbutton
closetext
end
.Refused2:
writetext GoldenrodCityMoveTutorHmTooBadText
waitbutton
closetext
end
.TeachMove:
writetext GoldenrodCityMoveTutorIfYouUnderstandYouveMadeItText
promptbutton
takecoins 4000
waitsfx
playsound SFX_TRANSACTION
special DisplayCoinCaseBalance
writetext GoldenrodCityMoveTutorFarewellKidText
waitbutton
closetext
readvar VAR_FACING
ifequal LEFT, .WalkAroundPlayer
applymovement GOLDENRODCITY_MOVETUTOR, GoldenrodCityMoveTutorEnterGameCornerMovement
sjump .GoInside
.WalkAroundPlayer:
applymovement GOLDENRODCITY_MOVETUTOR, GoldenrodCityMoveTutorWalkAroundPlayerThenEnterGameCornerMovement
.GoInside:
playsound SFX_ENTER_DOOR
disappear GOLDENRODCITY_MOVETUTOR
clearevent EVENT_GOLDENROD_GAME_CORNER_MOVE_TUTOR
setflag ENGINE_DAILY_MOVE_TUTOR
waitsfx
end
.Incompatible:
writetext GoldenrodCityMoveTutorBButText
waitbutton
closetext
end
.NotEnoughMoney:
writetext GoldenrodCityMoveTutorYouDontHaveEnoughCoinsText
waitbutton
closetext
end
GoldenrodCityPokefanMScript:
jumptextfaceplayer GoldenrodCityPokefanMText
GoldenrodCityYoungster1Script:
jumptextfaceplayer GoldenrodCityYoungster1Text
GoldenrodCityCooltrainerF1Script:
faceplayer
opentext
checkevent EVENT_CLEARED_RADIO_TOWER
iftrue .ClearedRadioTower
writetext GoldenrodCityCooltrainerF1Text
waitbutton
closetext
end
.ClearedRadioTower:
writetext GoldenrodCityCooltrainerF1Text_ClearedRadioTower
waitbutton
closetext
end
GoldenrodCityCooltrainerF2Script:
faceplayer
opentext
checkflag ENGINE_RADIO_CARD
iftrue .GotRadioCard
writetext GoldenrodCityCooltrainerF2Text
waitbutton
closetext
end
.GotRadioCard:
writetext GoldenrodCityCooltrainerF2Text_GotRadioCard
waitbutton
closetext
end
GoldenrodCityYoungster2Script:
jumptextfaceplayer GoldenrodCityYoungster2Text
GoldenrodCityLassScript:
jumptextfaceplayer GoldenrodCityLassText
GoldenrodCityGrampsScript:
jumptextfaceplayer GoldenrodCityGrampsText
GoldenrodCityRocketScoutScript:
opentext
writetext GoldenrodCityRocketScoutText1
promptbutton
faceplayer
writetext GoldenrodCityRocketScoutText2
waitbutton
closetext
turnobject GOLDENRODCITY_ROCKETSCOUT, UP
end
GoldenrodCityRocket1Script:
jumptextfaceplayer GoldenrodCityRocket1Text
GoldenrodCityRocket2Script:
jumptextfaceplayer GoldenrodCityRocket2Text
GoldenrodCityRocket3Script:
jumptextfaceplayer GoldenrodCityRocket3Text
GoldenrodCityRocket4Script:
jumptextfaceplayer GoldenrodCityRocket4Text
GoldenrodCityRocket5Script:
jumptextfaceplayer GoldenrodCityRocket5Text
GoldenrodCityRocket6Script:
jumptextfaceplayer GoldenrodCityRocket6Text
GoldenrodCityStationSign:
jumptext GoldenrodCityStationSignText
GoldenrodCityRadioTowerSign:
jumptext GoldenrodCityRadioTowerSignText
GoldenrodDeptStoreSign:
jumptext GoldenrodDeptStoreSignText
GoldenrodGymSign:
jumptext GoldenrodGymSignText
GoldenrodCitySign:
jumptext GoldenrodCitySignText
GoldenrodCityBikeShopSign:
jumptext GoldenrodCityBikeShopSignText
GoldenrodCityGameCornerSign:
jumptext GoldenrodCityGameCornerSignText
GoldenrodCityNameRaterSign:
jumptext GoldenrodCityNameRaterSignText
GoldenrodCityUndergroundSignNorth:
jumptext GoldenrodCityUndergroundSignNorthText
GoldenrodCityUndergroundSignSouth:
jumptext GoldenrodCityUndergroundSignSouthText
GoldenrodCityPokecenterSign:
jumpstd PokecenterSignScript
GoldenrodCityFlowerShopSign:
jumptext GoldenrodCityFlowerShopSignText
GoldenrodCityMoveTutorEnterGameCornerMovement:
step RIGHT
step RIGHT
step UP
step_end
GoldenrodCityMoveTutorWalkAroundPlayerThenEnterGameCornerMovement:
step DOWN
step RIGHT
step RIGHT
step UP
step UP
step_end
GoldenrodCityPokefanMText:
text "They built the new"
line "RADIO TOWER to"
para "replace the old,"
line "creaky one."
done
GoldenrodCityYoungster1Text:
text "I know there's a"
line "new BIKE SHOP, but"
para "I can't find it"
line "anywhere."
done
GoldenrodCityCooltrainerF1Text:
text "Is that man in"
line "black dressed up"
para "like a TEAM ROCKET"
line "member? How silly!"
done
GoldenrodCityCooltrainerF1Text_ClearedRadioTower:
text "Was that man in"
line "black really part"
para "of TEAM ROCKET? I"
line "can't believe it!"
done
GoldenrodCityCooltrainerF2Text:
text "The RADIO TOWER in"
line "GOLDENROD CITY is"
cont "a landmark."
para "They're running a"
line "promotional cam- "
cont "paign right now."
para "They'll modify"
line "your #GEAR,"
para "so it can also"
line "serve as a radio."
done
GoldenrodCityCooltrainerF2Text_GotRadioCard:
text "Oh, your #GEAR"
line "works as a radio!"
done
GoldenrodCityYoungster2Text:
text "E-he-he-he…"
para "I got in trouble"
line "for playing in the"
para "basement of the"
line "DEPT.STORE."
done
GoldenrodCityLassText:
text "The man at that"
line "house rates your"
cont "#MON names."
para "He can even rename"
line "your #MON."
done
GoldenrodCityGrampsText:
text "Whew! This is one"
line "big town. I don't"
para "know where any-"
line "thing is."
done
GoldenrodCityRocketScoutText1:
text "So this is the"
line "RADIO TOWER…"
done
GoldenrodCityRocketScoutText2:
text "What do you want,"
line "you pest? Scram!"
done
GoldenrodCityRocket1Text:
text "Stay out of the"
line "way! Beat it!"
done
GoldenrodCityRocket2Text:
text "Take over the"
line "RADIO TOWER…"
para "What? It's none of"
line "your business!"
done
GoldenrodCityRocket3Text:
text "#MON? They're"
line "nothing more than"
para "tools for making"
line "money!"
done
GoldenrodCityRocket4Text:
text "Our dream will"
line "soon come true…"
para "It was such a long"
line "struggle…"
done
GoldenrodCityRocket5Text:
text "Hey, brat! You"
line "don't belong here!"
cont "Get lost!"
done
GoldenrodCityRocket6Text:
text "Come taste the"
line "true terror of"
cont "TEAM ROCKET!"
done
GoldenrodCityStationSignText:
text "GOLDENROD CITY"
line "STATION"
done
GoldenrodCityRadioTowerSignText:
text "GOLDENROD CITY"
line "RADIO TOWER"
done
GoldenrodDeptStoreSignText:
text "Full Selection of"
line "#MON Goods!"
para "GOLDENROD CITY"
line "DEPT.STORE"
done
GoldenrodGymSignText:
text "GOLDENROD CITY"
line "#MON GYM"
cont "LEADER: WHITNEY"
para "The Incredibly"
line "Pretty Girl!"
done
GoldenrodCitySignText:
text "GOLDENROD CITY"
para "The Festive City"
line "of Opulent Charm"
done
GoldenrodCityBikeShopSignText:
text "The World is a"
line "Cycle Path!"
cont "BIKE SHOP"
done
GoldenrodCityGameCornerSignText:
text "Your Playground!"
para "GOLDENROD CITY"
line "GAME CORNER"
done
GoldenrodCityNameRaterSignText:
text "NAME RATER"
para "Get Your #MON"
line "Nicknames Rated"
done
GoldenrodCityUndergroundSignNorthText:
text "UNDERGROUND"
line "ENTRANCE"
done
GoldenrodCityUndergroundSignSouthText:
text "UNDERGROUND"
line "ENTRANCE"
done
GoldenrodCityPokeComCenterSignText: ; unreferenced
text "For Mobile Tips!"
line "#COM CENTER"
done
GoldenrodCityFlowerShopSignText:
text "Blooming Beautiful"
line "FLOWER SHOP"
done
GoldenrodCityMoveTutorAskTeachAMoveText:
text "I can teach your"
line "#MON amazing"
para "moves if you'd"
line "like."
para "Should I teach a"
line "new move?"
done
GoldenrodCityMoveTutorAsk4000CoinsOkayText:
text "It will cost you"
line "4000 coins. Okay?"
done
GoldenrodCityMoveTutorAwwButTheyreAmazingText:
text "Aww… But they're"
line "amazing…"
done
GoldenrodCityMoveTutorWhichMoveShouldITeachText:
text "Wahahah! You won't"
line "regret it!"
para "Which move should"
line "I teach?"
done
GoldenrodCityMoveTutorHmTooBadText:
text "Hm, too bad. I'll"
line "have to get some"
cont "cash from home…"
done
GoldenrodCityMoveTutorIfYouUnderstandYouveMadeItText:
text "If you understand"
line "what's so amazing"
para "about this move,"
line "you've made it as"
cont "a trainer."
done
GoldenrodCityMoveTutorFarewellKidText:
text "Wahahah!"
line "Farewell, kid!"
done
GoldenrodCityMoveTutorBButText:
text "B-but…"
done
GoldenrodCityMoveTutorYouDontHaveEnoughCoinsText:
text "…You don't have"
line "enough coins here…"
done
GoldenrodCityMoveTutorMoveText:
text_start
done
GoldenrodCity_MapEvents:
db 0, 0 ; filler
def_warp_events
warp_event 24, 7, GOLDENROD_GYM, 1
warp_event 29, 29, GOLDENROD_BIKE_SHOP, 1
warp_event 31, 21, GOLDENROD_HAPPINESS_RATER, 1
warp_event 5, 25, BILLS_FAMILYS_HOUSE, 1
warp_event 9, 13, GOLDENROD_MAGNET_TRAIN_STATION, 2
warp_event 29, 5, GOLDENROD_FLOWER_SHOP, 1
warp_event 33, 9, GOLDENROD_PP_SPEECH_HOUSE, 1
warp_event 15, 7, GOLDENROD_NAME_RATER, 1
warp_event 24, 27, GOLDENROD_DEPT_STORE_1F, 1
warp_event 14, 21, GOLDENROD_GAME_CORNER, 1
warp_event 5, 15, RADIO_TOWER_1F, 1
warp_event 19, 1, ROUTE_35_GOLDENROD_GATE, 3
warp_event 9, 5, GOLDENROD_UNDERGROUND_SWITCH_ROOM_ENTRANCES, 8
warp_event 11, 29, GOLDENROD_UNDERGROUND_SWITCH_ROOM_ENTRANCES, 5
warp_event 15, 27, GOLDENROD_POKECENTER_1F, 1
def_coord_events
def_bg_events
bg_event 10, 14, BGEVENT_READ, GoldenrodCityStationSign
bg_event 4, 17, BGEVENT_READ, GoldenrodCityRadioTowerSign
bg_event 26, 27, BGEVENT_READ, GoldenrodDeptStoreSign
bg_event 26, 9, BGEVENT_READ, GoldenrodGymSign
bg_event 22, 18, BGEVENT_READ, GoldenrodCitySign
bg_event 28, 30, BGEVENT_READ, GoldenrodCityBikeShopSign
bg_event 16, 22, BGEVENT_READ, GoldenrodCityGameCornerSign
bg_event 12, 7, BGEVENT_READ, GoldenrodCityNameRaterSign
bg_event 8, 6, BGEVENT_READ, GoldenrodCityUndergroundSignNorth
bg_event 12, 30, BGEVENT_READ, GoldenrodCityUndergroundSignSouth
bg_event 16, 27, BGEVENT_UP, GoldenrodCityPokecenterSign
bg_event 30, 6, BGEVENT_READ, GoldenrodCityFlowerShopSign
def_object_events
object_event 7, 18, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityPokefanMScript, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 30, 17, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityYoungster1Script, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 12, 16, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, GoldenrodCityCooltrainerF1Script, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 20, 26, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_WANDER, 1, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityCooltrainerF2Script, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 19, 17, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodCityYoungster2Script, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 17, 10, SPRITE_LASS, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, GoldenrodCityLassScript, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 11, 27, SPRITE_GRAMPS, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityGrampsScript, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 4, 16, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityRocketScoutScript, EVENT_GOLDENROD_CITY_ROCKET_SCOUT
object_event 28, 20, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityRocket1Script, EVENT_GOLDENROD_CITY_ROCKET_TAKEOVER
object_event 8, 15, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityRocket2Script, EVENT_GOLDENROD_CITY_ROCKET_TAKEOVER
object_event 16, 23, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityRocket3Script, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
object_event 29, 20, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityRocket4Script, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
object_event 29, 7, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityRocket5Script, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
object_event 31, 10, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityRocket6Script, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
object_event 12, 22, SPRITE_POKEFAN_M, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, MoveTutorScript, EVENT_GOLDENROD_CITY_MOVE_TUTOR