Set up Battle Dome and Tower macros

This commit is contained in:
GriffinR
2019-11-28 22:46:39 -05:00
committed by huderlem
parent be17c1602d
commit 9b3d1cfab6
21 changed files with 350 additions and 299 deletions

View File

@@ -15,7 +15,11 @@
.macro arena_set data:req, val:req
setvar VAR_0x8004, BATTLE_ARENA_FUNC_SET_DATA
setvar VAR_0x8005, \data
.if \val >= VARS_START
copyvar VAR_0x8006, \val
.else
setvar VAR_0x8006, \val
.endif
special CallBattleArenaFunction
.endm

View File

@@ -1 +1,140 @@
@ To be populated with macros for CallBattleDomeFunction
@ TODO: Add explanatory comments to macros
@ Initialize the Battle Dome challenge
.macro dome_init
setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT
special CallBattleDomeFunction
.endm
@ Get the value of some DOME_DATA_*. See GetDomeData for the data types that can be retrieved
.macro dome_get data:req
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_DATA
setvar VAR_0x8005, \data
special CallBattleDomeFunction
.endm
@ Set some DOME_DATA_* to val. See SetDomeData for the data types that can be set
.macro dome_set data:req, val=0xFFFF
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, \data
.if \val != 0xFFFF
setvar VAR_0x8006, \val
.endif
special CallBattleDomeFunction
.endm
@
.macro dome_getroundtext
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_ROUND_TEXT
special CallBattleDomeFunction
.endm
@
.macro dome_getopponentname
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_OPPONENT_NAME
special CallBattleDomeFunction
.endm
@
.macro dome_initopponentparty
setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT_OPPONENT_PARTY
special CallBattleDomeFunction
.endm
@
.macro dome_showopponentinfo
setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_OPPONENT_INFO
special CallBattleDomeFunction
.endm
@
.macro dome_showtourneytree
setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_TOURNEY_TREE
special CallBattleDomeFunction
.endm
@
.macro dome_showresultstree
setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_PREV_RESULTS_TREE
special CallBattleDomeFunction
.endm
@
.macro dome_setopponent
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_OPPONENT_ID
special CallBattleDomeFunction
.endm
@
.macro dome_setopponentgfx
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_OPPONENT_GFX
special CallBattleDomeFunction
.endm
@
.macro dome_showstatictourneytree
setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_STATIC_TOURNEY_TREE
special CallBattleDomeFunction
.endm
@
.macro dome_resolvewinners arg:req
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESOLVE_WINNERS
setvar VAR_0x8005, \arg
special CallBattleDomeFunction
.endm
@ Save the game and set the challenge status
.macro dome_save challengeStatus:req
setvar VAR_0x8004, BATTLE_DOME_FUNC_SAVE
setvar VAR_0x8005, \challengeStatus
special CallBattleDomeFunction
.endm
@ Unused. Increment the win streaks for the current challenge by one
.macro dome_incrementstreaks
setvar VAR_0x8004, BATTLE_DOME_FUNC_INCREMENT_STREAK
special CallBattleDomeFunction
.endm
@
.macro dome_settrainers
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_TRAINERS
special CallBattleDomeFunction
.endm
@ If any moves were copied using Sketch during the challenge then restore them to Sketch
.macro dome_resetsketch
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESET_SKETCH
special CallBattleDomeFunction
.endm
@
.macro dome_restorehelditems
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESTORE_HELD_ITEMS
special CallBattleDomeFunction
.endm
@
.macro dome_reduceparty
setvar VAR_0x8004, BATTLE_DOME_FUNC_REDUCE_PARTY
special CallBattleDomeFunction
.endm
@
.macro dome_compareseeds
setvar VAR_0x8004, BATTLE_DOME_FUNC_COMPARE_SEEDS
special CallBattleDomeFunction
.endm
@ Buffer the name of the winner for the last Dome challenge to STR_VAR_1
.macro dome_getwinnersname
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_WINNER_NAME
special CallBattleDomeFunction
.endm
@
.macro dome_inittrainers
setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT_TRAINERS
special CallBattleDomeFunction
.endm

View File

@@ -1,7 +1,62 @@
@ To be populated with macros for CallBattleTowerFunc
.macro battletower_getstreak
setvar VAR_0x8004, BATTLE_TOWER_FUNC_GET_DATA
setvar VAR_0x8005, 1
@ Initialize the Battle Tower challenge
.macro tower_init
setvar VAR_0x8004, BATTLE_TOWER_FUNC_INIT
special CallBattleTowerFunc
.endm
@ Get the value of some TOWER_DATA_*. See GetTowerData for the data types that can be retrieved
.macro tower_get data:req
setvar VAR_0x8004, BATTLE_TOWER_FUNC_GET_DATA
setvar VAR_0x8005, \data
special CallBattleTowerFunc
.endm
@ Set some TOWER_DATA_* to val. See SetTowerData for the data types that can be set
.macro tower_set data:req, val=0xFFFF
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, \data
.if \val != 0xFFFF
setvar VAR_0x8006, \val
.endif
special CallBattleTowerFunc
.endm
@ Choose and set the gfx for the next opponent. Also used by Battle Tents
.macro tower_setopponent
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_OPPONENT
special CallBattleTowerFunc
.endm
@ Increments the battle number and returns the new one. Also clears E-Reader trainer if defeated, and saves the current win streak
.macro tower_setbattlewon
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_BATTLE_WON
special CallBattleTowerFunc
.endm
@ Try to award ribbons for completing 56th straight Battle Tower win. VAR_RESULT is TRUE if ribbons were awarded.
.macro tower_giveribbons
setvar VAR_0x8004, BATTLE_TOWER_FUNC_GIVE_RIBBONS
special CallBattleTowerFunc
.endm
@ Save the game and set the challenge status
.macro tower_save challengeStatus:req
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SAVE
setvar VAR_0x8005, \challengeStatus
special CallBattleTowerFunc
.endm
@ Buffer the opponent's easy chat intro speech to STR_VAR_4
.macro tower_getopponentintro opponent:req
setvar VAR_0x8004, BATTLE_TOWER_FUNC_GET_OPPONENT_INTRO
setvar VAR_0x8005, \opponent
special CallBattleTowerFunc
.endm
@ TODO: Document and add macros for BATTLE_TOWER_FUNC_10 - BATTLE_TOWER_FUNC_14
@ Set the data used for the post-challenge Battle Tower interview
.macro tower_setinterviewdata
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_INTERVIEW_DATA
special CallBattleTowerFunc
.endm

View File

@@ -52,8 +52,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_EnterRoom:: @ 82574DC
goto BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent
BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers:: @ 825752E
setvar VAR_0x8004, BATTLE_TOWER_FUNC_CHOOSE_TRAINER
special CallBattleTowerFunc
tower_setopponent
addobject 7
applymovement 7, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentEnter
waitmovement 0

