Set up Battle Pike macros

This commit is contained in:
GriffinR 2019-11-29 02:00:19 -05:00 committed by huderlem
parent 9b3d1cfab6
commit 41c1c9ca8a
11 changed files with 339 additions and 260 deletions

View File

@ -1,54 +1,173 @@
@ To be populated with macros for CallBattlePikeFunction @ TODO: Add explanatory comments
.macro battlepike_getstreak @
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_DATA .macro pike_setnextroom
setvar VAR_0x8005, 1
special CallBattlePikeFunction
.endm
.macro battlepike_setstreak streak:req
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_DATA
setvar VAR_0x8005, 1
.if \streak >= VARS_START
copyvar VAR_0x8006, \streak
.else
setvar VAR_0x8006, \streak
.endif
special CallBattlePikeFunction
.endm
.macro battlepike_isfinalroom
setvar VAR_0x8004, BATTLE_PIKE_FUNC_IS_FINAL_ROOM
special CallBattlePikeFunction
.endm
.macro battlepike_setroomobjects
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_ROOM_OBJECTS
special CallBattlePikeFunction
.endm
.macro battlepike_getroomtype
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_TYPE
special CallBattlePikeFunction
.endm
.macro battlepike_setnextroom
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_ROOM_TYPE setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_ROOM_TYPE
special CallBattlePikeFunction special CallBattlePikeFunction
.endm .endm
.macro battlepike_gethint @
.macro pike_get data:req
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_DATA
setvar VAR_0x8005, \data
special CallBattlePikeFunction
.endm
@
.macro pike_set data:req, val:req
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_DATA
setvar VAR_0x8005, \data
.if \val >= VARS_START
copyvar VAR_0x8006, \val
.else
setvar VAR_0x8006, \val
.endif
special CallBattlePikeFunction
.endm
@
.macro pike_isfinalroom
setvar VAR_0x8004, BATTLE_PIKE_FUNC_IS_FINAL_ROOM
special CallBattlePikeFunction
.endm
@
.macro pike_setroomobjects
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_ROOM_OBJECTS
special CallBattlePikeFunction
.endm
@
.macro pike_getroomtype
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_TYPE
special CallBattlePikeFunction
.endm
@ Sets a bool that's never read
.macro pike_inwildmonroom
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_IN_WILD_MON_ROOM
special CallBattlePikeFunction
.endm
@ Clears a bool that's never read
.macro pike_exitwildmonroom
setvar VAR_0x8004, BATTLE_PIKE_FUNC_CLEAR_IN_WILD_MON_ROOM
special CallBattlePikeFunction
.endm
@ Save the game and set the challenge status
.macro pike_save challengeStatus:req
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SAVE
setvar VAR_0x8005, \challengeStatus
special CallBattlePikeFunction
.endm
@
.macro pike_getstatus
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_STATUS
special CallBattlePikeFunction
.endm
@
.macro pike_getstatusmon
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON
special CallBattlePikeFunction
.endm
@
.macro pike_healonetwomons
setvar VAR_0x8004, BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS
special CallBattlePikeFunction
.endm
@
.macro pike_getnpcmsg
setvar VAR_0x8004, BATTLE_PIKE_FUNC_BUFFER_NPC_MSG
special CallBattlePikeFunction
.endm
@
.macro pike_fadescreen
setvar VAR_0x8004, BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE
special CallBattlePikeFunction
.endm
@ TRUE if the player is currently in a Battle Pike challenge map
.macro pike_inchallenge
setvar VAR_0x8004, BATTLE_PIKE_FUNC_IS_IN
special CallBattlePikeFunction
.endm
@ TRUE if its the Pike Queens room
.macro pike_sethintroom
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_HINT_ROOM
special CallBattlePikeFunction
.endm
@
.macro pike_gethintroomid
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_HINT_ROOM_ID
special CallBattlePikeFunction
.endm
@
.macro pike_gethint
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT
special CallBattlePikeFunction special CallBattlePikeFunction
.endm .endm
.macro battlepike_nohealing set:req @
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_HEALING_ROOMS_DISABLED .macro pike_cleartrainerids
setvar VAR_0x8004, BATTLE_PIKE_FUNC_CLEAR_TRAINER_IDS
special CallBattlePikeFunction
.endm
@
.macro pike_gettrainerintro trainer:req
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_TRAINER_INTRO
setvar VAR_0x8005, \trainer
special CallBattlePikeFunction
.endm
@ Get the status of the Pike Queen (Not ready, Silver/Gold streak before symbols, Silver/Gold streak after symbols)
.macro pike_getbrainstatus
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_QUEEN_FIGHT_TYPE
special CallBattlePikeFunction
.endm
@
.macro pike_prequeenheal
setvar VAR_0x8004, BATTLE_PIKE_FUNC_HEAL_MONS_BEFORE_QUEEN
special CallBattlePikeFunction
.endm
@
.macro pike_nohealing set:req
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_HEAL_ROOMS_DISABLED
setvar VAR_0x8005, \set setvar VAR_0x8005, \set
special CallBattlePikeFunction special CallBattlePikeFunction
.endm .endm
.macro battlepike_ispartyfullhealth @
.macro pike_ispartyfullhealth
setvar VAR_0x8004, BATTLE_PIKE_FUNC_IS_PARTY_FULL_HEALTH setvar VAR_0x8004, BATTLE_PIKE_FUNC_IS_PARTY_FULL_HEALTH
special CallBattlePikeFunction special CallBattlePikeFunction
.endm .endm
@
.macro pike_savehelditems
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SAVE_HELD_ITEMS
special CallBattlePikeFunction
.endm
@
.macro pike_resethelditems
setvar VAR_0x8004, BATTLE_PIKE_FUNC_RESET_HELD_ITEMS
special CallBattlePikeFunction
.endm
@ Initialize the Battle Arena challenge
.macro pike_init
setvar VAR_0x8004, BATTLE_PIKE_FUNC_INIT
special CallBattlePikeFunction
.endm

View File

@ -10,9 +10,8 @@ BattleFrontier_BattlePikeCorridor_MapScript2_25C77C: @ 825C77C
BattleFrontier_BattlePikeCorridor_EventScript_25C786:: @ 825C786 BattleFrontier_BattlePikeCorridor_EventScript_25C786:: @ 825C786
delay 16 delay 16
frontier_set FRONTIER_DATA_BATTLE_NUM, 1 frontier_set FRONTIER_DATA_BATTLE_NUM, 1
setvar VAR_0x8004, BATTLE_PIKE_FUNC_CLEAR_TRAINER_IDS pike_cleartrainerids
special CallBattlePikeFunction pike_nohealing TRUE
battlepike_nohealing TRUE
applymovement EVENT_OBJ_ID_PLAYER, BattleFrontier_BattlePikeCorridor_Movement_25C80B applymovement EVENT_OBJ_ID_PLAYER, BattleFrontier_BattlePikeCorridor_Movement_25C80B
applymovement 1, BattleFrontier_BattlePikeCorridor_Movement_25C812 applymovement 1, BattleFrontier_BattlePikeCorridor_Movement_25C812
waitmovement 0 waitmovement 0

View File

