summaryrefslogtreecommitdiff
path: root/src/constants/card_data_constants.asm
diff options
context:
space:
mode:
Diffstat (limited to 'src/constants/card_data_constants.asm')
-rw-r--r--src/constants/card_data_constants.asm69
1 files changed, 51 insertions, 18 deletions
diff --git a/src/constants/card_data_constants.asm b/src/constants/card_data_constants.asm
index 641d04b..9d4c88f 100644
--- a/src/constants/card_data_constants.asm
+++ b/src/constants/card_data_constants.asm
@@ -164,32 +164,65 @@ POKEMON_POWER EQU $04
RESIDUAL_F EQU 7
RESIDUAL EQU 1 << RESIDUAL_F
+; Bit mask for CheckLoadedMoveFlag
+; for flag address from wLoadedMoveFlag1
+MOVE_FLAG1_ADDRESS EQU $0 << 3
+MOVE_FLAG2_ADDRESS EQU $1 << 3
+MOVE_FLAG3_ADDRESS EQU $2 << 3
+
; CARD_DATA_MOVE*_FLAG1 constants
-INFLICT_POISON EQU %00000001
-INFLICT_SLEEP EQU %00000010
-INFLICT_PARALYSIS EQU %00000100
-INFLICT_CONFUSION EQU %00001000
-LOW_RECOIL EQU %00010000
-DAMAGE_TO_OPPONENT_BENCH EQU %00100000
-HIGH_RECOIL EQU %01000000
-DRAW_CARD EQU %10000000
+INFLICT_POISON_F EQU %000
+INFLICT_SLEEP_F EQU %001
+INFLICT_PARALYSIS_F EQU %010
+INFLICT_CONFUSION_F EQU %011
+LOW_RECOIL_F EQU %100
+DAMAGE_TO_OPPONENT_BENCH_F EQU %101
+HIGH_RECOIL_F EQU %110
+DRAW_CARD_F EQU %111
; CARD_DATA_MOVE*_FLAG2 constants
; bits 5, 6 and 7 cover a wide variety of effects
-SWITCH_OPPONENT_POKEMON EQU %00000001
-HEAL_USER EQU %00000010
-NULLIFY_OR_WEAKEN_ATTACK EQU %00000100
-DISCARD_ENERGY EQU %00001000
-ATTACHED_ENERGY_BOOST EQU %00010000
-FLAG_2_BIT_5 EQU %00100000
-FLAG_2_BIT_6 EQU %01000000
-FLAG_2_BIT_7 EQU %10000000
+SWITCH_OPPONENT_POKEMON_F EQU %000
+HEAL_USER_F EQU %001
+NULLIFY_OR_WEAKEN_ATTACK_F EQU %010
+DISCARD_ENERGY_F EQU %011
+ATTACHED_ENERGY_BOOST_F EQU %100
+FLAG_2_BIT_5_F EQU %101
+FLAG_2_BIT_6_F EQU %110
+FLAG_2_BIT_7_F EQU %111
; CARD_DATA_MOVE*_FLAG3 constants
; bit 1 covers a wide variety of effects
; bits 2-7 are unused
-BOOST_IF_TAKEN_DAMAGE EQU %00000001
-FLAG_3_BIT_1 EQU %00000010
+BOOST_IF_TAKEN_DAMAGE_F EQU %000
+FLAG_3_BIT_1_F EQU %001
+
+; CARD_DATA_MOVE*_FLAG1_F constants
+INFLICT_POISON EQU $1 << INFLICT_POISON_F
+INFLICT_SLEEP EQU $1 << INFLICT_SLEEP_F
+INFLICT_PARALYSIS EQU $1 << INFLICT_PARALYSIS_F
+INFLICT_CONFUSION EQU $1 << INFLICT_CONFUSION_F
+LOW_RECOIL EQU $1 << LOW_RECOIL_F
+DAMAGE_TO_OPPONENT_BENCH EQU $1 << DAMAGE_TO_OPPONENT_BENCH_F
+HIGH_RECOIL EQU $1 << HIGH_RECOIL_F
+DRAW_CARD EQU $1 << DRAW_CARD_F
+
+; CARD_DATA_MOVE*_FLAG2_F constants
+; bits 5, 6 and 7 cover a wide variety of effects
+SWITCH_OPPONENT_POKEMON EQU $1 << SWITCH_OPPONENT_POKEMON_F
+HEAL_USER EQU $1 << HEAL_USER_F
+NULLIFY_OR_WEAKEN_ATTACK EQU $1 << NULLIFY_OR_WEAKEN_ATTACK_F
+DISCARD_ENERGY EQU $1 << DISCARD_ENERGY_F
+ATTACHED_ENERGY_BOOST EQU $1 << ATTACHED_ENERGY_BOOST_F
+FLAG_2_BIT_5 EQU $1 << FLAG_2_BIT_5_F
+FLAG_2_BIT_6 EQU $1 << FLAG_2_BIT_6_F
+FLAG_2_BIT_7 EQU $1 << FLAG_2_BIT_7_F
+
+; CARD_DATA_MOVE*_FLAG3_F constants
+; bit 1 covers a wide variety of effects
+; bits 2-7 are unused
+BOOST_IF_TAKEN_DAMAGE EQU $1 << BOOST_IF_TAKEN_DAMAGE_F
+FLAG_3_BIT_1 EQU $1 << FLAG_3_BIT_1_F
; special CARD_DATA_RETREAT_COST values
UNABLE_RETREAT EQU $64