View File

@@ -6,8 +6,7 @@ BattleFrontier_BattleDomeBattleRoom_MapScripts:: @ 824BC9C
.byte 0
BattleFrontier_BattleDomeBattleRoom_MapScript1_24BCB1: @ 824BCB1
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_OPPONENT_GFX
special CallBattleDomeFunction
dome_setopponentgfx
frontier_get FRONTIER_DATA_BATTLE_NUM
copyvar VAR_TEMP_F, VAR_RESULT
compare VAR_RESULT, 0
@@ -68,20 +67,16 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_24BD61:: @ 824BD61
goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_24C1CB
BattleFrontier_BattleDomeBattleRoom_EventScript_24BD82:: @ 824BD82
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_OPPONENT_NAME
special CallBattleDomeFunction
dome_getopponentname
msgbox BattleFrontier_BattleDomeBattleRoom_Text_24C990, MSGBOX_DEFAULT
closemessage
applymovement 13, BattleFrontier_BattleDomeBattleRoom_Movement_24C77B
applymovement 15, BattleFrontier_BattleDomeBattleRoom_Movement_24C789
waitmovement 0
setvar VAR_0x8004, BATTLE_TOWER_FUNC_7
setvar VAR_0x8005, 0
special CallBattleTowerFunc
tower_getopponentintro 0
msgbox gStringVar4, MSGBOX_DEFAULT
closemessage
setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT_OPPONENT_PARTY
special CallBattleDomeFunction
dome_initopponentparty
call BattleFrontier_BattleDomeBattleRoom_EventScript_24C440
setvar VAR_TEMP_2, 0
switch VAR_RESULT
@@ -105,16 +100,14 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_24BDF7:: @ 824BDF7
waitmovement 0
compare VAR_TEMP_2, 2
goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_24BE4F
setvar VAR_0x8004, BATTLE_DOME_FUNC_COMPARE_SEEDS
special CallBattleDomeFunction
dome_compareseeds
switch VAR_RESULT
case 1, BattleFrontier_BattleDomeBattleRoom_EventScript_24BEE0
BattleFrontier_BattleDomeBattleRoom_EventScript_24BE4F:: @ 824BE4F
applymovement 1, Common_Movement_WalkInPlaceDown
waitmovement 0
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_OPPONENT_NAME
special CallBattleDomeFunction
dome_getopponentname
compare VAR_TEMP_2, 0
call_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_24BEB1
compare VAR_TEMP_2, 1
@@ -126,10 +119,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_24BE4F:: @ 824BE4F
delay 60
BattleFrontier_BattleDomeBattleRoom_EventScript_24BE8D:: @ 824BE8D
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESOLVE_WINNERS
setvar VAR_0x8005, 2
special CallBattleDomeFunction
dome_resolvewinners 2
BattleFrontier_BattleDomePreBattleRoom_EventScript_24BE9A:: @ 824BE9A
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
goto BattleFrontier_BattleDomeBattleRoom_EventScript_24C8F5
@@ -162,11 +152,8 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_24BEE0:: @ 824BEE0
playse SE_W227B
call BattleFrontier_BattleDomeBattleRoom_EventScript_24C82E
delay 60
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_ROUND_TEXT
special CallBattleDomeFunction
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESOLVE_WINNERS
setvar VAR_0x8005, 1
special CallBattleDomeFunction
dome_getroundtext
dome_resolvewinners 1
frontier_get FRONTIER_DATA_BATTLE_NUM
addvar VAR_RESULT, 1
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
@@ -205,20 +192,14 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_24BFCC:: @ 824BFCC
return
BattleFrontier_BattleDomeBattleRoom_EventScript_24BFD5:: @ 824BFD5
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_DATA
setvar VAR_0x8005, DOME_DATA_6
special CallBattleDomeFunction
dome_get DOME_DATA_6
compare VAR_RESULT, 0
goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_24C023
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_DATA
setvar VAR_0x8005, DOME_DATA_7
special CallBattleDomeFunction
dome_get DOME_DATA_7
compare VAR_RESULT, 0
goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_24C076
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_DATA
setvar VAR_0x8005, DOME_DATA_STREAK_ACTIVE
special CallBattleDomeFunction
compare VAR_RESULT, 0
dome_get DOME_DATA_WIN_STREAK_ACTIVE
compare VAR_RESULT, FALSE
goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_24C16A
goto BattleFrontier_BattleDomeBattleRoom_EventScript_24C0C9
return
@@ -417,9 +398,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_24C2B9:: @ 824C2B9
case 9, BattleFrontier_BattleDomeBattleRoom_EventScript_24C420
case 3, BattleFrontier_BattleDomeBattleRoom_EventScript_24C436
msgbox BattleFrontier_BattleDomeBattleRoom_Text_24D0F6, MSGBOX_DEFAULT
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESOLVE_WINNERS
setvar VAR_0x8005, 1
special CallBattleDomeFunction
dome_resolvewinners 1
frontier_getsymbols
compare VAR_RESULT, 0
goto_if_ne BattleFrontier_BattleDomeBattleRoom_EventScript_24BF62
@@ -449,9 +428,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_24C373:: @ 824C373
case 9, BattleFrontier_BattleDomeBattleRoom_EventScript_24C420
case 3, BattleFrontier_BattleDomeBattleRoom_EventScript_24C436
msgbox BattleFrontier_BattleDomeBattleRoom_Text_24D0F6, MSGBOX_DEFAULT
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESOLVE_WINNERS
setvar VAR_0x8005, 1
special CallBattleDomeFunction
dome_resolvewinners 1
frontier_getsymbols
compare VAR_RESULT, 2
goto_if_eq BattleFrontier_BattleDomeBattleRoom_EventScript_24BF62
@@ -496,11 +473,9 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_24C440:: @ 824C440
special DoSpecialTrainerBattle
waitstate
setvar VAR_TEMP_9, 0
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESTORE_HELD_ITEMS
special CallBattleDomeFunction
dome_restorehelditems
special HealPlayerParty
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESET_SKETCH
special CallBattleDomeFunction
dome_resetsketch
return
BattleFrontier_BattleDomeBattleRoom_MapScript2_24C481: @ 824C481

View File

