pokecrystal-board/maps/IndigoPlateauPokecenter1F.asm

325 lines
7.6 KiB
NASM

const_def 2 ; object constants
const INDIGOPLATEAUPOKECENTER1F_NURSE
const INDIGOPLATEAUPOKECENTER1F_CLERK
const INDIGOPLATEAUPOKECENTER1F_COOLTRAINER_M
const INDIGOPLATEAUPOKECENTER1F_SILVER
const INDIGOPLATEAUPOKECENTER1F_GRAMPS
const INDIGOPLATEAUPOKECENTER1F_ABRA
IndigoPlateauPokecenter1F_MapScripts:
db 1 ; scene scripts
scene_script .DummyScene ; SCENE_DEFAULT
db 1 ; callbacks
callback MAPCALLBACK_NEWMAP, .PrepareElite4
.DummyScene:
end
.PrepareElite4:
setmapscene WILLS_ROOM, SCENE_DEFAULT
setmapscene KOGAS_ROOM, SCENE_DEFAULT
setmapscene BRUNOS_ROOM, SCENE_DEFAULT
setmapscene KARENS_ROOM, SCENE_DEFAULT
setmapscene LANCES_ROOM, SCENE_DEFAULT
setmapscene HALL_OF_FAME, SCENE_DEFAULT
clearevent EVENT_WILLS_ROOM_ENTRANCE_CLOSED
clearevent EVENT_WILLS_ROOM_EXIT_OPEN
clearevent EVENT_KOGAS_ROOM_ENTRANCE_CLOSED
clearevent EVENT_KOGAS_ROOM_EXIT_OPEN
clearevent EVENT_BRUNOS_ROOM_ENTRANCE_CLOSED
clearevent EVENT_BRUNOS_ROOM_EXIT_OPEN
clearevent EVENT_KARENS_ROOM_ENTRANCE_CLOSED
clearevent EVENT_KARENS_ROOM_EXIT_OPEN
clearevent EVENT_LANCES_ROOM_ENTRANCE_CLOSED
clearevent EVENT_LANCES_ROOM_EXIT_OPEN
clearevent EVENT_BEAT_ELITE_4_WILL
clearevent EVENT_BEAT_ELITE_4_KOGA
clearevent EVENT_BEAT_ELITE_4_BRUNO
clearevent EVENT_BEAT_ELITE_4_KAREN
clearevent EVENT_BEAT_CHAMPION_LANCE
setevent EVENT_LANCES_ROOM_OAK_AND_MARY
return
PlateauRivalBattle1:
checkevent EVENT_BEAT_RIVAL_IN_MT_MOON
iffalse PlateauRivalScriptDone
checkflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
iftrue PlateauRivalScriptDone
readvar VAR_WEEKDAY
ifequal SUNDAY, PlateauRivalScriptDone
ifequal TUESDAY, PlateauRivalScriptDone
ifequal THURSDAY, PlateauRivalScriptDone
ifequal FRIDAY, PlateauRivalScriptDone
ifequal SATURDAY, PlateauRivalScriptDone
moveobject INDIGOPLATEAUPOKECENTER1F_SILVER, 17, 9
appear INDIGOPLATEAUPOKECENTER1F_SILVER
turnobject PLAYER, DOWN
showemote EMOTE_SHOCK, PLAYER, 15
special FadeOutMusic
pause 15
applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalMovement1
playmusic MUSIC_RIVAL_ENCOUNTER
turnobject PLAYER, RIGHT
sjump PlateauRivalBattleCommon
PlateauRivalBattle2:
checkevent EVENT_BEAT_RIVAL_IN_MT_MOON
iffalse PlateauRivalScriptDone
checkflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
iftrue PlateauRivalScriptDone
readvar VAR_WEEKDAY
ifequal SUNDAY, PlateauRivalScriptDone
ifequal TUESDAY, PlateauRivalScriptDone
ifequal THURSDAY, PlateauRivalScriptDone
ifequal FRIDAY, PlateauRivalScriptDone
ifequal SATURDAY, PlateauRivalScriptDone
appear INDIGOPLATEAUPOKECENTER1F_SILVER
turnobject PLAYER, DOWN
showemote EMOTE_SHOCK, PLAYER, 15
special FadeOutMusic
pause 15
applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalMovement2
playmusic MUSIC_RIVAL_ENCOUNTER
turnobject PLAYER, LEFT
PlateauRivalBattleCommon:
opentext
writetext PlateauRivalText1
waitbutton
closetext
setevent EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL
checkevent EVENT_GOT_TOTODILE_FROM_ELM
iftrue .Totodile
checkevent EVENT_GOT_CHIKORITA_FROM_ELM
iftrue .Chikorita
; Cyndaquil
winlosstext PlateauRivalWinText, PlateauRivalLoseText
setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER
loadtrainer RIVAL2, RIVAL2_2_TOTODILE
startbattle
dontrestartmapmusic
reloadmapafterbattle
sjump PlateauRivalPostBattle
.Totodile:
winlosstext PlateauRivalWinText, PlateauRivalLoseText
setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER
loadtrainer RIVAL2, RIVAL2_2_CHIKORITA
startbattle
dontrestartmapmusic
reloadmapafterbattle
sjump PlateauRivalPostBattle
.Chikorita:
winlosstext PlateauRivalWinText, PlateauRivalLoseText
setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER
loadtrainer RIVAL2, RIVAL2_2_CYNDAQUIL
startbattle
dontrestartmapmusic
reloadmapafterbattle
sjump PlateauRivalPostBattle
PlateauRivalPostBattle:
playmusic MUSIC_RIVAL_AFTER
opentext
writetext PlateauRivalText2
waitbutton
closetext
turnobject PLAYER, DOWN
applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalLeavesMovement
disappear INDIGOPLATEAUPOKECENTER1F_SILVER
setscene SCENE_DEFAULT
playmapmusic
setflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
PlateauRivalScriptDone:
end
IndigoPlateauPokecenter1FNurseScript:
jumpstd pokecenternurse
IndigoPlateauPokecenter1FClerkScript:
opentext
pokemart MARTTYPE_STANDARD, MART_INDIGO_PLATEAU
closetext
end
IndigoPlateauPokecenter1FCooltrainerMScript:
jumptextfaceplayer IndigoPlateauPokecenter1FCooltrainerMText
TeleportGuyScript:
faceplayer
opentext
writetext TeleportGuyText1
yesorno
iffalse .No
writetext TeleportGuyYesText
waitbutton
closetext
playsound SFX_WARP_TO
special FadeOutPalettes
waitsfx
warp NEW_BARK_TOWN, 13, 6
end
.No:
writetext TeleportGuyNoText
waitbutton
closetext
end
AbraScript:
opentext
writetext AbraText
cry ABRA
waitbutton
closetext
end
PlateauRivalMovement1:
step UP
step UP
step UP
step UP
step UP
turn_head LEFT
step_end
PlateauRivalMovement2:
step UP
step UP
step UP
step UP
step UP
turn_head RIGHT
step_end
PlateauRivalLeavesMovement:
step DOWN
step DOWN
step DOWN
step DOWN
step DOWN
step_end
IndigoPlateauPokecenter1FCooltrainerMText:
text "At the #MON"
line "LEAGUE, you'll get"
para "tested by the"
line "ELITE FOUR."
para "You have to beat"
line "them all. If you"
para "lose, you have to"
line "start all over!"
done
PlateauRivalText1:
text "Hold it."
para "You're going to"
line "take the #MON"
para "LEAGUE challenge"
line "now?"
para "That's not going"
line "to happen."
para "My super-well-"
line "trained #MON"
para "are going to pound"
line "you."
para "<PLAYER>!"
line "I challenge you!"
done
PlateauRivalWinText:
text "…"
para "OK--I lost…"
done
PlateauRivalText2:
text "…Darn… I still"
line "can't win…"
para "I… I have to think"
line "more about my"
cont "#MON…"
para "Humph! Try not to"
line "lose!"
done
PlateauRivalLoseText:
text "…"
para "Whew…"
line "With my partners,"
para "I'm going to be"
line "the CHAMPION!"
done
TeleportGuyText1:
text "Ah! You're chal-"
line "lenging the ELITE"
para "FOUR? Are you sure"
line "you're ready?"
para "If you need to"
line "train some more,"
para "my ABRA can help"
line "you."
para "It can TELEPORT"
line "you home."
para "Would you like to"
line "go home now?"
done
TeleportGuyYesText:
text "OK, OK. Picture"
line "your house in your"
cont "mind…"
done
TeleportGuyNoText:
text "OK, OK. The best"
line "of luck to you!"
done
AbraText:
text "ABRA: Aabra…"
done
IndigoPlateauPokecenter1F_MapEvents:
db 0, 0 ; filler
db 4 ; warp events
warp_event 5, 13, ROUTE_23, 1
warp_event 6, 13, ROUTE_23, 2
warp_event 0, 13, POKECENTER_2F, 1
warp_event 14, 3, WILLS_ROOM, 1
db 2 ; coord events
coord_event 16, 4, SCENE_DEFAULT, PlateauRivalBattle1
coord_event 17, 4, SCENE_DEFAULT, PlateauRivalBattle2
db 0 ; bg events
db 6 ; object events
object_event 3, 7, SPRITE_NURSE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, IndigoPlateauPokecenter1FNurseScript, -1
object_event 11, 7, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, IndigoPlateauPokecenter1FClerkScript, -1
object_event 11, 11, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_WANDER, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, IndigoPlateauPokecenter1FCooltrainerMScript, -1
object_event 16, 9, SPRITE_SILVER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL
object_event 1, 9, SPRITE_GRAMPS, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, TeleportGuyScript, EVENT_TELEPORT_GUY
object_event 0, 9, SPRITE_JYNX, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_SCRIPT, 0, AbraScript, EVENT_TELEPORT_GUY