mirror of https://github.com/pret/pokecrystal.git
1413 lines
26 KiB
NASM
1413 lines
26 KiB
NASM
const_def 2 ; object constants
|
|
const ELMSLAB_ELM
|
|
const ELMSLAB_ELMS_AIDE
|
|
const ELMSLAB_POKE_BALL1
|
|
const ELMSLAB_POKE_BALL2
|
|
const ELMSLAB_POKE_BALL3
|
|
const ELMSLAB_OFFICER
|
|
|
|
ElmsLab_MapScripts:
|
|
db 6 ; scene scripts
|
|
scene_script .MeetElm ; SCENE_DEFAULT
|
|
scene_script .DummyScene1 ; SCENE_ELMSLAB_CANT_LEAVE
|
|
scene_script .DummyScene2 ; SCENE_ELMSLAB_NOTHING
|
|
scene_script .DummyScene3 ; SCENE_ELMSLAB_MEET_OFFICER
|
|
scene_script .DummyScene4 ; SCENE_ELMSLAB_UNUSED
|
|
scene_script .DummyScene5 ; SCENE_ELMSLAB_AIDE_GIVES_POTION
|
|
|
|
db 1 ; callbacks
|
|
callback MAPCALLBACK_OBJECTS, .MoveElmCallback
|
|
|
|
.MeetElm:
|
|
priorityjump .WalkUpToElm
|
|
end
|
|
|
|
.DummyScene1:
|
|
end
|
|
|
|
.DummyScene2:
|
|
end
|
|
|
|
.DummyScene3:
|
|
end
|
|
|
|
.DummyScene4:
|
|
end
|
|
|
|
.DummyScene5:
|
|
end
|
|
|
|
.MoveElmCallback:
|
|
checkscene
|
|
iftrue .Skip ; not SCENE_DEFAULT
|
|
moveobject ELMSLAB_ELM, 3, 4
|
|
.Skip:
|
|
return
|
|
|
|
.WalkUpToElm:
|
|
applymovement PLAYER, ElmsLab_WalkUpToElmMovement
|
|
showemote EMOTE_SHOCK, ELMSLAB_ELM, 15
|
|
turnobject ELMSLAB_ELM, RIGHT
|
|
opentext
|
|
writetext ElmText_Intro
|
|
.MustSayYes:
|
|
yesorno
|
|
iftrue .ElmGetsEmail
|
|
writetext ElmText_Refused
|
|
jump .MustSayYes
|
|
|
|
.ElmGetsEmail:
|
|
writetext ElmText_Accepted
|
|
buttonsound
|
|
writetext ElmText_ResearchAmbitions
|
|
waitbutton
|
|
closetext
|
|
playsound SFX_GLASS_TING
|
|
pause 30
|
|
showemote EMOTE_SHOCK, ELMSLAB_ELM, 10
|
|
turnobject ELMSLAB_ELM, DOWN
|
|
opentext
|
|
writetext ElmText_GotAnEmail
|
|
waitbutton
|
|
closetext
|
|
opentext
|
|
turnobject ELMSLAB_ELM, RIGHT
|
|
writetext ElmText_MissionFromMrPokemon
|
|
waitbutton
|
|
closetext
|
|
applymovement ELMSLAB_ELM, ElmsLab_ElmToDefaultPositionMovement1
|
|
turnobject PLAYER, UP
|
|
applymovement ELMSLAB_ELM, ElmsLab_ElmToDefaultPositionMovement2
|
|
turnobject PLAYER, RIGHT
|
|
opentext
|
|
writetext ElmText_ChooseAPokemon
|
|
waitbutton
|
|
setscene SCENE_ELMSLAB_CANT_LEAVE
|
|
closetext
|
|
end
|
|
|
|
ProfElmScript:
|
|
faceplayer
|
|
opentext
|
|
checkevent EVENT_GOT_SS_TICKET_FROM_ELM
|
|
iftrue ElmCheckMasterBall
|
|
checkevent EVENT_BEAT_ELITE_FOUR
|
|
iftrue ElmGiveTicketScript
|
|
ElmCheckMasterBall:
|
|
checkevent EVENT_GOT_MASTER_BALL_FROM_ELM
|
|
iftrue ElmCheckEverstone
|
|
checkflag ENGINE_RISINGBADGE
|
|
iftrue ElmGiveMasterBallScript
|
|
ElmCheckEverstone:
|
|
checkevent EVENT_GOT_EVERSTONE_FROM_ELM
|
|
iftrue ElmScript_CallYou
|
|
checkevent EVENT_SHOWED_TOGEPI_TO_ELM
|
|
iftrue ElmGiveEverstoneScript
|
|
checkevent EVENT_TOLD_ELM_ABOUT_TOGEPI_OVER_THE_PHONE
|
|
iffalse ElmCheckTogepiEgg
|
|
writebyte TOGEPI
|
|
special FindPartyMonThatSpeciesYourTrainerID
|
|
iftrue ShowElmTogepiScript
|
|
writebyte TOGETIC
|
|
special FindPartyMonThatSpeciesYourTrainerID
|
|
iftrue ShowElmTogepiScript
|
|
writetext UnknownText_0x79a40
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
ElmEggHatchedScript:
|
|
writebyte TOGEPI
|
|
special FindPartyMonThatSpeciesYourTrainerID
|
|
iftrue ShowElmTogepiScript
|
|
writebyte TOGETIC
|
|
special FindPartyMonThatSpeciesYourTrainerID
|
|
iftrue ShowElmTogepiScript
|
|
jump ElmCheckGotEggAgain
|
|
|
|
ElmCheckTogepiEgg:
|
|
checkevent EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE
|
|
iffalse ElmCheckGotEggAgain
|
|
checkevent EVENT_TOGEPI_HATCHED
|
|
iftrue ElmEggHatchedScript
|
|
ElmCheckGotEggAgain:
|
|
checkevent EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE ; why are we checking it again?
|
|
iftrue ElmWaitingEggHatchScript
|
|
checkflag ENGINE_ZEPHYRBADGE
|
|
iftrue ElmAideHasEggScript
|
|
checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
|
|
iftrue ElmStudyingEggScript
|
|
checkevent EVENT_GOT_MYSTERY_EGG_FROM_MR_POKEMON
|
|
iftrue ElmAfterTheftScript
|
|
checkevent EVENT_GOT_A_POKEMON_FROM_ELM
|
|
iftrue ElmDescribesMrPokemonScript
|
|
writetext ElmText_LetYourMonBattleIt
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
LabTryToLeaveScript:
|
|
turnobject ELMSLAB_ELM, DOWN
|
|
opentext
|
|
writetext LabWhereGoingText
|
|
waitbutton
|
|
closetext
|
|
applymovement PLAYER, ElmsLab_CantLeaveMovement
|
|
end
|
|
|
|
CyndaquilPokeBallScript:
|
|
checkevent EVENT_GOT_A_POKEMON_FROM_ELM
|
|
iftrue LookAtElmPokeBallScript
|
|
turnobject ELMSLAB_ELM, DOWN
|
|
refreshscreen
|
|
pokepic CYNDAQUIL
|
|
cry CYNDAQUIL
|
|
waitbutton
|
|
closepokepic
|
|
opentext
|
|
writetext TakeCyndaquilText
|
|
yesorno
|
|
iffalse DidntChooseStarterScript
|
|
disappear ELMSLAB_POKE_BALL1
|
|
setevent EVENT_GOT_CYNDAQUIL_FROM_ELM
|
|
writetext ChoseStarterText
|
|
buttonsound
|
|
waitsfx
|
|
pokenamemem CYNDAQUIL, MEM_BUFFER_0
|
|
writetext ReceivedStarterText
|
|
playsound SFX_CAUGHT_MON
|
|
waitsfx
|
|
buttonsound
|
|
givepoke CYNDAQUIL, 5, BERRY
|
|
closetext
|
|
checkcode VAR_FACING
|
|
ifequal RIGHT, ElmDirectionsScript
|
|
applymovement PLAYER, AfterCyndaquilMovement
|
|
jump ElmDirectionsScript
|
|
|
|
TotodilePokeBallScript:
|
|
checkevent EVENT_GOT_A_POKEMON_FROM_ELM
|
|
iftrue LookAtElmPokeBallScript
|
|
turnobject ELMSLAB_ELM, DOWN
|
|
refreshscreen
|
|
pokepic TOTODILE
|
|
cry TOTODILE
|
|
waitbutton
|
|
closepokepic
|
|
opentext
|
|
writetext TakeTotodileText
|
|
yesorno
|
|
iffalse DidntChooseStarterScript
|
|
disappear ELMSLAB_POKE_BALL2
|
|
setevent EVENT_GOT_TOTODILE_FROM_ELM
|
|
writetext ChoseStarterText
|
|
buttonsound
|
|
waitsfx
|
|
pokenamemem TOTODILE, MEM_BUFFER_0
|
|
writetext ReceivedStarterText
|
|
playsound SFX_CAUGHT_MON
|
|
waitsfx
|
|
buttonsound
|
|
givepoke TOTODILE, 5, BERRY
|
|
closetext
|
|
applymovement PLAYER, AfterTotodileMovement
|
|
jump ElmDirectionsScript
|
|
|
|
ChikoritaPokeBallScript:
|
|
checkevent EVENT_GOT_A_POKEMON_FROM_ELM
|
|
iftrue LookAtElmPokeBallScript
|
|
turnobject ELMSLAB_ELM, DOWN
|
|
refreshscreen
|
|
pokepic CHIKORITA
|
|
cry CHIKORITA
|
|
waitbutton
|
|
closepokepic
|
|
opentext
|
|
writetext TakeChikoritaText
|
|
yesorno
|
|
iffalse DidntChooseStarterScript
|
|
disappear ELMSLAB_POKE_BALL3
|
|
setevent EVENT_GOT_CHIKORITA_FROM_ELM
|
|
writetext ChoseStarterText
|
|
buttonsound
|
|
waitsfx
|
|
pokenamemem CHIKORITA, MEM_BUFFER_0
|
|
writetext ReceivedStarterText
|
|
playsound SFX_CAUGHT_MON
|
|
waitsfx
|
|
buttonsound
|
|
givepoke CHIKORITA, 5, BERRY
|
|
closetext
|
|
applymovement PLAYER, AfterChikoritaMovement
|
|
jump ElmDirectionsScript
|
|
|
|
DidntChooseStarterScript:
|
|
writetext DidntChooseStarterText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
ElmDirectionsScript:
|
|
turnobject PLAYER, UP
|
|
opentext
|
|
writetext ElmDirectionsText1
|
|
waitbutton
|
|
closetext
|
|
addcellnum PHONE_ELM
|
|
opentext
|
|
writetext GotElmsNumberText
|
|
playsound SFX_REGISTER_PHONE_NUMBER
|
|
waitsfx
|
|
waitbutton
|
|
closetext
|
|
turnobject ELMSLAB_ELM, LEFT
|
|
opentext
|
|
writetext ElmDirectionsText2
|
|
waitbutton
|
|
closetext
|
|
turnobject ELMSLAB_ELM, DOWN
|
|
opentext
|
|
writetext ElmDirectionsText3
|
|
waitbutton
|
|
closetext
|
|
setevent EVENT_GOT_A_POKEMON_FROM_ELM
|
|
setevent EVENT_RIVAL_CHERRYGROVE_CITY
|
|
setscene SCENE_ELMSLAB_AIDE_GIVES_POTION
|
|
setmapscene NEW_BARK_TOWN, SCENE_FINISHED
|
|
end
|
|
|
|
ElmDescribesMrPokemonScript:
|
|
writetext ElmDescribesMrPokemonText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
LookAtElmPokeBallScript:
|
|
opentext
|
|
writetext ElmPokeBallText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
ElmsLabHealingMachine:
|
|
opentext
|
|
checkevent EVENT_GOT_A_POKEMON_FROM_ELM
|
|
iftrue .CanHeal
|
|
writetext ElmsLabHealingMachineText1
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
.CanHeal:
|
|
writetext ElmsLabHealingMachineText2
|
|
yesorno
|
|
iftrue ElmsLabHealingMachine_HealParty
|
|
closetext
|
|
end
|
|
|
|
ElmsLabHealingMachine_HealParty:
|
|
special StubbedTrainerRankings_Healings
|
|
special HealParty
|
|
playmusic MUSIC_NONE
|
|
writebyte HEALMACHINE_ELMS_LAB
|
|
special HealMachineAnim
|
|
pause 30
|
|
special RestartMapMusic
|
|
closetext
|
|
end
|
|
|
|
ElmAfterTheftDoneScript:
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
ElmAfterTheftScript:
|
|
writetext ElmAfterTheftText1
|
|
checkitem MYSTERY_EGG
|
|
iffalse ElmAfterTheftDoneScript
|
|
buttonsound
|
|
writetext ElmAfterTheftText2
|
|
waitbutton
|
|
takeitem MYSTERY_EGG
|
|
scall ElmJumpBackScript1
|
|
writetext ElmAfterTheftText3
|
|
waitbutton
|
|
scall ElmJumpBackScript2
|
|
writetext ElmAfterTheftText4
|
|
buttonsound
|
|
writetext ElmAfterTheftText5
|
|
buttonsound
|
|
setevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
|
|
setflag ENGINE_MAIN_MENU_MOBILE_CHOICES
|
|
setmapscene ROUTE_29, SCENE_ROUTE29_CATCH_TUTORIAL
|
|
clearevent EVENT_ROUTE_30_YOUNGSTER_JOEY
|
|
setevent EVENT_ROUTE_30_BATTLE
|
|
writetext ElmAfterTheftText6
|
|
waitbutton
|
|
closetext
|
|
setscene SCENE_ELMSLAB_AIDE_GIVES_POKE_BALLS
|
|
end
|
|
|
|
ElmStudyingEggScript:
|
|
writetext ElmStudyingEggText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
ElmAideHasEggScript:
|
|
writetext ElmAideHasEggText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
ElmWaitingEggHatchScript:
|
|
writetext ElmWaitingEggHatchText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
ShowElmTogepiScript:
|
|
writetext ShowElmTogepiText1
|
|
waitbutton
|
|
closetext
|
|
showemote EMOTE_SHOCK, ELMSLAB_ELM, 15
|
|
setevent EVENT_SHOWED_TOGEPI_TO_ELM
|
|
opentext
|
|
writetext ShowElmTogepiText2
|
|
buttonsound
|
|
writetext ShowElmTogepiText3
|
|
buttonsound
|
|
ElmGiveEverstoneScript:
|
|
writetext ElmGiveEverstoneText1
|
|
buttonsound
|
|
verbosegiveitem EVERSTONE
|
|
iffalse ElmScript_NoRoomForEverstone
|
|
writetext ElmGiveEverstoneText2
|
|
waitbutton
|
|
closetext
|
|
setevent EVENT_GOT_EVERSTONE_FROM_ELM
|
|
end
|
|
|
|
ElmScript_CallYou:
|
|
writetext ElmText_CallYou
|
|
waitbutton
|
|
ElmScript_NoRoomForEverstone:
|
|
closetext
|
|
end
|
|
|
|
ElmGiveMasterBallScript:
|
|
writetext ElmGiveMasterBallText1
|
|
buttonsound
|
|
verbosegiveitem MASTER_BALL
|
|
iffalse .notdone
|
|
setevent EVENT_GOT_MASTER_BALL_FROM_ELM
|
|
writetext ElmGiveMasterBallText2
|
|
waitbutton
|
|
.notdone
|
|
closetext
|
|
end
|
|
|
|
ElmGiveTicketScript:
|
|
writetext ElmGiveTicketText1
|
|
buttonsound
|
|
verbosegiveitem S_S_TICKET
|
|
setevent EVENT_GOT_SS_TICKET_FROM_ELM
|
|
writetext ElmGiveTicketText2
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
ElmJumpBackScript1:
|
|
closetext
|
|
checkcode VAR_FACING
|
|
ifequal DOWN, ElmJumpDownScript
|
|
ifequal UP, ElmJumpUpScript
|
|
ifequal LEFT, ElmJumpLeftScript
|
|
ifequal RIGHT, ElmJumpRightScript
|
|
end
|
|
|
|
ElmJumpBackScript2:
|
|
closetext
|
|
checkcode VAR_FACING
|
|
ifequal DOWN, ElmJumpUpScript
|
|
ifequal UP, ElmJumpDownScript
|
|
ifequal LEFT, ElmJumpRightScript
|
|
ifequal RIGHT, ElmJumpLeftScript
|
|
end
|
|
|
|
ElmJumpUpScript:
|
|
applymovement ELMSLAB_ELM, ElmJumpUpMovement
|
|
opentext
|
|
end
|
|
|
|
ElmJumpDownScript:
|
|
applymovement ELMSLAB_ELM, ElmJumpDownMovement
|
|
opentext
|
|
end
|
|
|
|
ElmJumpLeftScript:
|
|
applymovement ELMSLAB_ELM, ElmJumpLeftMovement
|
|
opentext
|
|
end
|
|
|
|
ElmJumpRightScript:
|
|
applymovement ELMSLAB_ELM, ElmJumpRightMovement
|
|
opentext
|
|
end
|
|
|
|
AideScript_WalkPotion1:
|
|
applymovement ELMSLAB_ELMS_AIDE, AideWalksRight1
|
|
turnobject PLAYER, DOWN
|
|
scall AideScript_GivePotion
|
|
applymovement ELMSLAB_ELMS_AIDE, AideWalksLeft1
|
|
end
|
|
|
|
AideScript_WalkPotion2:
|
|
applymovement ELMSLAB_ELMS_AIDE, AideWalksRight2
|
|
turnobject PLAYER, DOWN
|
|
scall AideScript_GivePotion
|
|
applymovement ELMSLAB_ELMS_AIDE, AideWalksLeft2
|
|
end
|
|
|
|
AideScript_GivePotion:
|
|
opentext
|
|
writetext AideText_GiveYouPotion
|
|
buttonsound
|
|
verbosegiveitem POTION
|
|
writetext AideText_AlwaysBusy
|
|
waitbutton
|
|
closetext
|
|
setscene SCENE_ELMSLAB_NOTHING
|
|
end
|
|
|
|
AideScript_WalkBalls1:
|
|
applymovement ELMSLAB_ELMS_AIDE, AideWalksRight1
|
|
turnobject PLAYER, DOWN
|
|
scall AideScript_GiveYouBalls
|
|
applymovement ELMSLAB_ELMS_AIDE, AideWalksLeft1
|
|
end
|
|
|
|
AideScript_WalkBalls2:
|
|
applymovement ELMSLAB_ELMS_AIDE, AideWalksRight2
|
|
turnobject PLAYER, DOWN
|
|
scall AideScript_GiveYouBalls
|
|
applymovement ELMSLAB_ELMS_AIDE, AideWalksLeft2
|
|
end
|
|
|
|
AideScript_GiveYouBalls:
|
|
opentext
|
|
writetext AideText_GiveYouBalls
|
|
buttonsound
|
|
itemtotext POKE_BALL, MEM_BUFFER_1
|
|
scall AideScript_ReceiveTheBalls
|
|
giveitem POKE_BALL, 5
|
|
writetext AideText_ExplainBalls
|
|
buttonsound
|
|
itemnotify
|
|
closetext
|
|
setscene SCENE_ELMSLAB_NOTHING
|
|
end
|
|
|
|
AideScript_ReceiveTheBalls:
|
|
jumpstd receiveitem
|
|
end
|
|
|
|
ElmsAideScript:
|
|
faceplayer
|
|
opentext
|
|
checkevent EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE
|
|
iftrue AideScript_AfterTheft
|
|
checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
|
|
iftrue AideScript_ExplainBalls
|
|
checkevent EVENT_GOT_MYSTERY_EGG_FROM_MR_POKEMON
|
|
iftrue AideScript_TheftTestimony
|
|
writetext AideText_AlwaysBusy
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
AideScript_TheftTestimony:
|
|
writetext AideText_TheftTestimony
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
AideScript_ExplainBalls:
|
|
writetext AideText_ExplainBalls
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
AideScript_AfterTheft:
|
|
writetext AideText_AfterTheft
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
MeetCopScript2:
|
|
applymovement PLAYER, MeetCopScript2_StepLeft
|
|
|
|
MeetCopScript:
|
|
applymovement PLAYER, MeetCopScript_WalkUp
|
|
CopScript:
|
|
turnobject ELMSLAB_OFFICER, LEFT
|
|
opentext
|
|
writetext ElmsLabOfficerText1
|
|
buttonsound
|
|
special NameRival
|
|
writetext ElmsLabOfficerText2
|
|
waitbutton
|
|
closetext
|
|
applymovement ELMSLAB_OFFICER, OfficerLeavesMovement
|
|
disappear ELMSLAB_OFFICER
|
|
setscene SCENE_ELMSLAB_NOTHING
|
|
end
|
|
|
|
ElmsLabWindow:
|
|
opentext
|
|
checkflag ENGINE_FLYPOINT_VIOLET
|
|
iftrue .Normal
|
|
checkevent EVENT_ELM_CALLED_ABOUT_STOLEN_POKEMON
|
|
iftrue .BreakIn
|
|
jump .Normal
|
|
|
|
.BreakIn:
|
|
writetext ElmsLabWindowText2
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
.Normal:
|
|
writetext ElmsLabWindowText1
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
ElmsLabTravelTip1:
|
|
jumptext ElmsLabTravelTip1Text
|
|
|
|
ElmsLabTravelTip2:
|
|
jumptext ElmsLabTravelTip2Text
|
|
|
|
ElmsLabTravelTip3:
|
|
jumptext ElmsLabTravelTip3Text
|
|
|
|
ElmsLabTravelTip4:
|
|
jumptext ElmsLabTravelTip4Text
|
|
|
|
ElmsLabTrashcan:
|
|
jumptext ElmsLabTrashcanText
|
|
|
|
ElmsLabPC:
|
|
jumptext ElmsLabPCText
|
|
|
|
ElmsLabTrashcan2:
|
|
; unused
|
|
jumpstd trashcan
|
|
|
|
ElmsLabBookshelf:
|
|
jumpstd difficultbookshelf
|
|
|
|
ElmsLab_WalkUpToElmMovement:
|
|
step UP
|
|
step UP
|
|
step UP
|
|
step UP
|
|
step UP
|
|
step UP
|
|
step UP
|
|
turn_head LEFT
|
|
step_end
|
|
|
|
ElmsLab_CantLeaveMovement:
|
|
step UP
|
|
step_end
|
|
|
|
MeetCopScript2_StepLeft:
|
|
step LEFT
|
|
step_end
|
|
|
|
MeetCopScript_WalkUp:
|
|
step UP
|
|
step UP
|
|
turn_head RIGHT
|
|
step_end
|
|
|
|
OfficerLeavesMovement:
|
|
step DOWN
|
|
step DOWN
|
|
step DOWN
|
|
step DOWN
|
|
step DOWN
|
|
step_end
|
|
|
|
AideWalksRight1:
|
|
step RIGHT
|
|
step RIGHT
|
|
turn_head UP
|
|
step_end
|
|
|
|
AideWalksRight2:
|
|
step RIGHT
|
|
step RIGHT
|
|
step RIGHT
|
|
turn_head UP
|
|
step_end
|
|
|
|
AideWalksLeft1:
|
|
step LEFT
|
|
step LEFT
|
|
turn_head DOWN
|
|
step_end
|
|
|
|
AideWalksLeft2:
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
turn_head DOWN
|
|
step_end
|
|
|
|
ElmJumpUpMovement:
|
|
fix_facing
|
|
big_step UP
|
|
remove_fixed_facing
|
|
step_end
|
|
|
|
ElmJumpDownMovement:
|
|
fix_facing
|
|
big_step DOWN
|
|
remove_fixed_facing
|
|
step_end
|
|
|
|
ElmJumpLeftMovement:
|
|
fix_facing
|
|
big_step LEFT
|
|
remove_fixed_facing
|
|
step_end
|
|
|
|
ElmJumpRightMovement:
|
|
fix_facing
|
|
big_step RIGHT
|
|
remove_fixed_facing
|
|
step_end
|
|
|
|
ElmsLab_ElmToDefaultPositionMovement1:
|
|
step UP
|
|
step_end
|
|
|
|
ElmsLab_ElmToDefaultPositionMovement2:
|
|
step RIGHT
|
|
step RIGHT
|
|
step UP
|
|
turn_head DOWN
|
|
step_end
|
|
|
|
AfterCyndaquilMovement:
|
|
step LEFT
|
|
step UP
|
|
turn_head UP
|
|
step_end
|
|
|
|
AfterTotodileMovement:
|
|
step LEFT
|
|
step LEFT
|
|
step UP
|
|
turn_head UP
|
|
step_end
|
|
|
|
AfterChikoritaMovement:
|
|
step LEFT
|
|
step LEFT
|
|
step LEFT
|
|
step UP
|
|
turn_head UP
|
|
step_end
|
|
|
|
ElmText_Intro:
|
|
text "ELM: <PLAY_G>!"
|
|
line "There you are!"
|
|
|
|
para "I needed to ask"
|
|
line "you a favor."
|
|
|
|
para "I'm conducting new"
|
|
line "#MON research"
|
|
|
|
para "right now. I was"
|
|
line "wondering if you"
|
|
|
|
para "could help me with"
|
|
line "it, <PLAY_G>."
|
|
|
|
para "You see…"
|
|
|
|
para "I'm writing a"
|
|
line "paper that I want"
|
|
|
|
para "to present at a"
|
|
line "conference."
|
|
|
|
para "But there are some"
|
|
line "things I don't"
|
|
|
|
para "quite understand"
|
|
line "yet."
|
|
|
|
para "So!"
|
|
|
|
para "I'd like you to"
|
|
line "raise a #MON"
|
|
|
|
para "that I recently"
|
|
line "caught."
|
|
done
|
|
|
|
ElmText_Accepted:
|
|
text "Thanks, <PLAY_G>!"
|
|
|
|
para "You're a great"
|
|
line "help!"
|
|
done
|
|
|
|
ElmText_Refused:
|
|
text "But… Please, I"
|
|
line "need your help!"
|
|
done
|
|
|
|
ElmText_ResearchAmbitions:
|
|
text "When I announce my"
|
|
line "findings, I'm sure"
|
|
|
|
para "we'll delve a bit"
|
|
line "deeper into the"
|
|
|
|
para "many mysteries of"
|
|
line "#MON."
|
|
|
|
para "You can count on"
|
|
line "it!"
|
|
done
|
|
|
|
ElmText_GotAnEmail:
|
|
text "Oh, hey! I got an"
|
|
line "e-mail!"
|
|
|
|
para "<……><……><……>"
|
|
line "Hm… Uh-huh…"
|
|
|
|
para "Okay…"
|
|
done
|
|
|
|
ElmText_MissionFromMrPokemon:
|
|
text "Hey, listen."
|
|
|
|
para "I have an acquain-"
|
|
line "tance called MR."
|
|
cont "#MON."
|
|
|
|
para "He keeps finding"
|
|
line "weird things and"
|
|
|
|
para "raving about his"
|
|
line "discoveries."
|
|
|
|
para "Anyway, I just got"
|
|
line "an e-mail from him"
|
|
|
|
para "saying that this"
|
|
line "time it's real."
|
|
|
|
para "It is intriguing,"
|
|
line "but we're busy"
|
|
|
|
para "with our #MON"
|
|
line "research…"
|
|
|
|
para "Wait!"
|
|
|
|
para "I know!"
|
|
|
|
para "<PLAY_G>, can you"
|
|
line "go in our place?"
|
|
done
|
|
|
|
ElmText_ChooseAPokemon:
|
|
text "I want you to"
|
|
line "raise one of the"
|
|
|
|
para "#MON contained"
|
|
line "in these BALLS."
|
|
|
|
para "You'll be that"
|
|
line "#MON's first"
|
|
cont "partner, <PLAY_G>!"
|
|
|
|
para "Go on. Pick one!"
|
|
done
|
|
|
|
ElmText_LetYourMonBattleIt:
|
|
text "If a wild #MON"
|
|
line "appears, let your"
|
|
cont "#MON battle it!"
|
|
done
|
|
|
|
LabWhereGoingText:
|
|
text "ELM: Wait! Where"
|
|
line "are you going?"
|
|
done
|
|
|
|
TakeCyndaquilText:
|
|
text "ELM: You'll take"
|
|
line "CYNDAQUIL, the"
|
|
cont "fire #MON?"
|
|
done
|
|
|
|
TakeTotodileText:
|
|
text "ELM: Do you want"
|
|
line "TOTODILE, the"
|
|
cont "water #MON?"
|
|
done
|
|
|
|
TakeChikoritaText:
|
|
text "ELM: So, you like"
|
|
line "CHIKORITA, the"
|
|
cont "grass #MON?"
|
|
done
|
|
|
|
DidntChooseStarterText:
|
|
text "ELM: Think it over"
|
|
line "carefully."
|
|
|
|
para "Your partner is"
|
|
line "important."
|
|
done
|
|
|
|
ChoseStarterText:
|
|
text "ELM: I think"
|
|
line "that's a great"
|
|
cont "#MON too!"
|
|
done
|
|
|
|
ReceivedStarterText:
|
|
text "<PLAYER> received"
|
|
line "@"
|
|
text_from_ram wStringBuffer3
|
|
text "!"
|
|
done
|
|
|
|
ElmDirectionsText1:
|
|
text "MR.#MON lives a"
|
|
line "little bit beyond"
|
|
|
|
para "CHERRYGROVE, the"
|
|
line "next city over."
|
|
|
|
para "It's almost a"
|
|
line "direct route"
|
|
|
|
para "there, so you"
|
|
line "can't miss it."
|
|
|
|
para "But just in case,"
|
|
line "here's my phone"
|
|
|
|
para "number. Call me if"
|
|
line "anything comes up!"
|
|
done
|
|
|
|
ElmDirectionsText2:
|
|
text "If your #MON is"
|
|
line "hurt, you should"
|
|
|
|
para "heal it with this"
|
|
line "machine."
|
|
|
|
para "Feel free to use"
|
|
line "it anytime."
|
|
done
|
|
|
|
ElmDirectionsText3:
|
|
text "<PLAY_G>, I'm"
|
|
line "counting on you!"
|
|
done
|
|
|
|
GotElmsNumberText:
|
|
text "<PLAYER> got ELM's"
|
|
line "phone number."
|
|
done
|
|
|
|
ElmDescribesMrPokemonText:
|
|
text "MR.#MON goes"
|
|
line "everywhere and"
|
|
cont "finds rarities."
|
|
|
|
para "Too bad they're"
|
|
line "just rare and"
|
|
cont "not very useful…"
|
|
done
|
|
|
|
ElmPokeBallText:
|
|
text "It contains a"
|
|
line "#MON caught by"
|
|
cont "PROF.ELM."
|
|
done
|
|
|
|
ElmsLabHealingMachineText1:
|
|
text "I wonder what this"
|
|
line "does?"
|
|
done
|
|
|
|
ElmsLabHealingMachineText2:
|
|
text "Would you like to"
|
|
line "heal your #MON?"
|
|
done
|
|
|
|
ElmAfterTheftText1:
|
|
text "ELM: <PLAY_G>, this"
|
|
line "is terrible…"
|
|
|
|
para "Oh, yes, what was"
|
|
line "MR.#MON's big"
|
|
cont "discovery?"
|
|
done
|
|
|
|
ElmAfterTheftText2:
|
|
text "<PLAYER> handed"
|
|
line "the MYSTERY EGG to"
|
|
cont "PROF.ELM."
|
|
done
|
|
|
|
ElmAfterTheftText3:
|
|
text "ELM: This?"
|
|
done
|
|
|
|
ElmAfterTheftText4:
|
|
text "But… Is it a"
|
|
line "#MON EGG?"
|
|
|
|
para "If it is, it is a"
|
|
line "great discovery!"
|
|
done
|
|
|
|
ElmAfterTheftText5:
|
|
text "ELM: What?!?"
|
|
|
|
para "PROF.OAK gave you"
|
|
line "a #DEX?"
|
|
|
|
para "<PLAY_G>, is that"
|
|
line "true? Th-that's"
|
|
cont "incredible!"
|
|
|
|
para "He is superb at"
|
|
line "seeing the poten-"
|
|
cont "tial of people as"
|
|
cont "trainers."
|
|
|
|
para "Wow, <PLAY_G>. You"
|
|
line "may have what it"
|
|
|
|
para "takes to become"
|
|
line "the CHAMPION."
|
|
|
|
para "You seem to be"
|
|
line "getting on great"
|
|
cont "with #MON too."
|
|
|
|
para "You should take"
|
|
line "the #MON GYM"
|
|
cont "challenge."
|
|
|
|
para "The closest GYM"
|
|
line "would be the one"
|
|
cont "in VIOLET CITY."
|
|
done
|
|
|
|
ElmAfterTheftText6:
|
|
text "…<PLAY_G>. The"
|
|
line "road to the"
|
|
|
|
para "championship will"
|
|
line "be a long one."
|
|
|
|
para "Before you leave,"
|
|
line "make sure that you"
|
|
cont "talk to your mom."
|
|
done
|
|
|
|
ElmStudyingEggText:
|
|
text "ELM: Don't give"
|
|
line "up! I'll call if"
|
|
|
|
para "I learn anything"
|
|
line "about that EGG!"
|
|
done
|
|
|
|
ElmAideHasEggText:
|
|
text "ELM: <PLAY_G>?"
|
|
line "Didn't you meet my"
|
|
cont "assistant?"
|
|
|
|
para "He should have met"
|
|
line "you with the EGG"
|
|
|
|
para "at VIOLET CITY's"
|
|
line "#MON CENTER."
|
|
|
|
para "You must have just"
|
|
line "missed him. Try to"
|
|
cont "catch him there."
|
|
done
|
|
|
|
ElmWaitingEggHatchText:
|
|
text "ELM: Hey, has that"
|
|
line "EGG changed any?"
|
|
done
|
|
|
|
UnknownText_0x79a40:
|
|
text "<PLAY_G>? I thought"
|
|
line "the EGG hatched."
|
|
|
|
para "Where is the"
|
|
line "#MON?"
|
|
done
|
|
|
|
ShowElmTogepiText1:
|
|
text "ELM: <PLAY_G>, you"
|
|
line "look great!"
|
|
done
|
|
|
|
ShowElmTogepiText2:
|
|
text "What?"
|
|
line "That #MON!?!"
|
|
done
|
|
|
|
ShowElmTogepiText3:
|
|
text "The EGG hatched!"
|
|
line "So, #MON are"
|
|
cont "born from EGGS…"
|
|
|
|
para "No, perhaps not"
|
|
line "all #MON are."
|
|
|
|
para "Wow, there's still"
|
|
line "a lot of research"
|
|
cont "to be done."
|
|
done
|
|
|
|
ElmGiveEverstoneText1:
|
|
text "Thanks, <PLAY_G>!"
|
|
line "You're helping"
|
|
|
|
para "unravel #MON"
|
|
line "mysteries for us!"
|
|
|
|
para "I want you to have"
|
|
line "this as a token of"
|
|
cont "our appreciation."
|
|
done
|
|
|
|
ElmGiveEverstoneText2:
|
|
text "That's an"
|
|
line "EVERSTONE."
|
|
|
|
para "Some species of"
|
|
line "#MON evolve"
|
|
|
|
para "when they grow to"
|
|
line "certain levels."
|
|
|
|
para "A #MON holding"
|
|
line "the EVERSTONE"
|
|
cont "won't evolve."
|
|
|
|
para "Give it to a #-"
|
|
line "MON you don't want"
|
|
cont "to evolve."
|
|
done
|
|
|
|
ElmText_CallYou:
|
|
text "ELM: <PLAY_G>, I'll"
|
|
line "call you if any-"
|
|
cont "thing comes up."
|
|
done
|
|
|
|
AideText_AfterTheft:
|
|
text "…sigh… That"
|
|
line "stolen #MON."
|
|
|
|
para "I wonder how it's"
|
|
line "doing."
|
|
|
|
para "They say a #MON"
|
|
line "raised by a bad"
|
|
|
|
para "person turns bad"
|
|
line "itself."
|
|
done
|
|
|
|
ElmGiveMasterBallText1:
|
|
text "ELM: Hi, <PLAY_G>!"
|
|
line "Thanks to you, my"
|
|
|
|
para "research is going"
|
|
line "great!"
|
|
|
|
para "Take this as a"
|
|
line "token of my"
|
|
cont "appreciation."
|
|
done
|
|
|
|
ElmGiveMasterBallText2:
|
|
text "The MASTER BALL is"
|
|
line "the best!"
|
|
|
|
para "It's the ultimate"
|
|
line "BALL! It'll catch"
|
|
|
|
para "any #MON with-"
|
|
line "out fail."
|
|
|
|
para "It's given only to"
|
|
line "recognized #MON"
|
|
cont "researchers."
|
|
|
|
para "I think you can"
|
|
line "make much better"
|
|
|
|
para "use of it than I"
|
|
line "can, <PLAY_G>!"
|
|
done
|
|
|
|
ElmGiveTicketText1:
|
|
text "ELM: <PLAY_G>!"
|
|
line "There you are!"
|
|
|
|
para "I called because I"
|
|
line "have something for"
|
|
cont "you."
|
|
|
|
para "See? It's an"
|
|
line "S.S.TICKET."
|
|
|
|
para "Now you can catch"
|
|
line "#MON in KANTO."
|
|
done
|
|
|
|
ElmGiveTicketText2:
|
|
text "The ship departs"
|
|
line "from OLIVINE CITY."
|
|
|
|
para "But you knew that"
|
|
line "already, <PLAY_G>."
|
|
|
|
para "After all, you've"
|
|
line "traveled all over"
|
|
cont "with your #MON."
|
|
|
|
para "Give my regards to"
|
|
line "PROF.OAK in KANTO!"
|
|
done
|
|
|
|
ElmsLabSignpostText_Egg:
|
|
text "It's the #MON"
|
|
line "EGG being studied"
|
|
cont "by PROF.ELM."
|
|
done
|
|
|
|
AideText_GiveYouPotion:
|
|
text "<PLAY_G>, I want"
|
|
line "you to have this"
|
|
cont "for your errand."
|
|
done
|
|
|
|
AideText_AlwaysBusy:
|
|
text "There are only two"
|
|
line "of us, so we're"
|
|
cont "always busy."
|
|
done
|
|
|
|
AideText_TheftTestimony:
|
|
text "There was a loud"
|
|
line "noise outside…"
|
|
|
|
para "When we went to"
|
|
line "look, someone"
|
|
cont "stole a #MON."
|
|
|
|
para "It's unbelievable"
|
|
line "that anyone would"
|
|
cont "do that!"
|
|
|
|
para "…sigh… That"
|
|
line "stolen #MON."
|
|
|
|
para "I wonder how it's"
|
|
line "doing."
|
|
|
|
para "They say a #MON"
|
|
line "raised by a bad"
|
|
|
|
para "person turns bad"
|
|
line "itself."
|
|
done
|
|
|
|
AideText_GiveYouBalls:
|
|
text "<PLAY_G>!"
|
|
|
|
para "Use these on your"
|
|
line "#DEX quest!"
|
|
done
|
|
|
|
AideText_ExplainBalls:
|
|
text "To add to your"
|
|
line "#DEX, you have"
|
|
cont "to catch #MON."
|
|
|
|
para "Throw # BALLS"
|
|
line "at wild #MON"
|
|
cont "to get them."
|
|
done
|
|
|
|
ElmsLabOfficerText1:
|
|
text "I heard a #MON"
|
|
line "was stolen here…"
|
|
|
|
para "I was just getting"
|
|
line "some information"
|
|
cont "from PROF.ELM."
|
|
|
|
para "Apparently, it was"
|
|
line "a young male with"
|
|
cont "long, red hair…"
|
|
|
|
para "What?"
|
|
|
|
para "You battled a"
|
|
line "trainer like that?"
|
|
|
|
para "Did you happen to"
|
|
line "get his name?"
|
|
done
|
|
|
|
ElmsLabOfficerText2:
|
|
text "OK! So <RIVAL>"
|
|
line "was his name."
|
|
|
|
para "Thanks for helping"
|
|
line "my investigation!"
|
|
done
|
|
|
|
ElmsLabWindowText1:
|
|
text "The window's open."
|
|
|
|
para "A pleasant breeze"
|
|
line "is blowing in."
|
|
done
|
|
|
|
ElmsLabWindowText2:
|
|
text "He broke in"
|
|
line "through here!"
|
|
done
|
|
|
|
ElmsLabTravelTip1Text:
|
|
text "<PLAYER> opened a"
|
|
line "book."
|
|
|
|
para "Travel Tip 1:"
|
|
|
|
para "Press START to"
|
|
line "open the MENU."
|
|
done
|
|
|
|
ElmsLabTravelTip2Text:
|
|
text "<PLAYER> opened a"
|
|
line "book."
|
|
|
|
para "Travel Tip 2:"
|
|
|
|
para "Record your trip"
|
|
line "with SAVE!"
|
|
done
|
|
|
|
ElmsLabTravelTip3Text:
|
|
text "<PLAYER> opened a"
|
|
line "book."
|
|
|
|
para "Travel Tip 3:"
|
|
|
|
para "Open your PACK and"
|
|
line "press SELECT to"
|
|
cont "move items."
|
|
done
|
|
|
|
ElmsLabTravelTip4Text:
|
|
text "<PLAYER> opened a"
|
|
line "book."
|
|
|
|
para "Travel Tip 4:"
|
|
|
|
para "Check your #MON"
|
|
line "moves. Press the"
|
|
|
|
para "A Button to switch"
|
|
line "moves."
|
|
done
|
|
|
|
ElmsLabTrashcanText:
|
|
text "The wrapper from"
|
|
line "the snack PROF.ELM"
|
|
cont "ate is in there…"
|
|
done
|
|
|
|
ElmsLabPCText:
|
|
text "OBSERVATIONS ON"
|
|
line "#MON EVOLUTION"
|
|
|
|
para "…It says on the"
|
|
line "screen…"
|
|
done
|
|
|
|
ElmsLab_MapEvents:
|
|
db 0, 0 ; filler
|
|
|
|
db 2 ; warp events
|
|
warp_event 4, 11, NEW_BARK_TOWN, 1
|
|
warp_event 5, 11, NEW_BARK_TOWN, 1
|
|
|
|
db 8 ; coord events
|
|
coord_event 4, 6, SCENE_ELMSLAB_CANT_LEAVE, LabTryToLeaveScript
|
|
coord_event 5, 6, SCENE_ELMSLAB_CANT_LEAVE, LabTryToLeaveScript
|
|
coord_event 4, 5, SCENE_ELMSLAB_MEET_OFFICER, MeetCopScript
|
|
coord_event 5, 5, SCENE_ELMSLAB_MEET_OFFICER, MeetCopScript2
|
|
coord_event 4, 8, SCENE_ELMSLAB_AIDE_GIVES_POTION, AideScript_WalkPotion1
|
|
coord_event 5, 8, SCENE_ELMSLAB_AIDE_GIVES_POTION, AideScript_WalkPotion2
|
|
coord_event 4, 8, SCENE_ELMSLAB_AIDE_GIVES_POKE_BALLS, AideScript_WalkBalls1
|
|
coord_event 5, 8, SCENE_ELMSLAB_AIDE_GIVES_POKE_BALLS, AideScript_WalkBalls2
|
|
|
|
db 16 ; bg events
|
|
bg_event 2, 1, BGEVENT_READ, ElmsLabHealingMachine
|
|
bg_event 6, 1, BGEVENT_READ, ElmsLabBookshelf
|
|
bg_event 7, 1, BGEVENT_READ, ElmsLabBookshelf
|
|
bg_event 8, 1, BGEVENT_READ, ElmsLabBookshelf
|
|
bg_event 9, 1, BGEVENT_READ, ElmsLabBookshelf
|
|
bg_event 0, 7, BGEVENT_READ, ElmsLabTravelTip1
|
|
bg_event 1, 7, BGEVENT_READ, ElmsLabTravelTip2
|
|
bg_event 2, 7, BGEVENT_READ, ElmsLabTravelTip3
|
|
bg_event 3, 7, BGEVENT_READ, ElmsLabTravelTip4
|
|
bg_event 6, 7, BGEVENT_READ, ElmsLabBookshelf
|
|
bg_event 7, 7, BGEVENT_READ, ElmsLabBookshelf
|
|
bg_event 8, 7, BGEVENT_READ, ElmsLabBookshelf
|
|
bg_event 9, 7, BGEVENT_READ, ElmsLabBookshelf
|
|
bg_event 9, 3, BGEVENT_READ, ElmsLabTrashcan
|
|
bg_event 5, 0, BGEVENT_READ, ElmsLabWindow
|
|
bg_event 3, 5, BGEVENT_DOWN, ElmsLabPC
|
|
|
|
db 6 ; object events
|
|
object_event 5, 2, SPRITE_ELM, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ProfElmScript, -1
|
|
object_event 2, 9, SPRITE_SCIENTIST, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, ElmsAideScript, EVENT_ELMS_AIDE_IN_LAB
|
|
object_event 6, 3, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, CyndaquilPokeBallScript, EVENT_CYNDAQUIL_POKEBALL_IN_ELMS_LAB
|
|
object_event 7, 3, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, TotodilePokeBallScript, EVENT_TOTODILE_POKEBALL_IN_ELMS_LAB
|
|
object_event 8, 3, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ChikoritaPokeBallScript, EVENT_CHIKORITA_POKEBALL_IN_ELMS_LAB
|
|
object_event 5, 3, SPRITE_OFFICER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, CopScript, EVENT_COP_IN_ELMS_LAB
|