document remainder of secret_base scripts, delete unneeded scripts.incs
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
#include "constants/map_scripts.h"
|
||||
#include "constants/maps.h"
|
||||
#include "constants/moves.h"
|
||||
#include "constants/secret_bases.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/trainers.h"
|
||||
@@ -419,33 +420,7 @@ gStdScripts_End:: @ 81DC2CC
|
||||
.include "data/maps/TerraCave_End/scripts.inc"
|
||||
.include "data/maps/AlteringCave/scripts.inc"
|
||||
.include "data/maps/MeteorFalls_StevensCave/scripts.inc"
|
||||
.include "data/maps/SecretBase_BlueCave1/scripts.inc"
|
||||
.include "data/maps/SecretBase_BlueCave2/scripts.inc"
|
||||
.include "data/maps/SecretBase_BlueCave3/scripts.inc"
|
||||
.include "data/maps/SecretBase_BlueCave4/scripts.inc"
|
||||
.include "data/maps/SecretBase_BrownCave1/scripts.inc"
|
||||
.include "data/maps/SecretBase_BrownCave2/scripts.inc"
|
||||
.include "data/maps/SecretBase_BrownCave3/scripts.inc"
|
||||
.include "data/maps/SecretBase_BrownCave4/scripts.inc"
|
||||
.include "data/maps/SecretBase_RedCave1/scripts.inc"
|
||||
.include "data/maps/SecretBase_RedCave2/scripts.inc"
|
||||
.include "data/maps/SecretBase_RedCave3/scripts.inc"
|
||||
.include "data/maps/SecretBase_RedCave4/scripts.inc"
|
||||
.include "data/maps/SecretBase_Shrub1/scripts.inc"
|
||||
.include "data/maps/SecretBase_Shrub2/scripts.inc"
|
||||
.include "data/maps/SecretBase_Shrub3/scripts.inc"
|
||||
.include "data/maps/SecretBase_Shrub4/scripts.inc"
|
||||
.include "data/maps/SecretBase_Tree1/scripts.inc"
|
||||
.include "data/maps/SecretBase_Tree2/scripts.inc"
|
||||
.include "data/maps/SecretBase_Tree3/scripts.inc"
|
||||
.include "data/maps/SecretBase_Tree4/scripts.inc"
|
||||
.include "data/maps/SecretBase_YellowCave1/scripts.inc"
|
||||
.include "data/maps/SecretBase_YellowCave2/scripts.inc"
|
||||
.include "data/maps/SecretBase_YellowCave3/scripts.inc"
|
||||
.include "data/maps/SecretBase_YellowCave4/scripts.inc"
|
||||
|
||||
.include "data/scripts/secret_base_1.inc"
|
||||
|
||||
.include "data/scripts/shared_secret_base.inc"
|
||||
.include "data/maps/SingleBattleColosseum/scripts.inc"
|
||||
.include "data/maps/TradeCenter/scripts.inc"
|
||||
.include "data/maps/RecordCorner/scripts.inc"
|
||||
@@ -3128,7 +3103,7 @@ EventScript_GotoTrainerScript:: @ 82742F6
|
||||
end
|
||||
|
||||
.include "data/scripts/berry_tree.inc"
|
||||
.include "data/scripts/secret_base_2.inc"
|
||||
.include "data/scripts/secret_base.inc"
|
||||
.include "data/scripts/cable_club.inc"
|
||||
.include "data/scripts/contest_hall.inc"
|
||||
.include "data/text/contest_strings.inc"
|
||||
|
||||
@@ -10,7 +10,7 @@ LittlerootTown_BrendansHouse_2F_MapScript1_1F83EE: @ 81F83EE
|
||||
call_if_ge LittlerootTown_BrendansHouse_2F_EventScript_1F841A
|
||||
compare VAR_LITTLEROOT_INTRO_STATE, 4
|
||||
call_if_eq LittlerootTown_BrendansHouse_2F_EventScript_2926FE
|
||||
call LittlerootTown_BrendansHouse_2F_EventScript_275CE1
|
||||
call SecretBase_EventScript_SetDecorationFlags
|
||||
setvar VAR_SECRET_BASE_INITIALIZED, 0
|
||||
end
|
||||
|
||||
@@ -50,7 +50,7 @@ LittlerootTown_BrendansHouse_2F_MapScript2_1F846A: @ 81F846A
|
||||
LittlerootTown_BrendansHouse_2F_EventScript_1F8474:: @ 81F8474
|
||||
checkplayergender
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq EventScript_275D0C
|
||||
goto_if_eq SecretBase_EventScript_InitDecorations
|
||||
end
|
||||
|
||||
LittlerootTown_BrendansHouse_2F_EventScript_1F8481:: @ 81F8481
|
||||
|
||||
@@ -10,7 +10,7 @@ LittlerootTown_MaysHouse_2F_MapScript1_1F92A1: @ 81F92A1
|
||||
call_if_ge LittlerootTown_MaysHouse_2F_EventScript_1F92CD
|
||||
compare VAR_LITTLEROOT_INTRO_STATE, 4
|
||||
call_if_eq LittlerootTown_MaysHouse_2F_EventScript_2926FE
|
||||
call LittlerootTown_MaysHouse_2F_EventScript_275CE1
|
||||
call SecretBase_EventScript_SetDecorationFlags
|
||||
setvar VAR_SECRET_BASE_INITIALIZED, 0
|
||||
end
|
||||
|
||||
@@ -51,7 +51,7 @@ LittlerootTown_MaysHouse_2F_MapScript2_1F931D: @ 81F931D
|
||||
LittlerootTown_MaysHouse_2F_EventScript_1F9327:: @ 81F9327
|
||||
checkplayergender
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq EventScript_275D0C
|
||||
goto_if_eq SecretBase_EventScript_InitDecorations
|
||||
end
|
||||
|
||||
LittlerootTown_MaysHouse_2F_EventScript_1F9334:: @ 81F9334
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_BlueCave1_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_BlueCave2_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_BlueCave3_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_BlueCave4_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_BrownCave1_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_BrownCave2_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_BrownCave3_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_BrownCave4_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_RedCave1_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_RedCave2_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_RedCave3_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_RedCave4_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_Shrub1_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_Shrub2_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_Shrub3_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_Shrub4_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_Tree1_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_Tree2_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_Tree3_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_Tree4_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_YellowCave1_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_YellowCave2_MapScripts:: @ 823B483
|
||||
@@ -1 +0,0 @@
|
||||
SecretBase_YellowCave3_MapScripts:: @ 823B483
|
||||
@@ -1,24 +0,0 @@
|
||||
SecretBase_YellowCave4_MapScripts:: @ 823B483
|
||||
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SecretBase_RedCave1_MapScript2_23B498
|
||||
map_script MAP_SCRIPT_ON_TRANSITION, SecretBase_RedCave1_OnTransition
|
||||
map_script MAP_SCRIPT_ON_FRAME_TABLE, SecretBase_RedCave1_MapScript2_23B4AE
|
||||
map_script MAP_SCRIPT_ON_RESUME, SecretBase_RedCave1_MapScript1_23B4B8
|
||||
.byte 0
|
||||
|
||||
SecretBase_RedCave1_MapScript2_23B498: @ 823B498
|
||||
map_script_2 VAR_SECRET_BASE_INITIALIZED, 0, EventScript_275D0C
|
||||
.2byte 0
|
||||
|
||||
SecretBase_RedCave1_OnTransition: @ 823B4A2
|
||||
call SecretBase_RedCave1_EventScript_275CE1
|
||||
special SetSecretBaseOwnerGfxId
|
||||
special sub_80EB1AC
|
||||
end
|
||||
|
||||
SecretBase_RedCave1_MapScript2_23B4AE: @ 823B4AE
|
||||
map_script_2 VAR_INIT_SECRET_BASE, 0, SecretBase_RedCave1_EventScript_275B81
|
||||
.2byte 0
|
||||
|
||||
SecretBase_RedCave1_MapScript1_23B4B8: @ 823B4B8
|
||||
setstepcallback 6
|
||||
end
|
||||
@@ -11,7 +11,7 @@ EventScript_CutTree:: @ 82906BB
|
||||
msgbox Text_WantToCut, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq EventScript_CancelCut
|
||||
msgbox Text_MonUsedHM, MSGBOX_DEFAULT
|
||||
msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
dofieldeffect FLDEFF_USE_CUT_ON_TREE
|
||||
waitstate
|
||||
@@ -51,7 +51,7 @@ Text_WantToCut: @ 829072E
|
||||
.string "CUT down!\p"
|
||||
.string "Would you like to CUT it?$"
|
||||
|
||||
Text_MonUsedHM: @ 8290771
|
||||
Text_MonUsedFieldMove: @ 8290771
|
||||
.string "{STR_VAR_1} used {STR_VAR_2}!$"
|
||||
|
||||
Text_CantCut: @ 829077D
|
||||
@@ -70,7 +70,7 @@ EventScript_RockSmash:: @ 82907A6
|
||||
msgbox Text_WantToSmash, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq EventScript_CancelSmash
|
||||
msgbox Text_MonUsedHM, MSGBOX_DEFAULT
|
||||
msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
dofieldeffect FLDEFF_USE_ROCK_SMASH
|
||||
waitstate
|
||||
|
||||
813
data/scripts/secret_base.inc
Normal file
813
data/scripts/secret_base.inc
Normal file
@@ -0,0 +1,813 @@
|
||||
SecretBase_Text_TreeCanBeClimbed: @ 8274746
|
||||
.string "If some vines drop down, this tree can\n"
|
||||
.string "be climbed.$"
|
||||
|
||||
SecretBase_Text_TreeUseSecretPower: @ 8274779
|
||||
.string "If some vines drop down, this tree can\n"
|
||||
.string "be climbed.\p"
|
||||
.string "Use the SECRET POWER?$"
|
||||
|
||||
SecretBase_Text_VineDroppedDown: @ 82747C2
|
||||
.string "A thick vine dropped down!$"
|
||||
|
||||
SecretBase_Text_ClumpOfGrass: @ 82747DD
|
||||
.string "If this clump of grass can be moved,\n"
|
||||
.string "it might be possible to go inside.$"
|
||||
|
||||
SecretBase_Text_ClumpUseSecretPower: @ 8274825
|
||||
.string "If this clump of grass can be moved,\n"
|
||||
.string "it might be possible to go inside.\p"
|
||||
.string "Use the SECRET POWER?$"
|
||||
|
||||
SecretBase_Text_DiscoveredSmallEntrance: @ 8274883
|
||||
.string "Discovered a small entrance!$"
|
||||
|
||||
.include "data/text/secret_base_trainers.inc"
|
||||
|
||||
SecretBase_EventScript_CheckEntrance:: @ 82759F1
|
||||
special GetSecretBaseTypeInFrontOfPlayer
|
||||
special CheckPlayerHasSecretBase
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_AlreadyHasSecretBase
|
||||
checkpartymove MOVE_SECRET_POWER
|
||||
setfieldeffectargument 0, VAR_RESULT
|
||||
buffermovename 1, MOVE_SECRET_POWER
|
||||
compare VAR_0x8007, SECRET_BASE_RED_CAVE
|
||||
goto_if_eq SecretBase_EventScript_Cave
|
||||
compare VAR_0x8007, SECRET_BASE_BROWN_CAVE
|
||||
goto_if_eq SecretBase_EventScript_Cave
|
||||
compare VAR_0x8007, SECRET_BASE_BLUE_CAVE
|
||||
goto_if_eq SecretBase_EventScript_Cave
|
||||
compare VAR_0x8007, SECRET_BASE_YELLOW_CAVE
|
||||
goto_if_eq SecretBase_EventScript_Cave
|
||||
compare VAR_0x8007, SECRET_BASE_TREE
|
||||
goto_if_eq SecretBase_EventScript_Tree
|
||||
compare VAR_0x8007, SECRET_BASE_SHRUB
|
||||
goto_if_eq SecretBase_EventScript_Shrub
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Cave:: @ 8275A50
|
||||
lockall
|
||||
compare VAR_RESULT, PARTY_SIZE
|
||||
goto_if_eq SecretBase_EventScript_CaveNoSecretPower
|
||||
bufferpartymonnick 0, VAR_RESULT
|
||||
msgbox SecretBase_Text_IndentUseSecretPower, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_CancelOnEntrance
|
||||
msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
dofieldeffect FLDEFF_USE_SECRET_POWER_CAVE
|
||||
waitstate
|
||||
goto SecretBase_EventScript_CaveEnter
|
||||
end
|
||||
|
||||
SecretBase_EventScript_CaveUseSecretPower:: @ 8275A86
|
||||
lockall
|
||||
dofieldeffect FLDEFF_USE_SECRET_POWER_CAVE
|
||||
waitstate
|
||||
goto SecretBase_EventScript_CaveEnter
|
||||
end
|
||||
|
||||
SecretBase_EventScript_CaveNoSecretPower:: @ 8275A91
|
||||
msgbox SecretBase_Text_SmallIndentInWall, MSGBOX_DEFAULT
|
||||
releaseall
|
||||
end
|
||||
|
||||
SecretBase_EventScript_CaveEnter:: @ 8275A9B
|
||||
msgbox SecretBase_Text_DiscoveredSmallCavern, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_InitSecretBase
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Tree:: @ 8275AA9
|
||||
lockall
|
||||
compare VAR_RESULT, PARTY_SIZE
|
||||
goto_if_eq SecretBase_EventScript_TreeNoSecretPower
|
||||
bufferpartymonnick 0, VAR_RESULT
|
||||
msgbox SecretBase_Text_TreeUseSecretPower, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_CancelOnEntrance
|
||||
msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
dofieldeffect FLDEFF_USE_SECRET_POWER_TREE
|
||||
waitstate
|
||||
goto SecretBase_EventScript_TreeEnter
|
||||
end
|
||||
|
||||
SecretBase_EventScript_TreeUseSecretPower:: @ 8275ADF
|
||||
lockall
|
||||
dofieldeffect FLDEFF_USE_SECRET_POWER_TREE
|
||||
waitstate
|
||||
goto SecretBase_EventScript_TreeEnter
|
||||
end
|
||||
|
||||
SecretBase_EventScript_TreeNoSecretPower:: @ 8275AEA
|
||||
msgbox SecretBase_Text_TreeCanBeClimbed, MSGBOX_DEFAULT
|
||||
releaseall
|
||||
end
|
||||
|
||||
SecretBase_EventScript_TreeEnter:: @ 8275AF4
|
||||
msgbox SecretBase_Text_VineDroppedDown, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_InitSecretBase
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Shrub:: @ 8275B02
|
||||
lockall
|
||||
compare VAR_RESULT, PARTY_SIZE
|
||||
goto_if_eq SecretBase_EventScript_ShrubNoSecretPower
|
||||
bufferpartymonnick 0, VAR_RESULT
|
||||
msgbox SecretBase_Text_ClumpUseSecretPower, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_CancelOnEntrance
|
||||
msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
dofieldeffect FLDEFF_USE_SECRET_POWER_SHRUB
|
||||
waitstate
|
||||
goto SecretBase_EventScript_ShrubEnter
|
||||
end
|
||||
|
||||
SecretBase_EventScript_ShrubUseSecretPower:: @ 8275B38
|
||||
lockall
|
||||
dofieldeffect FLDEFF_USE_SECRET_POWER_SHRUB
|
||||
waitstate
|
||||
goto SecretBase_EventScript_ShrubEnter
|
||||
end
|
||||
|
||||
SecretBase_EventScript_ShrubNoSecretPower:: @ 8275B43
|
||||
msgbox SecretBase_Text_ClumpOfGrass, MSGBOX_DEFAULT
|
||||
releaseall
|
||||
end
|
||||
|
||||
SecretBase_EventScript_ShrubEnter:: @ 8275B4D
|
||||
msgbox SecretBase_Text_DiscoveredSmallEntrance, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_InitSecretBase
|
||||
end
|
||||
|
||||
SecretBase_EventScript_InitSecretBase:: @ 8275B5B
|
||||
closemessage
|
||||
playse SE_KAIDAN
|
||||
setvar VAR_INIT_SECRET_BASE, 0
|
||||
setflag FLAG_DECORATION_0
|
||||
special SetPlayerSecretBase
|
||||
special EnterSecretBase
|
||||
setvar VAR_0x8004, 0
|
||||
setvar VAR_0x8005, 0
|
||||
special InitSecretBaseDecorationSprites
|
||||
setvar VAR_SECRET_BASE_INITIALIZED, 1
|
||||
waitstate
|
||||
end
|
||||
|
||||
SecretBase_EventScript_FirstEntrance:: @ 8275B81
|
||||
applymovement EVENT_OBJ_ID_PLAYER, SecretBase_Movement_275BB4
|
||||
waitmovement 0
|
||||
setvar VAR_INIT_SECRET_BASE, 1
|
||||
msgbox SecretBase_Text_WantToMakeYourSecretBaseHere, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_SetAsBase
|
||||
closemessage
|
||||
playse SE_KAIDAN
|
||||
special ClearAndLeaveSecretBase
|
||||
end
|
||||
|
||||
SecretBase_EventScript_SetAsBase:: @ 8275BAB
|
||||
closemessage
|
||||
setflag FLAG_RECEIVED_SECRET_POWER
|
||||
special EnterNewlyCreatedSecretBase
|
||||
waitstate
|
||||
end
|
||||
|
||||
SecretBase_Movement_275BB4: @ 8275BB4
|
||||
walk_up
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
SecretBase_EventScript_Enter:: @ 8275BB7
|
||||
lockall
|
||||
setvar VAR_INIT_SECRET_BASE, 1
|
||||
playse SE_KAIDAN
|
||||
special IsCurSecretBaseOwnedByAnotherPlayer
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_EnterPlayersBase
|
||||
clearflag FLAG_DECORATION_0
|
||||
special EnterSecretBase
|
||||
setvar VAR_SECRET_BASE_INITIALIZED, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
SecretBase_EventScript_EnterPlayersBase:: @ 8275BDB
|
||||
setflag FLAG_DECORATION_0
|
||||
special EnterSecretBase
|
||||
setvar VAR_SECRET_BASE_INITIALIZED, 0
|
||||
waitstate
|
||||
end
|
||||
|
||||
SecretBase_EventScript_AlreadyHasSecretBase:: @ 8275BE8
|
||||
checkpartymove MOVE_SECRET_POWER
|
||||
compare VAR_RESULT, PARTY_SIZE
|
||||
goto_if_eq SecretBase_EventScript_NoSecretPower
|
||||
setfieldeffectargument 0, VAR_RESULT
|
||||
setorcopyvar VAR_0x8004, VAR_RESULT
|
||||
lockall
|
||||
special GetSecretBaseNearbyMapName
|
||||
msgbox SecretBase_Text_WouldYouLikeToMoveBases, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_CancelOnEntrance
|
||||
msgbox SecretBase_Text_AllDecorationsWillBeReturned, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_CancelOnEntrance
|
||||
fadescreenswapbuffers 1
|
||||
special MoveOutOfSecretBaseFromOutside
|
||||
closemessage
|
||||
fadescreenswapbuffers 0
|
||||
msgbox SecretBase_Text_MovingCompletedUseSecretPower, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_CancelOnEntrance
|
||||
bufferpartymonnick 0, VAR_0x8004
|
||||
buffermovename 1, MOVE_SECRET_POWER
|
||||
msgbox Text_MonUsedFieldMove, MSGBOX_DEFAULT
|
||||
closemessage
|
||||
closemessage
|
||||
compare VAR_0x8007, SECRET_BASE_RED_CAVE
|
||||
goto_if_eq SecretBase_EventScript_CaveUseSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_BROWN_CAVE
|
||||
goto_if_eq SecretBase_EventScript_CaveUseSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_BLUE_CAVE
|
||||
goto_if_eq SecretBase_EventScript_CaveUseSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_YELLOW_CAVE
|
||||
goto_if_eq SecretBase_EventScript_CaveUseSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_TREE
|
||||
goto_if_eq SecretBase_EventScript_TreeUseSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_SHRUB
|
||||
goto_if_eq SecretBase_EventScript_ShrubUseSecretPower
|
||||
releaseall
|
||||
end
|
||||
|
||||
SecretBase_EventScript_NoSecretPower:: @ 8275C9A
|
||||
lockall
|
||||
compare VAR_0x8007, SECRET_BASE_RED_CAVE
|
||||
goto_if_eq SecretBase_EventScript_CaveNoSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_BROWN_CAVE
|
||||
goto_if_eq SecretBase_EventScript_CaveNoSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_BLUE_CAVE
|
||||
goto_if_eq SecretBase_EventScript_CaveNoSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_YELLOW_CAVE
|
||||
goto_if_eq SecretBase_EventScript_CaveNoSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_TREE
|
||||
goto_if_eq SecretBase_EventScript_TreeNoSecretPower
|
||||
compare VAR_0x8007, SECRET_BASE_SHRUB
|
||||
goto_if_eq SecretBase_EventScript_ShrubNoSecretPower
|
||||
end
|
||||
|
||||
SecretBase_EventScript_CancelOnEntrance:: @ 8275CDE
|
||||
closemessage
|
||||
releaseall
|
||||
end
|
||||
|
||||
SecretBase_EventScript_SetDecorationFlags:: @ 8275CE1
|
||||
setflag FLAG_DECORATION_1
|
||||
setflag FLAG_DECORATION_2
|
||||
setflag FLAG_DECORATION_3
|
||||
setflag FLAG_DECORATION_4
|
||||
setflag FLAG_DECORATION_5
|
||||
setflag FLAG_DECORATION_6
|
||||
setflag FLAG_DECORATION_7
|
||||
setflag FLAG_DECORATION_8
|
||||
setflag FLAG_DECORATION_9
|
||||
setflag FLAG_DECORATION_10
|
||||
setflag FLAG_DECORATION_11
|
||||
setflag FLAG_DECORATION_12
|
||||
setflag FLAG_DECORATION_13
|
||||
setflag FLAG_DECORATION_14
|
||||
return
|
||||
|
||||
SecretBase_EventScript_InitDecorations:: @ 8275D0C
|
||||
setvar VAR_0x8004, 0
|
||||
setvar VAR_0x8005, 0
|
||||
special InitSecretBaseDecorationSprites
|
||||
setvar VAR_SECRET_BASE_INITIALIZED, 1
|
||||
end
|
||||
|
||||
SecretBase_EventScript_SetDecoration:: @ 8275D1F
|
||||
setvar VAR_0x8005, 0
|
||||
goto SecretBase_EventScript_SetDecoration2
|
||||
end
|
||||
|
||||
SecretBase_EventScript_SetDecoration2:: @ 8275D2A
|
||||
special SetDecoration
|
||||
end
|
||||
|
||||
SecretBase_EventScript_PutAwayDecoration:: @ 8275D2E
|
||||
setvar VAR_0x8004, 0
|
||||
goto SecretBase_EventScript_PutAwayDecorationLoop
|
||||
end
|
||||
|
||||
SecretBase_EventScript_PutAwayDecorationLoop:: @ 8275D39
|
||||
special sub_8129708
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_PutAwayDecorationEnd
|
||||
addvar VAR_0x8004, 1
|
||||
compare VAR_0x8005, 0
|
||||
goto_if_eq SecretBase_EventScript_PutAwayDecorationLoop
|
||||
removeobject VAR_0x8006
|
||||
setflag 0x8005 @ UB: GF likely meant setvar here; setflag 0x8005 is out of bounds
|
||||
goto SecretBase_EventScript_PutAwayDecorationLoop
|
||||
end
|
||||
|
||||
SecretBase_EventScript_PutAwayDecorationEnd:: @ 8275D63
|
||||
end
|
||||
|
||||
SecretBase_EventScript_RecordMixTrainer:: @ 8275D64
|
||||
special GetSecretBaseOwnerAndState
|
||||
compare VAR_0x8004, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer0
|
||||
compare VAR_0x8004, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer1
|
||||
compare VAR_0x8004, 2
|
||||
goto_if_eq SecretBase_EventScript_Trainer2
|
||||
compare VAR_0x8004, 3
|
||||
goto_if_eq SecretBase_EventScript_Trainer3
|
||||
compare VAR_0x8004, 4
|
||||
goto_if_eq SecretBase_EventScript_Trainer4
|
||||
compare VAR_0x8004, 5
|
||||
goto_if_eq SecretBase_EventScript_Trainer5
|
||||
compare VAR_0x8004, 6
|
||||
goto_if_eq SecretBase_EventScript_Trainer6
|
||||
compare VAR_0x8004, 7
|
||||
goto_if_eq SecretBase_EventScript_Trainer7
|
||||
compare VAR_0x8004, 8
|
||||
goto_if_eq SecretBase_EventScript_Trainer8
|
||||
compare VAR_0x8004, 9
|
||||
goto_if_eq SecretBase_EventScript_Trainer9
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer0:: @ 8275DD6
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer0PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer0PostBattle
|
||||
msgbox SecretBase_Text_Trainer0PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer0DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer0DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer0AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer0PreChampion:: @ 8275E25
|
||||
msgbox SecretBase_Text_Trainer0PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer0DeclineBattle:: @ 8275E2F
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer0DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer0PostBattle:: @ 8275E44
|
||||
msgbox SecretBase_Text_Trainer0PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer1:: @ 8275E4E
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer1PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer1PostBattle
|
||||
msgbox SecretBase_Text_Trainer1PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer1DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer1DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer1AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer1PreChampion:: @ 8275E9D
|
||||
msgbox SecretBase_Text_Trainer1PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer1DeclineBattle:: @ 8275EA7
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer1DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer1PostBattle:: @ 8275EBC
|
||||
msgbox SecretBase_Text_Trainer1PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer2:: @ 8275EC6
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer2PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer2PostBattle
|
||||
msgbox SecretBase_Text_Trainer2PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer2DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer2DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer2AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer2PreChampion:: @ 8275F15
|
||||
msgbox SecretBase_Text_Trainer2PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer2DeclineBattle:: @ 8275F1F
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer2DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer2PostBattle:: @ 8275F34
|
||||
msgbox SecretBase_Text_Trainer2PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer3:: @ 8275F3E
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer3PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer3PostBattle
|
||||
msgbox SecretBase_Text_Trainer3PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer3DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer3DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer3AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer3PreChampion:: @ 8275F8D
|
||||
msgbox SecretBase_Text_Trainer3PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer3DeclineBattle:: @ 8275F97
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer3DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer3PostBattle:: @ 8275FAC
|
||||
msgbox SecretBase_Text_Trainer3PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer4:: @ 8275FB6
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer4PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer4PostBattle
|
||||
msgbox SecretBase_Text_Trainer4PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer4DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer4DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer4AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer4PreChampion:: @ 8276005
|
||||
msgbox SecretBase_Text_Trainer4PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer4DeclineBattle:: @ 827600F
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer4DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer4PostBattle:: @ 8276024
|
||||
msgbox SecretBase_Text_Trainer4PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer5:: @ 827602E
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer5PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer5PostBattle
|
||||
msgbox SecretBase_Text_Trainer5PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer5DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer5DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer5AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer5PreChampion:: @ 827607D
|
||||
msgbox SecretBase_Text_Trainer5PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer5DeclineBattle:: @ 8276087
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer5DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer5PostBattle:: @ 827609C
|
||||
msgbox SecretBase_Text_Trainer5PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer6:: @ 82760A6
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer6PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer6PostBattle
|
||||
msgbox SecretBase_Text_Trainer6PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer6DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer6DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer6AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer6PreChampion:: @ 82760F5
|
||||
msgbox SecretBase_Text_Trainer6PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer6DeclineBattle:: @ 82760FF
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer6DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer6PostBattle:: @ 8276114
|
||||
msgbox SecretBase_Text_Trainer6PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer7:: @ 827611E
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer7PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer7PostBattle
|
||||
msgbox SecretBase_Text_Trainer7PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer7DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer7DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer7AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer7PreChampion:: @ 827616D
|
||||
msgbox SecretBase_Text_Trainer7PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer7DeclineBattle:: @ 8276177
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer7DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer7PostBattle:: @ 827618C
|
||||
msgbox SecretBase_Text_Trainer7PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer8:: @ 8276196
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer8PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer8PostBattle
|
||||
msgbox SecretBase_Text_Trainer8PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer8DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer8DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer8AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer8PreChampion:: @ 82761E5
|
||||
msgbox SecretBase_Text_Trainer8PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer8DeclineBattle:: @ 82761EF
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer8DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer8PostBattle:: @ 8276204
|
||||
msgbox SecretBase_Text_Trainer8PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
@ VAR_RESULT is initially set by GetSecretBaseOwnerAndState
|
||||
SecretBase_EventScript_Trainer9:: @ 827620E
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_unset FLAG_SYS_GAME_CLEAR, SecretBase_EventScript_Trainer9PreChampion
|
||||
compare VAR_RESULT, 1
|
||||
goto_if_eq SecretBase_EventScript_Trainer9PostBattle
|
||||
msgbox SecretBase_Text_Trainer9PreBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer9DeclineBattle
|
||||
setvar VAR_RESULT, 1
|
||||
special SetBattledOwnerFromResult
|
||||
call Common_EventScript_SaveGame
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq SecretBase_EventScript_Trainer9DeclineBattle
|
||||
msgbox SecretBase_Text_Trainer9AcceptBattle, MSGBOX_DEFAULT
|
||||
goto SecretBase_EventScript_BattleTrainer
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer9PreChampion:: @ 827625D
|
||||
msgbox SecretBase_Text_Trainer9PreChampion, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer9DeclineBattle:: @ 8276267
|
||||
special sub_80EB300
|
||||
setvar VAR_RESULT, 0
|
||||
special SetBattledOwnerFromResult
|
||||
msgbox SecretBase_Text_Trainer9DeclineBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_Trainer9PostBattle:: @ 827627C
|
||||
msgbox SecretBase_Text_Trainer9PostBattle, MSGBOX_DEFAULT
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_BattleTrainer:: @ 8276286
|
||||
special PrepSecretBaseBattleFlags
|
||||
setvar VAR_0x8004, SPECIAL_BATTLE_SECRET_BASE
|
||||
setvar VAR_0x8005, 0
|
||||
special DoSpecialTrainerBattle
|
||||
waitstate
|
||||
compare VAR_RESULT, B_OUTCOME_DREW
|
||||
call_if_eq SecretBase_EventScript_2762BD
|
||||
compare VAR_RESULT, B_OUTCOME_WON
|
||||
call_if_eq SecretBase_EventScript_2762C1
|
||||
compare VAR_RESULT, B_OUTCOME_LOST
|
||||
call_if_eq SecretBase_EventScript_2762C5
|
||||
special HealPlayerParty
|
||||
release
|
||||
end
|
||||
|
||||
SecretBase_EventScript_2762BD:: @ 82762BD
|
||||
special sub_80EB438
|
||||
return
|
||||
|
||||
SecretBase_EventScript_2762C1:: @ 82762C1
|
||||
special sub_80EB368
|
||||
return
|
||||
|
||||
SecretBase_EventScript_2762C5:: @ 82762C5
|
||||
special sub_80EB3D0
|
||||
return
|
||||
|
||||
.include "data/scripts/secret_power_tm.inc"
|
||||
|
||||
SecretBase_EventScript_DollInteract:: @ 82766A2
|
||||
special sub_80EB290
|
||||
end
|
||||
|
||||
SecretBase_EventScript_CushionInteract:: @ 82766A6
|
||||
special sub_80EB2C8
|
||||
end
|
||||
|
||||
SecretBase_Text_AllDecorationsWillBeReturned: @ 82766AA
|
||||
.string "All decorations and furniture in your\n"
|
||||
.string "SECRET BASE will be returned to your PC.\p"
|
||||
.string "Is that okay?$"
|
||||
|
||||
SecretBase_Text_WantToRegisterSecretBase: @ 8276707
|
||||
.string "Do you want to register\n"
|
||||
.string "{STR_VAR_1}'s SECRET BASE?$"
|
||||
|
||||
SecretBase_Text_AlreadyRegisteredDelete: @ 8276731
|
||||
.string "This data is already registered.\n"
|
||||
.string "Would you like to delete it?$"
|
||||
|
||||
SecretBase_Text_TooManyBasesDeleteSome: @ 827676F
|
||||
.string "Up to 10 locations can be registered.\p"
|
||||
.string "Delete a location if you want to\n"
|
||||
.string "register another location.$"
|
||||
|
||||
SecretBase_Text_RegistrationCompleted: @ 82767D1
|
||||
.string "Registration completed.$"
|
||||
|
||||
SecretBase_Text_DataUnregistered: @ 82767E9
|
||||
.string "Data has been unregistered.$"
|
||||
|
||||
SecretBase_Text_BootUpPC: @ 8276805
|
||||
.string "{PLAYER} booted up the PC.$"
|
||||
|
||||
SecretBase_Text_WhatWouldYouLikeToDo: @ 827681A
|
||||
.string "What would you like to do?$"
|
||||
|
||||
SecretBase_Text_RegistryInfo: @ 8276835
|
||||
.string "Once registered, a SECRET BASE will not\n"
|
||||
.string "disappear unless the other TRAINER\l"
|
||||
.string "moves it to a different location.\p"
|
||||
.string "If a SECRET BASE is deleted from the\n"
|
||||
.string "registered list, another one may take\l"
|
||||
.string "its place.\p"
|
||||
.string "Up to ten SECRET BASE locations\n"
|
||||
.string "may be registered.$"
|
||||
|
||||
SecretBase_Text_BattleTowerShield: @ 827692B
|
||||
.string "A shield of {STR_VAR_2} that marks winning\n"
|
||||
.string "{STR_VAR_1} times in a row at the BATTLE TOWER.$"
|
||||
|
||||
SecretBase_Text_ToyTV: @ 8276974
|
||||
.string "A realistic toy TV. It could be easily\n"
|
||||
.string "mistaken for the real thing.$"
|
||||
|
||||
SecretBase_Text_SeedotTV: @ 82769B8
|
||||
.string "A toy TV shaped like a SEEDOT.\n"
|
||||
.string "It looks ready to roll away on its own…$"
|
||||
|
||||
SecretBase_Text_SkittyTV: @ 82769FF
|
||||
.string "A toy TV shaped like a SKITTY.\n"
|
||||
.string "It looks ready to stroll away…$"
|
||||
|
||||
SecretBase_Text_WouldYouLikeToMoveBases: @ 8276A3D
|
||||
.string "You may only make one SECRET BASE.\p"
|
||||
.string "Would you like to move from the SECRET\n"
|
||||
.string "BASE near {STR_VAR_1}?$"
|
||||
|
||||
SecretBase_Text_MovingCompletedUseSecretPower: @ 8276A95
|
||||
.string "Moving completed.\p"
|
||||
.string "Would you like to use the SECRET POWER?$"
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,29 @@
|
||||
@ Label is unused, but all the Secret Base MapScripts fall through to here
|
||||
SecretBase_MapScripts::
|
||||
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SecretBase_MapScript2_OnWarp
|
||||
map_script MAP_SCRIPT_ON_TRANSITION, SecretBase_MapScript1_OnTransition
|
||||
map_script MAP_SCRIPT_ON_FRAME_TABLE, SecretBase_MapScript2_OnFrame
|
||||
map_script MAP_SCRIPT_ON_RESUME, SecretBase_MapScript1_OnResume
|
||||
.byte 0
|
||||
|
||||
SecretBase_MapScript2_OnWarp: @ 823B498
|
||||
map_script_2 VAR_SECRET_BASE_INITIALIZED, 0, SecretBase_EventScript_InitDecorations
|
||||
.2byte 0
|
||||
|
||||
SecretBase_MapScript1_OnTransition: @ 823B4A2
|
||||
call SecretBase_EventScript_SetDecorationFlags
|
||||
special SetSecretBaseOwnerGfxId
|
||||
special InitSecretBaseVars
|
||||
end
|
||||
|
||||
SecretBase_MapScript2_OnFrame: @ 823B4AE
|
||||
map_script_2 VAR_INIT_SECRET_BASE, 0, SecretBase_EventScript_FirstEntrance
|
||||
.2byte 0
|
||||
|
||||
SecretBase_MapScript1_OnResume: @ 823B4B8
|
||||
setstepcallback 6
|
||||
end
|
||||
|
||||
SecretBase_EventScript_PC:: @ 823B4BB
|
||||
lockall
|
||||
playse SE_PC_LOGIN
|
||||
@@ -188,7 +214,7 @@ SecretBase_EventScript_SkittyTV:: @ 823B6D7
|
||||
SecretBase_Text_SmallIndentInWall:: @ 823B6E0
|
||||
.string "There's a small indent in the wall.$"
|
||||
|
||||
SecretBase_Text_UseSecretPower:: @ 823B704
|
||||
SecretBase_Text_IndentUseSecretPower:: @ 823B704
|
||||
.string "There's a small indent in the wall.\p"
|
||||
.string "Use the SECRET POWER?$"
|
||||
|
||||
@@ -25,15 +25,15 @@ gSpecials:: @ 81DBA64
|
||||
def_special ShowSecretBaseDecorationMenu
|
||||
def_special ShowSecretBaseRegistryMenu
|
||||
def_special PrepSecretBaseBattleFlags
|
||||
def_special GetSecretBaseOwnerInteractionState
|
||||
def_special GetSecretBaseOwnerAndState
|
||||
def_special InitSecretBaseDecorationSprites
|
||||
def_special sub_8127E18
|
||||
def_special SetDecoration
|
||||
def_special sub_81297AC
|
||||
def_special GetSecretBaseTypeInFrontOfPlayer
|
||||
def_special SetSecretBaseOwnerGfxId
|
||||
def_special sub_8129708
|
||||
def_special EnterNewlyCreatedSecretBase
|
||||
def_special sub_80EA30C
|
||||
def_special SetBattledOwnerFromResult
|
||||
def_special DoSecretBasePCTurnOffEffect
|
||||
def_special RecordMixingPlayerSpotTriggered
|
||||
def_special sub_80B2DA4
|
||||
@@ -360,7 +360,7 @@ gSpecials:: @ 81DBA64
|
||||
def_special PutFanClubSpecialOnTheAir
|
||||
def_special sub_80EED10
|
||||
def_special sub_80EED34
|
||||
def_special sub_80EB1AC
|
||||
def_special InitSecretBaseVars
|
||||
def_special SetSecretBaseSecretsTvFlags_SandOrnament
|
||||
def_special sub_80EB300
|
||||
def_special sub_80EB438
|
||||
|
||||
286
data/text/secret_base_trainers.inc
Normal file
286
data/text/secret_base_trainers.inc
Normal file
@@ -0,0 +1,286 @@
|
||||
SecretBase_Text_Trainer0PreBattle: @ 82748A0
|
||||
.string "Have you made a SECRET BASE already?\p"
|
||||
.string "I went here, there, everywhere before\n"
|
||||
.string "choosing this place.\p"
|
||||
.string "Since you're already here, how would\n"
|
||||
.string "you like to battle?$"
|
||||
|
||||
SecretBase_Text_Trainer0AcceptBattle: @ 8274939
|
||||
.string "Okay!\n"
|
||||
.string "Here we come!$"
|
||||
|
||||
SecretBase_Text_Trainer0DeclineBattle: @ 827494D
|
||||
.string "Hunh?\n"
|
||||
.string "Oh, you can't now…$"
|
||||
|
||||
SecretBase_Text_Trainer0Defeated:: @ 8274966
|
||||
.string "Waaargh! You're too strong!\n"
|
||||
.string "About me losing… Please keep it secret!$"
|
||||
|
||||
SecretBase_Text_Trainer0PostBattle: @ 82749AA
|
||||
.string "What do you think of my SECRET BASE?\n"
|
||||
.string "Come visit me again tomorrow.$"
|
||||
|
||||
SecretBase_Text_Trainer0PreChampion: @ 82749ED
|
||||
.string "Have you made a SECRET BASE already?\p"
|
||||
.string "I went here, there, everywhere before\n"
|
||||
.string "choosing this place.\p"
|
||||
.string "Feel free to hang out!$"
|
||||
|
||||
SecretBase_Text_Trainer5PreBattle: @ 8274A64
|
||||
.string "There're a lot of places where\n"
|
||||
.string "you can make a SECRET BASE.\p"
|
||||
.string "But I like this spot best.\n"
|
||||
.string "Don't you think it's nice?\p"
|
||||
.string "Oh, would you like to have a battle?$"
|
||||
|
||||
SecretBase_Text_Trainer5AcceptBattle: @ 8274AFA
|
||||
.string "Okay, here goes!$"
|
||||
|
||||
SecretBase_Text_Trainer5DeclineBattle: @ 8274B0B
|
||||
.string "Oh…\n"
|
||||
.string "You can't now, okay.$"
|
||||
|
||||
SecretBase_Text_Trainer5Defeated:: @ 8274B24
|
||||
.string "Hmmm… It's our loss…\n"
|
||||
.string "But don't tell anyone!\l"
|
||||
.string "It's a confidential secret!$"
|
||||
|
||||
SecretBase_Text_Trainer5PostBattle: @ 8274B6C
|
||||
.string "If you're in this area again,\n"
|
||||
.string "I hope you'll visit me.$"
|
||||
|
||||
SecretBase_Text_Trainer5PreChampion: @ 8274BA2
|
||||
.string "There're a lot of places where you can\n"
|
||||
.string "make a SECRET BASE.\p"
|
||||
.string "But I like this spot best.\n"
|
||||
.string "Don't you think it's nice?$"
|
||||
|
||||
SecretBase_Text_Trainer1PreBattle: @ 8274C13
|
||||
.string "This is a popular spot.\n"
|
||||
.string "It's always taken.\p"
|
||||
.string "Oh! Were you thinking about\n"
|
||||
.string "taking this spot, too?\p"
|
||||
.string "I'll tell you what, you can have this\n"
|
||||
.string "spot if you can beat me.$"
|
||||
|
||||
SecretBase_Text_Trainer1AcceptBattle: @ 8274CB0
|
||||
.string "Okay!\n"
|
||||
.string "I'm going to defend my SECRET BASE!$"
|
||||
|
||||
SecretBase_Text_Trainer1DeclineBattle: @ 8274CDA
|
||||
.string "Hunh? Is that right?\n"
|
||||
.string "You're not interested in this spot?$"
|
||||
|
||||
SecretBase_Text_Trainer1Defeated:: @ 8274D13
|
||||
.string "I can't keep going!\n"
|
||||
.string "I surrender!$"
|
||||
|
||||
SecretBase_Text_Trainer1PostBattle: @ 8274D34
|
||||
.string "Okay, when I move one day,\n"
|
||||
.string "this place will be yours!$"
|
||||
|
||||
SecretBase_Text_Trainer1PreChampion: @ 8274D69
|
||||
.string "This is a popular spot.\n"
|
||||
.string "It's always taken.\p"
|
||||
.string "I waited a long time for it to open.\n"
|
||||
.string "I finally got to use it!$"
|
||||
|
||||
SecretBase_Text_Trainer6PreBattle: @ 8274DD2
|
||||
.string "Welcome to my POKéMON LAB.\p"
|
||||
.string "I carry out research on battling in\n"
|
||||
.string "secrecy.\p"
|
||||
.string "Would you like to see how strong I am?$"
|
||||
|
||||
SecretBase_Text_Trainer6AcceptBattle: @ 8274E41
|
||||
.string "I'm going to go all out!$"
|
||||
|
||||
SecretBase_Text_Trainer6DeclineBattle: @ 8274E5A
|
||||
.string "Oh.\n"
|
||||
.string "Some other time, then!$"
|
||||
|
||||
SecretBase_Text_Trainer6Defeated:: @ 8274E75
|
||||
.string "Hmm… I've still got lots to learn.\n"
|
||||
.string "I have to study some more.$"
|
||||
|
||||
SecretBase_Text_Trainer6PostBattle: @ 8274EB3
|
||||
.string "Thanks for battling with me.\n"
|
||||
.string "Please come back again tomorrow.$"
|
||||
|
||||
SecretBase_Text_Trainer6PreChampion: @ 8274EF1
|
||||
.string "Welcome to my POKéMON LAB.\p"
|
||||
.string "I carry out research on battling in\n"
|
||||
.string "secrecy.$"
|
||||
|
||||
SecretBase_Text_Trainer2PreBattle: @ 8274F39
|
||||
.string "A big mansion is nice, but I like this\n"
|
||||
.string "sort of place more.\p"
|
||||
.string "I like it because all kinds of people\n"
|
||||
.string "come visit me.\p"
|
||||
.string "So, how would you like a battle?$"
|
||||
|
||||
SecretBase_Text_Trainer2AcceptBattle: @ 8274FCA
|
||||
.string "That's the way!$"
|
||||
|
||||
SecretBase_Text_Trainer2DeclineBattle: @ 8274FDA
|
||||
.string "When you're ready, give me a shout!$"
|
||||
|
||||
SecretBase_Text_Trainer2Defeated:: @ 8274FFE
|
||||
.string "Aww! Done in!\n"
|
||||
.string "But it's still fun to battle!$"
|
||||
|
||||
SecretBase_Text_Trainer2PostBattle: @ 827502A
|
||||
.string "Well, anyway, I should go buy some\n"
|
||||
.string "decorations and furniture.\p"
|
||||
.string "I want my SECRET BASE to be a place\n"
|
||||
.string "other people can enjoy.$"
|
||||
|
||||
SecretBase_Text_Trainer2PreChampion: @ 82750A4
|
||||
.string "A big mansion is nice, but I like this\n"
|
||||
.string "sort of place more.\p"
|
||||
.string "I like it because all kinds of people\n"
|
||||
.string "come visit me.$"
|
||||
|
||||
SecretBase_Text_Trainer7PreBattle: @ 8275114
|
||||
.string "I simply adore shopping for decorations\n"
|
||||
.string "and furniture.\p"
|
||||
.string "I also love raising POKéMON just\n"
|
||||
.string "as much.\p"
|
||||
.string "If you would be so kind, will you battle\n"
|
||||
.string "with my POKéMON?$"
|
||||
|
||||
SecretBase_Text_Trainer7AcceptBattle: @ 82751AF
|
||||
.string "Thank you.\n"
|
||||
.string "Shall we begin?$"
|
||||
|
||||
SecretBase_Text_Trainer7DeclineBattle: @ 82751CA
|
||||
.string "Oh.\n"
|
||||
.string "How disappointing…$"
|
||||
|
||||
SecretBase_Text_Trainer7Defeated:: @ 82751E1
|
||||
.string "I concede…$"
|
||||
|
||||
SecretBase_Text_Trainer7PostBattle: @ 82751EC
|
||||
.string "That was all in good fun!\n"
|
||||
.string "I should go enjoy shopping now.$"
|
||||
|
||||
SecretBase_Text_Trainer7PreChampion: @ 8275226
|
||||
.string "I simply adore shopping for decorations\n"
|
||||
.string "and furniture.\p"
|
||||
.string "I also love raising POKéMON just\n"
|
||||
.string "as much.$"
|
||||
|
||||
SecretBase_Text_Trainer3PreBattle: @ 8275287
|
||||
.string "Some people make their SECRET BASES in\n"
|
||||
.string "hard-to-find places.\l"
|
||||
.string "Do they want to just lie low?\p"
|
||||
.string "But since you found me, how about we\n"
|
||||
.string "have a battle?$"
|
||||
|
||||
SecretBase_Text_Trainer3AcceptBattle: @ 8275315
|
||||
.string "I'm not going down easily!$"
|
||||
|
||||
SecretBase_Text_Trainer3DeclineBattle: @ 8275330
|
||||
.string "Oh… Are you maybe tired from searching\n"
|
||||
.string "for this place?$"
|
||||
|
||||
SecretBase_Text_Trainer3Defeated:: @ 8275367
|
||||
.string "I went down…$"
|
||||
|
||||
SecretBase_Text_Trainer3PostBattle: @ 8275374
|
||||
.string "Where's your SECRET BASE?\n"
|
||||
.string "I should go visit you there.$"
|
||||
|
||||
SecretBase_Text_Trainer3PreChampion: @ 82753AB
|
||||
.string "Some people make their SECRET BASES in\n"
|
||||
.string "hard-to-find places.\l"
|
||||
.string "Do they want to just lie low?$"
|
||||
|
||||
SecretBase_Text_Trainer8PreBattle: @ 8275405
|
||||
.string "People have told me that you can get\n"
|
||||
.string "decorations in several ways.\p"
|
||||
.string "We should have a race to see who can\n"
|
||||
.string "get nicer decorations and furniture!\p"
|
||||
.string "In the meantime, want to battle?$"
|
||||
|
||||
SecretBase_Text_Trainer8AcceptBattle: @ 82754B2
|
||||
.string "This is my SECRET BASE.\n"
|
||||
.string "I can't lose!$"
|
||||
|
||||
SecretBase_Text_Trainer8DeclineBattle: @ 82754D8
|
||||
.string "I'll battle with you anytime.$"
|
||||
|
||||
SecretBase_Text_Trainer8Defeated:: @ 82754F6
|
||||
.string "Huh?\n"
|
||||
.string "Did I just lose?$"
|
||||
|
||||
SecretBase_Text_Trainer8PostBattle: @ 827550C
|
||||
.string "I won't lose at collecting decorations.\n"
|
||||
.string "Come visit again!$"
|
||||
|
||||
SecretBase_Text_Trainer8PreChampion: @ 8275546
|
||||
.string "People have told me that you can get\n"
|
||||
.string "decorations in several ways.\p"
|
||||
.string "We should have a race to see who can\n"
|
||||
.string "get nicer decorations and furniture!$"
|
||||
|
||||
SecretBase_Text_Trainer4PreBattle: @ 82755D2
|
||||
.string "I found a spot I liked, and I did it up\n"
|
||||
.string "with my favorite decorations.\p"
|
||||
.string "I raise my favorite POKéMON and grow\n"
|
||||
.string "stronger with it.\p"
|
||||
.string "That's what I do.\n"
|
||||
.string "Want to battle with me?$"
|
||||
|
||||
SecretBase_Text_Trainer4AcceptBattle: @ 8275679
|
||||
.string "Show me what you're made of!$"
|
||||
|
||||
SecretBase_Text_Trainer4DeclineBattle: @ 8275696
|
||||
.string "I guess there are times when you're not\n"
|
||||
.string "into it.$"
|
||||
|
||||
SecretBase_Text_Trainer4Defeated:: @ 82756C7
|
||||
.string "I know exactly what you're made of now.$"
|
||||
|
||||
SecretBase_Text_Trainer4PostBattle: @ 82756EF
|
||||
.string "We can both become stronger.\n"
|
||||
.string "Let's keep at it!$"
|
||||
|
||||
SecretBase_Text_Trainer4PreChampion: @ 827571E
|
||||
.string "I found a spot I liked, and I did it up\n"
|
||||
.string "with my favorite decorations.\p"
|
||||
.string "I raise my favorite POKéMON and grow\n"
|
||||
.string "stronger with it.\p"
|
||||
.string "Every day is a great day.$"
|
||||
|
||||
SecretBase_Text_Trainer9PreBattle: @ 82757B5
|
||||
.string "You can learn a lot about the taste\n"
|
||||
.string "and sense of people by the kinds of\l"
|
||||
.string "decorations they have, and how they\l"
|
||||
.string "display them.\p"
|
||||
.string "What do you think of my taste?\n"
|
||||
.string "Are you speechless?\p"
|
||||
.string "Want to see my taste in battling?$"
|
||||
|
||||
SecretBase_Text_Trainer9AcceptBattle: @ 8275884
|
||||
.string "There's no holding back!$"
|
||||
|
||||
SecretBase_Text_Trainer9DeclineBattle: @ 827589D
|
||||
.string "I'll be happy to demonstrate my style\n"
|
||||
.string "anytime.$"
|
||||
|
||||
SecretBase_Text_Trainer9Defeated:: @ 82758CC
|
||||
.string "You're supremely talented!\n"
|
||||
.string "Your power seems to be limitless…$"
|
||||
|
||||
SecretBase_Text_Trainer9PostBattle: @ 8275909
|
||||
.string "What did you think of my style?\n"
|
||||
.string "I'll keep on polishing it!$"
|
||||
|
||||
SecretBase_Text_Trainer9PreChampion: @ 8275944
|
||||
.string "You can learn a lot about the taste\n"
|
||||
.string "and sense of people by the kinds of\l"
|
||||
.string "decorations they have, and how they\l"
|
||||
.string "display them.\p"
|
||||
.string "What do you think of my taste?\n"
|
||||
.string "Are you speechless?$"
|
||||
@@ -46,11 +46,14 @@
|
||||
#define BAG_TMHM_COUNT 64
|
||||
#define BAG_BERRIES_COUNT 46
|
||||
#define EVENT_OBJECT_TEMPLATES_COUNT 64
|
||||
#define DECOR_MAX_SECRET_BASE 16
|
||||
#define DECOR_MAX_PLAYERS_HOUSE 12
|
||||
|
||||
#define PYRAMID_BAG_ITEMS_COUNT 10
|
||||
#define HALL_FACILITIES_COUNT 9 // 7 facilities for single mode + tower double mode + tower multi mode.
|
||||
|
||||
#define TRAINER_ID_LENGTH 4
|
||||
#define PARTY_SIZE 6
|
||||
|
||||
// string lengths
|
||||
#define ITEM_NAME_LENGTH 14
|
||||
|
||||
@@ -3,10 +3,6 @@
|
||||
|
||||
extern const u8 EventScript_TestSignpostMsg[];
|
||||
extern const u8 EventScript_TryGetTrainerScript[];
|
||||
extern const u8 EventScript_275BB7[];
|
||||
extern const u8 EventScript_275D0C[];
|
||||
extern const u8 EventScript_275D1F[];
|
||||
extern const u8 EventScript_275D2E[];
|
||||
extern const u8 EventScript_271354[];
|
||||
extern const u8 EventScript_DoTainerBattle[];
|
||||
extern const u8 EventScript_TryDoDoubleTrainerBattle[];
|
||||
@@ -364,16 +360,16 @@ extern const u8 gPokeNewsTextLilycove_Ending[];
|
||||
extern const u8 gPokeNewsTextBlendMaster_Upcoming[];
|
||||
extern const u8 gPokeNewsTextBlendMaster_Ongoing[];
|
||||
extern const u8 gPokeNewsTextBlendMaster_Ending[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274966[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274D13[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274FFE[];
|
||||
extern const u8 SecretBase_RedCave1_Text_275367[];
|
||||
extern const u8 SecretBase_RedCave1_Text_2756C7[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274B24[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274E75[];
|
||||
extern const u8 SecretBase_RedCave1_Text_2751E1[];
|
||||
extern const u8 SecretBase_RedCave1_Text_2754F6[];
|
||||
extern const u8 SecretBase_RedCave1_Text_2758CC[];
|
||||
extern const u8 SecretBase_Text_Trainer0Defeated[];
|
||||
extern const u8 SecretBase_Text_Trainer1Defeated[];
|
||||
extern const u8 SecretBase_Text_Trainer2Defeated[];
|
||||
extern const u8 SecretBase_Text_Trainer3Defeated[];
|
||||
extern const u8 SecretBase_Text_Trainer4Defeated[];
|
||||
extern const u8 SecretBase_Text_Trainer5Defeated[];
|
||||
extern const u8 SecretBase_Text_Trainer6Defeated[];
|
||||
extern const u8 SecretBase_Text_Trainer7Defeated[];
|
||||
extern const u8 SecretBase_Text_Trainer8Defeated[];
|
||||
extern const u8 SecretBase_Text_Trainer9Defeated[];
|
||||
|
||||
extern const u8 BattleFrontier_BattlePyramidEmptySquare_EventScript_252C88[];
|
||||
|
||||
@@ -526,7 +522,6 @@ extern const u8 EventScript_PlayerPCFemale[];
|
||||
extern const u8 EventScript_PC[];
|
||||
extern const u8 EventScript_TestSignpostMsg[];
|
||||
extern const u8 EventScript_HiddenItemScript[];
|
||||
extern const u8 EventScript_2759F1[];
|
||||
extern const u8 EventScript_TV[];
|
||||
extern const u8 EventScript_ClosedSootopolisDoor[];
|
||||
extern const u8 SkyPillar_Outside_EventScript_2393F9[];
|
||||
@@ -546,16 +541,6 @@ extern const u8 EventScript_WirelessBoxResults[];
|
||||
extern const u8 EventScript_CableBoxResults[];
|
||||
extern const u8 EventScript_Questionnaire[];
|
||||
extern const u8 EventScript_TrainerHillTimer[];
|
||||
|
||||
extern const u8 SecretBase_EventScript_PC[];
|
||||
extern const u8 SecretBase_EventScript_RecordMixingPC[];
|
||||
extern const u8 SecretBase_EventScript_PCCancel[];
|
||||
extern const u8 SecretBase_EventScript_ShowRegisterMenu[];
|
||||
extern const u8 SecretBase_EventScript_SandOrnament[];
|
||||
extern const u8 SecretBase_EventScript_ShieldOrToyTV[];
|
||||
extern const u8 SecretBase_EventScript_DollInteract[];
|
||||
extern const u8 SecretBase_EventScript_CushionInteract[];
|
||||
|
||||
extern const u8 EventScript_UseSurf[];
|
||||
extern const u8 EventScript_UseWaterfall[];
|
||||
extern const u8 EventScript_CannotUseWaterfall[];
|
||||
@@ -575,15 +560,30 @@ extern const u8 MossdeepCity_SpaceCenter_2F_EventScript_224175[];
|
||||
extern const u8 SSTidalCorridor_EventScript_23C050[];
|
||||
extern const u8 gUnknown_082A8350[];
|
||||
|
||||
// Secret Base
|
||||
extern const u8 SecretBase_EventScript_PC[];
|
||||
extern const u8 SecretBase_EventScript_RecordMixingPC[];
|
||||
extern const u8 SecretBase_EventScript_PCCancel[];
|
||||
extern const u8 SecretBase_EventScript_ShowRegisterMenu[];
|
||||
extern const u8 SecretBase_EventScript_SandOrnament[];
|
||||
extern const u8 SecretBase_EventScript_ShieldOrToyTV[];
|
||||
extern const u8 SecretBase_EventScript_DollInteract[];
|
||||
extern const u8 SecretBase_EventScript_CushionInteract[];
|
||||
extern const u8 SecretBase_EventScript_CheckEntrance[];
|
||||
extern const u8 SecretBase_EventScript_Enter[];
|
||||
extern const u8 SecretBase_EventScript_InitDecorations[];
|
||||
extern const u8 SecretBase_EventScript_PutAwayDecoration[];
|
||||
extern const u8 SecretBase_EventScript_SetDecoration[];
|
||||
|
||||
// Battle Pyramid.
|
||||
extern const u8 BattleFrontier_BattlePyramidEmptySquare_EventScript_252C88[];
|
||||
extern const u8 BattlePyramid_TrainerBattle[];
|
||||
extern const u8 BattlePyramid_FindItemBall[];
|
||||
|
||||
// fldeff misc
|
||||
extern const u8 EventScript_275A86[];
|
||||
extern const u8 EventScript_275ADF[];
|
||||
extern const u8 EventScript_275B38[];
|
||||
extern const u8 SecretBase_EventScript_CaveUseSecretPower[];
|
||||
extern const u8 SecretBase_EventScript_TreeUseSecretPower[];
|
||||
extern const u8 SecretBase_EventScript_ShrubUseSecretPower[];
|
||||
|
||||
// trainer hill
|
||||
extern const u8 EventScript_2C83F0[];
|
||||
|
||||
@@ -63,8 +63,6 @@
|
||||
// Converts a Q24.8 fixed-point format number to a regular integer
|
||||
#define Q_24_8_TO_INT(n) ((int)((n) >> 8))
|
||||
|
||||
#define PARTY_SIZE 6
|
||||
|
||||
#define POKEMON_SLOTS_NUMBER 412
|
||||
|
||||
#define min(a, b) ((a) < (b) ? (a) : (b))
|
||||
@@ -500,8 +498,8 @@ struct SecretBase
|
||||
/*0x1AAA*/ u16 numSecretBasesReceived;
|
||||
/*0x1AAC*/ u8 numTimesEntered;
|
||||
/*0x1AAD*/ u8 sbr_field_11;
|
||||
/*0x1AAE*/ u8 decorations[16];
|
||||
/*0x1ABE*/ u8 decorationPositions[16];
|
||||
/*0x1AAE*/ u8 decorations[DECOR_MAX_SECRET_BASE];
|
||||
/*0x1ABE*/ u8 decorationPositions[DECOR_MAX_SECRET_BASE];
|
||||
/*0x1AD0*/ struct SecretBaseParty party;
|
||||
};
|
||||
|
||||
@@ -925,8 +923,8 @@ struct SaveBlock1
|
||||
/*0x159C*/ u32 gameStats[NUM_GAME_STATS];
|
||||
/*0x169C*/ struct BerryTree berryTrees[BERRY_TREES_COUNT];
|
||||
/*0x1A9C*/ struct SecretBase secretBases[SECRET_BASES_COUNT];
|
||||
/*0x271C*/ u8 playerRoomDecor[12];
|
||||
/*0x2728*/ u8 playerRoomDecorPos[12];
|
||||
/*0x271C*/ u8 playerRoomDecor[DECOR_MAX_PLAYERS_HOUSE];
|
||||
/*0x2728*/ u8 playerRoomDecorPos[DECOR_MAX_PLAYERS_HOUSE];
|
||||
/*0x2734*/ u8 decorDesk[10];
|
||||
/*0x????*/ u8 decorChair[10];
|
||||
/*0x????*/ u8 decorPlant[10];
|
||||
|
||||
153
src/decoration.c
153
src/decoration.c
@@ -40,6 +40,7 @@
|
||||
|
||||
#define PLACE_DECORATION_SELECTOR_TAG 0xbe5
|
||||
#define PLACE_DECORATION_PLAYER_TAG 0x008
|
||||
#define NUM_DECORATION_FLAGS (FLAG_DECORATION_14 - FLAG_DECORATION_0)
|
||||
|
||||
struct DecorationItemsMenu
|
||||
{
|
||||
@@ -69,8 +70,8 @@ struct DecorRearrangementDataBuffer
|
||||
EWRAM_DATA u8 *gCurDecorationItems = NULL;
|
||||
EWRAM_DATA static u8 sDecorationActionsCursorPos = 0;
|
||||
EWRAM_DATA static u8 sNumOwnedDecorationsInCurCategory = 0;
|
||||
EWRAM_DATA static u8 sSecretBaseItemsIndicesBuffer[16] = {};
|
||||
EWRAM_DATA static u8 sPlayerRoomItemsIndicesBuffer[12] = {};
|
||||
EWRAM_DATA static u8 sSecretBaseItemsIndicesBuffer[DECOR_MAX_SECRET_BASE] = {};
|
||||
EWRAM_DATA static u8 sPlayerRoomItemsIndicesBuffer[DECOR_MAX_PLAYERS_HOUSE] = {};
|
||||
EWRAM_DATA static u16 sDecorationsCursorPos = 0;
|
||||
EWRAM_DATA static u16 sDecorationsScrollOffset = 0;
|
||||
EWRAM_DATA u8 gCurDecorationIndex = 0;
|
||||
@@ -86,7 +87,7 @@ EWRAM_DATA static u8 sDecor_CameraSpriteObjectIdx1 = 0;
|
||||
EWRAM_DATA static u8 sDecor_CameraSpriteObjectIdx2 = 0;
|
||||
EWRAM_DATA static u8 sDecorationLastDirectionMoved = 0;
|
||||
EWRAM_DATA static struct OamData sDecorSelectorOam = {};
|
||||
EWRAM_DATA static struct DecorRearrangementDataBuffer sDecorRearrangementDataBuffer[16] = {};
|
||||
EWRAM_DATA static struct DecorRearrangementDataBuffer sDecorRearrangementDataBuffer[DECOR_MAX_SECRET_BASE] = {};
|
||||
EWRAM_DATA static u8 sCurDecorSelectedInRearrangement = 0;
|
||||
|
||||
static void HandleDecorationActionsMenuInput(u8 taskId);
|
||||
@@ -128,34 +129,34 @@ void SetUpPlacingDecorationPlayerAvatar(u8 taskId, struct PlaceDecorationGraphic
|
||||
void sub_812826C(u8 taskId);
|
||||
void sub_81283BC(u8 taskId);
|
||||
void sub_8128414(u8 taskId);
|
||||
void sub_8128950(u8 taskId);
|
||||
void sub_81289D0(u8 taskId);
|
||||
void sub_81289F0(u8 taskId);
|
||||
void AttemptPlaceDecoration(u8 taskId);
|
||||
void PlaceDecorationPrompt(u8 taskId);
|
||||
void PlaceDecoration(u8 taskId);
|
||||
void sub_8128AAC(u8 taskId);
|
||||
void sub_8128B80(u8 taskId);
|
||||
void sub_8128BA0(u8 taskId);
|
||||
void CancelDecoratingPrompt(u8 taskId);
|
||||
void CancelDecorating(u8 taskId);
|
||||
void sub_8128BBC(u8 taskId);
|
||||
void c1_overworld_prev_quest(u8 taskId);
|
||||
void sub_8128CD4(void);
|
||||
void sub_8128DE0(void);
|
||||
void sub_8128FD8(u8 taskId);
|
||||
void sub_8129020(u8 taskId);
|
||||
void ContinueDecorating(u8 taskId);
|
||||
void CantPlaceDecorationPrompt(u8 taskId);
|
||||
void sub_81292D0(struct Sprite *sprite);
|
||||
void sub_81292E8(struct Sprite *sprite);
|
||||
u8 gpu_pal_decompress_alloc_tag_and_upload(struct PlaceDecorationGraphicsDataBuffer *data, u8 decor);
|
||||
const u32 *GetDecorationIconPicOrPalette(u16 decor, u8 mode);
|
||||
bool8 sub_81299AC(u8 taskId);
|
||||
void sub_8129ABC(u8 taskId);
|
||||
void sub_8129B34(u8 taskId);
|
||||
void ContinuePuttingAwayDecorations(u8 taskId);
|
||||
void sub_8129BCC(u8 taskId);
|
||||
void sub_8129BF8(u8 taskId);
|
||||
void sub_8129C74(u8 taskId);
|
||||
void sub_8129D64(u8 taskId);
|
||||
void ContinuePuttingAwayDecorationsPrompt(u8 taskId);
|
||||
void sub_812A0E8(u8 taskId);
|
||||
void sub_812A1A0(u8 taskId);
|
||||
void sub_812A1C0(u8 taskId);
|
||||
void sub_812A1F0(u8 taskId);
|
||||
void sub_812A210(u8 taskId);
|
||||
void ReturnDecorationPrompt(u8 taskId);
|
||||
void PutAwayDecoration(u8 taskId);
|
||||
void StopPuttingAwayDecorationsPrompt(u8 taskId);
|
||||
void StopPuttingAwayDecorations(u8 taskId);
|
||||
void sub_812A22C(u8 taskId);
|
||||
void sub_812A25C(u8 taskId);
|
||||
void sub_812A334(void);
|
||||
@@ -163,8 +164,8 @@ void sub_812A36C(struct Sprite *sprite);
|
||||
void sub_812A39C(void);
|
||||
void sub_812A3C8(void);
|
||||
void sub_812A3D4(u8 taskId);
|
||||
void sub_812A458(u8 taskId);
|
||||
void sub_812A478(u8 taskId);
|
||||
void TossDecorationPrompt(u8 taskId);
|
||||
void TossDecoration(u8 taskId);
|
||||
|
||||
#include "data/decoration/tiles.h"
|
||||
#include "data/decoration/description.h"
|
||||
@@ -344,16 +345,16 @@ const struct SpritePalette gUnknown_085A72BC =
|
||||
.tag = PLACE_DECORATION_SELECTOR_TAG,
|
||||
};
|
||||
|
||||
const struct YesNoFuncTable gUnknown_085A72C4 =
|
||||
const struct YesNoFuncTable sPlaceDecorationYesNoFunctions =
|
||||
{
|
||||
.yesFunc = sub_81289F0,
|
||||
.noFunc = sub_8128FD8,
|
||||
.yesFunc = PlaceDecoration,
|
||||
.noFunc = ContinueDecorating,
|
||||
};
|
||||
|
||||
const struct YesNoFuncTable gUnknown_085A72CC =
|
||||
const struct YesNoFuncTable sCancelDecoratingYesNoFunctions =
|
||||
{
|
||||
.yesFunc = sub_8128BA0,
|
||||
.noFunc = sub_8128FD8,
|
||||
.yesFunc = CancelDecorating,
|
||||
.noFunc = ContinueDecorating,
|
||||
};
|
||||
|
||||
const struct YesNoFuncTable gUnknown_085A72D4[] =
|
||||
@@ -390,16 +391,16 @@ const u16 gUnknown_085A7308[] = INCBIN_U16("graphics/decorations/unk_85a7308.gba
|
||||
|
||||
const u16 gUnknown_085A7328[] = INCBIN_U16("graphics/decorations/unk_85a7328.gbapal");
|
||||
|
||||
const struct YesNoFuncTable gUnknown_085A7348 =
|
||||
const struct YesNoFuncTable sReturnDecorationYesNoFunctions =
|
||||
{
|
||||
.yesFunc = sub_812A1C0,
|
||||
.noFunc = sub_8129B34,
|
||||
.yesFunc = PutAwayDecoration,
|
||||
.noFunc = ContinuePuttingAwayDecorations,
|
||||
};
|
||||
|
||||
const struct YesNoFuncTable gUnknown_085A7350 =
|
||||
const struct YesNoFuncTable sStopPuttingAwayDecorationsYesNoFunctions =
|
||||
{
|
||||
.yesFunc = sub_812A210,
|
||||
.noFunc = sub_8129B34,
|
||||
.yesFunc = StopPuttingAwayDecorations,
|
||||
.noFunc = ContinuePuttingAwayDecorations,
|
||||
};
|
||||
|
||||
const u8 gUnknown_085A7358[] = INCBIN_U8("graphics/misc/decoration_unk_85a7358.4bpp");
|
||||
@@ -458,9 +459,9 @@ const struct SpriteTemplate gUnknown_085A7404 =
|
||||
sub_812A36C
|
||||
};
|
||||
|
||||
const struct YesNoFuncTable gUnknown_085A741C =
|
||||
const struct YesNoFuncTable sTossDecorationYesNoFunctions =
|
||||
{
|
||||
.yesFunc = sub_812A478,
|
||||
.yesFunc = TossDecoration,
|
||||
.noFunc = sub_8127A30,
|
||||
};
|
||||
|
||||
@@ -1235,12 +1236,12 @@ void ShowDecorationOnMap(u16 mapX, u16 mapY, u16 decoration)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8127E18(void)
|
||||
void SetDecoration(void)
|
||||
{
|
||||
u8 i;
|
||||
u8 j;
|
||||
|
||||
for (i = 0; i < 14; i++)
|
||||
for (i = 0; i < NUM_DECORATION_FLAGS; i++)
|
||||
{
|
||||
if (FlagGet(FLAG_DECORATION_1 + i) == TRUE)
|
||||
{
|
||||
@@ -1339,7 +1340,7 @@ void sub_8128060(u8 taskId)
|
||||
if (IsWeatherNotFadingIn() == TRUE)
|
||||
{
|
||||
gTasks[taskId].data[12] = 0;
|
||||
sub_8128FD8(taskId);
|
||||
ContinueDecorating(taskId);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1427,7 +1428,7 @@ void sub_81283BC(u8 taskId)
|
||||
gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 1;
|
||||
gSprites[sDecor_CameraSpriteObjectIdx2].data[7] = 1;
|
||||
sub_8128DE0();
|
||||
sub_8128950(taskId);
|
||||
AttemptPlaceDecoration(taskId);
|
||||
}
|
||||
|
||||
void sub_8128414(u8 taskId)
|
||||
@@ -1437,7 +1438,7 @@ void sub_8128414(u8 taskId)
|
||||
gSprites[sDecor_CameraSpriteObjectIdx2].data[7] = 1;
|
||||
sub_8128DE0();
|
||||
StringExpandPlaceholders(gStringVar4, gText_CancelDecorating);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_8128B80);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, CancelDecoratingPrompt);
|
||||
}
|
||||
|
||||
bool8 sub_8128484(u8 behaviorAt, u16 behaviorBy)
|
||||
@@ -1472,7 +1473,7 @@ bool8 sub_81284F4(u16 behaviorAt, const struct Decoration *decoration)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 sub_812853C(u8 taskId, const struct Decoration *decoration)
|
||||
bool8 CanPlaceDecoration(u8 taskId, const struct Decoration *decoration)
|
||||
{
|
||||
u8 i;
|
||||
u8 j;
|
||||
@@ -1586,28 +1587,28 @@ bool8 sub_812853C(u8 taskId, const struct Decoration *decoration)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void sub_8128950(u8 taskId)
|
||||
void AttemptPlaceDecoration(u8 taskId)
|
||||
{
|
||||
if (sub_812853C(taskId, &gDecorations[gCurDecorationItems[gCurDecorationIndex]]) == TRUE)
|
||||
if (CanPlaceDecoration(taskId, &gDecorations[gCurDecorationItems[gCurDecorationIndex]]) == TRUE)
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, gText_PlaceItHere);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_81289D0);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, PlaceDecorationPrompt);
|
||||
}
|
||||
else
|
||||
{
|
||||
PlaySE(SE_HAZURE);
|
||||
StringExpandPlaceholders(gStringVar4, gText_CantBePlacedHere);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_8129020);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, CantPlaceDecorationPrompt);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_81289D0(u8 taskId)
|
||||
void PlaceDecorationPrompt(u8 taskId)
|
||||
{
|
||||
DisplayYesNoMenuDefaultYes();
|
||||
DoYesNoFuncWithChoice(taskId, &gUnknown_085A72C4);
|
||||
DoYesNoFuncWithChoice(taskId, &sPlaceDecorationYesNoFunctions);
|
||||
}
|
||||
|
||||
void sub_81289F0(u8 taskId)
|
||||
void PlaceDecoration(u8 taskId)
|
||||
{
|
||||
ClearDialogWindowAndFrame(0, 0);
|
||||
sub_8128AAC(taskId);
|
||||
@@ -1619,7 +1620,7 @@ void sub_81289F0(u8 taskId)
|
||||
{
|
||||
sCurDecorMapX = gTasks[taskId].data[0] - 7;
|
||||
sCurDecorMapY = gTasks[taskId].data[1] - 7;
|
||||
ScriptContext1_SetupScript(EventScript_275D1F);
|
||||
ScriptContext1_SetupScript(SecretBase_EventScript_SetDecoration);
|
||||
}
|
||||
|
||||
gSprites[sDecor_CameraSpriteObjectIdx1].pos1.y += 2;
|
||||
@@ -1645,7 +1646,7 @@ void sub_8128AAC(u8 taskId)
|
||||
|
||||
if (!gDecorationContext.isPlayerRoom)
|
||||
{
|
||||
for (i = 0; i < 16; i++)
|
||||
for (i = 0; i < DECOR_MAX_SECRET_BASE; i++)
|
||||
{
|
||||
if (sSecretBaseItemsIndicesBuffer[i] == 0)
|
||||
{
|
||||
@@ -1656,7 +1657,7 @@ void sub_8128AAC(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 0; i < 12; i++)
|
||||
for (i = 0; i < DECOR_MAX_PLAYERS_HOUSE; i++)
|
||||
{
|
||||
if (sPlayerRoomItemsIndicesBuffer[i] == 0)
|
||||
{
|
||||
@@ -1667,13 +1668,13 @@ void sub_8128AAC(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8128B80(u8 taskId)
|
||||
void CancelDecoratingPrompt(u8 taskId)
|
||||
{
|
||||
DisplayYesNoMenuDefaultYes();
|
||||
DoYesNoFuncWithChoice(taskId, &gUnknown_085A72CC);
|
||||
DoYesNoFuncWithChoice(taskId, &sCancelDecoratingYesNoFunctions);
|
||||
}
|
||||
|
||||
void sub_8128BA0(u8 taskId)
|
||||
void CancelDecorating(u8 taskId)
|
||||
{
|
||||
ClearDialogWindowAndFrame(0, 0);
|
||||
sub_8128BBC(taskId);
|
||||
@@ -1718,7 +1719,7 @@ void sub_8128C64(u8 taskId)
|
||||
data[2]++;
|
||||
break;
|
||||
case 1:
|
||||
ScriptContext1_SetupScript(EventScript_275D0C);
|
||||
ScriptContext1_SetupScript(SecretBase_EventScript_InitDecorations);
|
||||
data[2]++;
|
||||
break;
|
||||
case 2:
|
||||
@@ -1857,7 +1858,7 @@ void sub_8128E18(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8128FD8(u8 taskId)
|
||||
void ContinueDecorating(u8 taskId)
|
||||
{
|
||||
ClearDialogWindowAndFrame(0, 1);
|
||||
gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 0;
|
||||
@@ -1865,10 +1866,10 @@ void sub_8128FD8(u8 taskId)
|
||||
gTasks[taskId].func = sub_8128E18;
|
||||
}
|
||||
|
||||
void sub_8129020(u8 taskId)
|
||||
void CantPlaceDecorationPrompt(u8 taskId)
|
||||
{
|
||||
if (gMain.newKeys & A_BUTTON || gMain.newKeys & B_BUTTON)
|
||||
sub_8128FD8(taskId);
|
||||
ContinueDecorating(taskId);
|
||||
}
|
||||
|
||||
void sub_8129048(struct PlaceDecorationGraphicsDataBuffer *data)
|
||||
@@ -2206,7 +2207,7 @@ void sub_81298EC(u8 taskId)
|
||||
case 1:
|
||||
if (!gPaletteFade.active) {
|
||||
DrawWholeMapView();
|
||||
ScriptContext1_SetupScript(EventScript_275D2E);
|
||||
ScriptContext1_SetupScript(SecretBase_EventScript_PutAwayDecoration);
|
||||
ClearDialogWindowAndFrame(0, 1);
|
||||
gTasks[taskId].data[2] = 2;
|
||||
}
|
||||
@@ -2221,7 +2222,7 @@ void sub_81298EC(u8 taskId)
|
||||
if (IsWeatherNotFadingIn() == TRUE)
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, gText_DecorationReturnedToPC);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_8129D64);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, ContinuePuttingAwayDecorationsPrompt);
|
||||
if (gMapHeader.regionMapSectionId == MAPSEC_SECRET_BASE)
|
||||
TV_PutSecretBaseVisitOnTheAir();
|
||||
}
|
||||
@@ -2284,13 +2285,13 @@ void sub_8129ABC(u8 taskId)
|
||||
if (IsWeatherNotFadingIn() == TRUE)
|
||||
{
|
||||
data[12] = 1;
|
||||
sub_8129B34(taskId);
|
||||
ContinuePuttingAwayDecorations(taskId);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8129B34(u8 taskId)
|
||||
void ContinuePuttingAwayDecorations(u8 taskId)
|
||||
{
|
||||
ClearDialogWindowAndFrame(0, 1);
|
||||
gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 0;
|
||||
@@ -2316,7 +2317,7 @@ void sub_8129BF8(u8 taskId)
|
||||
gSprites[sDecor_CameraSpriteObjectIdx1].invisible = FALSE;
|
||||
gSprites[sDecor_CameraSpriteObjectIdx1].callback = SpriteCallbackDummy;
|
||||
StringExpandPlaceholders(gStringVar4, gText_StopPuttingAwayDecorations);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_812A1F0);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, StopPuttingAwayDecorationsPrompt);
|
||||
}
|
||||
|
||||
void sub_8129C74(u8 taskId)
|
||||
@@ -2328,7 +2329,7 @@ void sub_8129C74(u8 taskId)
|
||||
if (sCurDecorSelectedInRearrangement != 0)
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, gText_ReturnDecorationToPC);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_812A1A0);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, ReturnDecorationPrompt);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2339,20 +2340,20 @@ void sub_8129C74(u8 taskId)
|
||||
gSprites[sDecor_CameraSpriteObjectIdx1].invisible = FALSE;
|
||||
gSprites[sDecor_CameraSpriteObjectIdx1].callback = SpriteCallbackDummy;
|
||||
StringExpandPlaceholders(gStringVar4, gText_StopPuttingAwayDecorations);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_812A1F0);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, StopPuttingAwayDecorationsPrompt);
|
||||
}
|
||||
else
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, gText_NoDecorationHere);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_8129D64);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, ContinuePuttingAwayDecorationsPrompt);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8129D64(u8 taskId)
|
||||
void ContinuePuttingAwayDecorationsPrompt(u8 taskId)
|
||||
{
|
||||
if (gMain.newKeys & A_BUTTON || gMain.newKeys & B_BUTTON)
|
||||
sub_8129B34(taskId);
|
||||
ContinuePuttingAwayDecorations(taskId);
|
||||
}
|
||||
|
||||
void sub_8129D8C(u8 decor, struct DecorRearrangementDataBuffer *data)
|
||||
@@ -2542,26 +2543,26 @@ void sub_812A0E8(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_812A1A0(u8 taskId)
|
||||
void ReturnDecorationPrompt(u8 taskId)
|
||||
{
|
||||
DisplayYesNoMenuDefaultYes();
|
||||
DoYesNoFuncWithChoice(taskId, &gUnknown_085A7348);
|
||||
DoYesNoFuncWithChoice(taskId, &sReturnDecorationYesNoFunctions);
|
||||
}
|
||||
|
||||
void sub_812A1C0(u8 taskId)
|
||||
void PutAwayDecoration(u8 taskId)
|
||||
{
|
||||
FadeScreen(1, 0);
|
||||
gTasks[taskId].data[2] = 0;
|
||||
gTasks[taskId].func = sub_81298EC;
|
||||
}
|
||||
|
||||
void sub_812A1F0(u8 taskId)
|
||||
void StopPuttingAwayDecorationsPrompt(u8 taskId)
|
||||
{
|
||||
DisplayYesNoMenuDefaultYes();
|
||||
DoYesNoFuncWithChoice(taskId, &gUnknown_085A7350);
|
||||
DoYesNoFuncWithChoice(taskId, &sStopPuttingAwayDecorationsYesNoFunctions);
|
||||
}
|
||||
|
||||
void sub_812A210(u8 taskId)
|
||||
void StopPuttingAwayDecorations(u8 taskId)
|
||||
{
|
||||
ClearDialogWindowAndFrame(0, 0);
|
||||
sub_812A22C(taskId);
|
||||
@@ -2604,7 +2605,7 @@ void sub_812A2C4(u8 taskId)
|
||||
data[2]++;
|
||||
break;
|
||||
case 1:
|
||||
ScriptContext1_SetupScript(EventScript_275D0C);
|
||||
ScriptContext1_SetupScript(SecretBase_EventScript_InitDecorations);
|
||||
data[2]++;
|
||||
break;
|
||||
case 2:
|
||||
@@ -2658,7 +2659,7 @@ void sub_812A3D4(u8 taskId)
|
||||
{
|
||||
StringCopy(gStringVar1, gDecorations[gCurDecorationItems[gCurDecorationIndex]].name);
|
||||
StringExpandPlaceholders(gStringVar4, gText_DecorationWillBeDiscarded);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, sub_812A458);
|
||||
DisplayItemMessageOnField(taskId, gStringVar4, TossDecorationPrompt);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2667,13 +2668,13 @@ void sub_812A3D4(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_812A458(u8 taskId)
|
||||
void TossDecorationPrompt(u8 taskId)
|
||||
{
|
||||
DisplayYesNoMenuDefaultYes();
|
||||
DoYesNoFuncWithChoice(taskId, &gUnknown_085A741C);
|
||||
DoYesNoFuncWithChoice(taskId, &sTossDecorationYesNoFunctions);
|
||||
}
|
||||
|
||||
void sub_812A478(u8 taskId)
|
||||
void TossDecoration(u8 taskId)
|
||||
{
|
||||
gCurDecorationItems[gCurDecorationIndex] = DECOR_NONE;
|
||||
sNumOwnedDecorationsInCurCategory = GetNumOwnedDecorationsInCategory(sCurDecorationCategory);
|
||||
|
||||
@@ -355,7 +355,7 @@ static const u8 *GetInteractedBackgroundEventScript(struct MapPosition *position
|
||||
{
|
||||
gSpecialVar_0x8004 = bgEvent->bgUnion.secretBaseId;
|
||||
if (TrySetCurSecretBase())
|
||||
return EventScript_2759F1;
|
||||
return SecretBase_EventScript_CheckEntrance;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -583,7 +583,7 @@ bool8 SetUpFieldMove_SecretPower(void)
|
||||
static void FieldCallback_SecretBaseCave(void)
|
||||
{
|
||||
gFieldEffectArguments[0] = GetCursorSelectionMonId();
|
||||
ScriptContext1_SetupScript(EventScript_275A86);
|
||||
ScriptContext1_SetupScript(SecretBase_EventScript_CaveUseSecretPower);
|
||||
}
|
||||
|
||||
bool8 FldEff_UseSecretPowerCave(void)
|
||||
@@ -643,7 +643,7 @@ static void CaveEntranceSpriteCallbackEnd(struct Sprite *sprite)
|
||||
static void FieldCallback_SecretBaseTree(void)
|
||||
{
|
||||
gFieldEffectArguments[0] = GetCursorSelectionMonId();
|
||||
ScriptContext1_SetupScript(EventScript_275ADF);
|
||||
ScriptContext1_SetupScript(SecretBase_EventScript_TreeUseSecretPower);
|
||||
}
|
||||
|
||||
bool8 FldEff_UseSecretPowerTree(void)
|
||||
@@ -717,7 +717,7 @@ static void TreeEntranceSpriteCallbackEnd(struct Sprite *sprite)
|
||||
static void FieldCallback_SecretBaseShrub(void)
|
||||
{
|
||||
gFieldEffectArguments[0] = GetCursorSelectionMonId();
|
||||
ScriptContext1_SetupScript(EventScript_275B38);
|
||||
ScriptContext1_SetupScript(SecretBase_EventScript_ShrubUseSecretPower);
|
||||
}
|
||||
|
||||
bool8 FldEff_UseSecretPowerShrub(void)
|
||||
|
||||
@@ -650,7 +650,7 @@ void WarpIntoSecretBase(const struct MapPosition *position, const struct MapEven
|
||||
{
|
||||
SetCurSecretBaseIdFromPosition(position, events);
|
||||
TrySetCurSecretBaseIndex();
|
||||
ScriptContext1_SetupScript(EventScript_275BB7);
|
||||
ScriptContext1_SetupScript(SecretBase_EventScript_Enter);
|
||||
}
|
||||
|
||||
bool8 TrySetCurSecretBase(void)
|
||||
@@ -1094,25 +1094,25 @@ const u8 *GetSecretBaseTrainerLoseText(void)
|
||||
{
|
||||
u8 ownerType = GetSecretBaseOwnerType(VarGet(VAR_CURRENT_SECRET_BASE));
|
||||
if (ownerType == 0)
|
||||
return SecretBase_RedCave1_Text_274966;
|
||||
return SecretBase_Text_Trainer0Defeated;
|
||||
else if (ownerType == 1)
|
||||
return SecretBase_RedCave1_Text_274D13;
|
||||
return SecretBase_Text_Trainer1Defeated;
|
||||
else if (ownerType == 2)
|
||||
return SecretBase_RedCave1_Text_274FFE;
|
||||
return SecretBase_Text_Trainer2Defeated;
|
||||
else if (ownerType == 3)
|
||||
return SecretBase_RedCave1_Text_275367;
|
||||
return SecretBase_Text_Trainer3Defeated;
|
||||
else if (ownerType == 4)
|
||||
return SecretBase_RedCave1_Text_2756C7;
|
||||
return SecretBase_Text_Trainer4Defeated;
|
||||
else if (ownerType == 5)
|
||||
return SecretBase_RedCave1_Text_274B24;
|
||||
return SecretBase_Text_Trainer5Defeated;
|
||||
else if (ownerType == 6)
|
||||
return SecretBase_RedCave1_Text_274E75;
|
||||
return SecretBase_Text_Trainer6Defeated;
|
||||
else if (ownerType == 7)
|
||||
return SecretBase_RedCave1_Text_2751E1;
|
||||
return SecretBase_Text_Trainer7Defeated;
|
||||
else if (ownerType == 8)
|
||||
return SecretBase_RedCave1_Text_2754F6;
|
||||
return SecretBase_Text_Trainer8Defeated;
|
||||
else
|
||||
return SecretBase_RedCave1_Text_2758CC;
|
||||
return SecretBase_Text_Trainer9Defeated;
|
||||
}
|
||||
|
||||
void PrepSecretBaseBattleFlags(void)
|
||||
@@ -1122,12 +1122,12 @@ void PrepSecretBaseBattleFlags(void)
|
||||
gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_SECRET_BASE;
|
||||
}
|
||||
|
||||
void sub_80EA30C(void)
|
||||
void SetBattledOwnerFromResult(void)
|
||||
{
|
||||
gSaveBlock1Ptr->secretBases[VarGet(VAR_CURRENT_SECRET_BASE)].battledOwnerToday = gSpecialVar_Result;
|
||||
}
|
||||
|
||||
void GetSecretBaseOwnerInteractionState(void)
|
||||
void GetSecretBaseOwnerAndState(void)
|
||||
{
|
||||
u16 secretBaseId;
|
||||
u8 i;
|
||||
@@ -1719,7 +1719,7 @@ void ClearJapaneseSecretBases(struct SecretBase *bases)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80EB1AC(void)
|
||||
void InitSecretBaseVars(void)
|
||||
{
|
||||
VarSet(VAR_SECRET_BASE_STEP_COUNTER, 0);
|
||||
VarSet(VAR_SECRET_BASE_LAST_ITEM_USED, 0);
|
||||
|
||||
Reference in New Issue
Block a user