mirror of https://github.com/pret/pokecrystal.git
498 lines
11 KiB
NASM
498 lines
11 KiB
NASM
const_def 2 ; object constants
|
|
const AZALEATOWN_AZALEA_ROCKET1
|
|
const AZALEATOWN_GRAMPS
|
|
const AZALEATOWN_TEACHER
|
|
const AZALEATOWN_YOUNGSTER
|
|
const AZALEATOWN_SLOWPOKE1
|
|
const AZALEATOWN_SLOWPOKE2
|
|
const AZALEATOWN_SLOWPOKE3
|
|
const AZALEATOWN_SLOWPOKE4
|
|
const AZALEATOWN_FRUIT_TREE
|
|
const AZALEATOWN_SILVER
|
|
const AZALEATOWN_AZALEA_ROCKET3
|
|
const AZALEATOWN_KURT_OUTSIDE
|
|
|
|
AzaleaTown_MapScripts:
|
|
db 3 ; scene scripts
|
|
scene_script .DummyScene0 ; SCENE_AZALEATOWN_NOTHING
|
|
scene_script .DummyScene1 ; SCENE_AZALEATOWN_RIVAL_BATTLE
|
|
scene_script .DummyScene2 ; SCENE_AZALEATOWN_KURT_RETURNS_GS_BALL
|
|
|
|
db 1 ; callbacks
|
|
callback MAPCALLBACK_NEWMAP, .Flypoint
|
|
|
|
.DummyScene0:
|
|
end
|
|
|
|
.DummyScene1:
|
|
end
|
|
|
|
.DummyScene2:
|
|
end
|
|
|
|
.Flypoint:
|
|
setflag ENGINE_FLYPOINT_AZALEA
|
|
return
|
|
|
|
AzaleaTownRivalBattleScene1:
|
|
moveobject AZALEATOWN_SILVER, 11, 11
|
|
turnobject PLAYER, RIGHT
|
|
showemote EMOTE_SHOCK, PLAYER, 15
|
|
special FadeOutMusic
|
|
pause 15
|
|
appear AZALEATOWN_SILVER
|
|
applymovement AZALEATOWN_SILVER, AzaleaTownRivalBattleApproachMovement1
|
|
turnobject PLAYER, DOWN
|
|
sjump AzaleaTownRivalBattleScript
|
|
|
|
AzaleaTownRivalBattleScene2:
|
|
turnobject PLAYER, RIGHT
|
|
showemote EMOTE_SHOCK, PLAYER, 15
|
|
special FadeOutMusic
|
|
pause 15
|
|
appear AZALEATOWN_SILVER
|
|
applymovement AZALEATOWN_SILVER, AzaleaTownRivalBattleApproachMovement2
|
|
turnobject PLAYER, UP
|
|
AzaleaTownRivalBattleScript:
|
|
playmusic MUSIC_RIVAL_ENCOUNTER
|
|
opentext
|
|
writetext AzaleaTownRivalBeforeText
|
|
waitbutton
|
|
closetext
|
|
setevent EVENT_RIVAL_AZALEA_TOWN
|
|
checkevent EVENT_GOT_TOTODILE_FROM_ELM
|
|
iftrue .Totodile
|
|
checkevent EVENT_GOT_CHIKORITA_FROM_ELM
|
|
iftrue .Chikorita
|
|
winlosstext AzaleaTownRivalWinText, AzaleaTownRivalLossText
|
|
setlasttalked AZALEATOWN_SILVER
|
|
loadtrainer RIVAL1, RIVAL1_2_TOTODILE
|
|
startbattle
|
|
dontrestartmapmusic
|
|
reloadmapafterbattle
|
|
sjump .AfterBattle
|
|
|
|
.Totodile:
|
|
winlosstext AzaleaTownRivalWinText, AzaleaTownRivalLossText
|
|
setlasttalked AZALEATOWN_SILVER
|
|
loadtrainer RIVAL1, RIVAL1_2_CHIKORITA
|
|
startbattle
|
|
dontrestartmapmusic
|
|
reloadmapafterbattle
|
|
sjump .AfterBattle
|
|
|
|
.Chikorita:
|
|
winlosstext AzaleaTownRivalWinText, AzaleaTownRivalLossText
|
|
setlasttalked AZALEATOWN_SILVER
|
|
loadtrainer RIVAL1, RIVAL1_2_CYNDAQUIL
|
|
startbattle
|
|
dontrestartmapmusic
|
|
reloadmapafterbattle
|
|
sjump .AfterBattle
|
|
|
|
.AfterBattle:
|
|
playmusic MUSIC_RIVAL_AFTER
|
|
opentext
|
|
writetext AzaleaTownRivalAfterText
|
|
waitbutton
|
|
closetext
|
|
turnobject PLAYER, LEFT
|
|
applymovement AZALEATOWN_SILVER, AzaleaTownRivalBattleExitMovement
|
|
playsound SFX_EXIT_BUILDING
|
|
disappear AZALEATOWN_SILVER
|
|
setscene SCENE_AZALEATOWN_NOTHING
|
|
waitsfx
|
|
playmapmusic
|
|
end
|
|
|
|
AzaleaTownRocket1Script:
|
|
jumptextfaceplayer AzaleaTownRocket1Text
|
|
|
|
AzaleaTownRocket2Script:
|
|
jumptextfaceplayer AzaleaTownRocket2Text
|
|
|
|
AzaleaTownGrampsScript:
|
|
faceplayer
|
|
opentext
|
|
checkevent EVENT_CLEARED_SLOWPOKE_WELL
|
|
iftrue .ClearedWell
|
|
writetext AzaleaTownGrampsTextBefore
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
.ClearedWell:
|
|
writetext AzaleaTownGrampsTextAfter
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
AzaleaTownTeacherScript:
|
|
jumptextfaceplayer AzaleaTownTeacherText
|
|
|
|
AzaleaTownYoungsterScript:
|
|
jumptextfaceplayer AzaleaTownYoungsterText
|
|
|
|
AzaleaTownSlowpokeScript:
|
|
opentext
|
|
writetext AzaleaTownSlowpokeText1
|
|
pause 60
|
|
writetext AzaleaTownSlowpokeText2
|
|
cry SLOWPOKE
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
UnusedWoosterScript:
|
|
; unused
|
|
faceplayer
|
|
opentext
|
|
writetext WoosterText
|
|
cry QUAGSIRE
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
AzaleaTownCelebiScene:
|
|
applymovement PLAYER, AzaleaTownPlayerLeavesKurtsHouseMovement
|
|
opentext
|
|
writetext AzaleaTownKurtText1
|
|
buttonsound
|
|
turnobject AZALEATOWN_KURT_OUTSIDE, RIGHT
|
|
writetext AzaleaTownKurtText2
|
|
buttonsound
|
|
writetext AzaleaTownKurtText3
|
|
waitbutton
|
|
verbosegiveitem GS_BALL
|
|
turnobject AZALEATOWN_KURT_OUTSIDE, LEFT
|
|
setflag ENGINE_FOREST_IS_RESTLESS
|
|
clearevent EVENT_ILEX_FOREST_LASS
|
|
setevent EVENT_ROUTE_34_ILEX_FOREST_GATE_LASS
|
|
setscene SCENE_AZALEATOWN_NOTHING
|
|
closetext
|
|
end
|
|
|
|
AzaleaTownKurtScript:
|
|
faceplayer
|
|
opentext
|
|
writetext AzaleaTownKurtText3
|
|
waitbutton
|
|
turnobject AZALEATOWN_KURT_OUTSIDE, LEFT
|
|
closetext
|
|
end
|
|
|
|
AzaleaTownSign:
|
|
jumptext AzaleaTownSignText
|
|
|
|
KurtsHouseSign:
|
|
jumptext KurtsHouseSignText
|
|
|
|
AzaleaGymSign:
|
|
jumptext AzaleaGymSignText
|
|
|
|
SlowpokeWellSign:
|
|
jumptext SlowpokeWellSignText
|
|
|
|
CharcoalKilnSign:
|
|
jumptext CharcoalKilnSignText
|
|
|
|
AzaleaTownIlextForestSign:
|
|
jumptext AzaleaTownIlexForestSignText
|
|
|
|
AzaleaTownPokecenterSign:
|
|
jumpstd pokecentersign
|
|
|
|
AzaleaTownMartSign:
|
|
jumpstd martsign
|
|
|
|
WhiteApricornTree:
|
|
fruittree FRUITTREE_AZALEA_TOWN
|
|
|
|
AzaleaTownHiddenFullHeal:
|
|
hiddenitem FULL_HEAL, EVENT_AZALEA_TOWN_HIDDEN_FULL_HEAL
|
|
|
|
AzaleaTownRivalBattleApproachMovement1:
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
turn_head UP
|
|
step_end
|
|
|
|
AzaleaTownRivalBattleApproachMovement2:
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
turn_head DOWN
|
|
step_end
|
|
|
|
AzaleaTownRivalBattleExitMovement:
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step_end
|
|
|
|
AzaleaTownPlayerLeavesKurtsHouseMovement:
|
|
step LEFT
|
|
step LEFT
|
|
step UP
|
|
turn_head LEFT
|
|
step_end
|
|
|
|
AzaleaTownRivalBeforeText:
|
|
text "…Tell me some-"
|
|
line "thing."
|
|
|
|
para "Is it true that"
|
|
line "TEAM ROCKET has"
|
|
cont "returned?"
|
|
|
|
para "What? You beat"
|
|
line "them? Hah! Quit"
|
|
cont "lying."
|
|
|
|
para "You're not joking?"
|
|
line "Then let's see how"
|
|
cont "good you are."
|
|
done
|
|
|
|
AzaleaTownRivalWinText:
|
|
text "… Humph! Useless"
|
|
line "#MON!"
|
|
|
|
para "Listen, you. You"
|
|
line "only won because"
|
|
|
|
para "my #MON were"
|
|
line "weak."
|
|
done
|
|
|
|
AzaleaTownRivalAfterText:
|
|
text "I hate the weak."
|
|
|
|
para "#MON, trainers."
|
|
line "It doesn't matter"
|
|
cont "who or what."
|
|
|
|
para "I'm going to be"
|
|
line "strong and wipe"
|
|
cont "out the weak."
|
|
|
|
para "That goes for TEAM"
|
|
line "ROCKET too."
|
|
|
|
para "They act big and"
|
|
line "tough in a group."
|
|
|
|
para "But get them"
|
|
line "alone, and they're"
|
|
cont "weak."
|
|
|
|
para "I hate them all."
|
|
|
|
para "You stay out of my"
|
|
line "way. A weakling"
|
|
|
|
para "like you is only a"
|
|
line "distraction."
|
|
done
|
|
|
|
AzaleaTownRivalLossText:
|
|
text "…Humph! I knew"
|
|
line "you were lying."
|
|
done
|
|
|
|
AzaleaTownRocket1Text:
|
|
text "It's unsafe to go"
|
|
line "in there, so I'm"
|
|
cont "standing guard."
|
|
|
|
para "Aren't I a good"
|
|
line "Samaritan?"
|
|
done
|
|
|
|
AzaleaTownRocket2Text:
|
|
text "Do you know about"
|
|
line "SLOWPOKETAIL? I"
|
|
cont "heard it's tasty!"
|
|
|
|
para "Aren't you glad I"
|
|
line "told you that?"
|
|
done
|
|
|
|
AzaleaTownGrampsTextBefore:
|
|
text "The SLOWPOKE have"
|
|
line "disappeared from"
|
|
cont "town…"
|
|
|
|
para "I heard their"
|
|
line "TAILS are being"
|
|
cont "sold somewhere."
|
|
done
|
|
|
|
AzaleaTownGrampsTextAfter:
|
|
text "The SLOWPOKE have"
|
|
line "returned."
|
|
|
|
para "Knowing them, they"
|
|
line "could've just been"
|
|
|
|
para "goofing off some-"
|
|
line "where."
|
|
done
|
|
|
|
AzaleaTownTeacherText:
|
|
text "Did you come to"
|
|
line "get KURT to make"
|
|
cont "some BALLS?"
|
|
|
|
para "A lot of people do"
|
|
line "just that."
|
|
done
|
|
|
|
AzaleaTownYoungsterText:
|
|
text "Cut through AZALEA"
|
|
line "and you'll be in"
|
|
cont "ILEX FOREST."
|
|
|
|
para "But these skinny"
|
|
line "trees make it"
|
|
|
|
para "impossible to get"
|
|
line "through."
|
|
|
|
para "The CHARCOAL MAN's"
|
|
line "#MON can CUT"
|
|
cont "down trees."
|
|
done
|
|
|
|
AzaleaTownSlowpokeText1:
|
|
text "SLOWPOKE: …"
|
|
|
|
para "<……> <……> <……>"
|
|
done
|
|
|
|
AzaleaTownSlowpokeText2:
|
|
text "<……> <……>Yawn?"
|
|
done
|
|
|
|
WoosterText:
|
|
text "WOOSTER: Gugyoo…"
|
|
done
|
|
|
|
AzaleaTownKurtText1:
|
|
text "ILEX FOREST is"
|
|
line "restless!"
|
|
|
|
para "What is going on?"
|
|
done
|
|
|
|
AzaleaTownKurtText2:
|
|
text "<PLAYER>, here's"
|
|
line "your GS BALL back!"
|
|
done
|
|
|
|
AzaleaTownKurtText3:
|
|
text "Could you go see"
|
|
line "why ILEX FOREST is"
|
|
cont "so restless?"
|
|
done
|
|
|
|
AzaleaTownSignText:
|
|
text "AZALEA TOWN"
|
|
line "Where People and"
|
|
|
|
para "#MON Live in"
|
|
line "Happy Harmony"
|
|
done
|
|
|
|
KurtsHouseSignText:
|
|
text "KURT'S HOUSE"
|
|
done
|
|
|
|
AzaleaGymSignText:
|
|
text "AZALEA TOWN"
|
|
line "#MON GYM"
|
|
cont "LEADER: BUGSY"
|
|
|
|
para "The Walking"
|
|
line "Bug #MON"
|
|
cont "Encyclopedia"
|
|
done
|
|
|
|
SlowpokeWellSignText:
|
|
text "SLOWPOKE WELL"
|
|
|
|
para "Also known as the"
|
|
line "RAINMAKER WELL."
|
|
|
|
para "Locals believe"
|
|
line "that a SLOWPOKE's"
|
|
cont "yawn summons rain."
|
|
|
|
para "Records show that"
|
|
line "a SLOWPOKE's yawn"
|
|
|
|
para "ended a drought"
|
|
line "400 years ago."
|
|
done
|
|
|
|
CharcoalKilnSignText:
|
|
text "CHARCOAL KILN"
|
|
done
|
|
|
|
AzaleaTownIlexForestSignText:
|
|
text "ILEX FOREST"
|
|
|
|
para "Enter through the"
|
|
line "gate."
|
|
done
|
|
|
|
AzaleaTown_MapEvents:
|
|
db 0, 0 ; filler
|
|
|
|
db 8 ; warp events
|
|
warp_event 15, 9, AZALEA_POKECENTER_1F, 1
|
|
warp_event 21, 13, CHARCOAL_KILN, 1
|
|
warp_event 21, 5, AZALEA_MART, 2
|
|
warp_event 9, 5, KURTS_HOUSE, 1
|
|
warp_event 10, 15, AZALEA_GYM, 1
|
|
warp_event 31, 7, SLOWPOKE_WELL_B1F, 1
|
|
warp_event 2, 10, ILEX_FOREST_AZALEA_GATE, 3
|
|
warp_event 2, 11, ILEX_FOREST_AZALEA_GATE, 4
|
|
|
|
db 3 ; coord events
|
|
coord_event 5, 10, SCENE_AZALEATOWN_RIVAL_BATTLE, AzaleaTownRivalBattleScene1
|
|
coord_event 5, 11, SCENE_AZALEATOWN_RIVAL_BATTLE, AzaleaTownRivalBattleScene2
|
|
coord_event 9, 6, SCENE_AZALEATOWN_KURT_RETURNS_GS_BALL, AzaleaTownCelebiScene
|
|
|
|
db 9 ; bg events
|
|
bg_event 19, 9, BGEVENT_READ, AzaleaTownSign
|
|
bg_event 10, 9, BGEVENT_READ, KurtsHouseSign
|
|
bg_event 14, 15, BGEVENT_READ, AzaleaGymSign
|
|
bg_event 29, 7, BGEVENT_READ, SlowpokeWellSign
|
|
bg_event 19, 13, BGEVENT_READ, CharcoalKilnSign
|
|
bg_event 16, 9, BGEVENT_READ, AzaleaTownPokecenterSign
|
|
bg_event 22, 5, BGEVENT_READ, AzaleaTownMartSign
|
|
bg_event 3, 9, BGEVENT_READ, AzaleaTownIlextForestSign
|
|
bg_event 31, 6, BGEVENT_ITEM, AzaleaTownHiddenFullHeal
|
|
|
|
db 12 ; object events
|
|
object_event 31, 9, SPRITE_AZALEA_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, AzaleaTownRocket1Script, EVENT_AZALEA_TOWN_SLOWPOKETAIL_ROCKET
|
|
object_event 21, 9, SPRITE_GRAMPS, SPRITEMOVEDATA_WANDER, 1, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, AzaleaTownGrampsScript, -1
|
|
object_event 15, 13, SPRITE_TEACHER, SPRITEMOVEDATA_WALK_UP_DOWN, 0, 2, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, AzaleaTownTeacherScript, -1
|
|
object_event 7, 9, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, AzaleaTownYoungsterScript, -1
|
|
object_event 8, 17, SPRITE_SLOWPOKE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, AzaleaTownSlowpokeScript, EVENT_AZALEA_TOWN_SLOWPOKES
|
|
object_event 18, 9, SPRITE_SLOWPOKE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, AzaleaTownSlowpokeScript, EVENT_AZALEA_TOWN_SLOWPOKES
|
|
object_event 29, 9, SPRITE_SLOWPOKE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, AzaleaTownSlowpokeScript, EVENT_AZALEA_TOWN_SLOWPOKES
|
|
object_event 15, 15, SPRITE_SLOWPOKE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, AzaleaTownSlowpokeScript, EVENT_AZALEA_TOWN_SLOWPOKES
|
|
object_event 8, 2, SPRITE_FRUIT_TREE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, WhiteApricornTree, -1
|
|
object_event 11, 10, SPRITE_AZALEA_ROCKET, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_RIVAL_AZALEA_TOWN
|
|
object_event 10, 16, SPRITE_AZALEA_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, AzaleaTownRocket2Script, EVENT_SLOWPOKE_WELL_ROCKETS
|
|
object_event 6, 5, SPRITE_KURT_OUTSIDE, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, AzaleaTownKurtScript, EVENT_AZALEA_TOWN_KURT
|