diff options
Diffstat (limited to 'src/constants/card_data_constants.asm')
-rw-r--r-- | src/constants/card_data_constants.asm | 82 |
1 files changed, 62 insertions, 20 deletions
diff --git a/src/constants/card_data_constants.asm b/src/constants/card_data_constants.asm index 641d04b..3f26e4d 100644 --- a/src/constants/card_data_constants.asm +++ b/src/constants/card_data_constants.asm @@ -41,7 +41,7 @@ CARD_DATA_MOVE1_EFFECT_COMMANDS EQU $18 CARD_DATA_MOVE1_FLAG1 EQU $1a CARD_DATA_MOVE1_FLAG2 EQU $1b CARD_DATA_MOVE1_FLAG3 EQU $1c -CARD_DATA_MOVE1_UNKNOWN1 EQU $1d +CARD_DATA_MOVE1_EFFECT_PARAM EQU $1d CARD_DATA_MOVE1_ANIMATION EQU $1e ; TYPE_PKMN card only @@ -55,7 +55,7 @@ CARD_DATA_MOVE2_EFFECT_COMMANDS EQU $2b CARD_DATA_MOVE2_FLAG1 EQU $2d CARD_DATA_MOVE2_FLAG2 EQU $2e CARD_DATA_MOVE2_FLAG3 EQU $2f -CARD_DATA_MOVE2_UNKNOWN1 EQU $30 +CARD_DATA_MOVE2_EFFECT_PARAM EQU $30 CARD_DATA_MOVE2_ANIMATION EQU $31 ; TYPE_PKMN card only @@ -164,32 +164,74 @@ 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 + +; attack index constants +FIRST_ATTACK_OR_PKMN_POWER EQU $0 +SECOND_ATTACK EQU $1 + +; whether move with the ATTACHED_ENERGY_BOOST flag +; has limit on attached energy cards boost. +MAX_ENERGY_BOOST_IS_LIMITED EQU $2 +MAX_ENERGY_BOOST_IS_NOT_LIMITED EQU $3 |