@ -25,16 +25,12 @@ BattleFrontier_BattlePikeLobby_EventScript_25B707:: @ 825B707
BattleFrontier_BattlePikeLobby_EventScript_25B710:: @ 825B710 BattleFrontier_BattlePikeLobby_EventScript_25B710:: @ 825B710
special HealPlayerParty special HealPlayerParty
setvar VAR_0x8004, BATTLE_PIKE_FUNC_LOAD_MON_HELD_ITEMS pike_resethelditems
special CallBattlePikeFunction
lockall lockall
msgbox BattleFrontier_BattlePikeLobby_Text_25C2E0, MSGBOX_DEFAULT msgbox BattleFrontier_BattlePikeLobby_Text_25C2E0, MSGBOX_DEFAULT
closemessage closemessage
battlepike_setstreak 0 pike_set PIKE_DATA_WIN_STREAK 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_DATA pike_set PIKE_DATA_WIN_STREAK_ACTIVE, FALSE
setvar VAR_0x8005, 4
setvar VAR_0x8006, 0
special CallBattlePikeFunction
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0 frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
setvar VAR_TEMP_0, 255 setvar VAR_TEMP_0, 255
releaseall releaseall
@ -58,23 +54,15 @@ BattleFrontier_BattlePikeLobby_EventScript_25B78D:: @ 825B78D
frontier_givepoints frontier_givepoints
msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS
frontier_checkairshow frontier_checkairshow
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_DATA pike_get PIKE_DATA_TOTAL_STREAKS
setvar VAR_0x8005, 3
special CallBattlePikeFunction
addvar VAR_RESULT, 1 addvar VAR_RESULT, 1
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_DATA pike_set PIKE_DATA_TOTAL_STREAKS, VAR_RESULT
setvar VAR_0x8005, 3
copyvar VAR_0x8006, VAR_RESULT
special CallBattlePikeFunction
special LoadPlayerParty special LoadPlayerParty
special HealPlayerParty special HealPlayerParty
setvar VAR_0x8004, BATTLE_PIKE_FUNC_LOAD_MON_HELD_ITEMS pike_resethelditems
special CallBattlePikeFunction
message BattleFrontier_BattlePikeLobby_Text_25C1DF message BattleFrontier_BattlePikeLobby_Text_25C1DF
waitmessage waitmessage
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SAVE pike_save 0
setvar VAR_0x8005, 0
special CallBattlePikeFunction
playse SE_SAVE playse SE_SAVE
waitse waitse
msgbox BattleFrontier_BattlePikeLobby_Text_25BE02, MSGBOX_DEFAULT msgbox BattleFrontier_BattlePikeLobby_Text_25BE02, MSGBOX_DEFAULT
@ -89,17 +77,11 @@ BattleFrontier_BattlePikeLobby_EventScript_25B806:: @ 825B806
waitmessage waitmessage
frontier_checkairshow frontier_checkairshow
frontier_set FRONTIER_DATA_BATTLE_NUM, 0 frontier_set FRONTIER_DATA_BATTLE_NUM, 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_DATA pike_set PIKE_DATA_WIN_STREAK_ACTIVE, FALSE
setvar VAR_0x8005, 4
setvar VAR_0x8006, 0
special CallBattlePikeFunction
special LoadPlayerParty special LoadPlayerParty
special HealPlayerParty special HealPlayerParty
setvar VAR_0x8004, BATTLE_PIKE_FUNC_LOAD_MON_HELD_ITEMS pike_resethelditems
special CallBattlePikeFunction pike_save 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SAVE
setvar VAR_0x8005, 0
special CallBattlePikeFunction
playse SE_SAVE playse SE_SAVE
waitse waitse
msgbox BattleFrontier_BattlePikeLobby_Text_25BE02, MSGBOX_DEFAULT msgbox BattleFrontier_BattlePikeLobby_Text_25BE02, MSGBOX_DEFAULT
@ -156,23 +138,17 @@ BattleFrontier_BattlePikeLobby_EventScript_25B95C:: @ 825B95C
setvar VAR_TEMP_0, 0 setvar VAR_TEMP_0, 0
setvar VAR_TEMP_1, 0 setvar VAR_TEMP_1, 0
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
setvar VAR_0x8004, BATTLE_PIKE_FUNC_INIT_CHALLENGE pike_init
special CallBattlePikeFunction
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_DATA pike_set PIKE_DATA_WIN_STREAK_ACTIVE, TRUE
setvar VAR_0x8005, 4 pike_savehelditems
setvar VAR_0x8006, 1
special CallBattlePikeFunction
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SAVE_MON_HELD_ITEMS
special CallBattlePikeFunction
frontier_set FRONTIER_DATA_PAUSED, FALSE frontier_set FRONTIER_DATA_PAUSED, FALSE
special LoadPlayerParty special LoadPlayerParty
closemessage closemessage
delay 2 delay 2
call Common_EventScript_SaveGame call Common_EventScript_SaveGame
setvar VAR_TEMP_0, 255 setvar VAR_TEMP_0, 255
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SAVE_MON_HELD_ITEMS pike_savehelditems
special CallBattlePikeFunction
compare VAR_RESULT, 0 compare VAR_RESULT, 0
goto_if_eq BattleFrontier_BattlePikeLobby_EventScript_25BA5C goto_if_eq BattleFrontier_BattlePikeLobby_EventScript_25BA5C
special SavePlayerParty special SavePlayerParty

View File