@@ -35,18 +35,9 @@ BattleFrontier_BattleDomeLobby_EventScript_249842:: @ 8249842
lockall
msgbox BattleFrontier_BattleDomeLobby_Text_24A45F, MSGBOX_DEFAULT
closemessage
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, DOME_DATA_STREAK
setvar VAR_0x8006, 0
special CallBattleDomeFunction
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, DOME_DATA_STREAK_ACTIVE
setvar VAR_0x8006, FALSE
special CallBattleDomeFunction
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, DOME_DATA_6
setvar VAR_0x8006, 1
special CallBattleDomeFunction
dome_set DOME_DATA_WIN_STREAK, 0
dome_set DOME_DATA_WIN_STREAK_ACTIVE, FALSE
dome_set DOME_DATA_6, 1
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
setvar VAR_TEMP_0, 255
releaseall
@@ -73,18 +64,9 @@ BattleFrontier_BattleDomeLobby_EventScript_2498C9:: @ 82498C9
special LoadPlayerParty
frontier_setpartyorder FRONTIER_PARTY_SIZE
frontier_checkairshow
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, DOME_DATA_6
setvar VAR_0x8006, 1
special CallBattleDomeFunction
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, DOME_DATA_7
setvar VAR_0x8006, 1
special CallBattleDomeFunction
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, DOME_DATA_STREAK_ACTIVE
setvar VAR_0x8006, TRUE
special CallBattleDomeFunction
dome_set DOME_DATA_6, 1
dome_set DOME_DATA_7, 1
dome_set DOME_DATA_WIN_STREAK_ACTIVE, TRUE
special LoadPlayerParty
special HealPlayerParty
goto BattleFrontier_BattleDomeLobby_EventScript_249991
@@ -97,21 +79,13 @@ BattleFrontier_BattleDomeLobby_EventScript_249940:: @ 8249940
special LoadPlayerParty
frontier_setpartyorder FRONTIER_PARTY_SIZE
frontier_checkairshow
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, DOME_DATA_STREAK_ACTIVE
setvar VAR_0x8006, FALSE
special CallBattleDomeFunction
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, DOME_DATA_6
setvar VAR_0x8006, 1
special CallBattleDomeFunction
dome_set DOME_DATA_WIN_STREAK_ACTIVE, FALSE
dome_set DOME_DATA_6, 1
special LoadPlayerParty
special HealPlayerParty
BattleFrontier_BattleDomeLobby_EventScript_249991:: @ 8249991
setvar VAR_0x8004, BATTLE_DOME_FUNC_SAVE
setvar VAR_0x8005, 0
special CallBattleDomeFunction
dome_save 0
playse SE_SAVE
waitse
call BattleFrontier_BattleDomeLobby_EventScript_23E8E0
@@ -139,9 +113,7 @@ BattleFrontier_BattleDomeLobby_EventScript_2499F9:: @ 82499F9
msgbox BattleFrontier_BattleDomeLobby_Text_24A5FE, MSGBOX_DEFAULT
message BattleFrontier_BattleDomeLobby_Text_24A61A
waitmessage
setvar VAR_0x8004, BATTLE_DOME_FUNC_SAVE
setvar VAR_0x8005, CHALLENGE_STATUS_SAVING
special CallBattleDomeFunction
dome_save CHALLENGE_STATUS_SAVING
playse SE_SAVE
waitse
frontier_set FRONTIER_DATA_PAUSED, FALSE
@@ -213,8 +185,7 @@ BattleFrontier_BattleDomeLobby_EventScript_249ABF:: @ 8249ABF
BattleFrontier_BattleDomeLobby_EventScript_249B60:: @ 8249B60
setvar VAR_TEMP_0, 0
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT
special CallBattleDomeFunction
dome_init
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING
frontier_set FRONTIER_DATA_PAUSED, FALSE
special LoadPlayerParty
@@ -224,14 +195,11 @@ BattleFrontier_BattleDomeLobby_EventScript_249B60:: @ 8249B60
setvar VAR_TEMP_0, 255
compare VAR_RESULT, 0
goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_249C4A
setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT_TRAINERS
special CallBattleDomeFunction
dome_inittrainers
BattleFrontier_BattleDomeLobby_EventScript_249BC2:: @ 8249BC2
special SavePlayerParty
frontier_setpartyorder FRONTIER_PARTY_SIZE
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_TRAINERS
special CallBattleDomeFunction
dome_settrainers
msgbox BattleFrontier_BattleDomeLobby_Text_24A437, MSGBOX_DEFAULT
closemessage
call BattleFrontier_BattleDomeLobby_EventScript_249C6E
@@ -392,9 +360,7 @@ BattleFrontier_BattleDomeLobby_EventScript_249D6B:: @ 8249D6B
end
BattleFrontier_BattleDomeLobby_EventScript_249D84:: @ 8249D84
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_DATA
setvar VAR_0x8005, DOME_DATA_9
special CallBattleDomeFunction
dome_get DOME_DATA_9
compare VAR_RESULT, 0
call_if_eq BattleFrontier_BattleDomeLobby_EventScript_249DC9
compare VAR_RESULT, 1
@@ -404,8 +370,7 @@ BattleFrontier_BattleDomeLobby_EventScript_249D84:: @ 8249D84
compare VAR_RESULT, 3
call_if_eq BattleFrontier_BattleDomeLobby_EventScript_249DE4
fadescreen 1
setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_PREV_RESULTS_TREE
special CallBattleDomeFunction
dome_showresultstree
waitstate
end
@@ -426,8 +391,7 @@ BattleFrontier_BattleDomeLobby_EventScript_249DE4:: @ 8249DE4
return
BattleFrontier_BattleDomeLobby_EventScript_249DED:: @ 8249DED
setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_WINNER_NAME
special CallBattleDomeFunction
dome_getwinnersname
msgbox BattleFrontier_BattleDomeLobby_Text_24AA76, MSGBOX_NPC
end

View File

@@ -82,17 +82,13 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B377:: @ 824B377
case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F
BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3A9:: @ 824B3A9
setvar VAR_0x8004, BATTLE_DOME_FUNC_RESOLVE_WINNERS
setvar VAR_0x8005, 9
special CallBattleDomeFunction
dome_resolvewinners 9
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24BE9A
BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3BB:: @ 824B3BB
message BattleFrontier_BattleDomePreBattleRoom_Text_24BAD3
waitmessage
setvar VAR_0x8004, BATTLE_DOME_FUNC_SAVE
setvar VAR_0x8005, CHALLENGE_STATUS_PAUSED
special CallBattleDomeFunction
dome_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
fadescreen 1
@@ -102,16 +98,14 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3BB:: @ 824B3BB
BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3DD:: @ 824B3DD
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_24B9B5, MSGBOX_DEFAULT
fadescreen 1
setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_OPPONENT_INFO
special CallBattleDomeFunction
dome_showopponentinfo
waitstate
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F
BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3F5:: @ 824B3F5
call BattleFrontier_BattleDomePreBattleRoom_EventScript_24B40A
fadescreen 1
setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_TOURNEY_TREE
special CallBattleDomeFunction
dome_showtourneytree
waitstate
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F
@@ -153,13 +147,9 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B46D:: @ 824B46D
frontier_resetsketch
compare VAR_RESULT, 0
goto_if_eq BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
setvar VAR_0x8005, DOME_DATA_8
special CallBattleDomeFunction
setvar VAR_0x8004, BATTLE_DOME_FUNC_REDUCE_PARTY
special CallBattleDomeFunction
setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_OPPONENT_ID
special CallBattleDomeFunction
dome_set DOME_DATA_8
dome_reduceparty
dome_setopponent
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_24B748, MSGBOX_DEFAULT
closemessage
applymovement 1, BattleFrontier_BattleDomePreBattleRoom_Movement_24B64F
@@ -238,8 +228,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B5C7:: @ 824B5C7
special HealPlayerParty
call BattleFrontier_BattleDomePreBattleRoom_EventScript_24B600
fadescreen 1
setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_STATIC_TOURNEY_TREE
special CallBattleDomeFunction
dome_showstatictourneytree
waitstate
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F

