diff options
author | GriffinR <griffin.richards@comcast.net> | 2019-11-28 22:46:39 -0500 |
---|---|---|
committer | huderlem <huderlem@gmail.com> | 2019-12-05 21:11:17 -0600 |
commit | 9b3d1cfab61fff89cae64c093f28775fdbad1027 (patch) | |
tree | d446b1559526f144906cf4fc1a13ae3da07fea43 /asm/macros/battle_frontier/battle_tower.inc | |
parent | be17c1602d31d6f7d6601f27f2808b79a5644f7f (diff) |
Set up Battle Dome and Tower macros
Diffstat (limited to 'asm/macros/battle_frontier/battle_tower.inc')
-rw-r--r-- | asm/macros/battle_frontier/battle_tower.inc | 61 |
1 files changed, 58 insertions, 3 deletions
diff --git a/asm/macros/battle_frontier/battle_tower.inc b/asm/macros/battle_frontier/battle_tower.inc index 3a42438bb..d5a02ea21 100644 --- a/asm/macros/battle_frontier/battle_tower.inc +++ b/asm/macros/battle_frontier/battle_tower.inc @@ -1,7 +1,62 @@ -@ To be populated with macros for CallBattleTowerFunc + @ Initialize the Battle Tower challenge + .macro tower_init + setvar VAR_0x8004, BATTLE_TOWER_FUNC_INIT + special CallBattleTowerFunc + .endm - .macro battletower_getstreak + @ 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, 1 + 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 |