pokeemerald/data/maps/BirthIsland_Exterior/scripts.inc

121 lines
3.8 KiB
PHP
Raw Normal View History

.set LOCALID_DEOXYS, 2
2021-07-05 19:54:43 +02:00
@ Note: LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK is a local id for this map used elsewhere. It's defined in event_objects.h
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, BirthIsland_Exterior_OnTransition
2019-10-31 22:00:37 +01:00
map_script MAP_SCRIPT_ON_RESUME, BirthIsland_Exterior_OnResume
map_script MAP_SCRIPT_ON_RETURN_TO_FIELD, BirthIsland_Exterior_OnReturnToField
2017-11-10 02:21:31 +01:00
.byte 0
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_OnReturnToField:
2019-10-31 22:00:37 +01:00
special SetDeoxysRockPalette
2017-11-10 02:21:31 +01:00
end
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_OnTransition:
2019-01-02 22:12:43 +01:00
setflag FLAG_MAP_SCRIPT_CHECKED_DEOXYS
setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL
2018-12-28 20:10:02 +01:00
setvar VAR_DEOXYS_ROCK_STEP_COUNT, 0
setvar VAR_DEOXYS_ROCK_LEVEL, 0
2019-10-31 22:00:37 +01:00
call_if_set FLAG_BATTLED_DEOXYS, BirthIsland_Exterior_EventScript_HideDeoxysAndPuzzle
call_if_unset FLAG_BATTLED_DEOXYS, BirthIsland_Exterior_EventScript_TryShowDeoxysPuzzle
2017-11-10 02:21:31 +01:00
end
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_EventScript_HideDeoxysAndPuzzle::
setflag FLAG_HIDE_DEOXYS
setflag FLAG_HIDE_BIRTH_ISLAND_DEOXYS_TRIANGLE
2017-11-10 02:21:31 +01:00
return
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_EventScript_TryShowDeoxysPuzzle::
2019-02-23 02:21:26 +01:00
goto_if_set FLAG_DEFEATED_DEOXYS, Common_EventScript_NopReturn
clearflag FLAG_HIDE_BIRTH_ISLAND_DEOXYS_TRIANGLE
2018-12-28 20:10:02 +01:00
clearflag FLAG_DEOXYS_ROCK_COMPLETE
2017-11-10 02:21:31 +01:00
return
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_OnResume:
2019-10-31 22:00:37 +01:00
call_if_set FLAG_SYS_CTRL_OBJ_DELETE, BirthIsland_Exterior_EventScript_TryRemoveDeoxys
2017-11-10 02:21:31 +01:00
end
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_EventScript_TryRemoveDeoxys::
specialvar VAR_RESULT, GetBattleOutcome
goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn
removeobject LOCALID_DEOXYS
2017-11-10 02:21:31 +01:00
return
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_EventScript_Triangle::
2017-11-10 02:21:31 +01:00
lock
faceplayer
2018-12-28 20:10:02 +01:00
special DoDeoxysRockInteraction
2017-11-10 02:21:31 +01:00
waitstate
switch VAR_RESULT
2023-02-01 17:43:21 +01:00
case DEOXYS_ROCK_FAILED, BirthIsland_Exterior_EventScript_Failed
case DEOXYS_ROCK_PROGRESSED, BirthIsland_Exterior_EventScript_Progressed
case DEOXYS_ROCK_SOLVED, BirthIsland_Exterior_EventScript_Deoxys
case DEOXYS_ROCK_COMPLETE, BirthIsland_Exterior_EventScript_Complete
2017-11-10 02:21:31 +01:00
end
2023-02-01 17:43:21 +01:00
@ The actual rock triangle movement is handled by DoDeoxysRockInteraction.
@ Unless the player has solved the puzzle and needs to encounter Deoxys,
@ there's nothing else the script needs to do.
BirthIsland_Exterior_EventScript_Failed::
2017-11-10 02:21:31 +01:00
release
end
2023-02-01 17:43:21 +01:00
BirthIsland_Exterior_EventScript_Progressed::
2017-11-10 02:21:31 +01:00
release
end
2023-02-01 17:43:21 +01:00
BirthIsland_Exterior_EventScript_Complete::
2017-11-10 02:21:31 +01:00
release
end
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_EventScript_Deoxys::
2017-11-10 02:21:31 +01:00
waitse
2021-07-05 19:54:43 +02:00
setfieldeffectargument 0, LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK
setfieldeffectargument 1, MAP_NUM(BIRTH_ISLAND_EXTERIOR)
setfieldeffectargument 2, MAP_GROUP(BIRTH_ISLAND_EXTERIOR)
dofieldeffect FLDEFF_DESTROY_DEOXYS_ROCK
2021-05-21 22:08:00 +02:00
playbgm MUS_RG_ENCOUNTER_DEOXYS, FALSE
waitfieldeffect FLDEFF_DESTROY_DEOXYS_ROCK
addobject LOCALID_DEOXYS
applymovement LOCALID_DEOXYS, BirthIsland_Exterior_Movement_DeoxysApproach
2017-11-10 02:21:31 +01:00
waitmovement 0
waitse
2021-11-07 18:58:11 +01:00
playmoncry SPECIES_DEOXYS, CRY_MODE_ENCOUNTER
2017-11-10 02:21:31 +01:00
delay 40
waitmoncry
setvar VAR_LAST_TALKED, LOCALID_DEOXYS
2022-01-11 08:16:25 +01:00
seteventmon SPECIES_DEOXYS, 30
2017-11-10 02:21:31 +01:00
setflag FLAG_SYS_CTRL_OBJ_DELETE
2017-11-28 23:02:09 +01:00
special BattleSetup_StartLegendaryBattle
2017-11-10 02:21:31 +01:00
waitstate
clearflag FLAG_SYS_CTRL_OBJ_DELETE
specialvar VAR_RESULT, GetBattleOutcome
goto_if_eq VAR_RESULT, B_OUTCOME_WON, BirthIsland_Exterior_EventScript_DefeatedDeoxys
goto_if_eq VAR_RESULT, B_OUTCOME_RAN, BirthIsland_Exterior_EventScript_RanFromDeoxys
goto_if_eq VAR_RESULT, B_OUTCOME_PLAYER_TELEPORTED, BirthIsland_Exterior_EventScript_RanFromDeoxys
2019-01-02 22:12:43 +01:00
setflag FLAG_BATTLED_DEOXYS
2017-11-10 02:21:31 +01:00
release
end
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_EventScript_DefeatedDeoxys::
2019-01-02 22:12:43 +01:00
setflag FLAG_DEFEATED_DEOXYS
2019-08-15 05:38:42 +02:00
setvar VAR_0x8004, SPECIES_DEOXYS
goto Common_EventScript_LegendaryFlewAway
2017-11-10 02:21:31 +01:00
end
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_EventScript_RanFromDeoxys::
2019-08-15 05:38:42 +02:00
setvar VAR_0x8004, SPECIES_DEOXYS
goto Common_EventScript_LegendaryFlewAway
2017-11-10 02:21:31 +01:00
end
2021-07-20 21:18:31 +02:00
BirthIsland_Exterior_Movement_DeoxysApproach:
walk_slow_down
walk_slow_down
walk_slow_down
walk_slow_down
walk_slow_down
walk_slow_down
walk_slow_down
2017-11-10 02:21:31 +01:00
step_end