View File

@@ -48,8 +48,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_24F8B5:: @ 824F8B5
waitmovement 0
BattleFrontier_BattlePalaceBattleRoom_EventScript_24F8BF:: @ 824F8BF
setvar VAR_0x8004, BATTLE_TOWER_FUNC_CHOOSE_TRAINER
special CallBattleTowerFunc
tower_setopponent
addobject 2
applymovement 2, BattleFrontier_BattlePalaceBattleRoom_Movement_24FEA1
waitmovement 0

View File

@@ -28,8 +28,8 @@ BattleFrontier_BattlePalaceLobby_EventScript_24D7D0:: @ 824D7D0
lockall
msgbox BattleFrontier_BattlePalaceLobby_Text_24E636, MSGBOX_DEFAULT
closemessage
palace_set PALACE_DATA_STREAK, 0
palace_set PALACE_DATA_STREAK_ACTIVE, FALSE
palace_set PALACE_DATA_WIN_STREAK, 0
palace_set PALACE_DATA_WIN_STREAK_ACTIVE, FALSE
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
setvar VAR_TEMP_0, 255
releaseall
@@ -62,7 +62,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_24D873:: @ 824D873
lockall
message BattleFrontier_BattlePalaceLobby_Text_24E41E
waitmessage
palace_set PALACE_DATA_STREAK_ACTIVE, FALSE
palace_set PALACE_DATA_WIN_STREAK_ACTIVE, FALSE
call BattleFrontier_BattlePalaceLobby_EventScript_24D8A1
msgbox BattleFrontier_BattlePalaceLobby_Text_24E0D8, MSGBOX_DEFAULT
closemessage
@@ -173,7 +173,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_24DA87:: @ 824DA87
setvar VAR_TEMP_0, 0
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
palace_init
palace_set PALACE_DATA_STREAK_ACTIVE, TRUE
palace_set PALACE_DATA_WIN_STREAK_ACTIVE, TRUE
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_SAVING
frontier_set FRONTIER_DATA_PAUSED, FALSE
special LoadPlayerParty

View File

@@ -32,14 +32,11 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_241B6C:: @ 8241B6C
goto BattleFrontier_BattleTowerBattleRoom_EventScript_241C8F
BattleFrontier_BattleTowerBattleRoom_EventScript_241BC3:: @ 8241BC3
setvar VAR_0x8004, BATTLE_TOWER_FUNC_CHOOSE_TRAINER
special CallBattleTowerFunc
tower_setopponent
addobject 1
applymovement 1, BattleFrontier_BattleTowerBattleRoom_Movement_242182
waitmovement 0
setvar VAR_0x8004, BATTLE_TOWER_FUNC_7
setvar VAR_0x8005, 0
special CallBattleTowerFunc
tower_getopponentintro 0
msgbox gStringVar4, MSGBOX_DEFAULT
waitmessage
call BattleFrontier_BattleTowerBattleRoom_EventScript_24210E
@@ -48,17 +45,14 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_241BC3:: @ 8241BC3
BattleFrontier_BattleTowerBattleRoom_EventScript_241C03:: @ 8241C03
BattleFrontier_BattleTowerMultiBattleRoom_EventScript_241C03:: @ 8241C03
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 3
special CallBattleTowerFunc
tower_set TOWER_DATA_LVL_MODE
setvar VAR_0x8004, 3
special Script_TryGainNewFanFromCounter
goto BattleFrontier_BattleTowerBattleRoom_EventScript_2421B8
BattleFrontier_BattleTowerBattleRoom_EventScript_241C2F:: @ 8241C2F
call BattleFrontier_EventScript_IncrementWinStreak
setvar VAR_0x8004, BATTLE_TOWER_FUNC_4
special CallBattleTowerFunc
tower_setbattlewon
switch VAR_RESULT
case 7, BattleFrontier_BattleTowerBattleRoom_EventScript_241DF6
applymovement 1, BattleFrontier_BattleTowerBattleRoom_Movement_242188
@@ -141,9 +135,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_241DDC:: @ 8241DDC
BattleFrontier_BattleTowerBattleRoom_EventScript_241DF6:: @ 8241DF6
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 3
special CallBattleTowerFunc
tower_set TOWER_DATA_LVL_MODE
setvar VAR_0x8004, 3
special Script_TryGainNewFanFromCounter
goto BattleFrontier_BattleTowerBattleRoom_EventScript_2421B8
@@ -151,9 +143,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_241DF6:: @ 8241DF6
BattleFrontier_BattleTowerBattleRoom_EventScript_241E22:: @ 8241E22
message BattleFrontier_BattleTowerBattleRoom_Text_242426
waitmessage
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SAVE
setvar VAR_0x8005, CHALLENGE_STATUS_PAUSED
special CallBattleTowerFunc
tower_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
fadescreen 1
@@ -333,8 +323,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_24210E:: @ 824210E
special HealPlayerParty
frontier_resetsketch
BattleFrontier_BattleTowerBattleRoom_EventScript_24215A:: @ 824215A
setvar VAR_0x8004, BATTLE_TOWER_FUNC_15
special CallBattleTowerFunc
tower_setinterviewdata
frontier_get FRONTIER_DATA_BATTLE_OUTCOME
return

View File

