Route110_TrickHouseEntrance_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHouseEntrance_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, Route110_TrickHouseEntrance_OnFrame map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, Route110_TrickHouseEntrance_OnWarp .byte 0 @ State descriptions for VAR_TRICK_HOUSE_ENTRANCE_STATE @ 0: Trick Master is hiding @ 1: Trick Master has left at start of challenge @ 2: Trick Master ready to give normal reward from previous challenge (if bag was full) @ 3: Trick Master still making next puzzle @ 4: Finished final puzzle @ 5: Completed previous challenge @ 6: 'Trick Master' mechadoll ready to give Tent reward from final challenge (if bag was full) Route110_TrickHouseEntrance_OnTransition: setflag FLAG_LANDMARK_TRICK_HOUSE goto_if_eq VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR, 1, Route110_TrickHouseEntrance_EventScript_EnterFromCorridor goto_if_eq VAR_TRICK_HOUSE_PRIZE_PICKUP, 1, Route110_TrickHouseEntrance_EventScript_SetReadyToGiveReward goto_if_eq VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1, Route110_TrickHouseEntrance_EventScript_MoveTrickMasterToDoor call_if_eq VAR_TRICK_HOUSE_ENTRANCE_STATE, 5, Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle call_if_eq VAR_TRICK_HOUSE_ENTRANCE_STATE, 3, Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle call_if_eq VAR_TRICK_HOUSE_ENTRANCE_STATE, 0, Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle switch VAR_TRICK_HOUSE_ENTRANCE_STATE case 0, Route110_TrickHouseEntrance_EventScript_ReadyBeingWatchedTrigger case 1, Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched1 case 3, Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched2 case 4, Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched3 end Route110_TrickHouseEntrance_EventScript_SetReadyToGiveReward:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 goto_if_eq VAR_TRICK_HOUSE_LEVEL, 8, Route110_TrickHouseEntrance_EventScript_ReadyToGiveTentReward setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 2 end Route110_TrickHouseEntrance_EventScript_ReadyToGiveTentReward:: setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 6 end Route110_TrickHouseEntrance_EventScript_EnterFromCorridor:: setvar VAR_TRICK_HOUSE_ENTER_FROM_CORRIDOR, 0 setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 5 setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end Route110_TrickHouseEntrance_EventScript_CheckReadyForNextPuzzle:: setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 0 call_if_eq VAR_TRICK_HOUSE_LEVEL, 1, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle2 call_if_eq VAR_TRICK_HOUSE_LEVEL, 2, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle3 call_if_eq VAR_TRICK_HOUSE_LEVEL, 3, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle4 call_if_eq VAR_TRICK_HOUSE_LEVEL, 4, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle5 call_if_eq VAR_TRICK_HOUSE_LEVEL, 5, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle6 call_if_eq VAR_TRICK_HOUSE_LEVEL, 6, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle7 call_if_eq VAR_TRICK_HOUSE_LEVEL, 7, Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle8 call_if_eq VAR_TRICK_HOUSE_LEVEL, 8, Route110_TrickHouseEntrance_EventScript_FinishedPuzzles return Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle2:: call_if_unset FLAG_BADGE03_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle3:: call_if_unset FLAG_BADGE04_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle4:: call_if_unset FLAG_BADGE05_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle5:: call_if_unset FLAG_BADGE06_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle6:: call_if_unset FLAG_BADGE07_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle7:: call_if_unset FLAG_BADGE08_GET, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return Route110_TrickHouseEntrance_EventScript_CheckReadyForPuzzle8:: call_if_unset FLAG_SYS_GAME_CLEAR, Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle return Route110_TrickHouseEntrance_EventScript_FinishedPuzzles:: setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 4 return Route110_TrickHouseEntrance_EventScript_NotReadyForPuzzle:: setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 3 return Route110_TrickHouseEntrance_EventScript_MoveTrickMasterToDoor:: setobjectxyperm LOCALID_TRICK_MASTER, 5, 2 end Route110_TrickHouseEntrance_EventScript_ReadyBeingWatchedTrigger:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 0 end Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched1:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched2:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end Route110_TrickHouseEntrance_EventScript_SetNotBeingWatched3:: setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end Route110_TrickHouseEntrance_OnWarp: map_script_2 VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1, Route110_TrickHouseEntrance_EventScript_TrickMasterFound map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 0, Route110_TrickHouseEntrance_EventScript_SetTrickMasterHidingSpot map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 1, Route110_TrickHouseEntrance_EventScript_RemoveTrickMaster map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 2, Route110_TrickHouseEntrance_EventScript_SetTrickMasterFacingDoor map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 3, Route110_TrickHouseEntrance_EventScript_SetTrickMasterFacingDoor map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 4, Route110_TrickHouseEntrance_EventScript_RemoveTrickMaster map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 5, Route110_TrickHouseEntrance_EventScript_RemoveTrickMaster map_script_2 VAR_TRICK_HOUSE_ENTRANCE_STATE, 6, Route110_TrickHouseEntrance_EventScript_SetTrickMasterInFrontOfDoor .2byte 0 Route110_TrickHouseEntrance_EventScript_TrickMasterFound:: addobject LOCALID_TRICK_MASTER showobjectat LOCALID_TRICK_MASTER, MAP_ROUTE110_TRICK_HOUSE_ENTRANCE turnobject LOCALID_TRICK_MASTER, DIR_EAST turnobject LOCALID_PLAYER, DIR_WEST end Route110_TrickHouseEntrance_EventScript_SetTrickMasterHidingSpot:: addobject LOCALID_TRICK_MASTER hideobjectat LOCALID_TRICK_MASTER, MAP_ROUTE110_TRICK_HOUSE_ENTRANCE switch VAR_TRICK_HOUSE_LEVEL case 0, Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle1 case 1, Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle2 case 2, Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle3 case 3, Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle4 case 4, Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle5 case 5, Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle6 case 6, Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle7 case 7, Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle8 end Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle1:: setobjectxy LOCALID_TRICK_MASTER, 6, 3 end Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle2:: setobjectxy LOCALID_TRICK_MASTER, 11, 5 end Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle3:: setobjectxy LOCALID_TRICK_MASTER, 9, 1 end Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle4:: setobjectxy LOCALID_TRICK_MASTER, 3, 1 end Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle5:: setobjectxy LOCALID_TRICK_MASTER, 0, 5 end Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle6:: setobjectxy LOCALID_TRICK_MASTER, 11, 1 end Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle7:: setobjectxy LOCALID_TRICK_MASTER, 8, 1 end Route110_TrickHouseEntrance_EventScript_SetHidingSpotPuzzle8:: setobjectxy LOCALID_TRICK_MASTER, 4, 4 end Route110_TrickHouseEntrance_EventScript_RemoveTrickMaster:: removeobject LOCALID_TRICK_MASTER end Route110_TrickHouseEntrance_EventScript_SetTrickMasterFacingDoor:: addobject LOCALID_TRICK_MASTER setobjectxy LOCALID_TRICK_MASTER, 5, 2 turnobject LOCALID_TRICK_MASTER, DIR_NORTH end Route110_TrickHouseEntrance_EventScript_SetTrickMasterInFrontOfDoor:: addobject LOCALID_TRICK_MASTER setobjectxy LOCALID_TRICK_MASTER, 5, 2 turnobject LOCALID_TRICK_MASTER, DIR_SOUTH end Route110_TrickHouseEntrance_OnFrame: map_script_2 VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1, Route110_TrickHouseEntrance_EventScript_BeginChallenge .2byte 0 Route110_TrickHouseEntrance_EventScript_BeginChallenge:: lockall delay 20 call_if_eq VAR_TRICK_HOUSE_LEVEL, 0, Route110_TrickHouseEntrance_EventScript_MeetTrickMaster msgbox Route110_TrickHouseEntrance_Text_ComeToChallengeTrickHouse, MSGBOX_DEFAULT closemessage delay 20 applymovement LOCALID_TRICK_MASTER, Route110_TrickHouse_Movement_TrickMasterSpin waitmovement 0 playse SE_M_EXPLOSION applymovement LOCALID_TRICK_MASTER, Route110_TrickHouse_Movement_TrickMasterJumpAway waitmovement 0 removeobject LOCALID_TRICK_MASTER setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 1 setvar VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 0 releaseall end Route110_TrickHouseEntrance_EventScript_UnusedRelease:: releaseall end Route110_TrickHouseEntrance_EventScript_TrickMaster:: lockall switch VAR_TRICK_HOUSE_ENTRANCE_STATE case 0, Route110_TrickHouseEntrance_EventScript_FoundTrickMaster case 2, Route110_TrickHouseEntrance_EventScript_GiveReward case 3, Route110_TrickHouseEntrance_EventScript_StillMakingPuzzle case 6, Route110_TrickHouseEntrance_EventScript_MechadollReward end Route110_TrickHouseEntrance_EventScript_FoundTrickMaster:: playse SE_PIN applymovement LOCALID_PLAYER, Common_Movement_ExclamationMark waitmovement 0 applymovement LOCALID_PLAYER, Common_Movement_Delay48 waitmovement 0 call_if_eq VAR_TRICK_HOUSE_LEVEL, 0, Route110_TrickHouseEntrance_EventScript_FoundBeneathDesk call_if_eq VAR_TRICK_HOUSE_LEVEL, 1, Route110_TrickHouseEntrance_EventScript_FoundBehindTree call_if_eq VAR_TRICK_HOUSE_LEVEL, 2, Route110_TrickHouseEntrance_EventScript_FoundInDresser call_if_eq VAR_TRICK_HOUSE_LEVEL, 3, Route110_TrickHouseEntrance_EventScript_FoundBeyondWindow call_if_eq VAR_TRICK_HOUSE_LEVEL, 4, Route110_TrickHouseEntrance_EventScript_FoundInPlanter call_if_eq VAR_TRICK_HOUSE_LEVEL, 5, Route110_TrickHouseEntrance_EventScript_FoundInCupboard call_if_eq VAR_TRICK_HOUSE_LEVEL, 6, Route110_TrickHouseEntrance_EventScript_FoundBehindWindow call_if_eq VAR_TRICK_HOUSE_LEVEL, 7, Route110_TrickHouseEntrance_EventScript_FoundBeneathCushion closemessage setvar VAR_TRICK_HOUSE_FOUND_TRICK_MASTER, 1 warpsilent MAP_ROUTE110_TRICK_HOUSE_ENTRANCE, 6, 2 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_FoundBeneathDesk:: msgbox Route110_TrickHouseEntrance_Text_ConcealedBeneathDesk, MSGBOX_DEFAULT return Route110_TrickHouseEntrance_EventScript_FoundBehindTree:: msgbox Route110_TrickHouseEntrance_Text_ConcealedBehindTree, MSGBOX_DEFAULT return Route110_TrickHouseEntrance_EventScript_FoundInDresser:: msgbox Route110_TrickHouseEntrance_Text_ConcealedInDresser, MSGBOX_DEFAULT return Route110_TrickHouseEntrance_EventScript_FoundBeyondWindow:: msgbox Route110_TrickHouseEntrance_Text_ConealedBeyondWindow, MSGBOX_DEFAULT return Route110_TrickHouseEntrance_EventScript_FoundInPlanter:: msgbox Route110_TrickHouseEntrance_Text_ConcealedInPlanter, MSGBOX_DEFAULT return Route110_TrickHouseEntrance_EventScript_FoundInCupboard:: msgbox Route110_TrickHouseEntrance_Text_ConcealedInCupboard, MSGBOX_DEFAULT return Route110_TrickHouseEntrance_EventScript_FoundBehindWindow:: msgbox Route110_TrickHouseEntrance_Text_ConcealedBehindWindow, MSGBOX_DEFAULT return Route110_TrickHouseEntrance_EventScript_FoundBeneathCushion:: msgbox Route110_TrickHouseEntrance_Text_ConcealedBeneathCushion, MSGBOX_DEFAULT return Route110_TrickHouse_Movement_TrickMasterSpin: face_up delay_4 face_left delay_4 face_down delay_4 face_right delay_4 step_end Route110_TrickHouse_Movement_TrickMasterJumpAway: face_up disable_anim slide_up slide_up slide_up slide_up slide_up slide_up step_end Route110_TrickHouseEntrance_EventScript_MeetTrickMaster:: msgbox Route110_TrickHouseEntrance_Text_TheyCallMeTrickMaster, MSGBOX_DEFAULT return Route110_TrickHouseEntrance_EventScript_StillMakingPuzzle:: msgbox Route110_TrickHouseEntrance_Text_NextTimeUseThisTrick, MSGBOX_DEFAULT closemessage applymovement LOCALID_TRICK_MASTER, Common_Movement_FacePlayer waitmovement 0 playse SE_PIN applymovement LOCALID_TRICK_MASTER, Common_Movement_ExclamationMark waitmovement 0 applymovement LOCALID_TRICK_MASTER, Common_Movement_Delay48 waitmovement 0 msgbox Route110_TrickHouseEntrance_Text_InMidstOfDevisingNewChallenges, MSGBOX_DEFAULT applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 releaseall end Route110_TrickHouseEntrance_EventScript_GiveReward:: applymovement LOCALID_TRICK_MASTER, Common_Movement_FacePlayer waitmovement 0 msgbox Route110_TrickHouseEntrance_Text_YoureHereToAcceptReward, MSGBOX_DEFAULT goto_if_eq VAR_TRICK_HOUSE_LEVEL, 1, Route110_TrickHouseEntrance_EventScript_GivePuzzle1Reward goto_if_eq VAR_TRICK_HOUSE_LEVEL, 2, Route110_TrickHouseEntrance_EventScript_GivePuzzle2Reward goto_if_eq VAR_TRICK_HOUSE_LEVEL, 3, Route110_TrickHouseEntrance_EventScript_GivePuzzle3Reward goto_if_eq VAR_TRICK_HOUSE_LEVEL, 4, Route110_TrickHouseEntrance_EventScript_GivePuzzle4Reward goto_if_eq VAR_TRICK_HOUSE_LEVEL, 5, Route110_TrickHouseEntrance_EventScript_GivePuzzle5Reward goto_if_eq VAR_TRICK_HOUSE_LEVEL, 6, Route110_TrickHouseEntrance_EventScript_GivePuzzle6Reward goto_if_eq VAR_TRICK_HOUSE_LEVEL, 7, Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward end Route110_TrickHouseEntrance_EventScript_GivePuzzle1Reward:: giveitem ITEM_RARE_CANDY goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle2Reward:: giveitem ITEM_TIMER_BALL goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle3Reward:: giveitem ITEM_HARD_STONE goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle4Reward:: giveitem ITEM_SMOKE_BALL goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle5Reward:: giveitem ITEM_TM_TAUNT goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle6Reward:: giveitem ITEM_MAGNET goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GivePuzzle7Reward:: giveitem ITEM_PP_MAX goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_GotReward call_if_eq VAR_RESULT, FALSE, Common_EventScript_BagIsFull msgbox Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GotReward:: setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 3 applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 releaseall end Route110_TrickHouseEntrance_EventScript_MechadollReward:: applymovement LOCALID_TRICK_MASTER, Common_Movement_FacePlayer waitmovement 0 msgbox Route110_TrickHouseEntrance_Text_MechadollWhichTent, MSGBOX_DEFAULT call Route110_TrickHouseEntrance_EventScript_ChooseTent goto_if_eq VAR_RESULT, TRUE, Route110_TrickHouseEntrance_EventScript_ReceivedTent call_if_eq VAR_RESULT, FALSE, Common_EventScript_NoRoomForDecor msgbox Route110_TrickHouseEntrance_Text_PCFullAgain, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_ChooseTent:: multichoice 0, 0, MULTI_TENT, TRUE switch VAR_RESULT case 0, Route110_TrickHouseEntrance_EventScript_GiveRedTent goto Route110_TrickHouseEntrance_EventScript_GiveBlueTent Route110_TrickHouseEntrance_EventScript_GiveRedTent:: givedecoration DECOR_RED_TENT return Route110_TrickHouseEntrance_EventScript_GiveBlueTent:: givedecoration DECOR_BLUE_TENT return Route110_TrickHouseEntrance_EventScript_ReceivedTent:: msgbox Route110_TrickHouseEntrance_Text_ThenFarewell, MSGBOX_DEFAULT closemessage applymovement LOCALID_TRICK_MASTER, Route110_TrickHousePuzzle5_Movement_MechadollShake waitmovement 0 applymovement LOCALID_TRICK_MASTER, Route110_TrickHouse_Movement_TrickMasterSpin waitmovement 0 playse SE_M_EXPLOSION applymovement LOCALID_TRICK_MASTER, Route110_TrickHouse_Movement_TrickMasterJumpAway waitmovement 0 removeobject LOCALID_TRICK_MASTER setvar VAR_TRICK_HOUSE_PRIZE_PICKUP, 0 setvar VAR_TRICK_HOUSE_ENTRANCE_STATE, 5 releaseall end Route110_TrickHouseEntrance_EventScript_Door:: lockall switch VAR_TRICK_HOUSE_ENTRANCE_STATE case 0, Route110_TrickHouseEntrance_EventScript_ItsAScroll case 1, Route110_TrickHouseEntrance_EventScript_GoInHolePrompt case 4, Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote case 5, Route110_TrickHouseEntrance_EventScript_CheckLevelForMessage end Route110_TrickHouseEntrance_EventScript_ItsAScroll:: msgbox Route110_TrickHouseEntrance_Text_ItsAScroll, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_GoInHolePrompt:: msgbox Route110_TrickHouseEntrance_Text_GoInHoleBehindScroll, MSGBOX_YESNO closemessage goto_if_eq VAR_RESULT, YES, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom:: setmetatile 5, 1, METATILE_GenericBuilding_TrickHouse_Stairs_Down, FALSE special DrawWholeMapView delay 20 applymovement LOCALID_PLAYER, Common_Movement_WalkUp waitmovement 0 applymovement LOCALID_PLAYER, Route110_TrickHouseEntrance_Movement_EnterRoom waitmovement 0 switch VAR_TRICK_HOUSE_LEVEL case 0, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom1 case 1, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom2 case 2, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom3 case 3, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom4 case 4, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom5 case 5, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom6 case 6, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom7 case 7, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom8 end Route110_TrickHouseEntrance_Movement_EnterRoom: set_invisible step_end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom1:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE1, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom2:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE2, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom3:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE3, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom4:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE4, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom5:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE5, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom6:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE6, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom7:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE7, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom8:: warp MAP_ROUTE110_TRICK_HOUSE_PUZZLE8, 0, 21 waitstate releaseall end Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote:: msgbox Route110_TrickHouseEntrance_Text_LeavingOnJourneyNote, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_CheckLevelForMessage:: goto_if_eq VAR_TRICK_HOUSE_LEVEL, 8, Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote2 msgbox Route110_TrickHouseEntrance_Text_ItsAScroll, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_LeftOnJourneyNote2:: msgbox Route110_TrickHouseEntrance_Text_LeavingOnJourneyNote, MSGBOX_DEFAULT releaseall end Route110_TrickHousePuzzle_EventScript_Door:: lockall switch VAR_TRICK_HOUSE_LEVEL case 0, Route110_TrickHousePuzzle1_EventScript_Door case 1, Route110_TrickHousePuzzle2_EventScript_Door case 2, Route110_TrickHousePuzzle3_EventScript_Door case 3, Route110_TrickHousePuzzle4_EventScript_Door case 4, Route110_TrickHousePuzzle5_EventScript_Door case 5, Route110_TrickHousePuzzle6_EventScript_Door case 6, Route110_TrickHousePuzzle7_EventScript_Door case 7, Route110_TrickHousePuzzle8_EventScript_Door end Route110_TrickHousePuzzle1_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_1_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle1_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_1_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end Route110_TrickHousePuzzle2_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_2_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle2_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_2_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end Route110_TrickHousePuzzle3_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_3_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle3_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_3_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end Route110_TrickHousePuzzle4_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_4_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle4_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_4_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end Route110_TrickHousePuzzle5_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_5_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle5_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_5_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end Route110_TrickHousePuzzle6_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_6_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle6_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_6_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end Route110_TrickHousePuzzle7_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_7_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle7_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end Route110_TrickHousePuzzle8_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_8_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked msgbox Route110_TrickHousePuzzle8_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_8_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE special DrawWholeMapView releaseall end Route110_TrickHousePuzzle_EventScript_DoorLocked:: msgbox Route110_TrickHouseEntrance_Text_DoorLockedWriteSecretCodeHere, MSGBOX_DEFAULT releaseall end Route110_TrickHousePuzzle_EventScript_ReadScrollAgain:: msgbox Route110_TrickHousePuzzle_Text_SecretCodeWrittenOnIt, MSGBOX_DEFAULT releaseall end Route110_TrickHousePuzzle_EventScript_FoundScroll:: playfanfare MUS_OBTAIN_ITEM message Route110_TrickHousePuzzle_Text_FoundAScroll waitfanfare msgbox Route110_TrickHousePuzzle_Text_MemorizedSecretCode, MSGBOX_DEFAULT releaseall end Route110_TrickHouseEntrance_EventScript_TrickMasterHiding:: lockall msgbox Route110_TrickHouseEntrance_Text_YoureBeingWatched, MSGBOX_DEFAULT releaseall call_if_eq VAR_TRICK_HOUSE_LEVEL, 0, Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle1 call_if_eq VAR_TRICK_HOUSE_LEVEL, 1, Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle2 call_if_eq VAR_TRICK_HOUSE_LEVEL, 2, Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle3 setvar VAR_TRICK_HOUSE_BEING_WATCHED_STATE, 1 end Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle1:: setvar VAR_0x8004, 6 @ x setvar VAR_0x8005, 3 @ y call Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle return Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle2:: setvar VAR_0x8004, 11 @ x setvar VAR_0x8005, 5 @ y call Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle return Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle3:: setvar VAR_0x8004, 9 @ x setvar VAR_0x8005, 2 @ y call Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle return Route110_TrickHouseEntrance_EventScript_DoHidingSpotSparkle:: setvar VAR_0x8006, 0 dofieldeffectsparkle VAR_0x8004, VAR_0x8005, VAR_0x8006 waitfieldeffect FLDEFF_SPARKLE delay 10 return Route110_TrickHouseEntrance_Text_YoureBeingWatched: .string "你被盯上了……$" Route110_TrickHouseEntrance_Text_ConcealedBeneathDesk: .string "哈?咕……\p你怎么看出来我藏在\n桌子底下?眼睛真尖!$" Route110_TrickHouseEntrance_Text_ConcealedBehindTree: .string "哈?咕……\p你怎么看出来我藏在\n树后面?眼睛真尖!$" Route110_TrickHouseEntrance_Text_ConcealedInDresser: .string "哈?咕……\p你怎么看出来我藏在\n柜子里面?眼睛真尖!$" Route110_TrickHouseEntrance_Text_ConealedBeyondWindow: .string "哈?咕……\p你怎么看出来我藏在\n窗户后面?眼睛真尖!$" Route110_TrickHouseEntrance_Text_ConcealedInPlanter: .string "哈?咕……\p你怎么看出来我藏在\n花盆里面?眼睛真尖!$" Route110_TrickHouseEntrance_Text_ConcealedInCupboard: .string "哈?咕……\p你怎么看出来我藏在\n碗柜里面?眼睛真尖!$" Route110_TrickHouseEntrance_Text_ConcealedBehindWindow: .string "哈?咕……\p你怎么看出来我藏在\n窗户后面?眼睛真尖!$" Route110_TrickHouseEntrance_Text_ConcealedBeneathCushion: .string "哈?咕……\p你怎么看出来我藏在\n垫子下面?眼睛真尖!$" Route110_TrickHouseEntrance_Text_TheyCallMeTrickMaster: .string "看!\p我是丰缘地区\n最伟大的谜题之人!\l人称……\p戏法大王!\n哇哈哈哈!很高兴见到你!$" Route110_TrickHouseEntrance_Text_ComeToChallengeTrickHouse: .string "你想挑战我的\n戏法屋,对吗?\p所以你才会来这里,对吗?\n当然没错!\p我接受你的挑战!\p现在就从那边的卷轴进去,\n开始挑战吧!\p我会在后面等着你!$" Route110_TrickHouseEntrance_Text_ItsAScroll: .string "是卷轴。$" Route110_TrickHouseEntrance_Text_GoInHoleBehindScroll: .string "卷轴后面有一个大洞!\p要进去吗?$" Route110_TrickHouseEntrance_Text_LeavingOnJourneyNote: .string "卷轴上贴着一张纸条……\p“外出旅行。不要来找我。\n戏法大王”$" Route110_TrickHouseEntrance_Text_NextTimeUseThisTrick: .string "下次,我就要这样,\n这样,再那样……\p噢呵呵呵……就算对我来说,\n困难的程度也是非常华丽的。$" Route110_TrickHouseEntrance_Text_InMidstOfDevisingNewChallenges: .string "哈?什么?!\n啊,是你!\p我正在设计\n新的谜题!\p给我些时间构思一下\n不过分吧?\l你不会发牢骚的吧?\l稍后再回来吧!$" Route110_TrickHouseEntrance_Text_YoureHereToAcceptReward: .string "啊,是你!你是来拿之前的\n奖品的,对吧?\l当然,当然!\p给!\n我马上就给你!$" Route110_TrickHouseEntrance_Text_DidYouNotComeToClaimReward: .string "啊?\n你不是来拿奖励的吗?$" Route110_TrickHouseEntrance_Text_MechadollWhichTent: .string "我是机械娃娃5!\n不带走奖励,\l跟不上戏法大王的脚步。\p红帐篷和蓝帐篷,\n你更喜欢哪一个?$" Route110_TrickHouseEntrance_Text_ThenFarewell: .string "那么,再见。$" Route110_TrickHouseEntrance_Text_PCFullAgain: .string "电脑状态:满。\n你很麻烦。$" Route110_TrickHousePuzzle_Text_FoundAScroll: .string "{PLAYER}发现卷轴。$" Route110_TrickHousePuzzle_Text_MemorizedSecretCode: .string "{PLAYER}记下了\n卷轴上的字。$" Route110_TrickHousePuzzle_Text_SecretCodeWrittenOnIt: .string "上面写有密码。$" Route110_TrickHouseEntrance_Text_DoorLockedWriteSecretCodeHere: .string "门锁着。\p……仔细一看,上面写着:\n“在此写下密码。”$"