@ -11,7 +11,7 @@ BattleFrontier_BattlePikeRoomNormal_OnFrame: @ 825D167
BattleFrontier_BattlePikeRoomNormal_EventScript_25D171:: @ 825D171 BattleFrontier_BattlePikeRoomNormal_EventScript_25D171:: @ 825D171
setvar VAR_TEMP_0, 1 setvar VAR_TEMP_0, 1
battlepike_getroomtype pike_getroomtype
switch VAR_RESULT switch VAR_RESULT
case PIKE_ROOM_SINGLE_BATTLE, BattleFrontier_BattlePikeRoomNormal_EventScript_25D1C6 case PIKE_ROOM_SINGLE_BATTLE, BattleFrontier_BattlePikeRoomNormal_EventScript_25D1C6
case PIKE_ROOM_HEAL_FULL, BattleFrontier_BattlePikeRoomNormal_EventScript_25D50E case PIKE_ROOM_HEAL_FULL, BattleFrontier_BattlePikeRoomNormal_EventScript_25D50E
@ -26,9 +26,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D1C6:: @ 825D1C6
delay 16 delay 16
applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D795 applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D795
waitmovement 0 waitmovement 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_BUFFER_RECORD_MIX_MSG pike_gettrainerintro 0
setvar VAR_0x8005, 0
special CallBattlePikeFunction
msgbox gStringVar4, MSGBOX_DEFAULT msgbox gStringVar4, MSGBOX_DEFAULT
waitmessage waitmessage
closemessage closemessage
@ -39,7 +37,6 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D1C6:: @ 825D1C6
waitstate waitstate
switch VAR_RESULT switch VAR_RESULT
case 1, BattleFrontier_BattlePikeRoomNormal_EventScript_25D226 case 1, BattleFrontier_BattlePikeRoomNormal_EventScript_25D226
BattleFrontier_BattlePikeRoomNormal_EventScript_25D20A:: @ 825D20A BattleFrontier_BattlePikeRoomNormal_EventScript_25D20A:: @ 825D20A
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6 warp MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY, 255, 5, 6
@ -59,9 +56,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D231:: @ 825D231
closemessage closemessage
applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D795 applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D795
waitmovement 0 waitmovement 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_BUFFER_RECORD_MIX_MSG pike_gettrainerintro 0
setvar VAR_0x8005, 0
special CallBattlePikeFunction
msgbox gStringVar4, MSGBOX_DEFAULT msgbox gStringVar4, MSGBOX_DEFAULT
waitmessage waitmessage
closemessage closemessage
@ -98,8 +93,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D2BF:: @ 825D2BF
lockall lockall
applymovement 2, BattleFrontier_BattlePikeRoomNormal_Movement_25D7DF applymovement 2, BattleFrontier_BattlePikeRoomNormal_Movement_25D7DF
waitmovement 0 waitmovement 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_HEAL_MONS_BEFORE_QUEEN pike_prequeenheal
special CallBattlePikeFunction
switch VAR_RESULT switch VAR_RESULT
case 0, BattleFrontier_BattlePikeRoomNormal_EventScript_25D4DC case 0, BattleFrontier_BattlePikeRoomNormal_EventScript_25D4DC
case 1, BattleFrontier_BattlePikeRoomNormal_EventScript_25D4EA case 1, BattleFrontier_BattlePikeRoomNormal_EventScript_25D4EA
@ -112,7 +106,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D2FB:: @ 825D2FB
applymovement EVENT_OBJ_ID_CAMERA, BattleFrontier_BattlePikeRoomNormal_Movement_25D9B0 applymovement EVENT_OBJ_ID_CAMERA, BattleFrontier_BattlePikeRoomNormal_Movement_25D9B0
applymovement 2, BattleFrontier_BattlePikeRoomNormal_Movement_25D7E2 applymovement 2, BattleFrontier_BattlePikeRoomNormal_Movement_25D7E2
waitmovement 0 waitmovement 0
playse 267 playse SE_CURTAIN
call BattleFrontier_BattlePikeRoomNormal_EventScript_25D8E7 call BattleFrontier_BattlePikeRoomNormal_EventScript_25D8E7
delay 4 delay 4
call BattleFrontier_BattlePikeRoomNormal_EventScript_25D8A4 call BattleFrontier_BattlePikeRoomNormal_EventScript_25D8A4
@ -121,7 +115,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D2FB:: @ 825D2FB
delay 4 delay 4
waitse waitse
delay 60 delay 60
playse 268 playse SE_CURTAIN1
delay 65 delay 65
call BattleFrontier_BattlePikeRoomNormal_EventScript_25D8A4 call BattleFrontier_BattlePikeRoomNormal_EventScript_25D8A4
showobjectat 1, MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL showobjectat 1, MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL
@ -132,12 +126,11 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D2FB:: @ 825D2FB
waitse waitse
applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D7E7 applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D7E7
waitmovement 0 waitmovement 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_QUEEN_FIGHT_TYPE pike_getbrainstatus
special CallBattlePikeFunction
switch VAR_RESULT switch VAR_RESULT
case 2, BattleFrontier_BattlePikeRoomNormal_EventScript_25D416 case FRONTIER_BRAIN_GOLD, BattleFrontier_BattlePikeRoomNormal_EventScript_25D416
case 3, BattleFrontier_BattlePikeRoomNormal_EventScript_25D3BD case FRONTIER_BRAIN_STREAK, BattleFrontier_BattlePikeRoomNormal_EventScript_25D3BD
case 4, BattleFrontier_BattlePikeRoomNormal_EventScript_25D443 case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattlePikeRoomNormal_EventScript_25D443
frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH
compare VAR_RESULT, FALSE compare VAR_RESULT, FALSE
goto_if_ne BattleFrontier_BattlePikeRoomNormal_EventScript_25D3BD goto_if_ne BattleFrontier_BattlePikeRoomNormal_EventScript_25D3BD
@ -199,9 +192,9 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D49D:: @ 825D49D
waitmovement 0 waitmovement 0
applymovement EVENT_OBJ_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_25D7DC applymovement EVENT_OBJ_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_25D7DC
waitmovement 0 waitmovement 0
battlepike_getstreak pike_get PIKE_DATA_WIN_STREAK
addvar VAR_RESULT, 1 addvar VAR_RESULT, 1
battlepike_setstreak VAR_RESULT pike_set PIKE_DATA_WIN_STREAK VAR_RESULT
call BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom call BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom
waitstate waitstate
end end
@ -256,17 +249,13 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D53E:: @ 825D53E
waitmovement 0 waitmovement 0
applymovement EVENT_OBJ_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_25D7BB applymovement EVENT_OBJ_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_25D7BB
waitmovement 0 waitmovement 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_BUFFER_RECORD_MIX_MSG pike_gettrainerintro 0
setvar VAR_0x8005, 0
special CallBattlePikeFunction
msgbox gStringVar4, MSGBOX_DEFAULT msgbox gStringVar4, MSGBOX_DEFAULT
closemessage closemessage
delay 16 delay 16
applymovement EVENT_OBJ_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_25D7BD applymovement EVENT_OBJ_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_25D7BD
waitmovement 0 waitmovement 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_BUFFER_RECORD_MIX_MSG pike_gettrainerintro 1
setvar VAR_0x8005, 1
special CallBattlePikeFunction
msgbox gStringVar4, MSGBOX_DEFAULT msgbox gStringVar4, MSGBOX_DEFAULT
closemessage closemessage
setvar VAR_0x8004, SPECIAL_BATTLE_PIKE_DOUBLE setvar VAR_0x8004, SPECIAL_BATTLE_PIKE_DOUBLE
@ -294,12 +283,11 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D605:: @ 825D605
message BattleFrontier_BattlePikeRoomNormal_Text_25DBD1 message BattleFrontier_BattlePikeRoomNormal_Text_25DBD1
applymovement 2, BattleFrontier_BattlePikeRoomNormal_Movement_25D7AA applymovement 2, BattleFrontier_BattlePikeRoomNormal_Movement_25D7AA
waitmovement 0 waitmovement 0
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON pike_getstatusmon
special CallBattlePikeFunction
copyvar VAR_0x8004, VAR_RESULT copyvar VAR_0x8004, VAR_RESULT
compare VAR_0x8004, 0 compare VAR_0x8004, PIKE_STATUS_KIRLIA
call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D643 call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D643
compare VAR_0x8004, 1 compare VAR_0x8004, PIKE_STATUS_DUSCLOPS
call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D6D5 call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D6D5
msgbox BattleFrontier_BattlePikeRoomNormal_Text_25DD3F, MSGBOX_DEFAULT msgbox BattleFrontier_BattlePikeRoomNormal_Text_25DD3F, MSGBOX_DEFAULT
closemessage closemessage
@ -312,18 +300,16 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D643:: @ 825D643
waitse waitse
playmoncry SPECIES_KIRLIA, 0 playmoncry SPECIES_KIRLIA, 0
waitmoncry waitmoncry
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_STATUS pike_getstatus
special CallBattlePikeFunction compare VAR_RESULT, PIKE_STATUS_TOXIC
compare VAR_RESULT, 2
call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D751 call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D751
compare VAR_RESULT, 1 compare VAR_RESULT, PIKE_STATUS_BURN
call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D758 call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D758
compare VAR_RESULT, 3 compare VAR_RESULT, PIKE_STATUS_PARALYSIS
call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D75F call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D75F
compare VAR_RESULT, 4 compare VAR_RESULT, PIKE_STATUS_SLEEP
call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D766 call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D766
setvar VAR_0x8004, BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE pike_fadescreen
special CallBattlePikeFunction
waitstate waitstate
applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D7A2 applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D7A2
waitmovement 0 waitmovement 0
@ -349,14 +335,12 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D6D5:: @ 825D6D5
waitse waitse
playmoncry SPECIES_DUSCLOPS, 0 playmoncry SPECIES_DUSCLOPS, 0
waitmoncry waitmoncry
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_STATUS pike_getstatus
special CallBattlePikeFunction compare VAR_RESULT, PIKE_STATUS_FREEZE
compare VAR_RESULT, 0
call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D76D call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D76D
compare VAR_RESULT, 1 compare VAR_RESULT, PIKE_STATUS_BURN
call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D774 call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D774
setvar VAR_0x8004, BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE pike_fadescreen
special CallBattlePikeFunction
waitstate waitstate
applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D7A2 applymovement 1, BattleFrontier_BattlePikeRoomNormal_Movement_25D7A2
waitmovement 0 waitmovement 0
@ -555,7 +539,7 @@ BattleFrontier_BattlePikeRoomNormal_Movement_25D7EA: @ 825D7EA
step_end step_end
BattleFrontier_BattlePikeRoomNormal_EventScript_25D7ED:: @ 825D7ED BattleFrontier_BattlePikeRoomNormal_EventScript_25D7ED:: @ 825D7ED
battlepike_getroomtype pike_getroomtype
switch VAR_RESULT switch VAR_RESULT
case PIKE_ROOM_NPC, BattleFrontier_BattlePikeRoomNormal_EventScript_25D81B case PIKE_ROOM_NPC, BattleFrontier_BattlePikeRoomNormal_EventScript_25D81B
case PIKE_ROOM_STATUS, BattleFrontier_BattlePikeRoomNormal_EventScript_25D831 case PIKE_ROOM_STATUS, BattleFrontier_BattlePikeRoomNormal_EventScript_25D831
@ -563,8 +547,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D7ED:: @ 825D7ED
BattleFrontier_BattlePikeRoomNormal_EventScript_25D81B:: @ 825D81B BattleFrontier_BattlePikeRoomNormal_EventScript_25D81B:: @ 825D81B
lock lock
faceplayer faceplayer
setvar VAR_0x8004, BATTLE_PIKE_FUNC_BUFFER_NPC_MSG pike_getnpcmsg
special CallBattlePikeFunction
msgbox gStringVar4, MSGBOX_DEFAULT msgbox gStringVar4, MSGBOX_DEFAULT
waitmessage waitmessage
closemessage closemessage
@ -580,8 +563,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_25D831:: @ 825D831
end end
BattleFrontier_BattlePikeRoomNormal_EventScript_25D83E:: @ 825D83E BattleFrontier_BattlePikeRoomNormal_EventScript_25D83E:: @ 825D83E
setvar VAR_0x8004, BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS pike_healonetwomons
special CallBattlePikeFunction
compare VAR_RESULT, 2 compare VAR_RESULT, 2
call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D881 call_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_25D881
compare VAR_RESULT, 1 compare VAR_RESULT, 1

