mirror of https://github.com/pret/pokecrystal.git
580 lines
11 KiB
NASM
580 lines
11 KiB
NASM
const_value set 2
|
|
const CHERRYGROVECITY_GRAMPS
|
|
const CHERRYGROVECITY_SILVER
|
|
const CHERRYGROVECITY_TEACHER
|
|
const CHERRYGROVECITY_YOUNGSTER
|
|
const CHERRYGROVECITY_FISHER
|
|
|
|
CherrygroveCity_MapScriptHeader:
|
|
.MapTriggers:
|
|
db 2
|
|
maptrigger .DummyTrigger0
|
|
maptrigger .DummyTrigger1
|
|
|
|
.MapCallbacks:
|
|
db 1
|
|
dbw MAPCALLBACK_NEWMAP, .FlyPoint
|
|
|
|
.DummyTrigger0:
|
|
end
|
|
|
|
.DummyTrigger1:
|
|
end
|
|
|
|
.FlyPoint:
|
|
setflag ENGINE_FLYPOINT_CHERRYGROVE
|
|
return
|
|
|
|
CherrygroveCityGuideGent:
|
|
faceplayer
|
|
opentext
|
|
writetext GuideGentIntroText
|
|
yesorno
|
|
iffalse .No
|
|
jump .Yes
|
|
.Yes:
|
|
writetext GuideGentTourText1
|
|
waitbutton
|
|
closetext
|
|
playmusic MUSIC_SHOW_ME_AROUND
|
|
follow CHERRYGROVECITY_GRAMPS, PLAYER
|
|
applymovement CHERRYGROVECITY_GRAMPS, GuideGentMovement1
|
|
opentext
|
|
writetext GuideGentPokecenterText
|
|
waitbutton
|
|
closetext
|
|
applymovement CHERRYGROVECITY_GRAMPS, GuideGentMovement2
|
|
spriteface PLAYER, UP
|
|
opentext
|
|
writetext GuideGentMartText
|
|
waitbutton
|
|
closetext
|
|
applymovement CHERRYGROVECITY_GRAMPS, GuideGentMovement3
|
|
spriteface PLAYER, UP
|
|
opentext
|
|
writetext GuideGentRoute30Text
|
|
waitbutton
|
|
closetext
|
|
applymovement CHERRYGROVECITY_GRAMPS, GuideGentMovement4
|
|
spriteface PLAYER, LEFT
|
|
opentext
|
|
writetext GuideGentSeaText
|
|
waitbutton
|
|
closetext
|
|
applymovement CHERRYGROVECITY_GRAMPS, GuideGentMovement5
|
|
spriteface PLAYER, UP
|
|
pause 60
|
|
spriteface CHERRYGROVECITY_GRAMPS, LEFT
|
|
spriteface PLAYER, RIGHT
|
|
opentext
|
|
writetext GuideGentGiftText
|
|
buttonsound
|
|
stringtotext .mapcardname, $1
|
|
scall .JumpstdReceiveItem
|
|
setflag ENGINE_MAP_CARD
|
|
writetext GotMapCardText
|
|
buttonsound
|
|
writetext GuideGentPokegearText
|
|
waitbutton
|
|
closetext
|
|
stopfollow
|
|
special RestartMapMusic
|
|
spriteface PLAYER, UP
|
|
applymovement CHERRYGROVECITY_GRAMPS, GuideGentMovement6
|
|
playsound SFX_ENTER_DOOR
|
|
disappear CHERRYGROVECITY_GRAMPS
|
|
clearevent EVENT_GUIDE_GENT_VISIBLE_IN_CHERRYGROVE
|
|
waitsfx
|
|
end
|
|
|
|
.JumpstdReceiveItem:
|
|
jumpstd receiveitem
|
|
end
|
|
|
|
.mapcardname
|
|
db "MAP CARD@"
|
|
|
|
.No:
|
|
writetext GuideGentNoText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
CherrygroveSilverTriggerSouth:
|
|
moveperson CHERRYGROVECITY_SILVER, $27, $7
|
|
CherrygroveSilverTriggerNorth:
|
|
spriteface PLAYER, RIGHT
|
|
showemote EMOTE_SHOCK, PLAYER, 15
|
|
special Special_FadeOutMusic
|
|
pause 15
|
|
appear CHERRYGROVECITY_SILVER
|
|
applymovement CHERRYGROVECITY_SILVER, CherrygroveCity_RivalWalksToYou
|
|
spriteface PLAYER, RIGHT
|
|
playmusic MUSIC_RIVAL_ENCOUNTER
|
|
opentext
|
|
writetext UnknownText_0x19c4e2
|
|
waitbutton
|
|
closetext
|
|
checkevent EVENT_GOT_TOTODILE_FROM_ELM
|
|
iftrue .Totodile
|
|
checkevent EVENT_GOT_CHIKORITA_FROM_ELM
|
|
iftrue .Chikorita
|
|
winlosstext SilverCherrygroveWinText, SilverCherrygroveLossText
|
|
setlasttalked CHERRYGROVECITY_SILVER
|
|
loadtrainer RIVAL1, RIVAL1_1_TOTODILE
|
|
writecode VAR_BATTLETYPE, BATTLETYPE_CANLOSE
|
|
startbattle
|
|
dontrestartmapmusic
|
|
reloadmap
|
|
iftrue .AfterVictorious
|
|
jump .AfterYourDefeat
|
|
|
|
.Totodile:
|
|
winlosstext SilverCherrygroveWinText, SilverCherrygroveLossText
|
|
setlasttalked CHERRYGROVECITY_SILVER
|
|
loadtrainer RIVAL1, RIVAL1_1_CHIKORITA
|
|
writecode VAR_BATTLETYPE, BATTLETYPE_CANLOSE
|
|
startbattle
|
|
dontrestartmapmusic
|
|
reloadmap
|
|
iftrue .AfterVictorious
|
|
jump .AfterYourDefeat
|
|
|
|
.Chikorita:
|
|
winlosstext SilverCherrygroveWinText, SilverCherrygroveLossText
|
|
setlasttalked CHERRYGROVECITY_SILVER
|
|
loadtrainer RIVAL1, RIVAL1_1_CYNDAQUIL
|
|
writecode VAR_BATTLETYPE, BATTLETYPE_CANLOSE
|
|
startbattle
|
|
dontrestartmapmusic
|
|
reloadmap
|
|
iftrue .AfterVictorious
|
|
jump .AfterYourDefeat
|
|
|
|
.AfterVictorious:
|
|
playmusic MUSIC_RIVAL_AFTER
|
|
opentext
|
|
writetext CherrygroveRivalText_YouWon
|
|
waitbutton
|
|
closetext
|
|
jump .FinishRival
|
|
|
|
.AfterYourDefeat:
|
|
playmusic MUSIC_RIVAL_AFTER
|
|
opentext
|
|
writetext CherrygroveRivalText_YouLost
|
|
waitbutton
|
|
closetext
|
|
.FinishRival:
|
|
playsound SFX_TACKLE
|
|
applymovement PLAYER, CherrygroveCity_RivalPushesYouOutOfTheWay
|
|
spriteface PLAYER, LEFT
|
|
applymovement CHERRYGROVECITY_SILVER, CherrygroveCity_RivalExitsStageLeft
|
|
disappear CHERRYGROVECITY_SILVER
|
|
dotrigger $0
|
|
special HealParty
|
|
playmapmusic
|
|
end
|
|
|
|
CherrygroveTeacherScript:
|
|
faceplayer
|
|
opentext
|
|
checkflag ENGINE_MAP_CARD
|
|
iftrue .HaveMapCard
|
|
writetext CherrygroveTeacherText_NoMapCard
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
.HaveMapCard:
|
|
writetext CherrygroveTeacherText_HaveMapCard
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
CherrygroveYoungsterScript:
|
|
faceplayer
|
|
opentext
|
|
checkflag ENGINE_POKEDEX
|
|
iftrue .HavePokedex
|
|
writetext CherrygroveYoungsterText_NoPokedex
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
.HavePokedex:
|
|
writetext CherrygroveYoungsterText_HavePokedex
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
MysticWaterGuy:
|
|
faceplayer
|
|
opentext
|
|
checkevent EVENT_GOT_MYSTIC_WATER_IN_CHERRYGROVE
|
|
iftrue .After
|
|
writetext MysticWaterGuyTextBefore
|
|
buttonsound
|
|
verbosegiveitem MYSTIC_WATER
|
|
iffalse .Exit
|
|
setevent EVENT_GOT_MYSTIC_WATER_IN_CHERRYGROVE
|
|
.After:
|
|
writetext MysticWaterGuyTextAfter
|
|
waitbutton
|
|
.Exit:
|
|
closetext
|
|
end
|
|
|
|
CherrygroveCitySign:
|
|
jumptext CherrygroveCitySignText
|
|
|
|
GuideGentsHouseSign:
|
|
jumptext GuideGentsHouseSignText
|
|
|
|
CherrygroveCityPokecenterSign:
|
|
jumpstd pokecentersign
|
|
|
|
CherrygroveCityMartSign:
|
|
jumpstd martsign
|
|
|
|
GuideGentMovement1:
|
|
step LEFT
|
|
step LEFT
|
|
step UP
|
|
step LEFT
|
|
turn_head UP
|
|
step_end
|
|
|
|
GuideGentMovement2:
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
turn_head UP
|
|
step_end
|
|
|
|
GuideGentMovement3:
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
turn_head UP
|
|
step_end
|
|
|
|
GuideGentMovement4:
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step DOWN
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step DOWN
|
|
turn_head LEFT
|
|
step_end
|
|
|
|
GuideGentMovement5:
|
|
step DOWN
|
|
step DOWN
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step DOWN
|
|
step DOWN
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
turn_head UP
|
|
step_end
|
|
|
|
GuideGentMovement6:
|
|
step UP
|
|
step UP
|
|
step_end
|
|
|
|
CherrygroveCity_RivalWalksToYou:
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step_end
|
|
|
|
CherrygroveCity_RivalPushesYouOutOfTheWay:
|
|
big_step DOWN
|
|
turn_head UP
|
|
step_end
|
|
|
|
CherrygroveCity_UnusedMovementData:
|
|
step LEFT
|
|
turn_head DOWN
|
|
step_end
|
|
|
|
CherrygroveCity_RivalExitsStageLeft:
|
|
big_step LEFT
|
|
big_step LEFT
|
|
big_step LEFT
|
|
big_step LEFT
|
|
big_step UP
|
|
big_step UP
|
|
big_step LEFT
|
|
big_step LEFT
|
|
step_end
|
|
|
|
GuideGentIntroText:
|
|
text "You're a rookie"
|
|
line "trainer, aren't"
|
|
cont "you? I can tell!"
|
|
|
|
para "That's OK! Every-"
|
|
line "one is a rookie"
|
|
cont "at some point!"
|
|
|
|
para "If you'd like, I"
|
|
line "can teach you a"
|
|
cont "few things."
|
|
done
|
|
|
|
GuideGentTourText1:
|
|
text "OK, then!"
|
|
line "Follow me!"
|
|
done
|
|
|
|
GuideGentPokecenterText:
|
|
text "This is a #MON"
|
|
line "CENTER. They heal"
|
|
|
|
para "your #MON in no"
|
|
line "time at all."
|
|
|
|
para "You'll be relying"
|
|
line "on them a lot, so"
|
|
|
|
para "you better learn"
|
|
line "about them."
|
|
done
|
|
|
|
GuideGentMartText:
|
|
text "This is a #MON"
|
|
line "MART."
|
|
|
|
para "They sell BALLS"
|
|
line "for catching wild"
|
|
|
|
para "#MON and other"
|
|
line "useful items."
|
|
done
|
|
|
|
GuideGentRoute30Text:
|
|
text "ROUTE 30 is out"
|
|
line "this way."
|
|
|
|
para "Trainers will be"
|
|
line "battling their"
|
|
|
|
para "prized #MON"
|
|
line "there."
|
|
done
|
|
|
|
GuideGentSeaText:
|
|
text "This is the sea,"
|
|
line "as you can see."
|
|
|
|
para "Some #MON are"
|
|
line "found only in"
|
|
cont "water."
|
|
done
|
|
|
|
GuideGentGiftText:
|
|
text "Here…"
|
|
|
|
para "It's my house!"
|
|
line "Thanks for your"
|
|
cont "company."
|
|
|
|
para "Let me give you a"
|
|
line "small gift."
|
|
done
|
|
|
|
GotMapCardText:
|
|
text "<PLAYER>'s #GEAR"
|
|
line "now has a MAP!"
|
|
done
|
|
|
|
GuideGentPokegearText:
|
|
text "#GEAR becomes"
|
|
line "more useful as you"
|
|
cont "add CARDS."
|
|
|
|
para "I wish you luck on"
|
|
line "your journey!"
|
|
done
|
|
|
|
GuideGentNoText:
|
|
text "Oh… It's something"
|
|
line "I enjoy doing…"
|
|
|
|
para "Fine. Come see me"
|
|
line "when you like."
|
|
done
|
|
|
|
UnknownText_0x19c4e2:
|
|
text "<......> <......> <......>"
|
|
|
|
para "You got a #MON"
|
|
line "at the LAB."
|
|
|
|
para "What a waste."
|
|
line "A wimp like you."
|
|
|
|
para "<......> <......> <......>"
|
|
|
|
para "Don't you get what"
|
|
line "I'm saying?"
|
|
|
|
para "Well, I too, have"
|
|
line "a good #MON."
|
|
|
|
para "I'll show you"
|
|
line "what I mean!"
|
|
done
|
|
|
|
SilverCherrygroveWinText:
|
|
text "Humph. Are you"
|
|
line "happy you won?"
|
|
done
|
|
|
|
CherrygroveRivalText_YouLost:
|
|
text "<......> <......> <......>"
|
|
|
|
para "My name's ???."
|
|
|
|
para "I'm going to be"
|
|
line "the world's great-"
|
|
cont "est #MON"
|
|
cont "trainer."
|
|
done
|
|
|
|
SilverCherrygroveLossText:
|
|
text "Humph. That was a"
|
|
line "waste of time."
|
|
done
|
|
|
|
CherrygroveRivalText_YouWon:
|
|
text "<......> <......> <......>"
|
|
|
|
para "My name's ???."
|
|
|
|
para "I'm going to be"
|
|
line "the world's great-"
|
|
cont "est #MON"
|
|
cont "trainer."
|
|
done
|
|
|
|
CherrygroveTeacherText_NoMapCard:
|
|
text "Did you talk to"
|
|
line "the old man by the"
|
|
cont "#MON CENTER?"
|
|
|
|
para "He'll put a MAP of"
|
|
line "JOHTO on your"
|
|
cont "#GEAR."
|
|
done
|
|
|
|
CherrygroveTeacherText_HaveMapCard:
|
|
text "When you're with"
|
|
line "#MON, going"
|
|
cont "anywhere is fun."
|
|
done
|
|
|
|
CherrygroveYoungsterText_NoPokedex:
|
|
text "MR.#MON's house"
|
|
line "is still farther"
|
|
cont "up ahead."
|
|
done
|
|
|
|
CherrygroveYoungsterText_HavePokedex:
|
|
text "I battled the"
|
|
line "trainers on the"
|
|
cont "road."
|
|
|
|
para "My #MON lost."
|
|
line "They're a mess! I"
|
|
|
|
para "must take them to"
|
|
line "a #MON CENTER."
|
|
done
|
|
|
|
MysticWaterGuyTextBefore:
|
|
text "A #MON I caught"
|
|
line "had an item."
|
|
|
|
para "I think it's"
|
|
line "MYSTIC WATER."
|
|
|
|
para "I don't need it,"
|
|
line "so do you want it?"
|
|
done
|
|
|
|
MysticWaterGuyTextAfter:
|
|
text "Back to fishing"
|
|
line "for me, then."
|
|
done
|
|
|
|
CherrygroveCitySignText:
|
|
text "CHERRYGROVE CITY"
|
|
|
|
para "The City of Cute,"
|
|
line "Fragrant Flowers"
|
|
done
|
|
|
|
GuideGentsHouseSignText:
|
|
text "GUIDE GENT'S HOUSE"
|
|
done
|
|
|
|
CherrygroveCity_MapEventHeader:
|
|
; filler
|
|
db 0, 0
|
|
|
|
.Warps:
|
|
db 5
|
|
warp_def $3, $17, 2, CHERRYGROVE_MART
|
|
warp_def $3, $1d, 1, CHERRYGROVE_POKECENTER_1F
|
|
warp_def $7, $11, 1, CHERRYGROVE_GYM_SPEECH_HOUSE
|
|
warp_def $9, $19, 1, GUIDE_GENTS_HOUSE
|
|
warp_def $b, $1f, 1, CHERRYGROVE_EVOLUTION_SPEECH_HOUSE
|
|
|
|
.XYTriggers:
|
|
db 2
|
|
xy_trigger 1, $6, $21, $0, CherrygroveSilverTriggerNorth, $0, $0
|
|
xy_trigger 1, $7, $21, $0, CherrygroveSilverTriggerSouth, $0, $0
|
|
|
|
.Signposts:
|
|
db 4
|
|
signpost 8, 30, SIGNPOST_READ, CherrygroveCitySign
|
|
signpost 9, 23, SIGNPOST_READ, GuideGentsHouseSign
|
|
signpost 3, 24, SIGNPOST_READ, CherrygroveCityMartSign
|
|
signpost 3, 30, SIGNPOST_READ, CherrygroveCityPokecenterSign
|
|
|
|
.PersonEvents:
|
|
db 5
|
|
person_event SPRITE_GRAMPS, 6, 32, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CherrygroveCityGuideGent, EVENT_GUIDE_GENT_IN_HIS_HOUSE
|
|
person_event SPRITE_SILVER, 6, 39, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, ObjectEvent, EVENT_RIVAL_CHERRYGROVE_CITY
|
|
person_event SPRITE_TEACHER, 12, 27, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, CherrygroveTeacherScript, -1
|
|
person_event SPRITE_YOUNGSTER, 7, 23, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CherrygroveYoungsterScript, -1
|
|
person_event SPRITE_FISHER, 12, 7, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, MysticWaterGuy, -1
|