pokecrystal-board/maps/Route26.asm

442 lines
8.9 KiB
NASM

const_value set 2
const ROUTE26_COOLTRAINER_M1
const ROUTE26_COOLTRAINER_M2
const ROUTE26_COOLTRAINER_F1
const ROUTE26_COOLTRAINER_F2
const ROUTE26_YOUNGSTER
const ROUTE26_FISHER
const ROUTE26_FRUIT_TREE
const ROUTE26_POKE_BALL
Route26_MapScripts:
.SceneScripts:
db 0
.MapCallbacks:
db 0
TrainerCooltrainermJake:
trainer EVENT_BEAT_COOLTRAINERM_JAKE, COOLTRAINERM, JAKE, CooltrainermJakeSeenText, CooltrainermJakeBeatenText, 0, .Script
.Script:
end_if_just_battled
opentext
writetext CooltrainermJakeAfterBattleText
waitbutton
closetext
end
TrainerCooltrainermGaven3:
trainer EVENT_BEAT_COOLTRAINERM_GAVEN, COOLTRAINERM, GAVEN3, CooltrainermGaven3SeenText, CooltrainermGaven3BeatenText, 0, .Script
.Script:
writecode VAR_CALLERID, PHONE_COOLTRAINERM_GAVEN
end_if_just_battled
opentext
checkflag ENGINE_GAVEN
iftrue .WantsBattle
checkcellnum PHONE_COOLTRAINERM_GAVEN
iftrue .NumberAccepted
checkevent EVENT_GAVEN_ASKED_FOR_PHONE_NUMBER
iftrue .AskedAlready
writetext CooltrainermGavenAfterText
buttonsound
setevent EVENT_GAVEN_ASKED_FOR_PHONE_NUMBER
scall .AskNumber1
jump .AskForNumber
.AskedAlready:
scall .AskNumber2
.AskForNumber:
askforphonenumber PHONE_COOLTRAINERM_GAVEN
if_equal PHONE_CONTACTS_FULL, .PhoneFull
if_equal PHONE_CONTACT_REFUSED, .NumberDeclined
trainertotext COOLTRAINERM, GAVEN3, MEM_BUFFER_0
scall .RegisteredNumber
jump .NumberAccepted
.WantsBattle:
scall .Rematch
winlosstext CooltrainermGaven3BeatenText, 0
copybytetovar wGavenFightCount
if_equal 2, .Fight2
if_equal 1, .Fight1
if_equal 0, .LoadFight0
.Fight2:
checkevent EVENT_RESTORED_POWER_TO_KANTO
iftrue .LoadFight2
.Fight1:
checkevent EVENT_BEAT_ELITE_FOUR
iftrue .LoadFight1
.LoadFight0:
loadtrainer COOLTRAINERM, GAVEN3
startbattle
reloadmapafterbattle
loadvar wGavenFightCount, 1
clearflag ENGINE_GAVEN
end
.LoadFight1:
loadtrainer COOLTRAINERM, GAVEN1
startbattle
reloadmapafterbattle
loadvar wGavenFightCount, 2
clearflag ENGINE_GAVEN
end
.LoadFight2:
loadtrainer COOLTRAINERM, GAVEN2
startbattle
reloadmapafterbattle
clearflag ENGINE_GAVEN
end
.AskNumber1:
jumpstd asknumber1m
end
.AskNumber2:
jumpstd asknumber2m
end
.RegisteredNumber:
jumpstd registerednumberm
end
.NumberAccepted:
jumpstd numberacceptedm
end
.NumberDeclined:
jumpstd numberdeclinedm
end
.PhoneFull:
jumpstd phonefullm
end
.Rematch:
jumpstd rematchm
end
TrainerCooltrainerfJoyce:
trainer EVENT_BEAT_COOLTRAINERF_JOYCE, COOLTRAINERF, JOYCE, CooltrainerfJoyceSeenText, CooltrainerfJoyceBeatenText, 0, .Script
.Script:
end_if_just_battled
opentext
writetext CooltrainerfJoyceAfterBattleText
waitbutton
closetext
end
TrainerCooltrainerfBeth1:
trainer EVENT_BEAT_COOLTRAINERF_BETH, COOLTRAINERF, BETH1, CooltrainerfBeth1SeenText, CooltrainerfBeth1BeatenText, 0, .Script
.Script:
writecode VAR_CALLERID, PHONE_COOLTRAINERF_BETH
end_if_just_battled
opentext
checkflag ENGINE_BETH
iftrue .WantsBattle
checkcellnum PHONE_COOLTRAINERF_BETH
iftrue .NumberAccepted
checkevent EVENT_BETH_ASKED_FOR_PHONE_NUMBER
iftrue .AskedAlready
writetext CooltrainerfBethAfterText
buttonsound
setevent EVENT_BETH_ASKED_FOR_PHONE_NUMBER
scall .AskNumber1
jump .AskForNumber
.AskedAlready:
scall .AskNumber2
.AskForNumber:
askforphonenumber PHONE_COOLTRAINERF_BETH
if_equal PHONE_CONTACTS_FULL, .PhoneFull
if_equal PHONE_CONTACT_REFUSED, .NumberDeclined
trainertotext COOLTRAINERF, BETH1, MEM_BUFFER_0
scall .RegisteredNumber
jump .NumberAccepted
.WantsBattle:
scall .Rematch
winlosstext CooltrainerfBeth1BeatenText, 0
copybytetovar wBethFightCount
if_equal 2, .Fight2
if_equal 1, .Fight1
if_equal 0, .LoadFight0
.Fight2:
checkevent EVENT_RESTORED_POWER_TO_KANTO
iftrue .LoadFight2
.Fight1:
checkevent EVENT_BEAT_ELITE_FOUR
iftrue .LoadFight1
.LoadFight0:
loadtrainer COOLTRAINERF, BETH1
startbattle
reloadmapafterbattle
loadvar wBethFightCount, 1
clearflag ENGINE_BETH
end
.LoadFight1:
loadtrainer COOLTRAINERF, BETH2
startbattle
reloadmapafterbattle
loadvar wBethFightCount, 2
clearflag ENGINE_BETH
end
.LoadFight2:
loadtrainer COOLTRAINERF, BETH3
startbattle
reloadmapafterbattle
clearflag ENGINE_BETH
end
.AskNumber1:
jumpstd asknumber1f
end
.AskNumber2:
jumpstd asknumber2f
end
.RegisteredNumber:
jumpstd registerednumberf
end
.NumberAccepted:
jumpstd numberacceptedf
end
.NumberDeclined:
jumpstd numberdeclinedf
end
.PhoneFull:
jumpstd phonefullf
end
.Rematch:
jumpstd rematchf
end
TrainerPsychicRichard:
trainer EVENT_BEAT_PSYCHIC_RICHARD, PSYCHIC_T, RICHARD, PsychicRichardSeenText, PsychicRichardBeatenText, 0, .Script
.Script:
end_if_just_battled
opentext
writetext PsychicRichardAfterBattleText
waitbutton
closetext
end
TrainerFisherScott:
trainer EVENT_BEAT_FISHER_SCOTT, FISHER, SCOTT, FisherScottSeenText, FisherScottBeatenText, 0, .Script
.Script:
end_if_just_battled
opentext
writetext FisherScottAfterBattleText
waitbutton
closetext
end
Route26Sign:
jumptext Route26SignText
FruitTreeScript_0x1a4ec2:
fruittree FRUITTREE_ROUTE_26
Route26MaxElixer:
itemball MAX_ELIXER
CooltrainermJakeSeenText:
text "I'm making my"
line "final preparations"
para "for the #MON"
line "LEAGUE."
done
CooltrainermJakeBeatenText:
text "I blew it!"
done
CooltrainermJakeAfterBattleText:
text "It's going to be"
line "tough to win at"
cont "the LEAGUE."
para "I need to do some"
line "more training."
para "I hear that the"
line "LEAGUE's ELITE"
para "FOUR are tougher"
line "than GYM LEADERS."
done
CooltrainermGaven3SeenText:
text "By experiencing"
line "tough battles, you"
cont "gain power."
done
CooltrainermGaven3BeatenText:
text "Gaah! Life is even"
line "tougher!"
done
CooltrainermGavenAfterText:
text "To get to #MON"
line "LEAGUE, you have"
para "to get through"
line "VICTORY ROAD."
para "But VICTORY ROAD"
line "is tough."
para "Practically nobody"
line "goes there!"
done
CooltrainerfJoyceSeenText:
text "Since you've come"
line "this far, you must"
cont "be good."
para "I'm going to give"
line "this battle every-"
cont "thing I've got!"
done
CooltrainerfJoyceBeatenText:
text "No! I don't"
line "believe this!"
done
CooltrainerfJoyceAfterBattleText:
text "I've defeated"
line "eight GYM LEADERS,"
para "so I was feeling"
line "confident."
para "I'll have to try"
line "harder next time."
done
CooltrainerfBeth1SeenText:
text "I lost to a train-"
line "er named <RIVAL>."
para "He was really"
line "strong, but…"
para "It was as if he"
line "absolutely had to"
cont "win at any cost."
para "I felt sorry for"
line "his #MON."
done
CooltrainerfBeth1BeatenText:
text "#MON aren't"
line "tools of war."
done
CooltrainerfBethAfterText:
text "#MON are in-"
line "valuable, lifelong"
cont "partners."
done
PsychicRichardSeenText:
text "Wow, look at all"
line "those BADGES!"
cont "I'm impressed."
para "But you're not"
line "satisfied by just"
para "collecting them,"
line "right?"
done
PsychicRichardBeatenText:
text "Good battle!"
done
PsychicRichardAfterBattleText:
text "People and #MON"
line "grow from their"
cont "experiences."
para "Don't get lazy and"
line "complacent."
done
FisherScottSeenText:
text "I'm feeling great"
line "today!"
para "I feel like I"
line "could boot even"
cont "the LEAGUE CHAMP!"
done
FisherScottBeatenText:
text "No! Not in this"
line "battle!"
done
FisherScottAfterBattleText:
text "Just like in fish-"
line "ing, it's all over"
para "in #MON if you"
line "give up."
done
Route26SignText:
text "ROUTE 26"
para "#MON LEAGUE"
line "RECEPTION GATE"
done
Route26_MapEvents:
; filler
db 0, 0
.Warps:
db 3
warp_def 7, 5, 3, VICTORY_ROAD_GATE
warp_def 15, 57, 1, ROUTE_26_HEAL_SPEECH_HOUSE
warp_def 5, 71, 1, ROUTE_26_DAY_OF_WEEK_SIBLINGS_HOUSE
.CoordEvents:
db 0
.BGEvents:
db 1
bg_event 8, 6, BGEVENT_READ, Route26Sign
.ObjectEvents:
db 8
object_event 14, 24, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 2, TrainerCooltrainermJake, -1
object_event 9, 38, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 3, TrainerCooltrainermGaven3, -1
object_event 10, 56, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 3, TrainerCooltrainerfJoyce, -1
object_event 5, 8, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 4, TrainerCooltrainerfBeth1, -1
object_event 13, 79, SPRITE_YOUNGSTER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 2, TrainerPsychicRichard, -1
object_event 10, 92, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_TRAINER, 3, TrainerFisherScott, -1
object_event 14, 54, SPRITE_FRUIT_TREE, SPRITEMOVEDATA_ITEM_TREE, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, FruitTreeScript_0x1a4ec2, -1
object_event 9, 15, SPRITE_POKE_BALL, SPRITEMOVEDATA_ITEM_TREE, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, Route26MaxElixer, EVENT_ROUTE_26_MAX_ELIXER