View File

@ -11,8 +11,7 @@ BattleFrontier_BattlePikeRoomWildMons_MapScript2_25E42A: @ 825E42A
BattleFrontier_BattlePikeRoomWildMons_EventScript_25E43C:: @ 825E43C BattleFrontier_BattlePikeRoomWildMons_EventScript_25E43C:: @ 825E43C
setvar VAR_TEMP_0, 1 setvar VAR_TEMP_0, 1
setvar VAR_0x8004, BATTLE_PIKE_FUNC_6 pike_inwildmonroom
special CallBattlePikeFunction
end end
BattleFrontier_BattlePikeRoomWildMons_EventScript_25E44A:: @ 825E44A BattleFrontier_BattlePikeRoomWildMons_EventScript_25E44A:: @ 825E44A

View File

@ -34,9 +34,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_25C8A4:: @ 825C8A4
lockall lockall
message BattleFrontier_BattlePikeThreePathRoom_Text_AwaitingReturnSaveBeforeResume message BattleFrontier_BattlePikeThreePathRoom_Text_AwaitingReturnSaveBeforeResume
waitmessage waitmessage
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SAVE pike_save CHALLENGE_STATUS_SAVING
setvar VAR_0x8005, CHALLENGE_STATUS_SAVING
special CallBattlePikeFunction
playse SE_SAVE playse SE_SAVE
waitse waitse
frontier_set FRONTIER_DATA_PAUSED, FALSE frontier_set FRONTIER_DATA_PAUSED, FALSE
@ -124,9 +122,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_25C9FD:: @ 825C9FD
message BattleFrontier_BattlePikeThreePathRoom_Text_SavingYourData message BattleFrontier_BattlePikeThreePathRoom_Text_SavingYourData
waitmessage waitmessage
special LoadPlayerParty special LoadPlayerParty
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SAVE pike_save CHALLENGE_STATUS_PAUSED
setvar VAR_0x8005, CHALLENGE_STATUS_PAUSED
special CallBattlePikeFunction
playse SE_SAVE playse SE_SAVE
waitse waitse
fadescreen 1 fadescreen 1
@ -152,9 +148,8 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_25CA5A:: @ 825CA5A
end end
BattleFrontier_BattlePikeThreePathRoom_EventScript_25CA78:: @ 825CA78 BattleFrontier_BattlePikeThreePathRoom_EventScript_25CA78:: @ 825CA78
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_HINT_ROOM pike_sethintroom
special CallBattlePikeFunction compare VAR_RESULT, TRUE
compare VAR_RESULT, 1
goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_25CA91 goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_25CA91
setvar VAR_TEMP_5, 255 setvar VAR_TEMP_5, 255
end end
@ -175,7 +170,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_25CA97:: @ 825CA97
end end
BattleFrontier_BattlePikeThreePathRoom_EventScript_HintGiver:: @ 825CABB BattleFrontier_BattlePikeThreePathRoom_EventScript_HintGiver:: @ 825CABB
battlepike_gethint pike_gethint
compare VAR_RESULT, PIKE_HINT_BRAIN compare VAR_RESULT, PIKE_HINT_BRAIN
goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveBrainHint goto_if_eq BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveBrainHint
lock lock
@ -194,8 +189,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_DeclineHint:: @ 825CB00
end end
BattleFrontier_BattlePikeThreePathRoom_EventScript_AcceptHint:: @ 825CB0A BattleFrontier_BattlePikeThreePathRoom_EventScript_AcceptHint:: @ 825CB0A
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_HINT_ROOM_ID pike_gethintroomid
special CallBattlePikeFunction
switch VAR_RESULT switch VAR_RESULT
case PIKE_ROOM_LEFT, BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveLeftRoomHint case PIKE_ROOM_LEFT, BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveLeftRoomHint
case PIKE_ROOM_CENTER, BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveCenterRoomHint case PIKE_ROOM_CENTER, BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveCenterRoomHint
@ -215,7 +209,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveRightRoomHint:: @ 825CB53
goto BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint goto BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint
BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint:: @ 825CB60 BattleFrontier_BattlePikeThreePathRoom_EventScript_GiveHint:: @ 825CB60
battlepike_gethint pike_gethint
switch VAR_RESULT switch VAR_RESULT
case PIKE_HINT_NOSTALGIA, BattleFrontier_BattlePikeThreePathRoom_EventScript_HintNostalgia case PIKE_HINT_NOSTALGIA, BattleFrontier_BattlePikeThreePathRoom_EventScript_HintNostalgia
case PIKE_HINT_WHISPERING, BattleFrontier_BattlePikeThreePathRoom_EventScript_HintWhispering case PIKE_HINT_WHISPERING, BattleFrontier_BattlePikeThreePathRoom_EventScript_HintWhispering

View File

