tumbledemerald-legacy/data/maps/Route110_TrickHousePuzzle7/scripts.inc
2022-05-19 17:14:13 +00:00

393 lines
14 KiB
PHP

Route110_TrickHousePuzzle7_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, Route110_TrickHousePuzzle7_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHousePuzzle7_OnTransition
map_script MAP_SCRIPT_ON_LOAD, Route110_TrickHousePuzzle7_OnLoad
map_script MAP_SCRIPT_ON_FRAME_TABLE, Route110_TrickHousePuzzle7_OnFrame
.byte 0
@ Puzzle Room 7 in RSE uses whatever puzzle Mossdeep Gym uses
@ Because Mossdeep Gym was redesigned for Emerald, theres a good deal of leftover script from the old R/S puzzle
Route110_TrickHousePuzzle7_OnResume:
call Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles
end
Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles::
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOn
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOn
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOn
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOn
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOn
return
@ Leftover from R/S, none of the below metatile scripts are ever called
Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOn::
setmetatile 13, 17, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, FALSE
setmetatile 12, 16, METATILE_TrickHousePuzzle_Lever_On, TRUE
return
Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOn::
setmetatile 12, 13, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, FALSE
setmetatile 12, 11, METATILE_TrickHousePuzzle_Lever_On, TRUE
return
Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOn::
setmetatile 7, 12, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Up, FALSE
setmetatile 5, 10, METATILE_TrickHousePuzzle_Lever_On, TRUE
return
Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOn::
setmetatile 6, 6, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Right_Alt, FALSE
setmetatile 4, 4, METATILE_TrickHousePuzzle_Lever_On, TRUE
return
Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOn::
setmetatile 8, 4, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left, FALSE
setmetatile 7, 5, METATILE_TrickHousePuzzle_Lever_On, TRUE
return
Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOff::
setmetatile 13, 17, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Down, FALSE
setmetatile 12, 16, METATILE_TrickHousePuzzle_Lever_Off, TRUE
return
Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOff::
setmetatile 12, 13, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left, FALSE
setmetatile 12, 11, METATILE_TrickHousePuzzle_Lever_Off, TRUE
return
Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOff::
setmetatile 7, 12, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Down, FALSE
setmetatile 5, 10, METATILE_TrickHousePuzzle_Lever_Off, TRUE
return
Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOff::
setmetatile 6, 6, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Left_Alt, FALSE
setmetatile 4, 4, METATILE_TrickHousePuzzle_Lever_Off, TRUE
return
Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOff::
setmetatile 8, 4, METATILE_TrickHousePuzzle_Arrow_RedOnBlack_Right, FALSE
setmetatile 7, 5, METATILE_TrickHousePuzzle_Lever_Off, TRUE
return
Route110_TrickHousePuzzle7_OnTransition:
goto_if_eq VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1, Route110_TrickHousePuzzle7_EventScript_TeleportedTransition
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5
end
Route110_TrickHousePuzzle7_EventScript_TeleportedTransition::
end
Route110_TrickHousePuzzle7_OnLoad:
call_if_eq VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1, Route110_TrickHousePuzzle7_EventScript_UpdateSwitchMetatiles
end
Route110_TrickHousePuzzle7_OnFrame:
map_script_2 VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1, Route110_TrickHousePuzzle7_EventScript_ClearState2
.2byte 0
Route110_TrickHousePuzzle7_EventScript_ClearState2::
setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 0
end
Route110_TrickHousePuzzle7_EventScript_Scroll::
lockall
goto_if_eq VAR_TRICK_HOUSE_PUZZLE_7_STATE, 0, Route110_TrickHousePuzzle7_EventScript_FoundScroll
goto Route110_TrickHousePuzzle_EventScript_ReadScrollAgain
end
Route110_TrickHousePuzzle7_EventScript_FoundScroll::
setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE, 1
goto Route110_TrickHousePuzzle_EventScript_FoundScroll
end
@ Unused, leftover from R/S
Route110_TrickHousePuzzle7_EventScript_TeleportPad::
lockall
setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE_2, 1
warpteleport MAP_ROUTE110_TRICK_HOUSE_PUZZLE7, 3, 19
waitstate
releaseall
end
@ All the below switch scripts are unused leftover from R/S
Route110_TrickHousePuzzle7_EventScript_Switch1::
lockall
delay 32
call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOn
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_SetSwitch1MetatilesOff
special DrawWholeMapView
playse SE_CLICK
goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_SetSwitch1On
goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_SetSwitch1Off
end
Route110_TrickHousePuzzle7_EventScript_Switch2::
lockall
delay 32
call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOn
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_SetSwitch2MetatilesOff
special DrawWholeMapView
playse SE_CLICK
goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_SetSwitch2On
goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_SetSwitch2Off
end
Route110_TrickHousePuzzle7_EventScript_Switch3::
lockall
delay 32
call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOn
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_SetSwitch3MetatilesOff
special DrawWholeMapView
playse SE_CLICK
goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_SetSwitch3On
goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_SetSwitch3Off
end
Route110_TrickHousePuzzle7_EventScript_Switch4::
lockall
delay 32
call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOn
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_SetSwitch4MetatilesOff
special DrawWholeMapView
playse SE_CLICK
goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_SetSwitch4On
goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_SetSwitch4Off
end
Route110_TrickHousePuzzle7_EventScript_Switch5::
lockall
delay 32
call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOn
call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_SetSwitch5MetatilesOff
special DrawWholeMapView
playse SE_CLICK
goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_SetSwitch5On
goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_SetSwitch5Off
end
@ All the below switch scripts are unused leftover from R/S
Route110_TrickHousePuzzle7_EventScript_SetSwitch1On::
setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1
releaseall
end
Route110_TrickHousePuzzle7_EventScript_SetSwitch1Off::
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1
releaseall
end
Route110_TrickHousePuzzle7_EventScript_SetSwitch2On::
setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2
releaseall
end
Route110_TrickHousePuzzle7_EventScript_SetSwitch2Off::
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2
releaseall
end
Route110_TrickHousePuzzle7_EventScript_SetSwitch3On::
setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3
releaseall
end
Route110_TrickHousePuzzle7_EventScript_SetSwitch3Off::
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3
releaseall
end
Route110_TrickHousePuzzle7_EventScript_SetSwitch4On::
setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4
releaseall
end
Route110_TrickHousePuzzle7_EventScript_SetSwitch4Off::
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4
releaseall
end
Route110_TrickHousePuzzle7_EventScript_SetSwitch5On::
setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5
releaseall
end
Route110_TrickHousePuzzle7_EventScript_SetSwitch5Off::
clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5
releaseall
end
@ From here is where the new, actually used puzzle scripts begin
Route110_TrickHousePuzzle7_EventScript_YellowButton::
playse SE_SWITCH
waitse
playse SE_REPEL
initrotatingtilepuzzle TRUE
moverotatingtileobjects 0
waitmovement 0
turnrotatingtileobjects
waitmovement 0
freerotatingtilepuzzle
end
Route110_TrickHousePuzzle7_EventScript_BlueButton::
playse SE_SWITCH
waitse
playse SE_REPEL
initrotatingtilepuzzle TRUE
moverotatingtileobjects 1
waitmovement 0
turnrotatingtileobjects
waitmovement 0
freerotatingtilepuzzle
end
Route110_TrickHousePuzzle7_EventScript_GreenButton::
playse SE_SWITCH
waitse
playse SE_REPEL
initrotatingtilepuzzle TRUE
moverotatingtileobjects 2
waitmovement 0
turnrotatingtileobjects
waitmovement 0
freerotatingtilepuzzle
end
Route110_TrickHousePuzzle7_EventScript_PurpleButton::
playse SE_SWITCH
waitse
playse SE_REPEL
initrotatingtilepuzzle TRUE
moverotatingtileobjects 3
waitmovement 0
turnrotatingtileobjects
waitmovement 0
freerotatingtilepuzzle
end
@ Unused
Route110_TrickHousePuzzle7_EventScript_RedButton::
playse SE_SWITCH
waitse
playse SE_REPEL
initrotatingtilepuzzle TRUE
moverotatingtileobjects 4
waitmovement 0
turnrotatingtileobjects
waitmovement 0
freerotatingtilepuzzle
end
Route110_TrickHousePuzzle7_EventScript_Joshua::
trainerbattle_single TRAINER_JOSHUA, Route110_TrickHousePuzzle7_Text_JoshuaIntro, Route110_TrickHousePuzzle7_Text_JoshuaDefeat
msgbox Route110_TrickHousePuzzle7_Text_JoshuaPostBattle, MSGBOX_AUTOCLOSE
end
Route110_TrickHousePuzzle7_EventScript_Patricia::
trainerbattle_single TRAINER_PATRICIA, Route110_TrickHousePuzzle7_Text_PatriciaIntro, Route110_TrickHousePuzzle7_Text_PatriciaDefeat
msgbox Route110_TrickHousePuzzle7_Text_PatriciaPostBattle, MSGBOX_AUTOCLOSE
end
Route110_TrickHousePuzzle7_EventScript_Alexis::
trainerbattle_single TRAINER_ALEXIS, Route110_TrickHousePuzzle7_Text_AlexisIntro, Route110_TrickHousePuzzle7_Text_AlexisDefeat
msgbox Route110_TrickHousePuzzle7_Text_AlexisPostBattle, MSGBOX_AUTOCLOSE
end
Route110_TrickHousePuzzle7_EventScript_Mariela::
trainerbattle_single TRAINER_MARIELA, Route110_TrickHousePuzzle7_Text_MarielaIntro, Route110_TrickHousePuzzle7_Text_MarielaDefeat
msgbox Route110_TrickHousePuzzle7_Text_MarielaPostBattle, MSGBOX_AUTOCLOSE
end
Route110_TrickHousePuzzle7_EventScript_Alvaro::
trainerbattle_single TRAINER_ALVARO, Route110_TrickHousePuzzle7_Text_AlvaroIntro, Route110_TrickHousePuzzle7_Text_AlvaroDefeat
msgbox Route110_TrickHousePuzzle7_Text_AlvaroPostBattle, MSGBOX_AUTOCLOSE
end
Route110_TrickHousePuzzle7_EventScript_Everett::
trainerbattle_single TRAINER_EVERETT, Route110_TrickHousePuzzle7_Text_EverettIntro, Route110_TrickHousePuzzle7_Text_EverettDefeat
msgbox Route110_TrickHousePuzzle7_Text_EverettPostBattle, MSGBOX_AUTOCLOSE
end
Route110_TrickHousePuzzle7_EventScript_WroteSecretCodeLockOpened::
.string "{PLAYER} wrote down the secret code\n"
.string "on the door.\p"
.string "“TRICK MASTER is huggable.”\n"
.string "… … … … … … … …\p"
.string "The lock clicked open!$"
Route110_TrickHousePuzzle7_Text_JoshuaIntro:
.string "The TRICK MASTER always vanishes\n"
.string "like smoke. How does he do it?$"
Route110_TrickHousePuzzle7_Text_JoshuaDefeat:
.string "Aiyeeeh! You're much too strong!\n"
.string "How do you do it?$"
Route110_TrickHousePuzzle7_Text_JoshuaPostBattle:
.string "I wish I could appear and disappear as\n"
.string "if I were smoke, too.$"
Route110_TrickHousePuzzle7_Text_PatriciaIntro:
.string "Going around the same spot…\n"
.string "It begets ill fortune…$"
Route110_TrickHousePuzzle7_Text_PatriciaDefeat:
.string "Defeated!\n"
.string "It's a bad sign…$"
Route110_TrickHousePuzzle7_Text_PatriciaPostBattle:
.string "I've circled the same spot over ten\n"
.string "times now… It's ill fortune…$"
Route110_TrickHousePuzzle7_Text_AlexisIntro:
.string "Whoever wins will get through here\n"
.string "first. That's the feeling I get.$"
Route110_TrickHousePuzzle7_Text_AlexisDefeat:
.string "Oh!\n"
.string "Well, go ahead, then!$"
Route110_TrickHousePuzzle7_Text_AlexisPostBattle:
.string "You're solving all the puzzles in the\n"
.string "TRICK HOUSE. That's the feeling I get.$"
Route110_TrickHousePuzzle7_Text_MarielaIntro:
.string "Nufufufu, here at last!\n"
.string "Let's get right with it!$"
Route110_TrickHousePuzzle7_Text_MarielaDefeat:
.string "You're so casual about winning!$"
Route110_TrickHousePuzzle7_Text_MarielaPostBattle:
.string "Humph! I'm not upset!\n"
.string "Not me!$"
Route110_TrickHousePuzzle7_Text_AlvaroIntro:
.string "I ever so closely watched you coming!$"
Route110_TrickHousePuzzle7_Text_AlvaroDefeat:
.string "This outcome I didn't see coming…$"
Route110_TrickHousePuzzle7_Text_AlvaroPostBattle:
.string "Well, anyway, we both picked a weird\n"
.string "place to get acquainted.\p"
.string "As one weirdo to another,\n"
.string "let's do our best!$"
Route110_TrickHousePuzzle7_Text_EverettIntro:
.string "It's awfully cramped in here…$"
Route110_TrickHousePuzzle7_Text_EverettDefeat:
.string "Oh, yes, strong you are.$"
Route110_TrickHousePuzzle7_Text_EverettPostBattle:
.string "I was hoping to switch places with you\n"
.string "when I beat you, but…$"