-
Notifications
You must be signed in to change notification settings - Fork 811
/
RadioTower1F.asm
493 lines (403 loc) · 10.1 KB
/
RadioTower1F.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
object_const_def
const RADIOTOWER1F_RECEPTIONIST
const RADIOTOWER1F_LASS
const RADIOTOWER1F_YOUNGSTER
const RADIOTOWER1F_ROCKET
const RADIOTOWER1F_LUCKYNUMBERMAN
const RADIOTOWER1F_CARD_WOMAN
RadioTower1F_MapScripts:
def_scene_scripts
def_callbacks
RadioTower1FReceptionistScript:
faceplayer
opentext
checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
iftrue .Rockets
writetext RadioTower1FReceptionistWelcomeText
waitbutton
closetext
end
.Rockets:
writetext RadioTower1FReceptionistNoToursText
waitbutton
closetext
end
RadioTower1FLuckyNumberManScript:
faceplayer
opentext
writetext RadioTower1FLuckyNumberManAskToPlayText
promptbutton
special CheckLuckyNumberShowFlag
iffalse .skip
special ResetLuckyNumberShowFlag
.skip
special PrintTodaysLuckyNumber
checkflag ENGINE_LUCKY_NUMBER_SHOW
iftrue .GameOver
writetext RadioTower1FLuckyNumberManThisWeeksIdIsText
promptbutton
closetext
applymovement RADIOTOWER1F_LUCKYNUMBERMAN, RadioTower1FLuckyNumberManGoToPCMovement
opentext
writetext RadioTower1FLuckyNumberManCheckIfMatchText
promptbutton
waitsfx
writetext RadioTower1FLuckyNumberManDotDotDotText
playsound SFX_DEX_FANFARE_20_49
waitsfx
promptbutton
special CheckForLuckyNumberWinners
closetext
applymovement RADIOTOWER1F_LUCKYNUMBERMAN, RadioTower1FLuckyNumberManReturnToPlayerMovement
opentext
ifequal 1, .FirstPlace
ifequal 2, .SecondPlace
ifequal 3, .ThirdPlace
sjump .NoPrize
.GameOver:
writetext RadioTower1FLuckyNumberManComeAgainText
waitbutton
closetext
end
.FirstPlace:
writetext RadioTower1FLuckyNumberManPerfectMatchText
playsound SFX_1ST_PLACE
waitsfx
promptbutton
giveitem MASTER_BALL
iffalse .BagFull
itemnotify
setflag ENGINE_LUCKY_NUMBER_SHOW
sjump .GameOver
.SecondPlace:
writetext RadioTower1FLuckyNumberManOkayMatchText
playsound SFX_2ND_PLACE
waitsfx
promptbutton
giveitem EXP_SHARE
iffalse .BagFull
itemnotify
setflag ENGINE_LUCKY_NUMBER_SHOW
sjump .GameOver
.ThirdPlace:
writetext RadioTower1FLuckyNumberManWeakMatchText
playsound SFX_3RD_PLACE
waitsfx
promptbutton
giveitem PP_UP
iffalse .BagFull
itemnotify
setflag ENGINE_LUCKY_NUMBER_SHOW
sjump .GameOver
.NoPrize:
writetext RadioTower1FLuckyNumberManNoneOfYourIDNumbersMatchText
waitbutton
closetext
end
.BagFull:
writetext RadioTower1FLuckyNumberManNoRoomForYourPrizeText
waitbutton
closetext
end
RadioTower1FRadioCardWomanScript:
faceplayer
opentext
checkflag ENGINE_RADIO_CARD
iftrue .GotCard
writetext RadioTower1FRadioCardWomanOfferQuizText
yesorno
iffalse .NoQuiz
writetext RadioTower1FRadioCardWomanQuestion1Text
yesorno
iffalse .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanQuestion2Text
yesorno
iffalse .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanQuestion3Text
yesorno
iftrue .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanQuestion4Text
yesorno
iffalse .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanQuestion5Text
yesorno
iftrue .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanYouWinText
promptbutton
getstring STRING_BUFFER_4, .RadioCardText
scall .ReceiveItem
writetext RadioTower1FPokegearIsARadioText
promptbutton
setflag ENGINE_RADIO_CARD
.GotCard:
writetext RadioTower1FRadioCardWomanTuneInText
waitbutton
closetext
end
.RadioCardText:
db "RADIO CARD@"
.ReceiveItem:
jumpstd ReceiveItemScript
end
.WrongAnswer:
playsound SFX_WRONG
writetext RadioTower1FRadioCardWomanWrongAnswerText
waitbutton
closetext
end
.NoQuiz:
writetext RadioTower1FRadioCardWomanNotTakingQuizText
waitbutton
closetext
end
RadioTower1FLassScript:
jumptextfaceplayer RadioTower1FLassText
RadioTower1FYoungsterScript:
jumptextfaceplayer RadioTower1FYoungsterText
TrainerGruntM3:
trainer GRUNTM, GRUNTM_3, EVENT_BEAT_ROCKET_GRUNTM_3, GruntM3SeenText, GruntM3BeatenText, 0, .Script
.Script:
endifjustbattled
opentext
writetext GruntM3AfterBattleText
waitbutton
closetext
end
RadioTower1FDirectory:
jumptext RadioTower1FDirectoryText
RadioTower1FLuckyChannelSign:
jumptext RadioTower1FLuckyChannelSignText
RadioTower1FLuckyNumberManGoToPCMovement:
step RIGHT
turn_head UP
step_end
RadioTower1FLuckyNumberManReturnToPlayerMovement:
step LEFT
turn_head UP
step_end
RadioTower1FReceptionistWelcomeText:
text "Welcome!"
done
RadioTower1FReceptionistNoToursText:
text "Hello. I'm sorry,"
line "but we're not"
cont "offering any tours"
cont "today."
done
RadioTower1FLuckyNumberManAskToPlayText:
text "Hi, are you here"
line "for the LUCKY NUM-"
cont "BER SHOW?"
para "Want me to check"
line "the ID numbers of"
cont "your #MON?"
para "If you get lucky,"
line "you win a prize."
done
RadioTower1FLuckyNumberManThisWeeksIdIsText:
text "This week's ID"
line "number is @"
text_ram wStringBuffer3
text "."
done
RadioTower1FLuckyNumberManCheckIfMatchText:
text "Let's see if you"
line "have a match."
done
RadioTower1FLuckyNumberManDotDotDotText:
text "<……>"
line "<……>"
done
RadioTower1FLuckyNumberManComeAgainText:
text "Please come back"
line "next week for the"
cont "next LUCKY NUMBER."
done
RadioTower1FLuckyNumberManPerfectMatchText:
text "Wow! You have a"
line "perfect match of"
cont "all five numbers!"
para "We have a grand"
line "prize winner!"
para "You have won a"
line "MASTER BALL!"
done
RadioTower1FLuckyNumberManOkayMatchText:
text "Hey! You've"
line "matched the last"
cont "three numbers!"
para "You've won second"
line "prize, an EXP."
cont "SHARE!"
done
RadioTower1FLuckyNumberManWeakMatchText:
text "Ooh, you've"
line "matched the last"
cont "two numbers."
para "You've won third"
line "prize, a PP UP."
done
RadioTower1FLuckyNumberManNoneOfYourIDNumbersMatchText:
text "Nope, none of your"
line "ID numbers match."
done
RadioTower1FLuckyNumberManNoRoomForYourPrizeText:
text "You've got no room"
line "for your prize."
para "Make room and come"
line "back right away."
done
RadioTower1FRadioCardWomanOfferQuizText:
text "We have a special"
line "quiz campaign on"
cont "right now."
para "Answer five ques-"
line "tions correctly to"
cont "win a RADIO CARD."
para "Slide it into your"
line "#GEAR to play"
para "the radio anytime,"
line "anywhere."
para "Would you like to"
line "take the quiz?"
done
RadioTower1FRadioCardWomanQuestion1Text:
text "Question 1:"
para "Is there a #MON"
line "that appears only"
cont "in the morning?"
done
RadioTower1FRadioCardWomanQuestion2Text:
text "Correct!"
line "Question 2:"
para "Is this statement"
line "correct?"
para "You can't buy a"
line "BERRY at a MART."
done
RadioTower1FRadioCardWomanQuestion3Text:
text "Bull's-eye!"
line "Question 3:"
para "Does HM01 contain"
line "the move FLASH?"
done
RadioTower1FRadioCardWomanQuestion4Text:
text "So far so good!"
line "Question 4:"
para "Is FALKNER the"
line "VIOLET GYM LEADER"
para "who uses bird"
line "#MON?"
done
RadioTower1FRadioCardWomanQuestion5Text:
text "Wow! Right again!"
line "Here's the final"
cont "question:"
para "Do GOLDENROD GAME"
line "CORNER's slots"
para "have CHARMANDER"
line "on their reels?"
done
RadioTower1FRadioCardWomanYouWinText:
text "Bingo! You got it!"
line "Congratulations!"
para "Here's your prize,"
line "a RADIO CARD!"
done
RadioTower1FPokegearIsARadioText:
text "<PLAYER>'s #GEAR"
line "can now double as"
cont "a radio!"
done
RadioTower1FRadioCardWomanTuneInText:
text "Please tune in to"
line "our radio shows."
done
RadioTower1FRadioCardWomanWrongAnswerText:
text "Oh, dear."
line "Sorry, but you"
para "got it wrong."
line "Please try again!"
done
RadioTower1FRadioCardWomanNotTakingQuizText:
text "Oh. I see. Please"
line "see me if you"
cont "change your mind."
done
RadioTower1FLassText:
text "BEN is a fabulous"
line "DJ."
para "His sweet voice"
line "makes me melt!"
done
RadioTower1FYoungsterText:
text "I love MARY, from"
line "#MON TALK."
para "I only know what"
line "she sounds like,"
cont "though."
done
GruntM3SeenText:
text "We've finally"
line "taken over the"
cont "RADIO TOWER!"
para "Now everyone will"
line "get to experience"
para "the true terror of"
line "TEAM ROCKET!"
para "We'll show you"
line "how scary we are!"
done
GruntM3BeatenText:
text "Too strong! We"
line "must watch you…"
done
GruntM3AfterBattleText:
text "You're too strong."
para "Our plan could be"
line "ruined. I must"
cont "warn the others…"
done
RadioTower1FDirectoryText:
text "1F RECEPTION"
line "2F SALES"
para "3F PERSONNEL"
line "4F PRODUCTION"
para "5F DIRECTOR'S"
line " OFFICE"
done
RadioTower1FLuckyChannelSignText:
text "LUCKY CHANNEL!"
para "Win with #MON"
line "ID numbers!"
para "Trade your #MON"
line "to collect differ-"
cont "ent ID numbers!"
done
RadioTower1F_MapEvents:
db 0, 0 ; filler
def_warp_events
warp_event 2, 7, GOLDENROD_CITY, 11
warp_event 3, 7, GOLDENROD_CITY, 11
warp_event 15, 0, RADIO_TOWER_2F, 2
def_coord_events
def_bg_events
bg_event 3, 0, BGEVENT_READ, RadioTower1FDirectory
bg_event 13, 0, BGEVENT_READ, RadioTower1FLuckyChannelSign
def_object_events
object_event 5, 6, SPRITE_RECEPTIONIST, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RadioTower1FReceptionistScript, -1
object_event 16, 4, SPRITE_LASS, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RadioTower1FLassScript, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 15, 4, SPRITE_YOUNGSTER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, RadioTower1FYoungsterScript, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 14, 1, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 3, TrainerGruntM3, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
object_event 8, 6, SPRITE_GENTLEMAN, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, RadioTower1FLuckyNumberManScript, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 12, 6, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, RadioTower1FRadioCardWomanScript, EVENT_GOLDENROD_CITY_CIVILIANS