@ -3,8 +3,8 @@ BattleFrontier_BattlePikeRoomNormal_MapScripts_2C3E1B: @ 82C3E1B
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeRoom_OnWarp map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeRoom_OnWarp
BattleFrontier_BattlePikeRoom_OnTransition: @ 82C3E25 BattleFrontier_BattlePikeRoom_OnTransition: @ 82C3E25
battlepike_setroomobjects pike_setroomobjects
battlepike_getroomtype pike_getroomtype
switch VAR_RESULT switch VAR_RESULT
case PIKE_ROOM_SINGLE_BATTLE, BattleFrontier_BattlePikeRoomNormal_EventScript_2C3EB1 case PIKE_ROOM_SINGLE_BATTLE, BattleFrontier_BattlePikeRoomNormal_EventScript_2C3EB1
case PIKE_ROOM_HEAL_FULL, BattleFrontier_BattlePikeRoomNormal_EventScript_2C3EB1 case PIKE_ROOM_HEAL_FULL, BattleFrontier_BattlePikeRoomNormal_EventScript_2C3EB1
@ -48,7 +48,7 @@ BattleFrontier_BattlePikeRoom_OnWarp: @ 82C3EDE
BattleFrontier_BattlePikeRoomNormal_EventScript_EnterRoom:: @ 82C3EE8 BattleFrontier_BattlePikeRoomNormal_EventScript_EnterRoom:: @ 82C3EE8
setvar VAR_OBJ_GFX_ID_1, EVENT_OBJ_GFX_LINK_RECEPTIONIST setvar VAR_OBJ_GFX_ID_1, EVENT_OBJ_GFX_LINK_RECEPTIONIST
setvar VAR_OBJ_GFX_ID_0, EVENT_OBJ_GFX_LINK_RECEPTIONIST setvar VAR_OBJ_GFX_ID_0, EVENT_OBJ_GFX_LINK_RECEPTIONIST
battlepike_getroomtype pike_getroomtype
compare VAR_RESULT, PIKE_ROOM_STATUS compare VAR_RESULT, PIKE_ROOM_STATUS
goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_2C3F35 goto_if_eq BattleFrontier_BattlePikeRoomNormal_EventScript_2C3F35
compare VAR_RESULT, PIKE_ROOM_HARD_BATTLE compare VAR_RESULT, PIKE_ROOM_HARD_BATTLE
@ -89,14 +89,14 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_RightRoomWarp:: @ 82C3F64
end end
BattleFrontier_BattlePikeThreePathRoom_EventScript_RoomWarp:: @ 82C3F6F BattleFrontier_BattlePikeThreePathRoom_EventScript_RoomWarp:: @ 82C3F6F
battlepike_getstreak pike_get PIKE_DATA_WIN_STREAK
addvar VAR_RESULT, 1 addvar VAR_RESULT, 1
battlepike_setstreak VAR_RESULT pike_set PIKE_DATA_WIN_STREAK, VAR_RESULT
frontier_get FRONTIER_DATA_BATTLE_NUM frontier_get FRONTIER_DATA_BATTLE_NUM
addvar VAR_RESULT, 1 addvar VAR_RESULT, 1
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
battlepike_setnextroom pike_setnextroom
battlepike_getroomtype pike_getroomtype
switch VAR_RESULT switch VAR_RESULT
case PIKE_ROOM_SINGLE_BATTLE, BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom case PIKE_ROOM_SINGLE_BATTLE, BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom
case PIKE_ROOM_HEAL_FULL, BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom case PIKE_ROOM_HEAL_FULL, BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom
@ -152,18 +152,18 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_2C408D:: @ 82C408D
end end
BattleFrontier_BattlePikeRoomNormal_EventScript_Exit:: @ 82C40A2 BattleFrontier_BattlePikeRoomNormal_EventScript_Exit:: @ 82C40A2
battlepike_ispartyfullhealth pike_ispartyfullhealth
compare VAR_RESULT, TRUE compare VAR_RESULT, TRUE
call_if_eq BattleFrontier_BattlePikeRoom_EventScript_DisableHealing call_if_eq BattleFrontier_BattlePikeRoom_EventScript_DisableHealing
compare VAR_RESULT, TRUE compare VAR_RESULT, TRUE
call_if_ne BattleFrontier_BattlePikeRoom_EventScript_EnableHealing call_if_ne BattleFrontier_BattlePikeRoom_EventScript_EnableHealing
battlepike_getstreak pike_get PIKE_DATA_WIN_STREAK
addvar VAR_RESULT, 1 addvar VAR_RESULT, 1
battlepike_setstreak VAR_RESULT pike_set PIKE_DATA_WIN_STREAK, VAR_RESULT
frontier_get FRONTIER_DATA_BATTLE_NUM frontier_get FRONTIER_DATA_BATTLE_NUM
addvar VAR_RESULT, 1 addvar VAR_RESULT, 1
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
battlepike_isfinalroom pike_isfinalroom
compare VAR_RESULT, TRUE compare VAR_RESULT, TRUE
call_if_eq BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom call_if_eq BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom
compare VAR_RESULT, FALSE compare VAR_RESULT, FALSE
@ -172,11 +172,11 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_Exit:: @ 82C40A2
end end
BattleFrontier_BattlePikeRoom_EventScript_DisableHealing:: @ 82C4128 BattleFrontier_BattlePikeRoom_EventScript_DisableHealing:: @ 82C4128
battlepike_nohealing TRUE pike_nohealing TRUE
return return
BattleFrontier_BattlePikeRoom_EventScript_EnableHealing:: @ 82C4136 BattleFrontier_BattlePikeRoom_EventScript_EnableHealing:: @ 82C4136
battlepike_nohealing FALSE pike_nohealing FALSE
return return
BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom:: @ 82C4144 BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom:: @ 82C4144
@ -194,20 +194,19 @@ BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom:: @ 82C415C
return return
BattleFrontier_BattlePikeRoomWildMons_EventScript_2C4174:: @ 82C4174 BattleFrontier_BattlePikeRoomWildMons_EventScript_2C4174:: @ 82C4174
setvar VAR_0x8004, BATTLE_PIKE_FUNC_7 pike_exitwildmonroom
special CallBattlePikeFunction pike_ispartyfullhealth
battlepike_ispartyfullhealth
compare VAR_RESULT, TRUE compare VAR_RESULT, TRUE
call_if_eq BattleFrontier_BattlePikeRoom_EventScript_DisableHealing call_if_eq BattleFrontier_BattlePikeRoom_EventScript_DisableHealing
compare VAR_RESULT, TRUE compare VAR_RESULT, TRUE
call_if_ne BattleFrontier_BattlePikeRoom_EventScript_EnableHealing call_if_ne BattleFrontier_BattlePikeRoom_EventScript_EnableHealing
battlepike_getstreak pike_get PIKE_DATA_WIN_STREAK
addvar VAR_RESULT, 1 addvar VAR_RESULT, 1
battlepike_setstreak VAR_RESULT pike_set PIKE_DATA_WIN_STREAK, VAR_RESULT
frontier_get FRONTIER_DATA_BATTLE_NUM frontier_get FRONTIER_DATA_BATTLE_NUM
addvar VAR_RESULT, 1 addvar VAR_RESULT, 1
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
battlepike_isfinalroom pike_isfinalroom
compare VAR_RESULT, TRUE compare VAR_RESULT, TRUE
call_if_eq BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom call_if_eq BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom
compare VAR_RESULT, FALSE compare VAR_RESULT, FALSE

View File

@ -29,9 +29,8 @@ EventScript_FrontierFieldWhiteOut:: @ 82736F8
message gText_PlayerWhitedOut message gText_PlayerWhitedOut
waitmessage waitmessage
waitbuttonpress waitbuttonpress
setvar VAR_0x8004, BATTLE_PIKE_FUNC_IS_IN pike_inchallenge
special CallBattlePikeFunction compare VAR_RESULT, TRUE
compare VAR_RESULT, 1
goto_if_eq BattleFrontier_BattlePike_EventScript_Retire goto_if_eq BattleFrontier_BattlePike_EventScript_Retire
setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_IS_IN setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_IS_IN
special CallBattlePyramidFunction special CallBattlePyramidFunction

View File

