pokecrystal-board/maps/Route31.asm

449 lines
8.4 KiB
NASM

const_value set 2
const ROUTE31_FISHER
const ROUTE31_YOUNGSTER
const ROUTE31_BUG_CATCHER
const ROUTE31_COOLTRAINER_M
const ROUTE31_FRUIT_TREE
const ROUTE31_POKE_BALL1
const ROUTE31_POKE_BALL2
Route31_MapScriptHeader:
.MapTriggers:
db 0
.MapCallbacks:
db 1
; callbacks
dbw MAPCALLBACK_NEWMAP, .CheckMomCall
.CheckMomCall:
checkevent EVENT_TALKED_TO_MOM_AFTER_MYSTERY_EGG_QUEST
iffalse .DoMomCall
return
.DoMomCall:
specialphonecall SPECIALCALL_WORRIED
return
TrainerBug_catcherWade1:
trainer EVENT_BEAT_BUG_CATCHER_WADE, BUG_CATCHER, WADE1, Bug_catcherWade1SeenText, Bug_catcherWade1BeatenText, 0, .Script
.Script:
writecode VAR_CALLERID, PHONE_BUG_CATCHER_WADE
end_if_just_battled
opentext
checkflag ENGINE_WADE
iftrue .WadeRematch
checkflag ENGINE_WADE_HAS_ITEM
iftrue .WadeItem
checkcellnum PHONE_BUG_CATCHER_WADE
iftrue .AcceptedNumberSTD
checkevent EVENT_WADE_ASKED_FOR_PHONE_NUMBER
iftrue .AskAgain
writetext Bug_catcherWade1AfterText
waitbutton
setevent EVENT_WADE_ASKED_FOR_PHONE_NUMBER
scall .AskPhoneNumberSTD
jump .Continue
.AskAgain:
scall .AskAgainSTD
.Continue:
askforphonenumber PHONE_BUG_CATCHER_WADE
if_equal $1, .PhoneFullSTD
if_equal $2, .DeclinedNumberSTD
trainertotext BUG_CATCHER, WADE1, $0
scall .RegisterNumberSTD
jump .AcceptedNumberSTD
.WadeRematch:
scall .RematchSTD
winlosstext Bug_catcherWade1BeatenText, 0
copybytetovar wWadeFightCount
if_equal 4, .Fight4
if_equal 3, .Fight3
if_equal 2, .Fight2
if_equal 1, .Fight1
if_equal 0, .LoadFight0
.Fight4:
checkevent EVENT_BEAT_ELITE_FOUR
iftrue .LoadFight4
.Fight3:
checkevent EVENT_CLEARED_RADIO_TOWER
iftrue .LoadFight3
.Fight2:
checkflag ENGINE_FLYPOINT_MAHOGANY
iftrue .LoadFight2
.Fight1:
checkflag ENGINE_FLYPOINT_GOLDENROD
iftrue .LoadFight1
.LoadFight0:
loadtrainer BUG_CATCHER, WADE1
startbattle
reloadmapafterbattle
loadvar wWadeFightCount, 1
clearflag ENGINE_WADE
end
.LoadFight1:
loadtrainer BUG_CATCHER, WADE2
startbattle
reloadmapafterbattle
loadvar wWadeFightCount, 2
clearflag ENGINE_WADE
end
.LoadFight2:
loadtrainer BUG_CATCHER, WADE3
startbattle
reloadmapafterbattle
loadvar wWadeFightCount, 3
clearflag ENGINE_WADE
end
.LoadFight3:
loadtrainer BUG_CATCHER, WADE4
startbattle
reloadmapafterbattle
loadvar wWadeFightCount, 4
clearflag ENGINE_WADE
end
.LoadFight4:
loadtrainer BUG_CATCHER, WADE5
startbattle
reloadmapafterbattle
clearflag ENGINE_WADE
end
.WadeItem:
scall .ItemSTD
checkevent EVENT_WADE_HAS_BERRY
iftrue .Berry
checkevent EVENT_WADE_HAS_PSNCUREBERRY
iftrue .Psncureberry
checkevent EVENT_WADE_HAS_PRZCUREBERRY
iftrue .Przcureberry
checkevent EVENT_WADE_HAS_BITTER_BERRY
iftrue .BitterBerry
.Berry:
verbosegiveitem BERRY
iffalse .PackFull
jump .Done
.Psncureberry:
verbosegiveitem PSNCUREBERRY
iffalse .PackFull
jump .Done
.Przcureberry:
verbosegiveitem PRZCUREBERRY
iffalse .PackFull
jump .Done
.BitterBerry:
verbosegiveitem BITTER_BERRY
iffalse .PackFull
.Done:
clearflag ENGINE_WADE_HAS_ITEM
jump .AcceptedNumberSTD
.PackFull:
jump .PackFullSTD
.AskPhoneNumberSTD:
jumpstd asknumber1m
end
.AskAgainSTD:
jumpstd asknumber2m
end
.RegisterNumberSTD:
jumpstd registerednumberm
end
.AcceptedNumberSTD:
jumpstd numberacceptedm
end
.DeclinedNumberSTD:
jumpstd numberdeclinedm
end
.PhoneFullSTD:
jumpstd phonefullm
end
.RematchSTD:
jumpstd rematchm
end
.ItemSTD:
jumpstd giftm
end
.PackFullSTD:
jumpstd packfullm
end
Route31MailRecipientScript:
faceplayer
opentext
checkevent EVENT_GOT_TM50_NIGHTMARE
iftrue .DescribeNightmare
checkevent EVENT_GOT_KENYA
iftrue .TryGiveKenya
writetext Text_Route31SleepyMan
waitbutton
closetext
end
.TryGiveKenya:
writetext Text_Route31SleepyManGotMail
buttonsound
checkpokeitem ReceivedSpearowMailText
if_equal $0, .WrongMail
if_equal $2, .Refused
if_equal $3, .NoMail
if_equal $4, .LastMon
writetext Text_Route31HandOverMailMon
buttonsound
writetext Text_Route31ReadingMail
buttonsound
setevent EVENT_GAVE_KENYA
verbosegiveitem TM_NIGHTMARE
iffalse .NoRoomForItems
setevent EVENT_GOT_TM50_NIGHTMARE
.DescribeNightmare:
writetext Text_Route31DescribeNightmare
waitbutton
.NoRoomForItems:
closetext
end
.WrongMail:
writetext Text_Route31WrongMail
waitbutton
closetext
end
.NoMail:
writetext Text_Route31MissingMail
waitbutton
closetext
end
.Refused:
writetext Text_Route31DeclinedToHandOverMail
waitbutton
closetext
end
.LastMon:
writetext Text_Route31CantTakeLastMon
waitbutton
closetext
end
ReceivedSpearowMailText:
db "DARK CAVE leads"
next "to another road@"
Route31YoungsterScript:
jumptextfaceplayer Route31YoungsterText
Route31Sign:
jumptext Route31SignText
DarkCaveSign:
jumptext DarkCaveSignText
Route31CooltrainerMScript:
jumptextfaceplayer Route31CooltrainerMText
Route31FruitTree:
fruittree FRUITTREE_ROUTE_31
Route31Potion:
itemball POTION
Route31PokeBall:
itemball POKE_BALL
Route31CooltrainerMText:
text "DARK CAVE…"
para "If #MON could"
line "light it up, I'd"
cont "explore it."
done
Bug_catcherWade1SeenText:
text "I caught a bunch"
line "of #MON. Let me"
cont "battle with you!"
done
Bug_catcherWade1BeatenText:
text "Awwwww…"
done
Bug_catcherWade1AfterText:
text "You can catch"
line "#MON even if"
para "you have six with"
line "you."
para "If you catch one,"
line "it'll go to your"
cont "BOX automatically."
done
Text_Route31SleepyMan:
text "… Hnuurg… Huh?"
para "I walked too far"
line "today looking for"
cont "#MON."
para "My feet hurt and"
line "I'm sleepy…"
para "If I were a wild"
line "#MON, I'd be"
cont "easy to catch…"
para "…Zzzz…"
done
Text_Route31SleepyManGotMail:
text "…Zzzz… Huh?"
para "What's that? You"
line "have MAIL for me?"
done
Text_Route31HandOverMailMon:
text "<PLAYER> handed"
line "over the #MON"
cont "holding the MAIL."
done
Text_Route31ReadingMail:
text "Let's see…"
para "…DARK CAVE leads"
line "to another road…"
para "That's good to"
line "know."
para "Thanks for bring-"
line "ing this to me."
para "My friend's a good"
line "guy, and you're"
cont "swell too!"
para "I'd like to do"
line "something good in"
cont "return too!"
para "I know! I want you"
line "to have this!"
done
Text_Route31DescribeNightmare:
text "TM50 is NIGHTMARE."
para "It's a wicked move"
line "that steadily cuts"
para "the HP of a sleep-"
line "ing enemy."
para "Ooooh…"
line "That's scary…"
para "I don't want to"
line "have bad dreams."
done
Text_Route31WrongMail:
text "This MAIL isn't"
line "for me."
done
Text_Route31MissingMail:
text "Why is this #-"
line "MON so special?"
para "It doesn't have"
line "any MAIL."
done
Text_Route31DeclinedToHandOverMail:
text "What? You don't"
line "want anything?"
done
Text_Route31CantTakeLastMon:
text "If I take that"
line "#MON from you,"
para "what are you going"
line "to use in battle?"
done
Route31YoungsterText:
text "I found a good"
line "#MON in DARK"
cont "CAVE."
para "I'm going to raise"
line "it to take on"
cont "FALKNER."
para "He's the leader of"
line "VIOLET CITY's GYM."
done
Route31SignText:
text "ROUTE 31"
para "VIOLET CITY -"
line "CHERRYGROVE CITY"
done
DarkCaveSignText:
text "DARK CAVE"
done
Route31_MapEventHeader:
; filler
db 0, 0
.Warps:
db 3
warp_def $6, $4, 3, ROUTE_31_VIOLET_GATE
warp_def $7, $4, 4, ROUTE_31_VIOLET_GATE
warp_def $5, $22, 1, DARK_CAVE_VIOLET_ENTRANCE
.XYTriggers:
db 0
.Signposts:
db 2
signpost 5, 7, SIGNPOST_READ, Route31Sign
signpost 5, 31, SIGNPOST_READ, DarkCaveSign
.PersonEvents:
db 7
person_event SPRITE_FISHER, 7, 17, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, Route31MailRecipientScript, -1
person_event SPRITE_YOUNGSTER, 5, 9, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, Route31YoungsterScript, -1
person_event SPRITE_BUG_CATCHER, 13, 21, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, PERSONTYPE_TRAINER, 5, TrainerBug_catcherWade1, -1
person_event SPRITE_COOLTRAINER_M, 8, 33, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, Route31CooltrainerMScript, -1
person_event SPRITE_FRUIT_TREE, 7, 16, SPRITEMOVEDATA_ITEM_TREE, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, Route31FruitTree, -1
person_event SPRITE_POKE_BALL, 5, 29, SPRITEMOVEDATA_ITEM_TREE, 0, 0, -1, -1, 0, PERSONTYPE_ITEMBALL, 0, Route31Potion, EVENT_ROUTE_31_POTION
person_event SPRITE_POKE_BALL, 15, 19, SPRITEMOVEDATA_ITEM_TREE, 0, 0, -1, -1, 0, PERSONTYPE_ITEMBALL, 0, Route31PokeBall, EVENT_ROUTE_31_POKE_BALL