diff options
author | IIMarckus <iimarckus@gmail.com> | 2018-09-16 14:56:11 -0600 |
---|---|---|
committer | IIMarckus <iimarckus@gmail.com> | 2018-09-16 14:58:29 -0600 |
commit | dee94fd4db2b42510c8763f49830340ccf918ceb (patch) | |
tree | bc1225aab387a66889475b0d77c405429f9f477c | |
parent | 3bdef2986b04830097ea1bd5a0963488075fda63 (diff) |
Add Radio Tower map constants.
-rw-r--r-- | constants/event_flags.asm | 4 | ||||
-rw-r--r-- | constants/map_constants.asm | 2 | ||||
-rw-r--r-- | main.asm | 6 | ||||
-rw-r--r-- | maps/RadioTower1F.asm | 489 | ||||
-rw-r--r-- | maps/RadioTower2F.asm | 279 | ||||
-rw-r--r-- | maps/RadioTower3F.asm | 351 | ||||
-rw-r--r-- | maps/RadioTower4F.asm | 268 | ||||
-rw-r--r-- | maps/RadioTower5F.asm | 469 |
8 files changed, 1864 insertions, 4 deletions
diff --git a/constants/event_flags.asm b/constants/event_flags.asm index 99b3d036..f5dcdc10 100644 --- a/constants/event_flags.asm +++ b/constants/event_flags.asm @@ -123,7 +123,7 @@ const EVENT_GOT_TM37_SANDSTORM const EVENT_FIRST_TIME_BANKING_WITH_MOM const EVENT_TOLD_ELM_ABOUT_TOGEPI_OVER_THE_PHONE - const EVENT_GOT_CLEAR_BELL + const EVENT_GOT_RAINBOW_WING const EVENT_GOT_SILVER_WING const EVENT_GOT_TM12_SWEET_SCENT const EVENT_RELEASED_THE_BEASTS @@ -836,7 +836,7 @@ const EVENT_FOUGHT_EUSINE const EVENT_KOJI_ALLOWS_YOU_PASSAGE_TO_TIN_TOWER const EVENT_FOUGHT_SUICUNE - const EVENT_GOT_RAINBOW_WING + const EVENT_GOT_RAINBOW_WING_FROM_EUSINE const EVENT_HUEY_PROTEIN const EVENT_JOEY_HP_UP const EVENT_VANCE_CARBOS diff --git a/constants/map_constants.asm b/constants/map_constants.asm index b24deb25..5bb98f0a 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -142,7 +142,7 @@ ENDM newgroup ; 4 - map_const ECRUTEAK_HOUSE, 9, 10 ; 1 + map_const ECRUTEAK_TIN_TOWER_ENTRANCE, 9, 10 ; 1 map_const WISE_TRIOS_ROOM, 4, 4 ; 2 map_const ECRUTEAK_POKECENTER_1F, 4, 5 ; 3 map_const ECRUTEAK_LUGIA_SPEECH_HOUSE, 4, 4 ; 4 @@ -1552,7 +1552,11 @@ INCLUDE "maps/VictoryRoad.asm" SECTION "bank43", ROMX, BANK[$43] INCLUDE "maps/NationalPark.asm" INCLUDE "maps/NationalParkBugContest.asm" - dr $10cccf, $10f198 +INCLUDE "maps/RadioTower1F.asm" +INCLUDE "maps/RadioTower2F.asm" +INCLUDE "maps/RadioTower3F.asm" +INCLUDE "maps/RadioTower4F.asm" +INCLUDE "maps/RadioTower5F.asm" SECTION "bank44", ROMX, BANK[$44] dr $110000, $114000 diff --git a/maps/RadioTower1F.asm b/maps/RadioTower1F.asm new file mode 100644 index 00000000..7caa1e5d --- /dev/null +++ b/maps/RadioTower1F.asm @@ -0,0 +1,489 @@ + const_def 2 ; object constants + const RADIOTOWER1F_RECEPTIONIST + const RADIOTOWER1F_LASS + const RADIOTOWER1F_YOUNGSTER + const RADIOTOWER1F_ROCKET + const RADIOTOWER1F_GENTLEMAN + const RADIOTOWER1F_COOLTRAINER_F + +RadioTower1F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +RadioTower1FReceptionistScript: + faceplayer + opentext + checkflag ENGINE_ROCKETS_IN_RADIO_TOWER + iftrue .Rockets + writetext UnknownText_0x5ce77 + waitbutton + closetext + end + +.Rockets: + writetext UnknownText_0x5ce81 + waitbutton + closetext + end + +RadioTower1FLuckyNumberManScript: + faceplayer + opentext + writetext UnknownText_0x5ceba + buttonsound + special CheckLuckyNumberShowFlag + iffalse .skip + special ResetLuckyNumberShowFlag +.skip + special PrintTodaysLuckyNumber + checkflag ENGINE_LUCKY_NUMBER_SHOW + iftrue .GameOver + writetext UnknownText_0x5cf3a + buttonsound + closetext + applymovement RADIOTOWER1F_GENTLEMAN, MovementData_0x5ce71 + opentext + writetext UnknownText_0x5cf5a + buttonsound + waitsfx + writetext UnknownText_0x5cf79 + playsound SFX_DEX_FANFARE_20_49 + waitsfx + buttonsound + special CheckForLuckyNumberWinners + closetext + applymovement RADIOTOWER1F_GENTLEMAN, MovementData_0x5ce74 + opentext + ifequal 1, .FirstPlace + ifequal 2, .SecondPlace + ifequal 3, .ThirdPlace + jump .NoPrize + +.GameOver: + writetext UnknownText_0x5cf7e + waitbutton + closetext + end + +.FirstPlace: + writetext UnknownText_0x5cfb5 + playsound SFX_1ST_PLACE + waitsfx + buttonsound + giveitem MASTER_BALL + iffalse .BagFull + itemnotify + setflag ENGINE_LUCKY_NUMBER_SHOW + jump .GameOver + +.SecondPlace: + writetext UnknownText_0x5d023 + playsound SFX_2ND_PLACE + waitsfx + buttonsound + giveitem EXP_SHARE + iffalse .BagFull + itemnotify + setflag ENGINE_LUCKY_NUMBER_SHOW + jump .GameOver + +.ThirdPlace: + writetext UnknownText_0x5d076 + playsound SFX_3RD_PLACE + waitsfx + buttonsound + giveitem PP_UP + iffalse .BagFull + itemnotify + setflag ENGINE_LUCKY_NUMBER_SHOW + jump .GameOver + +.NoPrize: + writetext UnknownText_0x5d0c0 + waitbutton + closetext + end + +.BagFull: + writetext UnknownText_0x5d0e6 + waitbutton + closetext + end + +RadioTower1FRadioCardWomanScript: + faceplayer + opentext + checkflag ENGINE_RADIO_CARD + iftrue .GotCard + writetext UnknownText_0x5d12d + yesorno + iffalse .NoQuiz + writetext UnknownText_0x5d1f2 + yesorno + iffalse .WrongAnswer + playsound SFX_ELEVATOR_END + waitsfx + writetext UnknownText_0x5d231 + yesorno + iffalse .WrongAnswer + playsound SFX_ELEVATOR_END + waitsfx + writetext UnknownText_0x5d282 + yesorno + iftrue .WrongAnswer + playsound SFX_ELEVATOR_END + waitsfx + writetext UnknownText_0x5d2bc + yesorno + iffalse .WrongAnswer + playsound SFX_ELEVATOR_END + waitsfx + writetext UnknownText_0x5d30e + yesorno + iftrue .WrongAnswer + playsound SFX_ELEVATOR_END + waitsfx + writetext UnknownText_0x5d37b + buttonsound + stringtotext .RadioCardText, MEM_BUFFER_1 + scall .ReceiveItem + writetext UnknownText_0x5d3c0 + buttonsound + setflag ENGINE_RADIO_CARD +.GotCard: + writetext UnknownText_0x5d3e5 + waitbutton + closetext + end + +.RadioCardText: + db "RADIO CARD@" + +.ReceiveItem: + jumpstd receiveitem + end + +.WrongAnswer: + playsound SFX_WRONG + writetext UnknownText_0x5d409 + waitbutton + closetext + end + +.NoQuiz: + writetext UnknownText_0x5d443 + 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 + +MovementData_0x5ce71: + step RIGHT + turn_head UP + step_end + +MovementData_0x5ce74: + step LEFT + turn_head UP + step_end + +UnknownText_0x5ce77: + text "Welcome!" + done + +UnknownText_0x5ce81: + text "Hello. I'm sorry," + line "but we're not" + cont "offering any tours" + cont "today." + done + +UnknownText_0x5ceba: + 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 + +UnknownText_0x5cf3a: + text "This week's ID" + line "number is @" + text_from_ram wStringBuffer3 + text "." + done + +UnknownText_0x5cf5a: + text "Let's see if you" + line "have a match." + done + +UnknownText_0x5cf79: + text "<……>" + line "<……>" + done + +UnknownText_0x5cf7e: + text "Please come back" + line "next week for the" + cont "next LUCKY NUMBER." + done + +UnknownText_0x5cfb5: + 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 + +UnknownText_0x5d023: + text "Hey! You've" + line "matched the last" + cont "three numbers!" + + para "You've won second" + line "prize, an EXP." + cont "SHARE!" + done + +UnknownText_0x5d076: + text "Ooh, you've" + line "matched the last" + cont "two numbers." + + para "You've won third" + line "prize, a PP UP." + done + +UnknownText_0x5d0c0: + text "Nope, none of your" + line "ID numbers match." + done + +UnknownText_0x5d0e6: + text "You've got no room" + line "for your prize." + + para "Make room and come" + line "back right away." + done + +UnknownText_0x5d12d: + 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 + +UnknownText_0x5d1f2: + text "Question 1:" + + para "Can the TOWN MAP" + line "be displayed on a" + cont "#GEAR?" + done + +UnknownText_0x5d231: + text "Correct!" + line "Question 2:" + + para "Can NIDORINA be" + line "female only?" + done + +UnknownText_0x5d282: + text "Bull's-eye!" + line "Question 3:" + + para "Does KURT, the" + line "# BALL crafts-" + cont "man, use APRIKORN?" + done + +UnknownText_0x5d2bc: + text "So far so good!" + line "Question 4:" + + para "MAGIKARP won't" + line "learn any TM move?" + done + +UnknownText_0x5d30e: + text "Wow! Right again!" + line "Here's the final" + cont "question:" + + para "PROF.OAK'S #MON" + line "TALK is a very" + cont "popular program." + + para "Is MARIE the co-" + line "host of the show?" + done + +UnknownText_0x5d37b: + text "Bingo! You got it!" + line "Congratulations!" + + para "Here's your prize," + line "a RADIO CARD!" + done + +UnknownText_0x5d3c0: + text "<PLAYER>'s #GEAR" + line "can now double as" + cont "a radio!" + done + +UnknownText_0x5d3e5: + text "Please tune in to" + line "our radio shows." + done + +UnknownText_0x5d409: + text "Oh, dear." + line "Sorry, but you" + + para "got it wrong." + line "Please try again!" + done + +UnknownText_0x5d443: + text "Oh. I see. Please" + line "try if you change" + cont "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 + + db 3 ; warp events + warp_event 2, 7, GOLDENROD_CITY, 12 + warp_event 3, 7, GOLDENROD_CITY, 12 + warp_event 15, 0, RADIO_TOWER_2F, 2 + + db 0 ; coord events + + db 2 ; bg events + bg_event 3, 0, BGEVENT_READ, RadioTower1FDirectory + bg_event 13, 0, BGEVENT_READ, RadioTower1FLuckyChannelSign + + db 6 ; 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 diff --git a/maps/RadioTower2F.asm b/maps/RadioTower2F.asm new file mode 100644 index 00000000..4e016173 --- /dev/null +++ b/maps/RadioTower2F.asm @@ -0,0 +1,279 @@ + const_def 2 ; object constants + const RADIOTOWER2F_SUPER_NERD + const RADIOTOWER2F_TEACHER + const RADIOTOWER2F_ROCKET1 + const RADIOTOWER2F_ROCKET2 + const RADIOTOWER2F_ROCKET3 + const RADIOTOWER2F_ROCKET_GIRL + const RADIOTOWER2F_BLACK_BELT1 + const RADIOTOWER2F_BLACK_BELT2 + const RADIOTOWER2F_JIGGLYPUFF + +RadioTower2F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +RadioTower2FUnusedDummyScene: +; unused + end + +RadioTower2FSuperNerdScript: + jumptextfaceplayer RadioTower2FSuperNerdText + +RadioTower2FTeacherScript: + faceplayer + opentext + checkflag ENGINE_ROCKETS_IN_RADIO_TOWER + iftrue .Rockets + writetext RadioTower2FTeacherText + waitbutton + closetext + end + +.Rockets: + writetext RadioTower2FTeacherText_Rockets + waitbutton + closetext + end + +RadioTowerJigglypuff: + opentext + writetext RadioTowerJigglypuffText + cry JIGGLYPUFF + waitbutton + closetext + end + +RadioTower2FBlackBelt1Script: + jumptextfaceplayer RadioTower2FBlackBelt1Text + +RadioTower2FBlackBelt2Script: + jumptextfaceplayer RadioTower2FBlackBelt2Text + +TrainerGruntM4: + trainer GRUNTM, GRUNTM_4, EVENT_BEAT_ROCKET_GRUNTM_4, GruntM4SeenText, GruntM4BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext GruntM4AfterBattleText + waitbutton + closetext + end + +TrainerGruntM5: + trainer GRUNTM, GRUNTM_5, EVENT_BEAT_ROCKET_GRUNTM_5, GruntM5SeenText, GruntM5BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext GruntM5AfterBattleText + waitbutton + closetext + end + +TrainerGruntM6: + trainer GRUNTM, GRUNTM_6, EVENT_BEAT_ROCKET_GRUNTM_6, GruntM6SeenText, GruntM6BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext GruntM6AfterBattleText + waitbutton + closetext + end + +TrainerGruntF2: + trainer GRUNTF, GRUNTF_2, EVENT_BEAT_ROCKET_GRUNTF_2, GruntF2SeenText, GruntF2BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext GruntF2AfterBattleText + waitbutton + closetext + end + +RadioTower2FSalesSign: + jumptext RadioTower2FSalesSignText + +RadioTower2FOaksPKMNTalkSign: + jumptext RadioTower2FOaksPKMNTalkSignText + +RadioTower2FPokemonRadioSign: + jumptext RadioTower2FPokemonRadioSignText + +RadioTower2FBookshelf: + jumpstd magazinebookshelf + +RadioTower2FSuperNerdText: + text "You can listen to" + line "the radio any-" + cont "where. Tune in!" + done + +RadioTower2FTeacherText: + text "Lullabies on the" + line "radio may make" + cont "#MON sleep." + done + +RadioTower2FTeacherText_Rockets: + text "Why would they" + line "want to take over" + cont "the RADIO TOWER?" + done + +RadioTowerJigglypuffText: + text "JIGGLYPUFF:" + line "Jiggly…" + done + +RadioTower2FBlackBelt1Text: + text "Sorry. Authorized" + line "personnel only" + cont "beyond this point." + + para "It wasn't that way" + line "before." + + para "There's something" + line "wrong with the" + cont "DIRECTOR…" + done + +RadioTower2FBlackBelt2Text: + text "Feel free to look" + line "around anywhere." + + para "The DIRECTOR is" + line "nice again, just" + cont "as he was before." + done + +GruntM4SeenText: + text "Three years ago," + line "TEAM ROCKET was" + cont "forced to disband." + + para "But we're making a" + line "comeback here!" + done + +GruntM4BeatenText: + text "Gwah! Don't get" + line "cute!" + done + +GruntM4AfterBattleText: + text "We won't let you" + line "ruin our plans" + cont "for our comeback!" + done + +GruntM5SeenText: + text "We're TEAM ROCKET," + line "the exploiters of" + cont "#MON!" + + para "We love being" + line "evil! Scared?" + done + +GruntM5BeatenText: + text "You think you're a" + line "hero?" + done + +GruntM5AfterBattleText: + text "We're not always" + line "evil. We just do" + cont "whatever we like." + done + +GruntM6SeenText: + text "Hey, hey! Keep out" + line "of our way!" + done + +GruntM6BeatenText: + text "Arggh. I give up." + done + +GruntM6AfterBattleText: + text "Our EXECUTIVES are" + line "trying to take" + cont "this place over." + + para "They have some big" + line "plan. I wonder" + cont "what that is?" + done + +GruntF2SeenText: + text "Hahaha!" + + para "How boring." + line "It was far too" + + para "easy to take over" + line "this place!" + + para "Come on, keep me" + line "amused!" + done + +GruntF2BeatenText: + text "Wh-who are you?" + done + +GruntF2AfterBattleText: + text "You beat me, and" + line "I won't forget it!" + done + +RadioTower2FSalesSignText: + text "2F SALES" + done + +RadioTower2FOaksPKMNTalkSignText: + text "PROF.OAK'S #MON" + line "TALK" + + para "The Hottest Show" + line "on the Air!" + done + +RadioTower2FPokemonRadioSignText: + text "Anywhere, Anytime" + line "#MON Radio" + done + +RadioTower2F_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 0, 0, RADIO_TOWER_3F, 1 + warp_event 15, 0, RADIO_TOWER_1F, 3 + + db 0 ; coord events + + db 6 ; bg events + bg_event 3, 0, BGEVENT_READ, RadioTower2FSalesSign + bg_event 5, 0, BGEVENT_READ, RadioTower2FOaksPKMNTalkSign + bg_event 9, 1, BGEVENT_READ, RadioTower2FBookshelf + bg_event 10, 1, BGEVENT_READ, RadioTower2FBookshelf + bg_event 11, 1, BGEVENT_READ, RadioTower2FBookshelf + bg_event 13, 0, BGEVENT_READ, RadioTower2FPokemonRadioSign + + db 9 ; object events + object_event 5, 6, SPRITE_SUPER_NERD, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, RadioTower2FSuperNerdScript, EVENT_GOLDENROD_CITY_CIVILIANS + object_event 13, 2, SPRITE_TEACHER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RadioTower2FTeacherScript, -1 + object_event 1, 4, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 3, TrainerGruntM4, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 8, 4, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 3, TrainerGruntM5, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 4, 1, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 2, TrainerGruntM6, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 10, 5, SPRITE_ROCKET_GIRL, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 3, TrainerGruntF2, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 0, 1, SPRITE_BLACK_BELT, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RadioTower2FBlackBelt1Script, EVENT_RADIO_TOWER_BLACKBELT_BLOCKS_STAIRS + object_event 1, 1, SPRITE_BLACK_BELT, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RadioTower2FBlackBelt2Script, EVENT_RADIO_TOWER_CIVILIANS_AFTER + object_event 12, 1, SPRITE_JIGGLYPUFF, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RadioTowerJigglypuff, -1 diff --git a/maps/RadioTower3F.asm b/maps/RadioTower3F.asm new file mode 100644 index 00000000..367223ce --- /dev/null +++ b/maps/RadioTower3F.asm @@ -0,0 +1,351 @@ + const_def 2 ; object constants + const RADIOTOWER3F_SUPER_NERD + const RADIOTOWER3F_GYM_GUY + const RADIOTOWER3F_COOLTRAINER_F + const RADIOTOWER3F_ROCKET1 + const RADIOTOWER3F_ROCKET2 + const RADIOTOWER3F_ROCKET3 + const RADIOTOWER3F_SCIENTIST + +RadioTower3F_MapScripts: + db 0 ; scene scripts + + db 1 ; callbacks + callback MAPCALLBACK_TILES, .CardKeyShutterCallback + +.CardKeyShutterCallback: + checkevent EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER + iftrue .Change + return + +.Change: + changeblock 14, 2, $2a ; open shutter + changeblock 14, 4, $01 ; floor + return + +RadioTower3FSuperNerdScript: + jumptextfaceplayer RadioTower3FSuperNerdText + +RadioTower3FGymGuyScript: + faceplayer + opentext + checkevent EVENT_CLEARED_RADIO_TOWER + iftrue .NoRockets + writetext RadioTower3FGymGuyText_Rockets + waitbutton + closetext + end + +.NoRockets: + writetext RadioTower3FGymGuyText + waitbutton + closetext + end + +RadioTower3FCooltrainerFScript: + faceplayer + opentext + checkevent EVENT_GOT_SUNNY_DAY_FROM_RADIO_TOWER + iftrue .GotSunnyDay + checkevent EVENT_CLEARED_RADIO_TOWER + iftrue .NoRockets + checkevent EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER + iftrue .UsedCardKey + writetext UnknownText_0x5e754 + waitbutton + closetext + end + +.UsedCardKey: + writetext UnknownText_0x5e7cb + waitbutton + closetext + end + +.NoRockets: + writetext UnknownText_0x5e7e2 + buttonsound + verbosegiveitem TM_SUNNY_DAY + iffalse .NoRoom + writetext UnknownText_0x5e821 + waitbutton + closetext + setevent EVENT_GOT_SUNNY_DAY_FROM_RADIO_TOWER + end + +.GotSunnyDay: + writetext UnknownText_0x5e85c + waitbutton +.NoRoom: + closetext + end + +TrainerGruntM7: + trainer GRUNTM, GRUNTM_7, EVENT_BEAT_ROCKET_GRUNTM_7, GruntM7SeenText, GruntM7BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext GruntM7AfterBattleText + waitbutton + closetext + end + +TrainerGruntM8: + trainer GRUNTM, GRUNTM_8, EVENT_BEAT_ROCKET_GRUNTM_8, GruntM8SeenText, GruntM8BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext GruntM8AfterBattleText + waitbutton + closetext + end + +TrainerGruntM9: + trainer GRUNTM, GRUNTM_9, EVENT_BEAT_ROCKET_GRUNTM_9, GruntM9SeenText, GruntM9BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext GruntM9AfterBattleText + waitbutton + closetext + end + +TrainerScientistMarc: + trainer SCIENTIST, MARC, EVENT_BEAT_SCIENTIST_MARC, ScientistMarcSeenText, ScientistMarcBeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext ScientistMarcAfterBattleText + waitbutton + closetext + end + +CardKeySlotScript:: + opentext + writetext RadioTower3FCardKeySlotText + waitbutton + checkevent EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER + iftrue .UsedCardKey + checkitem CARD_KEY + iftrue .HaveCardKey +.UsedCardKey: + closetext + end + +.HaveCardKey: + writetext InsertedTheCardKeyText + waitbutton + setevent EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER + playsound SFX_ENTER_DOOR + changeblock 14, 2, $2a ; open shutter + changeblock 14, 4, $01 ; floor + reloadmappart + closetext + waitsfx + end + +RadioTower3FPersonnelSign: + jumptext RadioTower3FPersonnelSignText + +RadioTower3FPokemonMusicSign: + jumptext RadioTower3FPokemonMusicSignText + +RadioTower3FSuperNerdText: + text "We have recordings" + line "of the cries of" + + para "all #MON that" + line "have been found." + + para "We must have about" + line "200 kinds." + done + +RadioTower3FGymGuyText_Rockets: + text "To trainers, #-" + line "MON are their" + cont "beloved partners." + + para "It's terrible how" + line "TEAM ROCKET is" + + para "trying to control" + line "#MON." + done + +RadioTower3FGymGuyText: + text "We run 24 hours a" + line "day to broadcast" + + para "entertaining pro-" + line "grams." + + para "I'll do my best to" + line "run around the" + cont "clock too!" + done + +UnknownText_0x5e754: + text "The TEAM ROCKET" + line "boss has locked" + cont "himself in." + + para "But the DIRECTOR" + line "can open it." + + para "He's up on the" + line "fifth floor." + + para "Please save him!" + done + +UnknownText_0x5e7cb: + text "Is the DIRECTOR" + line "safe?" + done + +UnknownText_0x5e7e2: + text "Thank you!" + line "You're my hero!" + + para "This is a token of" + line "my appreciation." + done + +UnknownText_0x5e821: + text "It's SUNNY DAY." + line "It powers up fire-" + cont "type moves for a" + cont "while." + done + +UnknownText_0x5e85c: + text "You were simply" + line "marvelous!" + done + +GruntM7SeenText: + text "I've been given" + line "strict orders." + + para "I'm to crush any-" + line "one who challenges" + cont "TEAM ROCKET!" + done + +GruntM7BeatenText: + text "What?!" + done + +GruntM7AfterBattleText: + text "I failed in my" + line "duties…" + + para "I'll be docked pay" + line "for this…" + done + +GruntM8SeenText: + text "It feels great" + line "ordering #MON" + cont "to commit crimes." + done + +GruntM8BeatenText: + text "You're kidding!" + done + +GruntM8AfterBattleText: + text "I feel lousy over" + line "losing!" + + para "Darn it! I hate" + line "useless #MON!" + done + +GruntM9SeenText: + text "Why did the shut-" + line "ter open? Did you" + + para "have something to" + line "do with this?" + done + +GruntM9BeatenText: + text "I'm done for!" + done + +GruntM9AfterBattleText: + text "What?! You made it" + line "past our men in" + cont "the UNDERGROUND?" + + para "How could you?" + done + +ScientistMarcSeenText: + text "An unknown child" + line "wandering here?" + + para "Who are you?" + done + +ScientistMarcBeatenText: + text "Tch! I took you" + line "too lightly!" + done + +ScientistMarcAfterBattleText: + text "Bwahahaha…" + + para "I can transmit as" + line "strong a signal as" + cont "I need from here." + done + +RadioTower3FCardKeySlotText: + text "It's the CARD KEY" + line "slot." + done + +InsertedTheCardKeyText: + text "<PLAYER> inserted" + line "the CARD KEY." + done + +RadioTower3FPersonnelSignText: + text "3F PERSONNEL" + done + +RadioTower3FPokemonMusicSignText: + text "#MON MUSIC with" + line "Host DJ BEN" + done + +RadioTower3F_MapEvents: + db 0, 0 ; filler + + db 3 ; warp events + warp_event 0, 0, RADIO_TOWER_2F, 1 + warp_event 7, 0, RADIO_TOWER_4F, 2 + warp_event 17, 0, RADIO_TOWER_4F, 4 + + db 0 ; coord events + + db 3 ; bg events + bg_event 3, 0, BGEVENT_READ, RadioTower3FPersonnelSign + bg_event 9, 0, BGEVENT_READ, RadioTower3FPokemonMusicSign + bg_event 14, 2, BGEVENT_UP, CardKeySlotScript + + db 7 ; object events + object_event 7, 4, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, RadioTower3FSuperNerdScript, EVENT_RADIO_TOWER_CIVILIANS_AFTER + object_event 3, 4, SPRITE_GYM_GUY, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RadioTower3FGymGuyScript, -1 + object_event 11, 3, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, RadioTower3FCooltrainerFScript, -1 + object_event 5, 1, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 2, TrainerGruntM7, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 6, 2, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 3, TrainerGruntM8, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 16, 6, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 3, TrainerGruntM9, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 9, 6, SPRITE_SCIENTIST, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 5, TrainerScientistMarc, EVENT_RADIO_TOWER_ROCKET_TAKEOVER diff --git a/maps/RadioTower4F.asm b/maps/RadioTower4F.asm new file mode 100644 index 00000000..87efe0b2 --- /dev/null +++ b/maps/RadioTower4F.asm @@ -0,0 +1,268 @@ + const_def 2 ; object constants + const RADIOTOWER4F_FISHER + const RADIOTOWER4F_TEACHER + const RADIOTOWER4F_GROWLITHE + const RADIOTOWER4F_ROCKET1 + const RADIOTOWER4F_ROCKET2 + const RADIOTOWER4F_ROCKET_GIRL + const RADIOTOWER4F_SCIENTIST + +RadioTower4F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +RadioTower4FFisherScript: + jumptextfaceplayer RadioTower4FFisherText + +RadioTower4FDJMaryScript: + faceplayer + opentext + checkevent EVENT_GOT_PINK_BOW_FROM_MARY + iftrue .GotPinkBow + checkevent EVENT_CLEARED_RADIO_TOWER + iftrue .ClearedRockets + writetext RadioTower4FDJMaryText + waitbutton + closetext + end + +.ClearedRockets: + writetext RadioTower4FDJMaryText_ClearedRockets + buttonsound + verbosegiveitem PINK_BOW + iffalse .NoRoom + writetext RadioTower4FDJMaryText_GivePinkBow + waitbutton + closetext + setevent EVENT_GOT_PINK_BOW_FROM_MARY + end + +.GotPinkBow: + writetext RadioTower4FDJMaryText_After + waitbutton +.NoRoom: + closetext + end + +RadioTowerMeowth: + opentext + writetext RadioTowerMeowthText + cry MEOWTH + waitbutton + closetext + end + +TrainerGruntM10: + trainer GRUNTM, GRUNTM_10, EVENT_BEAT_ROCKET_GRUNTM_10, GruntM10SeenText, GruntM10BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext GruntM10AfterBattleText + waitbutton + closetext + end + +TrainerExecutivem2: + trainer EXECUTIVEM, EXECUTIVEM_2, EVENT_BEAT_ROCKET_EXECUTIVEM_2, Executivem2SeenText, Executivem2BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext Executivem2AfterBattleText + waitbutton + closetext + end + +TrainerGruntF4: + trainer GRUNTF, GRUNTF_4, EVENT_BEAT_ROCKET_GRUNTF_4, GruntF4SeenText, GruntF4BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext GruntF4AfterBattleText + waitbutton + closetext + end + +TrainerScientistRich: + trainer SCIENTIST, RICH, EVENT_BEAT_SCIENTIST_RICH, ScientistRichSeenText, ScientistRichBeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext ScientistRichAfterBattleText + waitbutton + closetext + end + +RadioTower4FProductionSign: + jumptext RadioTower4FProductionSignText + +RadioTower4FStudio2Sign: + jumptext RadioTower4FStudio2SignText + +RadioTower4FFisherText: + text "I listened to the" + line "radio while I was" + cont "at the RUINS." + + para "I heard a strange" + line "broadcast there." + done + +RadioTower4FDJMaryText: + text "MARY: Why? Why do" + line "I have to suffer" + cont "through this?" + + para "MEOWTH, help me!" + done + +RadioTower4FDJMaryText_ClearedRockets: + text "MARY: Oh! You're" + line "my little savior!" + + para "Will you take this" + line "as my thanks?" + done + +RadioTower4FDJMaryText_GivePinkBow: + text "MARY: It's just" + line "right for #MON" + + para "that know normal-" + line "type moves." + done + +RadioTower4FDJMaryText_After: + text "MARY: Please tune" + line "into me on PROF." + + para "OAK'S #MON TALK" + line "show." + done + +RadioTowerMeowthText: + text "MEOWTH: Meowth…" + done + +GruntM10SeenText: + text "You plan to rescue" + line "the DIRECTOR?" + + para "That won't be pos-" + line "sible because I'm" + cont "going to beat you!" + done + +GruntM10BeatenText: + text "No! Unbelievable!" + done + +GruntM10AfterBattleText: + text "I don't believe" + line "it! I was beaten!" + done + +Executivem2SeenText: + text "Stop! I'm known as" + line "the TEAM ROCKET" + cont "fortress!" + + para "You're not taking" + line "another step!" + done + +Executivem2BeatenText: + text "The fortress came" + line "down!" + done + +Executivem2AfterBattleText: + text "You've earned my" + line "respect, so here's" + cont "some advice." + + para "It's not too late." + line "You can still turn" + cont "back." + done + +GruntF4SeenText: + text "Don't I think" + line "#MON are cute?" + + para "I'll think my" + line "#MON are cute--" + + para "after they beat" + line "yours!" + done + +GruntF4BeatenText: + text "Oh, no! They're so" + line "useless!" + done + +GruntF4AfterBattleText: + text "I love my" + line "beautiful self!" + + para "Who cares about" + line "#MON?" + done + +ScientistRichSeenText: + text "Most excellent." + + para "This RADIO TOWER" + line "will fulfill our" + cont "grand design." + done + +ScientistRichBeatenText: + text "Hmmm…" + + para "All grand plans" + line "come with snags." + done + +ScientistRichAfterBattleText: + text "Do you honestly" + line "believe you can" + cont "stop TEAM ROCKET?" + done + +RadioTower4FProductionSignText: + text "4F PRODUCTION" + done + +RadioTower4FStudio2SignText: + text "4F STUDIO 2" + done + +RadioTower4F_MapEvents: + db 0, 0 ; filler + + db 4 ; warp events + warp_event 0, 0, RADIO_TOWER_5F, 1 + warp_event 9, 0, RADIO_TOWER_3F, 2 + warp_event 12, 0, RADIO_TOWER_5F, 2 + warp_event 17, 0, RADIO_TOWER_3F, 3 + + db 0 ; coord events + + db 2 ; bg events + bg_event 7, 0, BGEVENT_READ, RadioTower4FProductionSign + bg_event 15, 0, BGEVENT_READ, RadioTower4FStudio2Sign + + db 7 ; object events + object_event 6, 4, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RadioTower4FFisherScript, EVENT_RADIO_TOWER_CIVILIANS_AFTER + object_event 14, 6, SPRITE_TEACHER, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, RadioTower4FDJMaryScript, -1 + object_event 12, 7, SPRITE_GROWLITHE, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RadioTowerMeowth, -1 + object_event 5, 6, SPRITE_ROCKET, SPRITEMOVEDATA_SPINCLOCKWISE, 0, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 3, TrainerGruntM10, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 14, 1, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_LEFT, 2, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 2, TrainerExecutivem2, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 12, 4, SPRITE_ROCKET_GIRL, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 1, TrainerGruntF4, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 4, 2, SPRITE_SCIENTIST, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 4, TrainerScientistRich, EVENT_RADIO_TOWER_ROCKET_TAKEOVER diff --git a/maps/RadioTower5F.asm b/maps/RadioTower5F.asm new file mode 100644 index 00000000..889b2fb2 --- /dev/null +++ b/maps/RadioTower5F.asm @@ -0,0 +1,469 @@ + const_def 2 ; object constants + const RADIOTOWER5F_DIRECTOR + const RADIOTOWER5F_ROCKET + const RADIOTOWER5F_ROCKET_GIRL + const RADIOTOWER5F_ROCKER + const RADIOTOWER5F_POKE_BALL + +RadioTower5F_MapScripts: + db 3 ; scene scripts + scene_script .DummyScene0 ; SCENE_DEFAULT + scene_script .DummyScene1 ; SCENE_RADIOTOWER5F_ROCKET_BOSS + scene_script .DummyScene2 ; SCENE_RADIOTOWER5F_NOTHING + + db 0 ; callbacks + +.DummyScene0: + end + +.DummyScene1: + end + +.DummyScene2: + end + +FakeDirectorScript: + turnobject RADIOTOWER5F_DIRECTOR, UP + showemote EMOTE_SHOCK, RADIOTOWER5F_DIRECTOR, 15 + opentext + writetext FakeDirectorTextBefore1 + waitbutton + closetext + applymovement RADIOTOWER5F_DIRECTOR, FakeDirectorMovement + playmusic MUSIC_ROCKET_ENCOUNTER + opentext + writetext FakeDirectorTextBefore2 + waitbutton + closetext + winlosstext FakeDirectorWinText, 0 + setlasttalked RADIOTOWER5F_DIRECTOR + loadtrainer EXECUTIVEM, EXECUTIVEM_3 + startbattle + reloadmapafterbattle + opentext + writetext FakeDirectorTextAfter + buttonsound + verbosegiveitem BASEMENT_KEY + closetext + setscene SCENE_RADIOTOWER5F_ROCKET_BOSS + setevent EVENT_BEAT_ROCKET_EXECUTIVEM_3 + end + +Director: + faceplayer + opentext + checkevent EVENT_CLEARED_RADIO_TOWER + iftrue .TrueDirector + writetext FakeDirectorTextAfter + waitbutton + closetext + end + +.TrueDirector: + writetext RadioTower5FDirectorText + waitbutton + closetext + end + +TrainerExecutivef1: + trainer EXECUTIVEF, EXECUTIVEF_1, EVENT_BEAT_ROCKET_EXECUTIVEF_1, Executivef1SeenText, Executivef1BeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext Executivef1AfterBattleText + waitbutton + closetext + end + +RadioTower5FRocketBossScene: + applymovement PLAYER, RadioTower5FPlayerTwoStepsLeftMovement + playmusic MUSIC_ROCKET_ENCOUNTER + turnobject RADIOTOWER5F_ROCKET, RIGHT + opentext + writetext RadioTower5FRocketBossBeforeText + waitbutton + closetext + winlosstext RadioTower5FRocketBossWinText, 0 + setlasttalked RADIOTOWER5F_ROCKET + loadtrainer EXECUTIVEM, EXECUTIVEM_1 + startbattle + reloadmapafterbattle + opentext + writetext RadioTower5FRocketBossAfterText + waitbutton + closetext + special FadeBlackQuickly + special ReloadSpritesNoPalettes + disappear RADIOTOWER5F_ROCKET + disappear RADIOTOWER5F_ROCKET_GIRL + pause 15 + special FadeInQuickly + setevent EVENT_BEAT_ROCKET_EXECUTIVEM_1 + setevent EVENT_CLEARED_RADIO_TOWER + clearflag ENGINE_ROCKETS_IN_RADIO_TOWER + setevent EVENT_GOLDENROD_CITY_ROCKET_SCOUT + setevent EVENT_GOLDENROD_CITY_ROCKET_TAKEOVER + setevent EVENT_RADIO_TOWER_ROCKET_TAKEOVER + clearevent EVENT_MAHOGANY_MART_OWNERS + clearflag ENGINE_ROCKETS_IN_MAHOGANY + clearevent EVENT_GOLDENROD_CITY_CIVILIANS + clearevent EVENT_RADIO_TOWER_CIVILIANS_AFTER + setevent EVENT_BLACKTHORN_CITY_SUPER_NERD_BLOCKS_GYM + clearevent EVENT_BLACKTHORN_CITY_SUPER_NERD_DOES_NOT_BLOCK_GYM + special PlayMapMusic + disappear RADIOTOWER5F_DIRECTOR + moveobject RADIOTOWER5F_DIRECTOR, 12, 0 + appear RADIOTOWER5F_DIRECTOR + applymovement RADIOTOWER5F_DIRECTOR, RadioTower5FDirectorWalksIn + turnobject PLAYER, RIGHT + opentext + writetext RadioTower5FDirectorThankYouText + buttonsound + checkver + iftrue .SilverWing + verbosegiveitem RAINBOW_WING + writetext RadioTower5FDirectorDescribeRainbowWingText + waitbutton + closetext + setscene SCENE_RADIOTOWER5F_NOTHING + setevent EVENT_GOT_RAINBOW_WING + setevent EVENT_TEAM_ROCKET_DISBANDED + jump .UselessJump +.SilverWing + verbosegiveitem SILVER_WING + writetext RadioTower5FDirectorDescribeSilverWingText + waitbutton + closetext + setscene SCENE_RADIOTOWER5F_NOTHING + setevent EVENT_GOT_SILVER_WING + +.UselessJump: + applymovement RADIOTOWER5F_DIRECTOR, RadioTower5FDirectorWalksOut + playsound SFX_EXIT_BUILDING + disappear RADIOTOWER5F_DIRECTOR + end + +Ben: + jumptextfaceplayer BenText + +RadioTower5FDirectorsOfficeSign: + jumptext RadioTower5FDirectorsOfficeSignText + +RadioTower5FStudio1Sign: + jumptext RadioTower5FStudio1SignText + +RadioTower5FBookshelf: + jumpstd magazinebookshelf + +FakeDirectorMovement: + step LEFT + step LEFT + step LEFT + step UP + step UP + step_end + +RadioTower5FDirectorWalksIn: + step DOWN + step DOWN + step RIGHT + step RIGHT + step RIGHT + step RIGHT + step DOWN + step DOWN + step DOWN + step LEFT + step_end + +RadioTower5FDirectorWalksOut: + step RIGHT + step UP + step UP + step UP + step LEFT + step LEFT + step LEFT + step LEFT + step UP + step UP + step_end + +RadioTower5FPlayerTwoStepsLeftMovement: + step LEFT + step LEFT + step_end + +FakeDirectorTextBefore1: + text "Y-you! You came to" + line "rescue me?" + done + +FakeDirectorTextBefore2: + text "Is that what you" + line "were expecting?" + + para "Wrong!" + line "I'm an imposter!" + + para "I pretended to be" + line "the real thing to" + + para "prepare for our" + line "takeover." + + para "Do you want to" + line "know where we hid" + cont "the real DIRECTOR?" + + para "Sure, I'll tell" + line "you. But only if" + cont "you can beat me!" + done + +FakeDirectorWinText: + text "OK, OK. I'll tell" + line "you where he is." + done + +FakeDirectorTextAfter: + text "We stashed the" + line "real DIRECTOR in" + + para "the UNDERGROUND" + line "WAREHOUSE." + + para "It's at the far" + line "end of the UNDER-" + cont "GROUND." + + para "But I doubt you'll" + line "get that far." + done + +Executivef1SeenText: + text "Hi, little boy." + line "Remember me from" + + para "the HIDEOUT in" + line "MAHOGANY TOWN?" + + para "I lost then, but I" + line "won't this time." + done + +Executivef1BeatenText: + text "This can't be" + line "happening!" + + para "I fought hard, but" + line "I still lost…" + done + +Executivef1AfterBattleText: + text "<PLAYER>, isn't it?" + + para "A brat like you" + line "won't appreciate" + + para "the magnificence" + line "of TEAM ROCKET." + + para "That's too bad." + line "I really admire" + cont "your power." + done + +RadioTower5FRocketBossBeforeText: + text "Oh? You managed to" + line "get this far?" + + para "You must be quite" + line "the trainer." + + para "We intend to take" + line "over this RADIO" + + para "STATION and an-" + line "nounce our come-" + cont "back." + + para "That should bring" + line "our boss GIOVANNI" + + para "back from his solo" + line "training." + + para "We are going to" + line "regain our former" + cont "glory." + + para "I won't allow you" + line "to interfere with" + cont "our plans." + done + +RadioTower5FRocketBossWinText: + text "No! Forgive me," + line "GIOVANNI!" + done + +RadioTower5FRocketBossAfterText: + text "How could this be?" + + para "Our dreams have" + line "come to naught." + + para "I wasn't up to the" + line "task after all." + + para "Like GIOVANNI did" + line "before me, I will" + + para "disband TEAM" + line "ROCKET here today." + + para "Farewell." + done + +RadioTower5FDirectorThankYouText: + text "DIRECTOR: <PLAYER>," + line "thank you!" + + para "Your courageous" + line "actions have saved" + + para "#MON nation-" + line "wide." + + para "I know it's not" + line "much, but please" + cont "take this." + done + +RadioTower5FDirectorDescribeRainbowWingText: + text "There used to be a" + line "tower right here" + cont "in GOLDENROD CITY." + + para "But it was old and" + line "creaky." + + para "So we replaced it" + line "with our RADIO" + cont "TOWER." + + para "During the tear-" + line "down, we found" + cont "that at the top." + + para "I heard that giant" + line "#MON used to" + + para "fly over GOLDENROD" + line "in the past." + + para "Maybe that fell" + line "off a #MON." + + para "Maybe like the one" + line "that appears at" + + para "TIN TOWER in" + line "ECRUTEAK CITY." + + para "OK, I better go to" + line "my OFFICE." + done + +RadioTower5FDirectorDescribeSilverWingText: + text "There used to be a" + line "tower right here" + cont "in GOLDENROD CITY." + + para "But it was old and" + line "creaky." + + para "So we replaced it" + line "with our RADIO" + cont "TOWER." + + para "During the tear-" + line "down, we found" + cont "that at the top." + + para "I heard that giant" + line "#MON used to" + + para "fly over GOLDENROD" + line "in the past." + + para "Maybe that fell" + line "off a #MON." + + para "Maybe like the one" + line "that appears at" + + para "WHIRL ISLANDS near" + line "CIANWOOD." + + para "OK, I better go to" + line "my OFFICE." + done + +RadioTower5FDirectorText: + text "DIRECTOR: Hello," + line "<PLAYER>!" + + para "You know, I love" + line "#MON." + + para "I built this RADIO" + line "TOWER so I could" + + para "express my love" + line "of #MON." + + para "It would be nice" + line "if people enjoyed" + cont "our programs." + done + +BenText: + text "BEN: Do you listen" + line "to our music?" + done + +RadioTower5FDirectorsOfficeSignText: + text "5F DIRECTOR'S" + line " OFFICE" + done + +RadioTower5FStudio1SignText: + text "5F STUDIO 1" + done + +RadioTower5F_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 0, 0, RADIO_TOWER_4F, 1 + warp_event 12, 0, RADIO_TOWER_4F, 3 + + db 2 ; coord events + coord_event 0, 3, SCENE_DEFAULT, FakeDirectorScript + coord_event 16, 5, SCENE_RADIOTOWER5F_ROCKET_BOSS, RadioTower5FRocketBossScene + + db 5 ; bg events + bg_event 3, 0, BGEVENT_READ, RadioTower5FDirectorsOfficeSign + bg_event 11, 0, BGEVENT_READ, RadioTower5FStudio1Sign + bg_event 15, 0, BGEVENT_READ, RadioTower5FStudio1Sign + bg_event 16, 1, BGEVENT_READ, RadioTower5FBookshelf + bg_event 17, 1, BGEVENT_READ, RadioTower5FBookshelf + + db 4 ; object events + object_event 3, 6, SPRITE_GENTLEMAN, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Director, -1 + object_event 13, 5, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 17, 2, SPRITE_ROCKET_GIRL, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 1, TrainerExecutivef1, EVENT_RADIO_TOWER_ROCKET_TAKEOVER + object_event 13, 5, SPRITE_ROCKER, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, Ben, EVENT_RADIO_TOWER_CIVILIANS_AFTER |