@ -23,38 +23,50 @@
#define PIKE_HINT_BRAIN 4 #define PIKE_HINT_BRAIN 4
// For the room with a status effect. // For the room with a status effect.
#define PIKE_STATUS_KIRLIA 0 #define PIKE_STATUS_KIRLIA 0
#define PIKE_STATUS_DUSCLOPS 1 #define PIKE_STATUS_DUSCLOPS 1
#define PIKE_STATUS_FREEZE 0
#define PIKE_STATUS_BURN 1
#define PIKE_STATUS_TOXIC 2
#define PIKE_STATUS_PARALYSIS 3
#define PIKE_STATUS_SLEEP 4
// Function IDs for sBattlePikeFunctions / CallBattlePikeFunction // Function IDs for sBattlePikeFunctions / CallBattlePikeFunction
#define BATTLE_PIKE_FUNC_SET_ROOM_TYPE 0 #define BATTLE_PIKE_FUNC_SET_ROOM_TYPE 0
#define BATTLE_PIKE_FUNC_GET_DATA 1 #define BATTLE_PIKE_FUNC_GET_DATA 1
#define BATTLE_PIKE_FUNC_SET_DATA 2 #define BATTLE_PIKE_FUNC_SET_DATA 2
#define BATTLE_PIKE_FUNC_IS_FINAL_ROOM 3 #define BATTLE_PIKE_FUNC_IS_FINAL_ROOM 3
#define BATTLE_PIKE_FUNC_SET_ROOM_OBJECTS 4 #define BATTLE_PIKE_FUNC_SET_ROOM_OBJECTS 4
#define BATTLE_PIKE_FUNC_GET_ROOM_TYPE 5 #define BATTLE_PIKE_FUNC_GET_ROOM_TYPE 5
#define BATTLE_PIKE_FUNC_6 6 #define BATTLE_PIKE_FUNC_SET_IN_WILD_MON_ROOM 6
#define BATTLE_PIKE_FUNC_7 7 #define BATTLE_PIKE_FUNC_CLEAR_IN_WILD_MON_ROOM 7
#define BATTLE_PIKE_FUNC_SAVE 8 #define BATTLE_PIKE_FUNC_SAVE 8
#define BATTLE_PIKE_FUNC_NULL_9 9 #define BATTLE_PIKE_FUNC_NULL_9 9
#define BATTLE_PIKE_FUNC_NULL_10 10 #define BATTLE_PIKE_FUNC_NULL_10 10
#define BATTLE_PIKE_FUNC_GET_ROOM_STATUS 11 #define BATTLE_PIKE_FUNC_GET_ROOM_STATUS 11
#define BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON 12 #define BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON 12
#define BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS 13 #define BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS 13
#define BATTLE_PIKE_FUNC_BUFFER_NPC_MSG 14 #define BATTLE_PIKE_FUNC_BUFFER_NPC_MSG 14
#define BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE 15 #define BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE 15
#define BATTLE_PIKE_FUNC_IS_IN 16 #define BATTLE_PIKE_FUNC_IS_IN 16
#define BATTLE_PIKE_FUNC_SET_HINT_ROOM 17 #define BATTLE_PIKE_FUNC_SET_HINT_ROOM 17
#define BATTLE_PIKE_FUNC_GET_HINT_ROOM_ID 18 #define BATTLE_PIKE_FUNC_GET_HINT_ROOM_ID 18
#define BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT 19 #define BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT 19
#define BATTLE_PIKE_FUNC_CLEAR_TRAINER_IDS 20 #define BATTLE_PIKE_FUNC_CLEAR_TRAINER_IDS 20
#define BATTLE_PIKE_FUNC_BUFFER_RECORD_MIX_MSG 21 #define BATTLE_PIKE_FUNC_GET_TRAINER_INTRO 21
#define BATTLE_PIKE_FUNC_GET_QUEEN_FIGHT_TYPE 22 #define BATTLE_PIKE_FUNC_GET_QUEEN_FIGHT_TYPE 22
#define BATTLE_PIKE_FUNC_HEAL_MONS_BEFORE_QUEEN 23 #define BATTLE_PIKE_FUNC_HEAL_MONS_BEFORE_QUEEN 23
#define BATTLE_PIKE_FUNC_SET_HEALING_ROOMS_DISABLED 24 #define BATTLE_PIKE_FUNC_SET_HEAL_ROOMS_DISABLED 24
#define BATTLE_PIKE_FUNC_IS_PARTY_FULL_HEALTH 25 #define BATTLE_PIKE_FUNC_IS_PARTY_FULL_HEALTH 25
#define BATTLE_PIKE_FUNC_SAVE_MON_HELD_ITEMS 26 #define BATTLE_PIKE_FUNC_SAVE_HELD_ITEMS 26
#define BATTLE_PIKE_FUNC_LOAD_MON_HELD_ITEMS 27 #define BATTLE_PIKE_FUNC_RESET_HELD_ITEMS 27
#define BATTLE_PIKE_FUNC_INIT_CHALLENGE 28 #define BATTLE_PIKE_FUNC_INIT 28
#define PIKE_DATA_PRIZE 0
#define PIKE_DATA_WIN_STREAK 1
#define PIKE_DATA_RECORD_STREAK 2
#define PIKE_DATA_TOTAL_STREAKS 3
#define PIKE_DATA_WIN_STREAK_ACTIVE 4
#endif // GUARD_CONSTANTS_BATTLE_PIKE_H #endif // GUARD_CONSTANTS_BATTLE_PIKE_H

View File

