mirror of https://github.com/pret/pokecrystal.git
446 lines
8.4 KiB
NASM
446 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
|
|
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, PAL_NPC_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
|