pokefirered/data/maps/TwoIsland_House/scripts.inc
2022-06-24 21:10:48 -04:00

128 lines
4.0 KiB
C++

.equ CHECKED_MUSHROOMS, FLAG_TEMP_1
.equ HAS_BIG_MUSHROOM, FLAG_TEMP_2
.equ HAS_TINY_MUSHROOMS, FLAG_TEMP_3
.equ HAS_BOTH_MUSHROOMS, FLAG_TEMP_4
TwoIsland_House_MapScripts::
.byte 0
TwoIsland_House_EventScript_MoveManiac::
goto_if_questlog EventScript_ReleaseEnd
special QuestLog_CutRecording
lock
faceplayer
clearflag HAS_BIG_MUSHROOM
clearflag HAS_TINY_MUSHROOMS
clearflag HAS_BOTH_MUSHROOMS
goto_if_set CHECKED_MUSHROOMS, TwoIsland_House_EventScript_CheckPlayerHasMushrooms
msgbox TwoIsland_House_Text_TeachMonMoveForMushroom
setflag CHECKED_MUSHROOMS
goto TwoIsland_House_EventScript_CheckPlayerHasMushrooms
end
TwoIsland_House_EventScript_CheckPlayerHasMushrooms::
checkitem ITEM_BIG_MUSHROOM, 1
compare VAR_RESULT, TRUE
call_if_eq TwoIsland_House_EventScript_SetHasBigMushroom
checkitem ITEM_TINY_MUSHROOM, 2
compare VAR_RESULT, TRUE
call_if_eq TwoIsland_House_EventScript_SetHasTinyMushrooms
goto_if_set HAS_BIG_MUSHROOM, TwoIsland_House_EventScript_CheckAlsoHasTinyMushrooms
goto_if_set HAS_TINY_MUSHROOMS, TwoIsland_House_EventScript_CheckAlsoHasBigMushroom
goto TwoIsland_House_EventScript_EndTutorMove
end
TwoIsland_House_EventScript_CheckAlsoHasTinyMushrooms::
call_if_set HAS_TINY_MUSHROOMS, TwoIsland_House_EventScript_SetHasBothMushrooms
goto TwoIsland_House_EventScript_AskTutorMon
end
TwoIsland_House_EventScript_CheckAlsoHasBigMushroom::
call_if_set HAS_BIG_MUSHROOM, TwoIsland_House_EventScript_SetHasBothMushrooms
goto TwoIsland_House_EventScript_AskTutorMon
end
TwoIsland_House_EventScript_AskTutorMon::
msgbox TwoIsland_House_Text_WantMeToTeachMove, MSGBOX_YESNO
compare VAR_RESULT, NO
goto_if_eq TwoIsland_House_EventScript_EndTutorMove
goto TwoIsland_House_EventScript_ChooseMonToTutor
end
TwoIsland_House_EventScript_ChooseMonToTutor::
msgbox TwoIsland_House_Text_TutorWhichMon
special SelectMoveTutorMon
waitstate
compare VAR_0x8004, PARTY_SIZE
goto_if_ge TwoIsland_House_EventScript_EndTutorMove
special IsSelectedMonEgg
compare VAR_RESULT, TRUE
goto_if_eq TwoIsland_House_EventScript_CantTutorEgg
compare VAR_0x8005, 0
goto_if_eq TwoIsland_House_EventScript_NoMoveToTutorMon
goto TwoIsland_House_EventScript_ChooseMoveToTeach
end
TwoIsland_House_EventScript_ChooseMoveToTeach::
msgbox TwoIsland_House_Text_TeachWhichMove
special DisplayMoveTutorMenu
waitstate
compare VAR_0x8004, 0
goto_if_eq TwoIsland_House_EventScript_ChooseMonToTutor
goto_if_set HAS_BOTH_MUSHROOMS, TwoIsland_House_EventScript_ChooseMushroom
goto_if_set HAS_BIG_MUSHROOM, TwoIsland_House_EventScript_GiveBigMushroom
goto_if_set HAS_TINY_MUSHROOMS, TwoIsland_House_EventScript_GiveTinyMushrooms
end
TwoIsland_House_EventScript_GiveBigMushroom::
removeitem ITEM_BIG_MUSHROOM, 1
textcolor 3
msgbox TwoIsland_House_Text_HandedOverOneBigMushroom
call EventScript_RestorePrevTextColor
goto TwoIsland_House_EventScript_EndTutorMove
end
TwoIsland_House_EventScript_GiveTinyMushrooms::
removeitem ITEM_TINY_MUSHROOM, 2
textcolor 3
msgbox TwoIsland_House_Text_HandedOverTwoTinyMushrooms
call EventScript_RestorePrevTextColor
goto TwoIsland_House_EventScript_EndTutorMove
end
TwoIsland_House_EventScript_ChooseMushroom::
message TwoIsland_House_Text_IllNeedMushroomOrTwo
waitmessage
multichoice 0, 0, MULTICHOICE_MUSHROOMS, TRUE
switch VAR_RESULT
case 0, TwoIsland_House_EventScript_GiveTinyMushrooms
case 1, TwoIsland_House_EventScript_GiveBigMushroom
end
TwoIsland_House_EventScript_NoMoveToTutorMon::
msgbox TwoIsland_House_Text_NoMoveICanTeachThatMon
goto TwoIsland_House_EventScript_ChooseMonToTutor
end
TwoIsland_House_EventScript_CantTutorEgg::
msgbox TwoIsland_House_Text_CantTeachAnEgg
goto TwoIsland_House_EventScript_ChooseMonToTutor
end
TwoIsland_House_EventScript_EndTutorMove::
msgbox TwoIsland_House_Text_NeedMushroomOrTwoToLearnMove
release
end
TwoIsland_House_EventScript_SetHasBigMushroom::
setflag HAS_BIG_MUSHROOM
return
TwoIsland_House_EventScript_SetHasTinyMushrooms::
setflag HAS_TINY_MUSHROOMS
return
TwoIsland_House_EventScript_SetHasBothMushrooms::
setflag HAS_BOTH_MUSHROOMS
return