mirror of https://github.com/pret/pokecrystal.git
523 lines
11 KiB
NASM
523 lines
11 KiB
NASM
object_const_def ; object_event constants
|
|
const LAKEOFRAGE_LANCE
|
|
const LAKEOFRAGE_GRAMPS
|
|
const LAKEOFRAGE_SUPER_NERD1
|
|
const LAKEOFRAGE_COOLTRAINER_F1
|
|
const LAKEOFRAGE_FISHER1
|
|
const LAKEOFRAGE_FISHER2
|
|
const LAKEOFRAGE_COOLTRAINER_M
|
|
const LAKEOFRAGE_COOLTRAINER_F2
|
|
const LAKEOFRAGE_GYARADOS
|
|
const LAKEOFRAGE_WESLEY
|
|
const LAKEOFRAGE_POKE_BALL1
|
|
const LAKEOFRAGE_POKE_BALL2
|
|
|
|
LakeOfRage_MapScripts:
|
|
db 2 ; scene scripts
|
|
scene_script .DummyScene0 ; unusable
|
|
scene_script .DummyScene1 ; unusable
|
|
|
|
db 2 ; callbacks
|
|
callback MAPCALLBACK_NEWMAP, .FlyPoint
|
|
callback MAPCALLBACK_OBJECTS, .Wesley
|
|
|
|
.DummyScene0:
|
|
end
|
|
|
|
.DummyScene1:
|
|
end
|
|
|
|
.FlyPoint:
|
|
setflag ENGINE_FLYPOINT_LAKE_OF_RAGE
|
|
endcallback
|
|
|
|
.Wesley:
|
|
readvar VAR_WEEKDAY
|
|
ifequal WEDNESDAY, .WesleyAppears
|
|
disappear LAKEOFRAGE_WESLEY
|
|
endcallback
|
|
|
|
.WesleyAppears:
|
|
appear LAKEOFRAGE_WESLEY
|
|
endcallback
|
|
|
|
LakeOfRageLanceScript:
|
|
checkevent EVENT_REFUSED_TO_HELP_LANCE_AT_LAKE_OF_RAGE
|
|
iftrue .AskAgainForHelp
|
|
opentext
|
|
writetext LakeOfRageLanceForcedToEvolveText
|
|
promptbutton
|
|
faceplayer
|
|
writetext LakeOfRageLanceIntroText
|
|
yesorno
|
|
iffalse .RefusedToHelp
|
|
.AgreedToHelp:
|
|
writetext LakeOfRageLanceRadioSignalText
|
|
waitbutton
|
|
closetext
|
|
playsound SFX_WARP_TO
|
|
applymovement LAKEOFRAGE_LANCE, LakeOfRageLanceTeleportIntoSkyMovement
|
|
disappear LAKEOFRAGE_LANCE
|
|
clearevent EVENT_MAHOGANY_MART_LANCE_AND_DRAGONITE
|
|
setevent EVENT_DECIDED_TO_HELP_LANCE
|
|
setmapscene MAHOGANY_MART_1F, SCENE_MAHOGANYMART1F_LANCE_UNCOVERS_STAIRS
|
|
end
|
|
|
|
.RefusedToHelp:
|
|
writetext LakeOfRageLanceRefusedText
|
|
waitbutton
|
|
closetext
|
|
setevent EVENT_REFUSED_TO_HELP_LANCE_AT_LAKE_OF_RAGE
|
|
end
|
|
|
|
.AskAgainForHelp:
|
|
faceplayer
|
|
opentext
|
|
writetext LakeOfRageLanceAskHelpText
|
|
yesorno
|
|
iffalse .RefusedToHelp
|
|
sjump .AgreedToHelp
|
|
|
|
RedGyarados:
|
|
opentext
|
|
writetext LakeOfRageGyaradosCryText
|
|
pause 15
|
|
cry GYARADOS
|
|
closetext
|
|
loadwildmon GYARADOS, 30
|
|
loadvar VAR_BATTLETYPE, BATTLETYPE_SHINY
|
|
startbattle
|
|
ifequal LOSE, .NotBeaten
|
|
disappear LAKEOFRAGE_GYARADOS
|
|
.NotBeaten:
|
|
reloadmapafterbattle
|
|
opentext
|
|
giveitem RED_SCALE
|
|
waitsfx
|
|
writetext LakeOfRageGotRedScaleText
|
|
playsound SFX_ITEM
|
|
waitsfx
|
|
itemnotify
|
|
closetext
|
|
setscene 0 ; Lake of Rage does not have a scene variable
|
|
appear LAKEOFRAGE_LANCE
|
|
end
|
|
|
|
LakeOfRageGrampsScript:
|
|
faceplayer
|
|
opentext
|
|
checkevent EVENT_CLEARED_ROCKET_HIDEOUT
|
|
iftrue .ClearedRocketHideout
|
|
writetext LakeOfRageGrampsText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
.ClearedRocketHideout:
|
|
writetext LakeOfRageGrampsText_ClearedRocketHideout
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
LakeOfRageSuperNerdScript:
|
|
jumptextfaceplayer LakeOfRageSuperNerdText
|
|
|
|
LakeOfRageCooltrainerFScript:
|
|
jumptextfaceplayer LakeOfRageCooltrainerFText
|
|
|
|
LakeOfRageSign:
|
|
jumptext LakeOfRageSignText
|
|
|
|
MagikarpHouseSignScript:
|
|
opentext
|
|
writetext FishingGurusHouseSignText
|
|
checkevent EVENT_CLEARED_ROCKET_HIDEOUT
|
|
iftrue .MagikarpLengthRecord
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
.MagikarpLengthRecord:
|
|
promptbutton
|
|
special MagikarpHouseSign
|
|
closetext
|
|
end
|
|
|
|
TrainerFisherAndre:
|
|
trainer FISHER, ANDRE, EVENT_BEAT_FISHER_ANDRE, FisherAndreSeenText, FisherAndreBeatenText, 0, .Script
|
|
|
|
.Script:
|
|
endifjustbattled
|
|
opentext
|
|
writetext FisherAndreAfterBattleText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
TrainerFisherRaymond:
|
|
trainer FISHER, RAYMOND, EVENT_BEAT_FISHER_RAYMOND, FisherRaymondSeenText, FisherRaymondBeatenText, 0, .Script
|
|
|
|
.Script:
|
|
endifjustbattled
|
|
opentext
|
|
writetext FisherRaymondAfterBattleText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
TrainerCooltrainermAaron:
|
|
trainer COOLTRAINERM, AARON, EVENT_BEAT_COOLTRAINERM_AARON, CooltrainermAaronSeenText, CooltrainermAaronBeatenText, 0, .Script
|
|
|
|
.Script:
|
|
endifjustbattled
|
|
opentext
|
|
writetext CooltrainermAaronAfterBattleText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
TrainerCooltrainerfLois:
|
|
trainer COOLTRAINERF, LOIS, EVENT_BEAT_COOLTRAINERF_LOIS, CooltrainerfLoisSeenText, CooltrainerfLoisBeatenText, 0, .Script
|
|
|
|
.Script:
|
|
endifjustbattled
|
|
opentext
|
|
writetext CooltrainerfLoisAfterBattleText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
WesleyScript:
|
|
faceplayer
|
|
opentext
|
|
checkevent EVENT_GOT_BLACKBELT_FROM_WESLEY
|
|
iftrue WesleyWednesdayScript
|
|
readvar VAR_WEEKDAY
|
|
ifnotequal WEDNESDAY, WesleyNotWednesdayScript
|
|
checkevent EVENT_MET_WESLEY_OF_WEDNESDAY
|
|
iftrue .MetWesley
|
|
writetext MeetWesleyText
|
|
promptbutton
|
|
setevent EVENT_MET_WESLEY_OF_WEDNESDAY
|
|
.MetWesley:
|
|
writetext WesleyGivesGiftText
|
|
promptbutton
|
|
verbosegiveitem BLACKBELT_I
|
|
iffalse WesleyDoneScript
|
|
setevent EVENT_GOT_BLACKBELT_FROM_WESLEY
|
|
writetext WesleyGaveGiftText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
WesleyWednesdayScript:
|
|
writetext WesleyWednesdayText
|
|
waitbutton
|
|
WesleyDoneScript:
|
|
closetext
|
|
end
|
|
|
|
WesleyNotWednesdayScript:
|
|
writetext WesleyNotWednesdayText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
LakeOfRageElixer:
|
|
itemball ELIXER
|
|
|
|
LakeOfRageTMDetect:
|
|
itemball TM_DETECT
|
|
|
|
LakeOfRageHiddenFullRestore:
|
|
hiddenitem FULL_RESTORE, EVENT_LAKE_OF_RAGE_HIDDEN_FULL_RESTORE
|
|
|
|
LakeOfRageHiddenRareCandy:
|
|
hiddenitem RARE_CANDY, EVENT_LAKE_OF_RAGE_HIDDEN_RARE_CANDY
|
|
|
|
LakeOfRageHiddenMaxPotion:
|
|
hiddenitem MAX_POTION, EVENT_LAKE_OF_RAGE_HIDDEN_MAX_POTION
|
|
|
|
LakeOfRageLanceTeleportIntoSkyMovement:
|
|
teleport_from
|
|
step_end
|
|
|
|
LakeOfRageLanceForcedToEvolveText:
|
|
text "This lake is full"
|
|
line "of GYARADOS but"
|
|
cont "nothing else…"
|
|
|
|
para "So the MAGIKARP"
|
|
line "are being forced"
|
|
cont "to evolve…"
|
|
done
|
|
|
|
LakeOfRageLanceIntroText:
|
|
text "Did you come here"
|
|
line "because of the"
|
|
cont "rumors?"
|
|
|
|
para "You're <PLAYER>?"
|
|
line "I'm LANCE, a"
|
|
cont "trainer like you."
|
|
|
|
para "I heard some ru-"
|
|
line "mors, so I came to"
|
|
cont "investigate…"
|
|
|
|
para "I saw the way you"
|
|
line "battled earlier,"
|
|
cont "<PLAY_G>."
|
|
|
|
para "I can tell that"
|
|
line "you're a trainer"
|
|
|
|
para "with considerable"
|
|
line "skill."
|
|
|
|
para "If you don't mind,"
|
|
line "could you help me"
|
|
cont "investigate?"
|
|
done
|
|
|
|
LakeOfRageLanceRadioSignalText:
|
|
text "LANCE: Excellent!"
|
|
|
|
para "It seems that the"
|
|
line "LAKE's MAGIKARP"
|
|
|
|
para "are being forced"
|
|
line "to evolve."
|
|
|
|
para "A mysterious radio"
|
|
line "broadcast coming"
|
|
|
|
para "from MAHOGANY is"
|
|
line "the cause."
|
|
|
|
para "I'll be waiting"
|
|
line "for you, <PLAY_G>."
|
|
done
|
|
|
|
LakeOfRageLanceRefusedText:
|
|
text "Oh… Well, if you"
|
|
line "change your mind,"
|
|
cont "please help me."
|
|
done
|
|
|
|
LakeOfRageLanceAskHelpText:
|
|
text "LANCE: Hm? Are you"
|
|
line "going to help me?"
|
|
done
|
|
|
|
LakeOfRageGyaradosCryText:
|
|
text "GYARADOS: Gyashaa!"
|
|
done
|
|
|
|
LakeOfRageGotRedScaleText:
|
|
text "<PLAYER> obtained a"
|
|
line "RED SCALE."
|
|
done
|
|
|
|
LakeOfRageGrampsText:
|
|
text "The GYARADOS are"
|
|
line "angry!"
|
|
|
|
para "It's a bad omen!"
|
|
done
|
|
|
|
LakeOfRageGrampsText_ClearedRocketHideout:
|
|
text "Hahah! The MAGI-"
|
|
line "KARP are biting!"
|
|
done
|
|
|
|
LakeOfRageSuperNerdText:
|
|
text "I heard this lake"
|
|
line "was made by ram-"
|
|
cont "paging GYARADOS."
|
|
|
|
para "I wonder if there"
|
|
line "is any connection"
|
|
|
|
para "to their mass out-"
|
|
line "break now?"
|
|
done
|
|
|
|
LakeOfRageCooltrainerFText:
|
|
text "Did my eyes de-"
|
|
line "ceive me? I saw a"
|
|
|
|
para "red GYARADOS in"
|
|
line "the LAKE…"
|
|
|
|
para "But I thought"
|
|
line "GYARADOS were"
|
|
cont "usually blue?"
|
|
done
|
|
|
|
FisherAndreSeenText:
|
|
text "Let me battle with"
|
|
line "the #MON I just"
|
|
cont "caught!"
|
|
done
|
|
|
|
FisherAndreBeatenText:
|
|
text "I might be an ex-"
|
|
line "pert angler, but"
|
|
|
|
para "I stink as a #-"
|
|
line "MON trainer…"
|
|
done
|
|
|
|
FisherAndreAfterBattleText:
|
|
text "I won't lose as an"
|
|
line "angler! I catch"
|
|
cont "#MON all day."
|
|
done
|
|
|
|
FisherRaymondSeenText:
|
|
text "No matter what I"
|
|
line "do, all I catch"
|
|
|
|
para "are the same #-"
|
|
line "MON…"
|
|
done
|
|
|
|
FisherRaymondBeatenText:
|
|
text "My line's all"
|
|
line "tangled up…"
|
|
done
|
|
|
|
FisherRaymondAfterBattleText:
|
|
text "Why can't I catch"
|
|
line "any good #MON?"
|
|
done
|
|
|
|
CooltrainermAaronSeenText:
|
|
text "If a trainer spots"
|
|
line "another trainer,"
|
|
|
|
para "he has to make a"
|
|
line "challenge."
|
|
|
|
para "That is our"
|
|
line "destiny."
|
|
done
|
|
|
|
CooltrainermAaronBeatenText:
|
|
text "Whew…"
|
|
line "Good battle."
|
|
done
|
|
|
|
CooltrainermAaronAfterBattleText:
|
|
text "#MON and their"
|
|
line "trainer become"
|
|
|
|
para "powerful through"
|
|
line "constant battling."
|
|
done
|
|
|
|
CooltrainerfLoisSeenText:
|
|
text "What happened to"
|
|
line "the red GYARADOS?"
|
|
|
|
para "It's gone?"
|
|
|
|
para "Oh, darn. I came"
|
|
line "here for nothing?"
|
|
|
|
para "I know--let's"
|
|
line "battle!"
|
|
done
|
|
|
|
CooltrainerfLoisBeatenText:
|
|
text "Good going!"
|
|
done
|
|
|
|
CooltrainerfLoisAfterBattleText:
|
|
text "Come to think of"
|
|
line "it, I've seen a"
|
|
cont "pink BUTTERFREE."
|
|
done
|
|
|
|
MeetWesleyText:
|
|
text "WESLEY: Well, how"
|
|
line "do you do?"
|
|
|
|
para "Seeing as how it's"
|
|
line "Wednesday today,"
|
|
|
|
para "I'm WESLEY of"
|
|
line "Wednesday."
|
|
done
|
|
|
|
WesleyGivesGiftText:
|
|
text "Pleased to meet"
|
|
line "you. Please take a"
|
|
cont "souvenir."
|
|
done
|
|
|
|
WesleyGaveGiftText:
|
|
text "WESLEY: BLACKBELT"
|
|
line "beefs up the power"
|
|
cont "of fighting moves."
|
|
done
|
|
|
|
WesleyWednesdayText:
|
|
text "WESLEY: Since you"
|
|
line "found me, you must"
|
|
|
|
para "have met my broth-"
|
|
line "ers and sisters."
|
|
|
|
para "Or did you just"
|
|
line "get lucky?"
|
|
done
|
|
|
|
WesleyNotWednesdayText:
|
|
text "WESLEY: Today's"
|
|
line "not Wednesday."
|
|
cont "That's too bad."
|
|
done
|
|
|
|
LakeOfRageSignText:
|
|
text "LAKE OF RAGE,"
|
|
line "also known as"
|
|
cont "GYARADOS LAKE."
|
|
done
|
|
|
|
FishingGurusHouseSignText:
|
|
text "FISHING GURU'S"
|
|
line "HOUSE"
|
|
done
|
|
|
|
LakeOfRage_MapEvents:
|
|
db 0, 0 ; filler
|
|
|
|
db 2 ; warp events
|
|
warp_event 7, 3, LAKE_OF_RAGE_HIDDEN_POWER_HOUSE, 1
|
|
warp_event 27, 31, LAKE_OF_RAGE_MAGIKARP_HOUSE, 1
|
|
|
|
db 0 ; coord events
|
|
|
|
db 5 ; bg events
|
|
bg_event 21, 27, BGEVENT_READ, LakeOfRageSign
|
|
bg_event 25, 31, BGEVENT_READ, MagikarpHouseSignScript
|
|
bg_event 11, 28, BGEVENT_ITEM, LakeOfRageHiddenFullRestore
|
|
bg_event 4, 4, BGEVENT_ITEM, LakeOfRageHiddenRareCandy
|
|
bg_event 35, 5, BGEVENT_ITEM, LakeOfRageHiddenMaxPotion
|
|
|
|
db 12 ; object events
|
|
object_event 21, 28, SPRITE_LANCE, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageLanceScript, EVENT_LAKE_OF_RAGE_LANCE
|
|
object_event 20, 26, SPRITE_GRAMPS, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageGrampsScript, -1
|
|
object_event 36, 13, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageSuperNerdScript, -1
|
|
object_event 25, 29, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageCooltrainerFScript, -1
|
|
object_event 30, 23, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 1, TrainerFisherAndre, EVENT_LAKE_OF_RAGE_CIVILIANS
|
|
object_event 24, 26, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 1, TrainerFisherRaymond, EVENT_LAKE_OF_RAGE_CIVILIANS
|
|
object_event 4, 15, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 1, TrainerCooltrainermAaron, EVENT_LAKE_OF_RAGE_CIVILIANS
|
|
object_event 36, 7, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 0, TrainerCooltrainerfLois, EVENT_LAKE_OF_RAGE_CIVILIANS
|
|
object_event 18, 22, SPRITE_GYARADOS, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RedGyarados, EVENT_LAKE_OF_RAGE_RED_GYARADOS
|
|
object_event 4, 4, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, WesleyScript, EVENT_LAKE_OF_RAGE_WESLEY_OF_WEDNESDAY
|
|
object_event 7, 10, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, LakeOfRageElixer, EVENT_LAKE_OF_RAGE_ELIXER
|
|
object_event 35, 2, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, LakeOfRageTMDetect, EVENT_LAKE_OF_RAGE_TM_DETECT
|