summaryrefslogtreecommitdiff
path: root/maps/Route45.asm
diff options
context:
space:
mode:
Diffstat (limited to 'maps/Route45.asm')
-rw-r--r--maps/Route45.asm424
1 files changed, 424 insertions, 0 deletions
diff --git a/maps/Route45.asm b/maps/Route45.asm
new file mode 100644
index 00000000..0d84ef4f
--- /dev/null
+++ b/maps/Route45.asm
@@ -0,0 +1,424 @@
+ const_def 2 ; object constants
+ const ROUTE45_POKEFAN_M1
+ const ROUTE45_POKEFAN_M2
+ const ROUTE45_POKEFAN_M3
+ const ROUTE45_POKEFAN_M4
+ const ROUTE45_BLACK_BELT
+ const ROUTE45_COOLTRAINER_M
+ const ROUTE45_COOLTRAINER_F
+ const ROUTE45_FRUIT_TREE
+ const ROUTE45_POKE_BALL1
+ const ROUTE45_POKE_BALL2
+ const ROUTE45_POKE_BALL3
+ const ROUTE45_POKE_BALL4
+ const ROUTE45_YOUNGSTER
+
+Route45_MapScripts:
+ db 0 ; scene scripts
+
+ db 0 ; callbacks
+
+TrainerBlackbeltKenji:
+ trainer BLACKBELT_T, KENJI3, EVENT_BEAT_BLACKBELT_KENJI, BlackbeltKenjiSeenText, BlackbeltKenjiBeatenText, 0, .Script
+
+.Script:
+ endifjustbattled
+ opentext
+ checkevent EVENT_KENJI_READY_FOR_REMATCH
+ iftrue .WantsBattle
+ checkcellnum PHONE_BLACKBELT_KENJI
+ iftrue Route45NumberAcceptedM
+ checkevent EVENT_KENJI_ASKED_FOR_PHONE_NUMBER
+ iftrue .AskedAlready
+ writetext BlackbeltKenjiAfterBattleText
+ waitbutton
+ setevent EVENT_KENJI_ASKED_FOR_PHONE_NUMBER
+ scall Route45AskNumber1M
+ jump .AskForNumber
+
+.AskedAlready:
+ scall Route45AskNumber2M
+.AskForNumber:
+ askforphonenumber PHONE_BLACKBELT_KENJI
+ ifequal PHONE_CONTACTS_FULL, Route45PhoneFullM
+ ifequal PHONE_CONTACT_REFUSED, Route45NumberDeclinedM
+ trainertotext BLACKBELT_T, KENJI3, MEM_BUFFER_0
+ scall Route45RegisteredNumberM
+ jump Route45NumberAcceptedM
+
+.WantsBattle:
+ scall Route45RematchM
+ winlosstext BlackbeltKenjiBeatenText, 0
+ checkevent EVENT_RESTORED_POWER_TO_KANTO
+ iftrue .LoadFight2
+ checkevent EVENT_BEAT_ELITE_FOUR
+ iftrue .LoadFight1
+ loadtrainer BLACKBELT_T, KENJI3
+ startbattle
+ reloadmapafterbattle
+ clearevent EVENT_KENJI_READY_FOR_REMATCH
+ end
+
+.LoadFight1:
+ loadtrainer BLACKBELT_T, KENJI1
+ startbattle
+ reloadmapafterbattle
+ clearevent EVENT_KENJI_READY_FOR_REMATCH
+ end
+
+.LoadFight2:
+ loadtrainer BLACKBELT_T, KENJI2
+ startbattle
+ reloadmapafterbattle
+ clearevent EVENT_KENJI_READY_FOR_REMATCH
+ end
+
+Route45AskNumber1M:
+ jumpstd asknumber1m
+ end
+
+Route45AskNumber2M:
+ jumpstd asknumber2m
+ end
+
+Route45RegisteredNumberM:
+ jumpstd registerednumberm
+ end
+
+Route45NumberAcceptedM:
+ jumpstd numberacceptedm
+ end
+
+Route45NumberDeclinedM:
+ jumpstd numberdeclinedm
+ end
+
+Route45PhoneFullM:
+ jumpstd phonefullm
+ end
+
+Route45RematchM:
+ jumpstd rematchm
+ end
+
+TrainerHikerErik:
+ trainer HIKER, ERIK, EVENT_BEAT_HIKER_ERIK, HikerErikSeenText, HikerErikBeatenText, 0, .Script
+
+.Script:
+ endifjustbattled
+ opentext
+ writetext HikerErikAfterBattleText
+ waitbutton
+ closetext
+ end
+
+TrainerHikerMichael:
+ trainer HIKER, MICHAEL, EVENT_BEAT_HIKER_MICHAEL, HikerMichaelSeenText, HikerMichaelBeatenText, 0, .Script
+
+.Script:
+ endifjustbattled
+ opentext
+ writetext HikerMichaelAfterBattleText
+ waitbutton
+ closetext
+ end
+
+TrainerHikerParry:
+ trainer HIKER, PARRY3, EVENT_BEAT_HIKER_PARRY, HikerParry3SeenText, HikerParry3BeatenText, 0, .Script
+
+.Script:
+ endifjustbattled
+ opentext
+ checkevent EVENT_PARRY_READY_FOR_REMATCH
+ iftrue .WantsBattle
+ checkcellnum PHONE_HIKER_PARRY
+ iftrue Route45NumberAcceptedM
+ checkevent EVENT_PARRY_ASKED_FOR_PHONE_NUMBER
+ iftrue .AskedAlready
+ writetext HikerParryAfterBattleText
+ buttonsound
+ setevent EVENT_PARRY_ASKED_FOR_PHONE_NUMBER
+ scall Route45AskNumber1M
+ jump .AskForNumber
+
+.AskedAlready:
+ scall Route45AskNumber2M
+.AskForNumber:
+ askforphonenumber PHONE_HIKER_PARRY
+ ifequal PHONE_CONTACTS_FULL, Route45PhoneFullM
+ ifequal PHONE_CONTACT_REFUSED, Route45NumberDeclinedM
+ trainertotext HIKER, PARRY1, MEM_BUFFER_0
+ scall Route45RegisteredNumberM
+ jump Route45NumberAcceptedM
+
+.WantsBattle:
+ scall Route45RematchM
+ winlosstext HikerParry3BeatenText, 0
+ checkevent EVENT_RESTORED_POWER_TO_KANTO
+ iftrue .LoadFight2
+ checkevent EVENT_BEAT_ELITE_FOUR
+ iftrue .LoadFight1
+ loadtrainer HIKER, PARRY3
+ startbattle
+ reloadmapafterbattle
+ clearevent EVENT_PARRY_READY_FOR_REMATCH
+ end
+
+.LoadFight1:
+ loadtrainer HIKER, PARRY1
+ startbattle
+ reloadmapafterbattle
+ clearevent EVENT_PARRY_READY_FOR_REMATCH
+ end
+
+.LoadFight2:
+ loadtrainer HIKER, PARRY2
+ startbattle
+ reloadmapafterbattle
+ clearevent EVENT_PARRY_READY_FOR_REMATCH
+ end
+
+TrainerHikerTimothy:
+ trainer HIKER, TIMOTHY, EVENT_BEAT_HIKER_TIMOTHY, HikerTimothySeenText, HikerTimothyBeatenText, 0, .Script
+
+.Script:
+ endifjustbattled
+ opentext
+ writetext HikerTimothyAfterBattleText
+ waitbutton
+ closetext
+ end
+
+TrainerCooltrainermRyan:
+ trainer COOLTRAINERM, RYAN, EVENT_BEAT_COOLTRAINERM_RYAN, CooltrainermRyanSeenText, CooltrainermRyanBeatenText, 0, .Script
+
+.Script:
+ endifjustbattled
+ opentext
+ writetext CooltrainermRyanAfterBattleText
+ waitbutton
+ closetext
+ end
+
+TrainerCooltrainerfKelly:
+ trainer COOLTRAINERF, KELLY, EVENT_BEAT_COOLTRAINERF_KELLY, CooltrainerfKellySeenText, CooltrainerfKellyBeatenText, 0, .Script
+
+.Script:
+ endifjustbattled
+ opentext
+ writetext CooltrainerfKellyAfterBattleText
+ waitbutton
+ closetext
+ end
+
+Route45Sign:
+ jumptext Route45SignText
+
+Route45FruitTree:
+ fruittree FRUITTREE_ROUTE_45
+
+Route45XSpecial:
+ itemball X_SPECIAL
+
+Route45Revive:
+ itemball REVIVE
+
+Route45Elixer:
+ itemball ELIXER
+
+Route45MaxPotion:
+ itemball MAX_POTION
+
+Route45HiddenPpUp:
+ hiddenitem PP_UP, EVENT_ROUTE_45_HIDDEN_PP_UP
+
+HikerErikSeenText:
+ text "Be prepared for"
+ line "anything!"
+
+ para "Let me see if your"
+ line "#MON have been"
+ cont "raised properly!"
+ done
+
+HikerErikBeatenText:
+ text "Oh, I lost that!"
+ done
+
+HikerErikAfterBattleText:
+ text "I'll head back to"
+ line "BLACKTHORN's ICE"
+
+ para "PATH and train"
+ line "some more."
+ done
+
+HikerMichaelSeenText:
+ text "Yo! You're spunky!"
+ line "But you know what?"
+
+ para "When it comes to"
+ line "sheer spunkiness,"
+ cont "I'm the man!"
+ done
+
+HikerMichaelBeatenText:
+ text "My #MON weren't"
+ line "spunky enough!"
+ done
+
+HikerMichaelAfterBattleText:
+ text "Boy, do I love"
+ line "HP UP! Mmmm, yum!"
+
+ para "I keep drinking my"
+ line "#MON's!"
+
+ para "I can't help it!"
+ done
+
+HikerParry3SeenText:
+ text "My #MON are"
+ line "power packed!"
+ done
+
+HikerParry3BeatenText:
+ text "Wahahah! I'm the"
+ line "big loser!"
+ done
+
+HikerParryAfterBattleText:
+ text "I'm not much good"
+ line "at thinking, see?"
+
+ para "So, I just plow"
+ line "ahead with power!"
+ done
+
+HikerTimothySeenText:
+ text "Why do I climb"
+ line "mountains?"
+
+ para "Because they're"
+ line "there."
+
+ para "Why do I train"
+ line "#MON?"
+
+ para "Because they're"
+ line "there!"
+ done
+
+HikerTimothyBeatenText:
+ text "Losses…"
+ line "They're there too!"
+ done
+
+HikerTimothyAfterBattleText:
+ text "The best thing to"
+ line "ever happen to me"
+
+ para "was discovering"
+ line "#MON."
+ done
+
+BlackbeltKenjiSeenText:
+ text "I was training"
+ line "here alone."
+
+ para "Behold the fruits"
+ line "of my labor!"
+ done
+
+BlackbeltKenjiBeatenText:
+ text "Waaaargh!"
+ done
+
+BlackbeltKenjiAfterBattleText:
+ text "This calls for"
+ line "extreme measures."
+
+ para "I must take to the"
+ line "hills and train in"
+ cont "solitude."
+ done
+
+CooltrainermRyanSeenText:
+ text "What are your"
+ line "thoughts on rais-"
+ cont "ing #MON?"
+ done
+
+CooltrainermRyanBeatenText:
+ text "You've won my"
+ line "respect."
+ done
+
+CooltrainermRyanAfterBattleText:
+ text "I see you're rais-"
+ line "ing your #MON"
+ cont "with care."
+
+ para "The bond you build"
+ line "will save you in"
+ cont "tough situations."
+ done
+
+CooltrainerfKellySeenText:
+ text "What is your"
+ line "battle strategy?"
+
+ para "It is foolish to"
+ line "use strong moves"
+ cont "indiscriminately."
+ done
+
+CooltrainerfKellyBeatenText:
+ text "Fine. I lost."
+ done
+
+CooltrainerfKellyAfterBattleText:
+ text "I'm not in favor"
+ line "of overly power-"
+ cont "ful moves."
+
+ para "I want to win, but"
+ line "I also don't want"
+ cont "to harm #MON."
+ done
+
+Route45DummyText:
+ text "I'm pretty good at"
+ line "#MON too."
+ done
+
+Route45SignText:
+ text "ROUTE 45"
+ line "MOUNTAIN RD. AHEAD"
+ done
+
+Route45_MapEvents:
+ db 0, 0 ; filler
+
+ db 1 ; warp events
+ warp_event 2, 5, DARK_CAVE_BLACKTHORN_ENTRANCE, 1
+
+ db 0 ; coord events
+
+ db 2 ; bg events
+ bg_event 10, 4, BGEVENT_READ, Route45Sign
+ bg_event 13, 80, BGEVENT_ITEM, Route45HiddenPpUp
+
+ db 12 ; object events
+ object_event 10, 16, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_TRAINER, 1, TrainerHikerErik, -1
+ object_event 15, 64, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_TRAINER, 2, TrainerHikerMichael, -1
+ object_event 5, 28, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_TRAINER, 3, TrainerHikerParry, -1
+ object_event 9, 64, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_TRAINER, 1, TrainerHikerTimothy, -1
+ object_event 11, 50, SPRITE_BLACK_BELT, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_TRAINER, 2, TrainerBlackbeltKenji, -1
+ object_event 17, 18, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 1, TrainerCooltrainermRyan, -1
+ object_event 4, 36, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 3, TrainerCooltrainerfKelly, -1
+ object_event 16, 82, SPRITE_FRUIT_TREE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Route45FruitTree, -1
+ object_event 6, 51, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, Route45XSpecial, EVENT_ROUTE_45_X_SPECIAL
+ object_event 6, 66, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, Route45Revive, EVENT_ROUTE_45_REVIVE
+ object_event 4, 21, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, Route45Elixer, EVENT_ROUTE_45_ELIXER
+ object_event 8, 33, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, Route45MaxPotion, EVENT_ROUTE_45_MAX_POTION