@@ -58,8 +58,7 @@ BattleFrontier_BattleTowerBattleRoom2_EventScript_248F4D:: @ 8248F4D
goto BattleFrontier_BattleTowerBattleRoom2_EventScript_249143
BattleFrontier_BattleTowerBattleRoom2_EventScript_248FB4:: @ 8248FB4
setvar VAR_0x8004, BATTLE_TOWER_FUNC_CHOOSE_TRAINER
special CallBattleTowerFunc
tower_setopponent
addobject 1
addobject 4
applymovement 1, BattleFrontier_BattleTowerBattleRoom2_Movement_249528
@@ -67,17 +66,13 @@ BattleFrontier_BattleTowerBattleRoom2_EventScript_248FB4:: @ 8248FB4
waitmovement 0
compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS
goto_if_eq BattleFrontier_BattleTowerBattleRoom2_EventScript_249026
setvar VAR_0x8004, BATTLE_TOWER_FUNC_7
setvar VAR_0x8005, 0
special CallBattleTowerFunc
tower_getopponentintro 0
delay 15
applymovement 1, BattleFrontier_BattleTowerBattleRoom2_Movement_249545
waitmovement 0
msgbox gStringVar4, MSGBOX_DEFAULT
waitmessage
setvar VAR_0x8004, BATTLE_TOWER_FUNC_7
setvar VAR_0x8005, 1
special CallBattleTowerFunc
tower_getopponentintro 1
applymovement 4, BattleFrontier_BattleTowerBattleRoom2_Movement_249545
waitmovement 0
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -85,18 +80,14 @@ BattleFrontier_BattleTowerBattleRoom2_EventScript_248FB4:: @ 8248FB4
goto BattleFrontier_BattleTowerBattleRoom2_EventScript_249069
BattleFrontier_BattleTowerBattleRoom2_EventScript_249026:: @ 8249026
setvar VAR_0x8004, BATTLE_TOWER_FUNC_7
setvar VAR_0x8005, 0
special CallBattleTowerFunc
tower_getopponentintro 0
delay 15
applymovement 1, BattleFrontier_BattleTowerBattleRoom2_Movement_249545
waitmovement 0
messageautoscroll gStringVar4
waitmessage
delay 48
setvar VAR_0x8004, BATTLE_TOWER_FUNC_7
setvar VAR_0x8005, 1
special CallBattleTowerFunc
tower_getopponentintro 1
applymovement 4, BattleFrontier_BattleTowerBattleRoom2_Movement_249545
waitmovement 0
messageautoscroll gStringVar4
@@ -110,17 +101,14 @@ BattleFrontier_BattleTowerBattleRoom2_EventScript_249069:: @ 8249069
BattleFrontier_BattleTowerBattleRoom2_EventScript_24907E:: @ 824907E
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 3
special CallBattleTowerFunc
tower_set TOWER_DATA_LVL_MODE
setvar VAR_0x8004, 3
special Script_TryGainNewFanFromCounter
goto BattleFrontier_BattleTowerBattleRoom2_EventScript_2421B8
BattleFrontier_BattleTowerBattleRoom2_EventScript_2490AA:: @ 82490AA
call BattleFrontier_EventScript_IncrementWinStreak
setvar VAR_0x8004, BATTLE_TOWER_FUNC_4
special CallBattleTowerFunc
tower_setbattlewon
switch VAR_RESULT
case 7, BattleFrontier_BattleTowerBattleRoom2_EventScript_2492AF
applymovement 4, BattleFrontier_BattleTowerBattleRoom2_Movement_249534
@@ -220,9 +208,7 @@ BattleFrontier_BattleTowerBattleRoom2_EventScript_249283:: @ 8249283
BattleFrontier_BattleTowerBattleRoom2_EventScript_2492AF:: @ 82492AF
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 3
special CallBattleTowerFunc
tower_set TOWER_DATA_LVL_MODE
setvar VAR_0x8004, 3
special Script_TryGainNewFanFromCounter
goto BattleFrontier_BattleTowerBattleRoom2_EventScript_2421B8
@@ -230,9 +216,7 @@ BattleFrontier_BattleTowerBattleRoom2_EventScript_2492AF:: @ 82492AF
BattleFrontier_BattleTowerBattleRoom2_EventScript_2492DB:: @ 82492DB
message BattleFrontier_BattleTowerBattleRoom2_Text_242426
waitmessage
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SAVE
setvar VAR_0x8005, CHALLENGE_STATUS_PAUSED
special CallBattleTowerFunc
tower_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
fadescreen 1

View File