@ -44,7 +44,7 @@ struct PikeWildMon
// IWRAM bss // IWRAM bss
static u8 sRoomType; static u8 sRoomType;
static u8 sStatusMon; static u8 sStatusMon;
static bool8 sUnknown_0300128E; static bool8 sInWildMonRoom;
static u32 sStatusFlags; static u32 sStatusFlags;
static u8 sNpcId; static u8 sNpcId;
@ -55,8 +55,8 @@ static void SetBattlePikeData(void);
static void IsNextRoomFinal(void); static void IsNextRoomFinal(void);
static void SetupRoomEventObjects(void); static void SetupRoomEventObjects(void);
static void GetRoomType(void); static void GetRoomType(void);
static void sub_81A7400(void); static void SetInWildMonRoom(void);
static void sub_81A740C(void); static void ClearInWildMonRoom(void);
static void SavePikeChallenge(void); static void SavePikeChallenge(void);
static void nullsub_76(void); static void nullsub_76(void);
static void nullsub_124(void); static void nullsub_124(void);
@ -70,12 +70,12 @@ static void SetHintedRoom(void);
static void GetHintedRoomIndex(void); static void GetHintedRoomIndex(void);
static void GetRoomTypeHint(void); static void GetRoomTypeHint(void);
static void ClearPikeTrainerIds(void); static void ClearPikeTrainerIds(void);
static void BufferRecordMixingTrainerMessage(void); static void BufferTrainerIntro(void);
static void GetCurrentRoomPikeQueenFightType(void); static void GetCurrentRoomPikeQueenFightType(void);
static void HealSomeMonsBeforePikeQueen(void); static void HealSomeMonsBeforePikeQueen(void);
static void SetHealingroomTypesDisabled(void); static void SetHealingroomTypesDisabled(void);
static void IsPartyFullHealed(void); static void IsPartyFullHealed(void);
static void BackupMonHeldItems(void); static void SaveMonHeldItems(void);
static void RestoreMonHeldItems(void); static void RestoreMonHeldItems(void);
static void InitPikeChallenge(void); static void InitPikeChallenge(void);
static u8 GetNextRoomType(void); static u8 GetNextRoomType(void);
@ -480,35 +480,35 @@ static const u8 sFrontierBrainStreakAppearances[NUM_FRONTIER_FACILITIES][4] =
static void (* const sBattlePikeFunctions[])(void) = static void (* const sBattlePikeFunctions[])(void) =
{ {
[BATTLE_PIKE_FUNC_SET_ROOM_TYPE] = SetRoomType, [BATTLE_PIKE_FUNC_SET_ROOM_TYPE] = SetRoomType,
[BATTLE_PIKE_FUNC_GET_DATA] = GetBattlePikeData, [BATTLE_PIKE_FUNC_GET_DATA] = GetBattlePikeData,
[BATTLE_PIKE_FUNC_SET_DATA] = SetBattlePikeData, [BATTLE_PIKE_FUNC_SET_DATA] = SetBattlePikeData,
[BATTLE_PIKE_FUNC_IS_FINAL_ROOM] = IsNextRoomFinal, [BATTLE_PIKE_FUNC_IS_FINAL_ROOM] = IsNextRoomFinal,
[BATTLE_PIKE_FUNC_SET_ROOM_OBJECTS] = SetupRoomEventObjects, [BATTLE_PIKE_FUNC_SET_ROOM_OBJECTS] = SetupRoomEventObjects,
[BATTLE_PIKE_FUNC_GET_ROOM_TYPE] = GetRoomType, [BATTLE_PIKE_FUNC_GET_ROOM_TYPE] = GetRoomType,
[BATTLE_PIKE_FUNC_6] = sub_81A7400, [BATTLE_PIKE_FUNC_SET_IN_WILD_MON_ROOM] = SetInWildMonRoom,
[BATTLE_PIKE_FUNC_7] = sub_81A740C, [BATTLE_PIKE_FUNC_CLEAR_IN_WILD_MON_ROOM] = ClearInWildMonRoom,
[BATTLE_PIKE_FUNC_SAVE] = SavePikeChallenge, [BATTLE_PIKE_FUNC_SAVE] = SavePikeChallenge,
[BATTLE_PIKE_FUNC_NULL_9] = nullsub_76, [BATTLE_PIKE_FUNC_NULL_9] = nullsub_76,
[BATTLE_PIKE_FUNC_NULL_10] = nullsub_124, [BATTLE_PIKE_FUNC_NULL_10] = nullsub_124,
[BATTLE_PIKE_FUNC_GET_ROOM_STATUS] = GetRoomInflictedStatus, [BATTLE_PIKE_FUNC_GET_ROOM_STATUS] = GetRoomInflictedStatus,
[BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON] = GetRoomInflictedStatusMon, [BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON] = GetRoomInflictedStatusMon,
[BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS] = HealOneOrTwoMons, [BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS] = HealOneOrTwoMons,
[BATTLE_PIKE_FUNC_BUFFER_NPC_MSG] = BufferNPCMessage, [BATTLE_PIKE_FUNC_BUFFER_NPC_MSG] = BufferNPCMessage,
[BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE] = StatusInflictionScreenFade, [BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE] = StatusInflictionScreenFade,
[BATTLE_PIKE_FUNC_IS_IN] = GetInBattlePike, [BATTLE_PIKE_FUNC_IS_IN] = GetInBattlePike,
[BATTLE_PIKE_FUNC_SET_HINT_ROOM] = SetHintedRoom, [BATTLE_PIKE_FUNC_SET_HINT_ROOM] = SetHintedRoom,
[BATTLE_PIKE_FUNC_GET_HINT_ROOM_ID] = GetHintedRoomIndex, [BATTLE_PIKE_FUNC_GET_HINT_ROOM_ID] = GetHintedRoomIndex,
[BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT] = GetRoomTypeHint, [BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT] = GetRoomTypeHint,
[BATTLE_PIKE_FUNC_CLEAR_TRAINER_IDS] = ClearPikeTrainerIds, [BATTLE_PIKE_FUNC_CLEAR_TRAINER_IDS] = ClearPikeTrainerIds,
[BATTLE_PIKE_FUNC_BUFFER_RECORD_MIX_MSG] = BufferRecordMixingTrainerMessage, [BATTLE_PIKE_FUNC_GET_TRAINER_INTRO] = BufferTrainerIntro,
[BATTLE_PIKE_FUNC_GET_QUEEN_FIGHT_TYPE] = GetCurrentRoomPikeQueenFightType, [BATTLE_PIKE_FUNC_GET_QUEEN_FIGHT_TYPE] = GetCurrentRoomPikeQueenFightType,
[BATTLE_PIKE_FUNC_HEAL_MONS_BEFORE_QUEEN] = HealSomeMonsBeforePikeQueen, [BATTLE_PIKE_FUNC_HEAL_MONS_BEFORE_QUEEN] = HealSomeMonsBeforePikeQueen,
[BATTLE_PIKE_FUNC_SET_HEALING_ROOMS_DISABLED] = SetHealingroomTypesDisabled, [BATTLE_PIKE_FUNC_SET_HEAL_ROOMS_DISABLED] = SetHealingroomTypesDisabled,
[BATTLE_PIKE_FUNC_IS_PARTY_FULL_HEALTH] = IsPartyFullHealed, [BATTLE_PIKE_FUNC_IS_PARTY_FULL_HEALTH] = IsPartyFullHealed,
[BATTLE_PIKE_FUNC_SAVE_MON_HELD_ITEMS] = BackupMonHeldItems, [BATTLE_PIKE_FUNC_SAVE_HELD_ITEMS] = SaveMonHeldItems,
[BATTLE_PIKE_FUNC_LOAD_MON_HELD_ITEMS] = RestoreMonHeldItems, [BATTLE_PIKE_FUNC_RESET_HELD_ITEMS] = RestoreMonHeldItems,
[BATTLE_PIKE_FUNC_INIT_CHALLENGE] = InitPikeChallenge [BATTLE_PIKE_FUNC_INIT] = InitPikeChallenge
}; };
static const u8 sRoomTypeHints[] = { static const u8 sRoomTypeHints[] = {
@ -623,19 +623,19 @@ static void GetBattlePikeData(void)
switch (gSpecialVar_0x8005) switch (gSpecialVar_0x8005)
{ {
case 0: case PIKE_DATA_PRIZE:
gSpecialVar_Result = gSaveBlock2Ptr->frontier.pikePrize; gSpecialVar_Result = gSaveBlock2Ptr->frontier.pikePrize;
break; break;
case 1: case PIKE_DATA_WIN_STREAK:
gSpecialVar_Result = gSaveBlock2Ptr->frontier.pikeWinStreaks[gSaveBlock2Ptr->frontier.lvlMode]; gSpecialVar_Result = gSaveBlock2Ptr->frontier.pikeWinStreaks[gSaveBlock2Ptr->frontier.lvlMode];
break; break;
case 2: case PIKE_DATA_RECORD_STREAK:
gSpecialVar_Result = gSaveBlock2Ptr->frontier.pikeRecordStreaks[gSaveBlock2Ptr->frontier.lvlMode]; gSpecialVar_Result = gSaveBlock2Ptr->frontier.pikeRecordStreaks[gSaveBlock2Ptr->frontier.lvlMode];
break; break;
case 3: case PIKE_DATA_TOTAL_STREAKS:
gSpecialVar_Result = gSaveBlock2Ptr->frontier.pikeTotalStreaks[gSaveBlock2Ptr->frontier.lvlMode]; gSpecialVar_Result = gSaveBlock2Ptr->frontier.pikeTotalStreaks[gSaveBlock2Ptr->frontier.lvlMode];
break; break;
case 4: case PIKE_DATA_WIN_STREAK_ACTIVE:
if (lvlMode != FRONTIER_LVL_50) if (lvlMode != FRONTIER_LVL_50)
gSpecialVar_Result = gSaveBlock2Ptr->frontier.winStreakActiveFlags & STREAK_PIKE_OPEN; gSpecialVar_Result = gSaveBlock2Ptr->frontier.winStreakActiveFlags & STREAK_PIKE_OPEN;
else else
@ -650,22 +650,22 @@ static void SetBattlePikeData(void)
switch (gSpecialVar_0x8005) switch (gSpecialVar_0x8005)
{ {
case 0: case PIKE_DATA_PRIZE:
gSaveBlock2Ptr->frontier.pikePrize = gSpecialVar_0x8006; gSaveBlock2Ptr->frontier.pikePrize = gSpecialVar_0x8006;
break; break;
case 1: case PIKE_DATA_WIN_STREAK:
if (gSpecialVar_0x8006 <= MAX_STREAK) if (gSpecialVar_0x8006 <= MAX_STREAK)
gSaveBlock2Ptr->frontier.pikeWinStreaks[gSaveBlock2Ptr->frontier.lvlMode] = gSpecialVar_0x8006; gSaveBlock2Ptr->frontier.pikeWinStreaks[gSaveBlock2Ptr->frontier.lvlMode] = gSpecialVar_0x8006;
break; break;
case 2: case PIKE_DATA_RECORD_STREAK:
if (gSpecialVar_0x8006 <= MAX_STREAK && gSaveBlock2Ptr->frontier.pikeRecordStreaks[gSaveBlock2Ptr->frontier.lvlMode] < gSpecialVar_0x8006) if (gSpecialVar_0x8006 <= MAX_STREAK && gSaveBlock2Ptr->frontier.pikeRecordStreaks[gSaveBlock2Ptr->frontier.lvlMode] < gSpecialVar_0x8006)
gSaveBlock2Ptr->frontier.pikeRecordStreaks[gSaveBlock2Ptr->frontier.lvlMode] = gSpecialVar_0x8006; gSaveBlock2Ptr->frontier.pikeRecordStreaks[gSaveBlock2Ptr->frontier.lvlMode] = gSpecialVar_0x8006;
break; break;
case 3: case PIKE_DATA_TOTAL_STREAKS:
if (gSpecialVar_0x8006 <= MAX_STREAK) if (gSpecialVar_0x8006 <= MAX_STREAK)
gSaveBlock2Ptr->frontier.pikeTotalStreaks[gSaveBlock2Ptr->frontier.lvlMode] = gSpecialVar_0x8006; gSaveBlock2Ptr->frontier.pikeTotalStreaks[gSaveBlock2Ptr->frontier.lvlMode] = gSpecialVar_0x8006;
break; break;
case 4: case PIKE_DATA_WIN_STREAK_ACTIVE:
if (lvlMode != FRONTIER_LVL_50) if (lvlMode != FRONTIER_LVL_50)
{ {
if (gSpecialVar_0x8006) if (gSpecialVar_0x8006)
@ -697,14 +697,14 @@ static void GetRoomType(void)
gSpecialVar_Result = sRoomType; gSpecialVar_Result = sRoomType;
} }
static void sub_81A7400(void) static void SetInWildMonRoom(void)
{ {
sUnknown_0300128E = TRUE; sInWildMonRoom = TRUE;
} }
static void sub_81A740C(void) static void ClearInWildMonRoom(void)
{ {
sUnknown_0300128E = FALSE; sInWildMonRoom = FALSE;
} }
static void SavePikeChallenge(void) static void SavePikeChallenge(void)
@ -731,19 +731,19 @@ static void GetRoomInflictedStatus(void)
switch (sStatusFlags) switch (sStatusFlags)
{ {
case STATUS1_FREEZE: case STATUS1_FREEZE:
gSpecialVar_Result = 0; gSpecialVar_Result = PIKE_STATUS_FREEZE;
break; break;
case STATUS1_BURN: case STATUS1_BURN:
gSpecialVar_Result = 1; gSpecialVar_Result = PIKE_STATUS_BURN;
break; break;
case STATUS1_TOXIC_POISON: case STATUS1_TOXIC_POISON:
gSpecialVar_Result = 2; gSpecialVar_Result = PIKE_STATUS_TOXIC;
break; break;
case STATUS1_PARALYSIS: case STATUS1_PARALYSIS:
gSpecialVar_Result = 3; gSpecialVar_Result = PIKE_STATUS_PARALYSIS;
break; break;
case STATUS1_SLEEP: case STATUS1_SLEEP:
gSpecialVar_Result = 4; gSpecialVar_Result = PIKE_STATUS_SLEEP;
break; break;
} }
} }
@ -1100,9 +1100,9 @@ static u16 GetNPCRoomGraphicsId(void)
} }
// Unused // Unused
static u8 sub_81A7B84(void) static u8 GetInWildMonRoom(void)
{ {
return sUnknown_0300128E; return sInWildMonRoom;
} }
bool32 TryGenerateBattlePikeWildMon(bool8 checkKeenEyeIntimidate) bool32 TryGenerateBattlePikeWildMon(bool8 checkKeenEyeIntimidate)
@ -1335,10 +1335,10 @@ static void SetHintedRoom(void)
u8 i, count, id; u8 i, count, id;
u8 *roomCandidates; u8 *roomCandidates;
gSpecialVar_Result = 0; gSpecialVar_Result = FALSE;
if (GetPikeQueenFightType(1)) if (GetPikeQueenFightType(1))
{ {
gSpecialVar_Result = 1; gSpecialVar_Result = TRUE;
gSaveBlock2Ptr->frontier.pikeHintedRoomIndex = Random() % 6; gSaveBlock2Ptr->frontier.pikeHintedRoomIndex = Random() % 6;
gSaveBlock2Ptr->frontier.pikeHintedRoomType = PIKE_ROOM_BRAIN; gSaveBlock2Ptr->frontier.pikeHintedRoomType = PIKE_ROOM_BRAIN;
} }
@ -1462,7 +1462,7 @@ static void ClearPikeTrainerIds(void)
gSaveBlock2Ptr->frontier.trainerIds[i] = 0xFFFF; gSaveBlock2Ptr->frontier.trainerIds[i] = 0xFFFF;
} }
static void BufferRecordMixingTrainerMessage(void) static void BufferTrainerIntro(void)
{ {
if (gSpecialVar_0x8005 == 0) if (gSpecialVar_0x8005 == 0)
{ {
@ -1500,7 +1500,7 @@ static u8 GetPikeQueenFightType(u8 nextRoom)
u8 numPikeSymbols; u8 numPikeSymbols;
u8 facility = FRONTIER_FACILITY_PIKE; u8 facility = FRONTIER_FACILITY_PIKE;
u8 ret = 0; u8 ret = FRONTIER_BRAIN_NOT_READY;
u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
u16 winStreak = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode]; u16 winStreak = gSaveBlock2Ptr->frontier.pikeWinStreaks[lvlMode];
winStreak += nextRoom; winStreak += nextRoom;
@ -1511,16 +1511,16 @@ static u8 GetPikeQueenFightType(u8 nextRoom)
case 0: case 0:
case 1: case 1:
if (winStreak == sFrontierBrainStreakAppearances[facility][numPikeSymbols] - sFrontierBrainStreakAppearances[facility][3]) if (winStreak == sFrontierBrainStreakAppearances[facility][numPikeSymbols] - sFrontierBrainStreakAppearances[facility][3])
ret = numPikeSymbols + 1; ret = numPikeSymbols + 1; // FRONTIER_BRAIN_SILVER and FRONTIER_BRAIN_GOLD
break; break;
case 2: case 2:
default: default:
if (winStreak == sFrontierBrainStreakAppearances[facility][0] - sFrontierBrainStreakAppearances[facility][3]) if (winStreak == sFrontierBrainStreakAppearances[facility][0] - sFrontierBrainStreakAppearances[facility][3])
ret = 3; ret = FRONTIER_BRAIN_STREAK;
else if (winStreak == sFrontierBrainStreakAppearances[facility][1] - sFrontierBrainStreakAppearances[facility][3] else if (winStreak == sFrontierBrainStreakAppearances[facility][1] - sFrontierBrainStreakAppearances[facility][3]
|| (winStreak > sFrontierBrainStreakAppearances[facility][1] || (winStreak > sFrontierBrainStreakAppearances[facility][1]
&& (winStreak - sFrontierBrainStreakAppearances[facility][1] + sFrontierBrainStreakAppearances[facility][3]) % sFrontierBrainStreakAppearances[facility][2] == 0)) && (winStreak - sFrontierBrainStreakAppearances[facility][1] + sFrontierBrainStreakAppearances[facility][3]) % sFrontierBrainStreakAppearances[facility][2] == 0))
ret = 4; ret = FRONTIER_BRAIN_STREAK_LONG;
break; break;
} }
@ -1584,7 +1584,7 @@ static void IsPartyFullHealed(void)
} }
} }
static void BackupMonHeldItems(void) static void SaveMonHeldItems(void)
{ {
u8 i; u8 i;

View File

@ -89,7 +89,7 @@ EWRAM_DATA static void(*gUnknown_0203A0F4)(u8 taskId) = NULL;
// .rodata // .rodata
static const MainCallback gUnknown_085920D8[] = static const MainCallback sItemUseCallbacks[] =
{ {
CB2_ShowPartyMenuForItemUse, CB2_ShowPartyMenuForItemUse,
CB2_ReturnToField, CB2_ReturnToField,
@ -115,12 +115,12 @@ void SetUpItemUseCallback(u8 taskId)
type = ItemId_GetType(gSpecialVar_ItemId) - 1; type = ItemId_GetType(gSpecialVar_ItemId) - 1;
if (!InBattlePyramid()) if (!InBattlePyramid())
{ {
gBagMenu->mainCallback2 = gUnknown_085920D8[type]; gBagMenu->mainCallback2 = sItemUseCallbacks[type];
unknown_ItemMenu_Confirm(taskId); unknown_ItemMenu_Confirm(taskId);
} }
else else
{ {
gPyramidBagResources->callback2 = gUnknown_085920D8[type]; gPyramidBagResources->callback2 = sItemUseCallbacks[type];
sub_81C5B14(taskId); sub_81C5B14(taskId);
} }
} }