summaryrefslogtreecommitdiff
path: root/src/constants
diff options
context:
space:
mode:
authorElectroDeoxys <ElectroDeoxys@gmail.com>2020-04-28 20:20:20 +0100
committerElectroDeoxys <ElectroDeoxys@gmail.com>2020-04-28 20:20:20 +0100
commit7d9ea8a30d19fae6a39bb36981e27db6edbea5e7 (patch)
tree632526b60f8642fa2362e6a5582799e906b28718 /src/constants
parente38d9f1de3abe1cdb54e7292ead677151348bd4e (diff)
AI routines and Energy Trans logic
Diffstat (limited to 'src/constants')
-rw-r--r--src/constants/duel_constants.asm41
1 files changed, 26 insertions, 15 deletions
diff --git a/src/constants/duel_constants.asm b/src/constants/duel_constants.asm
index 65f58e3..b667c50 100644
--- a/src/constants/duel_constants.asm
+++ b/src/constants/duel_constants.asm
@@ -232,21 +232,32 @@ AI_FLAG_USED_PROFESSOR_OAK EQU 1 << 2
AI_FLAG_MODIFIED_HAND EQU 1 << 3
AI_FLAG_USED_GUST_OF_WIND EQU 1 << 4
+; used as input for AIProcessEnergyCards to determine what to check
+; and whether to play card after the routine is over.
+; I suspect AI_ENERGY_FLAG_DONT_PLAY to be a flag to signal the routine
+; not to actually play the energy card after it's finished,
+; but AIProcessEnergyCards checks whether ANY flag is set in order
+; to decide not to play it, so it's redundant in the presence of another flag.
+AI_ENERGY_FLAG_DONT_PLAY EQU 1 << 0 ; whether to play energy card (?)
+AI_ENERGY_FLAG_SKIP_EVOLUTION EQU 1 << 1 ; whether to check if card has evolutions
+AI_ENERGY_FLAG_SKIP_ARENA_CARD EQU 1 << 7 ; whether to include Arena card in determining which card to attach energy
+
; used to determine which Trainer cards for AI
; to process in AIProcessHandTrainerCards.
; aside from a few exceptions, these go in chronological order.
-AI_TRAINER_CARD_PHASE_01 EQU $1
-AI_TRAINER_CARD_PHASE_02 EQU $2
-AI_TRAINER_CARD_PHASE_03 EQU $3
-AI_TRAINER_CARD_PHASE_04 EQU $4
-AI_TRAINER_CARD_PHASE_05 EQU $5
-AI_TRAINER_CARD_PHASE_06 EQU $6
-AI_TRAINER_CARD_PHASE_07 EQU $7
-AI_TRAINER_CARD_PHASE_08 EQU $8
-AI_TRAINER_CARD_PHASE_09 EQU $9
-AI_TRAINER_CARD_PHASE_10 EQU $a
-AI_TRAINER_CARD_PHASE_11 EQU $b
-AI_TRAINER_CARD_PHASE_12 EQU $c
-AI_TRAINER_CARD_PHASE_13 EQU $d
-AI_TRAINER_CARD_PHASE_14 EQU $e
-AI_TRAINER_CARD_PHASE_15 EQU $f
+ const_def 1
+ const AI_TRAINER_CARD_PHASE_01 ; $1
+ const AI_TRAINER_CARD_PHASE_02 ; $2
+ const AI_TRAINER_CARD_PHASE_03 ; $3
+ const AI_TRAINER_CARD_PHASE_04 ; $4
+ const AI_TRAINER_CARD_PHASE_05 ; $5
+ const AI_TRAINER_CARD_PHASE_06 ; $6
+ const AI_TRAINER_CARD_PHASE_07 ; $7
+ const AI_TRAINER_CARD_PHASE_08 ; $8
+ const AI_TRAINER_CARD_PHASE_09 ; $9
+ const AI_TRAINER_CARD_PHASE_10 ; $a
+ const AI_TRAINER_CARD_PHASE_11 ; $b
+ const AI_TRAINER_CARD_PHASE_12 ; $c
+ const AI_TRAINER_CARD_PHASE_13 ; $d
+ const AI_TRAINER_CARD_PHASE_14 ; $e
+ const AI_TRAINER_CARD_PHASE_15 ; $f