@@ -51,14 +51,8 @@ BattleFrontier_BattleTowerLobby_EventScript_23E710:: @ 823E710
faceplayer
msgbox BattleFrontier_BattleTowerLobby_Text_23F583, MSGBOX_DEFAULT
closemessage
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 1
setvar VAR_0x8006, 0
special CallBattleTowerFunc
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 2
setvar VAR_0x8006, 0
special CallBattleTowerFunc
tower_set TOWER_DATA_WIN_STREAK, 0
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, FALSE
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
setvar VAR_TEMP_0, 255
release
@@ -78,24 +72,20 @@ BattleFrontier_BattleTowerLobby_EventScript_23E778:: @ 823E778
msgbox BattleFrontier_BattleTowerLobby_Text_241486, MSGBOX_DEFAULT
BattleFrontier_BattleTowerLobby_EventScript_23E780:: @ 823E780
setvar VAR_0x8004, BATTLE_TOWER_FUNC_GIVE_RIBBONS
special CallBattleTowerFunc
compare VAR_RESULT, 0
tower_giveribbons
compare VAR_RESULT, FALSE
goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23E7A5
message BattleFrontier_BattleTowerLobby_Text_23F844
waitmessage
playfanfare MUS_FANFA4
waitfanfare
msgbox BattleFrontier_BattleTowerLobby_Text_23F89F, MSGBOX_DEFAULT
BattleFrontier_BattleTowerLobby_EventScript_23E7A5:: @ 823E7A5
msgbox BattleFrontier_BattleTowerLobby_Text_2414D4, MSGBOX_DEFAULT
frontier_givepoints
msgbox BattleFrontier_Text_ObtainedXBattlePoints, MSGBOX_GETPOINTS
call BattleFrontier_BattleTowerLobby_EventScript_23E84D
setvar VAR_0x8004, BATTLE_TOWER_FUNC_GET_DATA
setvar VAR_0x8005, 1
special CallBattleTowerFunc
tower_get TOWER_DATA_WIN_STREAK
compare VAR_RESULT, 49
goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_23E7E2
msgbox BattleFrontier_BattleTowerLobby_Text_23F79D, MSGBOX_DEFAULT
@@ -111,18 +101,12 @@ BattleFrontier_BattleTowerLobby_EventScript_23E7F2:: @ 823E7F2
compare VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS
goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_23E81E
goto_if_set FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerLobby_EventScript_23E81E
setvar VAR_0x8004, BATTLE_TOWER_FUNC_GET_DATA
setvar VAR_0x8005, 1
special CallBattleTowerFunc
tower_get TOWER_DATA_WIN_STREAK
compare VAR_RESULT, 0
goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_23E830
BattleFrontier_BattleTowerLobby_EventScript_23E81E:: @ 823E81E
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 2
setvar VAR_0x8006, 0
special CallBattleTowerFunc
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, FALSE
BattleFrontier_BattleTowerLobby_EventScript_23E830:: @ 823E830
lock
faceplayer
@@ -141,9 +125,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23E84D:: @ 823E84D
frontier_checkairshow
special LoadPlayerParty
special HealPlayerParty
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SAVE
setvar VAR_0x8005, 0
special CallBattleTowerFunc
tower_save 0
playse SE_SAVE
waitse
call BattleFrontier_BattleTowerLobby_EventScript_23E8E0
@@ -193,9 +175,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23E8EE:: @ 823E8EE
waitmessage
message BattleFrontier_BattleTowerLobby_Text_23F754
waitmessage
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SAVE
setvar VAR_0x8005, 1
special CallBattleTowerFunc
tower_save CHALLENGE_STATUS_SAVING
playse SE_SAVE
waitse
frontier_set FRONTIER_DATA_PAUSED, FALSE
@@ -253,12 +233,8 @@ BattleFrontier_BattleTowerLobby_EventScript_23E984:: @ 823E984
BattleFrontier_BattleTowerLobby_EventScript_23EA2A:: @ 823EA2A
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
setvar VAR_TEMP_0, 0
setvar VAR_0x8004, BATTLE_TOWER_FUNC_INIT
special CallBattleTowerFunc
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 2
setvar VAR_0x8006, 1
special CallBattleTowerFunc
tower_init
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, TRUE
frontier_set FRONTIER_DATA_PAUSED, FALSE
special LoadPlayerParty
closemessage
@@ -324,12 +300,8 @@ BattleFrontier_BattleTowerLobby_EventScript_23EAED:: @ 823EAED
BattleFrontier_BattleTowerLobby_EventScript_23EB93:: @ 823EB93
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
setvar VAR_TEMP_0, 0
setvar VAR_0x8004, BATTLE_TOWER_FUNC_INIT
special CallBattleTowerFunc
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 2
setvar VAR_0x8006, 1
special CallBattleTowerFunc
tower_init
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, TRUE
frontier_set FRONTIER_DATA_PAUSED, FALSE
special LoadPlayerParty
closemessage
@@ -396,12 +368,8 @@ BattleFrontier_BattleTowerLobby_EventScript_23EC59:: @ 823EC59
BattleFrontier_BattleTowerLobby_EventScript_23ECFF:: @ 823ECFF
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
setvar VAR_TEMP_0, 0
setvar VAR_0x8004, BATTLE_TOWER_FUNC_INIT
special CallBattleTowerFunc
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 2
setvar VAR_0x8006, 1
special CallBattleTowerFunc
tower_init
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, TRUE
frontier_set FRONTIER_DATA_PAUSED, FALSE
special LoadPlayerParty
closemessage
@@ -467,19 +435,13 @@ BattleFrontier_BattleTowerLobby_EventScript_23EDC2:: @ 823EDC2
BattleFrontier_BattleTowerLobby_EventScript_23EE68:: @ 823EE68
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
setvar VAR_TEMP_0, 0
setvar VAR_0x8004, BATTLE_TOWER_FUNC_INIT
special CallBattleTowerFunc
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SET_DATA
setvar VAR_0x8005, 2
setvar VAR_0x8006, 1
special CallBattleTowerFunc
tower_init
tower_set TOWER_DATA_WIN_STREAK_ACTIVE, TRUE
frontier_set FRONTIER_DATA_PAUSED, FALSE
special LoadPlayerParty
closemessage
delay 2
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SAVE
setvar VAR_0x8005, 0
special CallBattleTowerFunc
tower_save 0
call Common_EventScript_SaveGame
setvar VAR_TEMP_0, 255
compare VAR_RESULT, 0
@@ -909,9 +871,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23F3AF:: @ 823F3AF
setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, 0
message BattleFrontier_BattleTowerLobby_Text_24144D
waitmessage
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SAVE
setvar VAR_0x8005, 1
special CallBattleTowerFunc
tower_save CHALLENGE_STATUS_SAVING
special sub_80A08CC
waitstate
playse SE_SAVE
@@ -972,9 +932,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23F496:: @ 823F496
setvar VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, 0
message BattleFrontier_BattleTowerLobby_Text_24144D
waitmessage
setvar VAR_0x8004, BATTLE_TOWER_FUNC_SAVE
setvar VAR_0x8005, 1
special CallBattleTowerFunc
tower_save CHALLENGE_STATUS_SAVING
special sub_80A08CC
waitstate
playse SE_SAVE

View File

@@ -90,11 +90,11 @@ BattleFrontier_ScottsHouse_EventScript_ArtisanCaveComment:: @ 8263811
BattleFrontier_ScottsHouse_EventScript_CheckGiveSilverShield:: @ 826381B
setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
battletower_getstreak
tower_get TOWER_DATA_WIN_STREAK
compare VAR_RESULT, 50
goto_if_ge BattleFrontier_ScottsHouse_EventScript_GiveSilverShield
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_OPEN
battletower_getstreak
tower_get TOWER_DATA_WIN_STREAK
compare VAR_RESULT, 50
goto_if_ge BattleFrontier_ScottsHouse_EventScript_GiveSilverShield
goto BattleFrontier_ScottsHouse_EventScript_RandomComment
@@ -123,11 +123,11 @@ BattleFrontier_ScottsHouse_EventScript_GivenShield:: @ 82638AA
BattleFrontier_ScottsHouse_EventScript_CheckGiveGoldShield:: @ 82638B4
setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
battletower_getstreak
tower_get TOWER_DATA_WIN_STREAK
compare VAR_RESULT, 100
goto_if_ge BattleFrontier_ScottsHouse_EventScript_GiveGoldShield
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_OPEN
battletower_getstreak
tower_get TOWER_DATA_WIN_STREAK
compare VAR_RESULT, 100
goto_if_ge BattleFrontier_ScottsHouse_EventScript_GiveGoldShield
goto BattleFrontier_ScottsHouse_EventScript_RandomComment

View File

@@ -40,8 +40,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_2008E7:: @ 82008E7
goto_if_ne FallarborTown_BattleTentBattleRoom_EventScript_200B73
FallarborTown_BattleTentBattleRoom_EventScript_20090F:: @ 820090F
setvar VAR_0x8004, BATTLE_TOWER_FUNC_CHOOSE_TRAINER
special CallBattleTowerFunc
tower_setopponent
addobject 3
applymovement 3, FallarborTown_BattleTentBattleRoom_Movement_200B96
waitmovement 0
@@ -143,17 +142,11 @@ FallarborTown_BattleTentBattleRoom_EventScript_200AF3:: @ 8200AF3
special LoadPlayerParty
warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6
waitstate
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
special CallBattleArenaFunction
arena_get ARENA_DATA_WIN_STREAK
compare VAR_RESULT, MAX_STREAK
goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_2009B3
addvar VAR_RESULT, 1
setvar VAR_0x8004, 2
setvar VAR_0x8005, 1
copyvar VAR_0x8006, VAR_RESULT
special CallBattleArenaFunction
arena_set ARENA_DATA_WIN_STREAK, VAR_RESULT
FallarborTown_BattleTentBattleRoom_EventScript_200B43:: @ 8200B43
message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor2ndOpponent
waitmessage

View File

@@ -39,8 +39,7 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_202348:: @ 8202348
goto_if_ne VerdanturfTown_BattleTentBattleRoom_EventScript_20243C
VerdanturfTown_BattleTentBattleRoom_EventScript_20236F:: @ 820236F
setvar VAR_0x8004, BATTLE_TOWER_FUNC_CHOOSE_TRAINER
special CallBattleTowerFunc
tower_setopponent
addobject 2
applymovement 2, VerdanturfTown_BattleTentBattleRoom_Movement_20257B
waitmovement 0

View File

@@ -25,8 +25,8 @@
#define BATTLE_DOME_FUNC_21 21
#define BATTLE_DOME_FUNC_INIT_TRAINERS 22
#define DOME_DATA_STREAK 0
#define DOME_DATA_STREAK_ACTIVE 1
#define DOME_DATA_WIN_STREAK 0
#define DOME_DATA_WIN_STREAK_ACTIVE 1
#define DOME_DATA_2 2
#define DOME_DATA_3 3
#define DOME_DATA_4 4

View File

@@ -12,8 +12,8 @@
#define BATTLE_PALACE_FUNC_SET_PRIZE 8
#define BATTLE_PALACE_FUNC_GIVE_PRIZE 9
#define PALACE_DATA_PRIZE 0
#define PALACE_DATA_STREAK 1
#define PALACE_DATA_STREAK_ACTIVE 2
#define PALACE_DATA_PRIZE 0
#define PALACE_DATA_WIN_STREAK 1
#define PALACE_DATA_WIN_STREAK_ACTIVE 2
#endif //GUARD_CONSTANTS_BATTLE_PALACE_H

View File

@@ -1,21 +1,25 @@
#ifndef GUARD_CONSTANTS_BATTLE_TOWER_H
#define GUARD_CONSTANTS_BATTLE_TOWER_H
#define BATTLE_TOWER_FUNC_INIT 0
#define BATTLE_TOWER_FUNC_GET_DATA 1
#define BATTLE_TOWER_FUNC_SET_DATA 2
#define BATTLE_TOWER_FUNC_CHOOSE_TRAINER 3
#define BATTLE_TOWER_FUNC_4 4
#define BATTLE_TOWER_FUNC_GIVE_RIBBONS 5
#define BATTLE_TOWER_FUNC_SAVE 6
#define BATTLE_TOWER_FUNC_7 7
#define BATTLE_TOWER_FUNC_NOP 8
#define BATTLE_TOWER_FUNC_NOP2 9
#define BATTLE_TOWER_FUNC_10 10
#define BATTLE_TOWER_FUNC_11 11
#define BATTLE_TOWER_FUNC_12 12
#define BATTLE_TOWER_FUNC_13 13
#define BATTLE_TOWER_FUNC_14 14
#define BATTLE_TOWER_FUNC_15 15
#define BATTLE_TOWER_FUNC_INIT 0
#define BATTLE_TOWER_FUNC_GET_DATA 1
#define BATTLE_TOWER_FUNC_SET_DATA 2
#define BATTLE_TOWER_FUNC_SET_OPPONENT 3
#define BATTLE_TOWER_FUNC_SET_BATTLE_WON 4
#define BATTLE_TOWER_FUNC_GIVE_RIBBONS 5
#define BATTLE_TOWER_FUNC_SAVE 6
#define BATTLE_TOWER_FUNC_GET_OPPONENT_INTRO 7
#define BATTLE_TOWER_FUNC_NOP 8
#define BATTLE_TOWER_FUNC_NOP2 9
#define BATTLE_TOWER_FUNC_10 10
#define BATTLE_TOWER_FUNC_11 11
#define BATTLE_TOWER_FUNC_12 12
#define BATTLE_TOWER_FUNC_13 13
#define BATTLE_TOWER_FUNC_14 14
#define BATTLE_TOWER_FUNC_SET_INTERVIEW_DATA 15
#define TOWER_DATA_WIN_STREAK 1
#define TOWER_DATA_WIN_STREAK_ACTIVE 2
#define TOWER_DATA_LVL_MODE 3
#endif //GUARD_CONSTANTS_BATTLE_TOWER_H

View File

@@ -2274,10 +2274,10 @@ static void GetDomeData(void)
switch (gSpecialVar_0x8005)
{
case DOME_DATA_STREAK:
case DOME_DATA_WIN_STREAK:
gSpecialVar_Result = gSaveBlock2Ptr->frontier.domeWinStreaks[battleMode][lvlMode];
break;
case DOME_DATA_STREAK_ACTIVE:
case DOME_DATA_WIN_STREAK_ACTIVE:
gSpecialVar_Result = ((gSaveBlock2Ptr->frontier.winStreakActiveFlags & sWinStreakFlags[battleMode][lvlMode]) != 0);
break;
case DOME_DATA_2:
@@ -2342,10 +2342,10 @@ static void SetDomeData(void)
switch (gSpecialVar_0x8005)
{
case DOME_DATA_STREAK:
case DOME_DATA_WIN_STREAK:
gSaveBlock2Ptr->frontier.domeWinStreaks[battleMode][lvlMode] = gSpecialVar_0x8006;
break;
case DOME_DATA_STREAK_ACTIVE:
case DOME_DATA_WIN_STREAK_ACTIVE:
if (gSpecialVar_0x8006)
gSaveBlock2Ptr->frontier.winStreakActiveFlags |= sWinStreakFlags[battleMode][lvlMode];
else

View File

@@ -107,10 +107,10 @@ static void GetPalaceData(void)
case PALACE_DATA_PRIZE:
gSpecialVar_Result = gSaveBlock2Ptr->frontier.palacePrize;
break;
case PALACE_DATA_STREAK:
case PALACE_DATA_WIN_STREAK:
gSpecialVar_Result = gSaveBlock2Ptr->frontier.palaceWinStreaks[battleMode][lvlMode];
break;
case PALACE_DATA_STREAK_ACTIVE:
case PALACE_DATA_WIN_STREAK_ACTIVE:
gSpecialVar_Result = ((gSaveBlock2Ptr->frontier.winStreakActiveFlags & sWinStreakFlags[battleMode][lvlMode]) != 0);
break;
}
@@ -126,10 +126,10 @@ static void SetPalaceData(void)
case PALACE_DATA_PRIZE:
gSaveBlock2Ptr->frontier.palacePrize = gSpecialVar_0x8006;
break;
case PALACE_DATA_STREAK:
case PALACE_DATA_WIN_STREAK:
gSaveBlock2Ptr->frontier.palaceWinStreaks[battleMode][lvlMode] = gSpecialVar_0x8006;
break;
case PALACE_DATA_STREAK_ACTIVE:
case PALACE_DATA_WIN_STREAK_ACTIVE:
if (gSpecialVar_0x8006)
gSaveBlock2Ptr->frontier.winStreakActiveFlags |= sWinStreakFlags[battleMode][lvlMode];
else

View File

@@ -48,11 +48,11 @@ u16 gUnknown_03006298[4];
static void InitTowerChallenge(void);
static void GetTowerData(void);
static void SetTowerData(void);
static void ChooseNextBattleTowerTrainer(void);
static void sub_81621C0(void);
static void SetNextFacilityOpponent(void);
static void SetTowerBattleWon(void);
static void AwardBattleTowerRibbons(void);
static void SaveTowerChallenge(void);
static void sub_8163914(void);
static void GetOpponentIntroSpeech(void);
static void nullsub_61(void);
static void nullsub_116(void);
static void sub_81642A0(void);
@@ -60,11 +60,11 @@ static void sub_8164828(void);
static void sub_8164B74(void);
static void sub_8164DCC(void);
static void sub_8164DE4(void);
static void sub_8164E04(void);
static void SetTowerInterviewData(void);
static void ValidateBattleTowerRecordChecksums(void);
static void SaveCurrentWinStreak(void);
static void ValidateApprenticesChecksums(void);
static void sub_8165E18(void);
static void SetNextBattleTentOpponent(void);
static void CopyEReaderTrainerFarewellMessage(void);
static void ClearBattleTowerRecord(struct EmeraldBattleTowerRecord *record);
static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount);
@@ -1059,11 +1059,11 @@ static void (* const sBattleTowerFuncs[])(void) =
[BATTLE_TOWER_FUNC_INIT] = InitTowerChallenge,
[BATTLE_TOWER_FUNC_GET_DATA] = GetTowerData,
[BATTLE_TOWER_FUNC_SET_DATA] = SetTowerData,
[BATTLE_TOWER_FUNC_CHOOSE_TRAINER] = ChooseNextBattleTowerTrainer,
[BATTLE_TOWER_FUNC_4] = sub_81621C0,
[BATTLE_TOWER_FUNC_SET_OPPONENT] = SetNextFacilityOpponent,
[BATTLE_TOWER_FUNC_SET_BATTLE_WON] = SetTowerBattleWon,
[BATTLE_TOWER_FUNC_GIVE_RIBBONS] = AwardBattleTowerRibbons,
[BATTLE_TOWER_FUNC_SAVE] = SaveTowerChallenge,
[BATTLE_TOWER_FUNC_7] = sub_8163914,
[BATTLE_TOWER_FUNC_GET_OPPONENT_INTRO] = GetOpponentIntroSpeech,
[BATTLE_TOWER_FUNC_NOP] = nullsub_61,
[BATTLE_TOWER_FUNC_NOP2] = nullsub_116,
[BATTLE_TOWER_FUNC_10] = sub_81642A0,
@@ -1071,7 +1071,7 @@ static void (* const sBattleTowerFuncs[])(void) =
[BATTLE_TOWER_FUNC_12] = sub_8164B74,
[BATTLE_TOWER_FUNC_13] = sub_8164DCC,
[BATTLE_TOWER_FUNC_14] = sub_8164DE4,
[BATTLE_TOWER_FUNC_15] = sub_8164E04,
[BATTLE_TOWER_FUNC_SET_INTERVIEW_DATA] = SetTowerInterviewData,
};
static const u32 sWinStreakFlags[][2] =
@@ -1181,13 +1181,13 @@ static void GetTowerData(void)
{
case 0:
break;
case 1:
case TOWER_DATA_WIN_STREAK:
gSpecialVar_Result = GetCurrentBattleTowerWinStreak(lvlMode, battleMode);
break;
case 2:
case TOWER_DATA_WIN_STREAK_ACTIVE:
gSpecialVar_Result = ((gSaveBlock2Ptr->frontier.winStreakActiveFlags & sWinStreakFlags[battleMode][lvlMode]) != 0);
break;
case 3:
case TOWER_DATA_LVL_MODE:
gSaveBlock2Ptr->frontier.towerLvlMode = gSaveBlock2Ptr->frontier.lvlMode;
break;
}
@@ -1202,27 +1202,27 @@ static void SetTowerData(void)
{
case 0:
break;
case 1:
case TOWER_DATA_WIN_STREAK:
gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode] = gSpecialVar_0x8006;
break;
case 2:
case TOWER_DATA_WIN_STREAK_ACTIVE:
if (gSpecialVar_0x8006)
gSaveBlock2Ptr->frontier.winStreakActiveFlags |= sWinStreakFlags[battleMode][lvlMode];
else
gSaveBlock2Ptr->frontier.winStreakActiveFlags &= sWinStreakMasks[battleMode][lvlMode];
break;
case 3:
case TOWER_DATA_LVL_MODE:
gSaveBlock2Ptr->frontier.towerLvlMode = gSaveBlock2Ptr->frontier.lvlMode;
break;
}
}
static void sub_81621C0(void)
static void SetTowerBattleWon(void)
{
if (gTrainerBattleOpponent_A == TRAINER_EREADER)
ClearEReaderTrainer(&gSaveBlock2Ptr->frontier.ereaderTrainer);
// below field is never read outside this conditional
// towerNumWins is never read outside this conditional
if (gSaveBlock2Ptr->frontier.towerNumWins < MAX_STREAK)
gSaveBlock2Ptr->frontier.towerNumWins++;
@@ -1299,12 +1299,12 @@ static bool8 ChooseSpecialBattleTowerTrainer(void)
}
}
static void ChooseNextBattleTowerTrainer(void)
static void SetNextFacilityOpponent(void)
{
u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
if (lvlMode == FRONTIER_LVL_TENT)
{
sub_8165E18();
SetNextBattleTentOpponent();
}
else
{
@@ -2165,7 +2165,7 @@ void FrontierSpeechToString(const u16 *words)
}
}
static void sub_8163914(void)
static void GetOpponentIntroSpeech(void)
{
u16 trainerId;
SetFacilityPtrsGetLevel();
@@ -2889,7 +2889,7 @@ static void sub_8164DE4(void)
SetBattleFacilityTrainerGfxId(gSaveBlock2Ptr->frontier.trainerIds[17], 0xF);
}
static void sub_8164E04(void)
static void SetTowerInterviewData(void)
{
s32 i;
u8 text[32];
@@ -3562,7 +3562,7 @@ static u8 SetTentPtrsGetLevel(void)
return level;
}
static void sub_8165E18(void)
static void SetNextBattleTentOpponent(void)
{
s32 i;
u16 trainerId;