diff --git a/constants.asm b/constants.asm index 116f194a1..a665c4dad 100644 --- a/constants.asm +++ b/constants.asm @@ -7,6 +7,7 @@ INCLUDE "constants/wram_constants.asm" INCLUDE "constants/pokemon_constants.asm" INCLUDE "constants/type_constants.asm" INCLUDE "constants/move_constants.asm" +INCLUDE "constants/move_effect_constants.asm" INCLUDE "constants/battle_constants.asm" INCLUDE "constants/battle_anim_constants.asm" INCLUDE "constants/map_constants.asm" @@ -16,6 +17,7 @@ INCLUDE "constants/landmark_constants.asm" INCLUDE "constants/item_constants.asm" INCLUDE "constants/item_data_constants.asm" INCLUDE "constants/trainer_constants.asm" +INCLUDE "constants/trainer_data_constants.asm" INCLUDE "constants/script_constants.asm" INCLUDE "constants/event_flags.asm" INCLUDE "constants/engine_flags.asm" diff --git a/constants/battle_constants.asm b/constants/battle_constants.asm index 9c0e06c6a..2b1fec155 100644 --- a/constants/battle_constants.asm +++ b/constants/battle_constants.asm @@ -213,166 +213,6 @@ SUBSTATUS_CURLED EQU 0 const WEATHER_SUN_END const WEATHER_SANDSTORM_END -; MoveEffectsPointers indexes (see data/moves/move_effects_pointers.asm) - const_def - const EFFECT_NORMAL_HIT - const EFFECT_SLEEP - const EFFECT_POISON_HIT - const EFFECT_LEECH_HIT - const EFFECT_BURN_HIT - const EFFECT_FREEZE_HIT - const EFFECT_PARALYZE_HIT - const EFFECT_SELFDESTRUCT - const EFFECT_DREAM_EATER - const EFFECT_MIRROR_MOVE - const EFFECT_ATTACK_UP - const EFFECT_DEFENSE_UP - const EFFECT_SPEED_UP - const EFFECT_SP_ATK_UP - const EFFECT_SP_DEF_UP - const EFFECT_ACCURACY_UP - const EFFECT_EVASION_UP - const EFFECT_ALWAYS_HIT - const EFFECT_ATTACK_DOWN - const EFFECT_DEFENSE_DOWN - const EFFECT_SPEED_DOWN - const EFFECT_SP_ATK_DOWN - const EFFECT_SP_DEF_DOWN - const EFFECT_ACCURACY_DOWN - const EFFECT_EVASION_DOWN - const EFFECT_RESET_STATS - const EFFECT_BIDE - const EFFECT_RAMPAGE - const EFFECT_FORCE_SWITCH - const EFFECT_MULTI_HIT - const EFFECT_CONVERSION - const EFFECT_FLINCH_HIT - const EFFECT_HEAL - const EFFECT_TOXIC - const EFFECT_PAY_DAY - const EFFECT_LIGHT_SCREEN - const EFFECT_TRI_ATTACK - const EFFECT_UNUSED_25 - const EFFECT_OHKO - const EFFECT_RAZOR_WIND - const EFFECT_SUPER_FANG - const EFFECT_STATIC_DAMAGE - const EFFECT_TRAP_TARGET - const EFFECT_UNUSED_2B - const EFFECT_DOUBLE_HIT - const EFFECT_JUMP_KICK - const EFFECT_MIST - const EFFECT_FOCUS_ENERGY - const EFFECT_RECOIL_HIT - const EFFECT_CONFUSE - const EFFECT_ATTACK_UP_2 - const EFFECT_DEFENSE_UP_2 - const EFFECT_SPEED_UP_2 - const EFFECT_SP_ATK_UP_2 - const EFFECT_SP_DEF_UP_2 - const EFFECT_ACCURACY_UP_2 - const EFFECT_EVASION_UP_2 - const EFFECT_TRANSFORM - const EFFECT_ATTACK_DOWN_2 - const EFFECT_DEFENSE_DOWN_2 - const EFFECT_SPEED_DOWN_2 - const EFFECT_SP_ATK_DOWN_2 - const EFFECT_SP_DEF_DOWN_2 - const EFFECT_ACCURACY_DOWN_2 - const EFFECT_EVASION_DOWN_2 - const EFFECT_REFLECT - const EFFECT_POISON - const EFFECT_PARALYZE - const EFFECT_ATTACK_DOWN_HIT - const EFFECT_DEFENSE_DOWN_HIT - const EFFECT_SPEED_DOWN_HIT - const EFFECT_SP_ATK_DOWN_HIT - const EFFECT_SP_DEF_DOWN_HIT - const EFFECT_ACCURACY_DOWN_HIT - const EFFECT_EVASION_DOWN_HIT - const EFFECT_SKY_ATTACK - const EFFECT_CONFUSE_HIT - const EFFECT_POISON_MULTI_HIT - const EFFECT_UNUSED_4E - const EFFECT_SUBSTITUTE - const EFFECT_HYPER_BEAM - const EFFECT_RAGE - const EFFECT_MIMIC - const EFFECT_METRONOME - const EFFECT_LEECH_SEED - const EFFECT_SPLASH - const EFFECT_DISABLE - const EFFECT_LEVEL_DAMAGE - const EFFECT_PSYWAVE - const EFFECT_COUNTER - const EFFECT_ENCORE - const EFFECT_PAIN_SPLIT - const EFFECT_SNORE - const EFFECT_CONVERSION2 - const EFFECT_LOCK_ON - const EFFECT_SKETCH - const EFFECT_DEFROST_OPPONENT - const EFFECT_SLEEP_TALK - const EFFECT_DESTINY_BOND - const EFFECT_REVERSAL - const EFFECT_SPITE - const EFFECT_FALSE_SWIPE - const EFFECT_HEAL_BELL - const EFFECT_PRIORITY_HIT - const EFFECT_TRIPLE_KICK - const EFFECT_THIEF - const EFFECT_MEAN_LOOK - const EFFECT_NIGHTMARE - const EFFECT_FLAME_WHEEL - const EFFECT_CURSE - const EFFECT_UNUSED_6E - const EFFECT_PROTECT - const EFFECT_SPIKES - const EFFECT_FORESIGHT - const EFFECT_PERISH_SONG - const EFFECT_SANDSTORM - const EFFECT_ENDURE - const EFFECT_ROLLOUT - const EFFECT_SWAGGER - const EFFECT_FURY_CUTTER - const EFFECT_ATTRACT - const EFFECT_RETURN - const EFFECT_PRESENT - const EFFECT_FRUSTRATION - const EFFECT_SAFEGUARD - const EFFECT_SACRED_FIRE - const EFFECT_MAGNITUDE - const EFFECT_BATON_PASS - const EFFECT_PURSUIT - const EFFECT_RAPID_SPIN - const EFFECT_UNUSED_82 - const EFFECT_UNUSED_83 - const EFFECT_MORNING_SUN - const EFFECT_SYNTHESIS - const EFFECT_MOONLIGHT - const EFFECT_HIDDEN_POWER - const EFFECT_RAIN_DANCE - const EFFECT_SUNNY_DAY - const EFFECT_DEFENSE_UP_HIT - const EFFECT_ATTACK_UP_HIT - const EFFECT_ALL_UP_HIT - const EFFECT_FAKE_OUT - const EFFECT_BELLY_DRUM - const EFFECT_PSYCH_UP - const EFFECT_MIRROR_COAT - const EFFECT_SKULL_BASH - const EFFECT_TWISTER - const EFFECT_EARTHQUAKE - const EFFECT_FUTURE_SIGHT - const EFFECT_GUST - const EFFECT_STOMP - const EFFECT_SOLARBEAM - const EFFECT_THUNDER - const EFFECT_TELEPORT - const EFFECT_BEAT_UP - const EFFECT_FLY - const EFFECT_DEFENSE_CURL - ; wBattleAction const_def const BATTLEACTION_MOVE1 diff --git a/constants/move_effect_constants.asm b/constants/move_effect_constants.asm new file mode 100644 index 000000000..dcb69ee38 --- /dev/null +++ b/constants/move_effect_constants.asm @@ -0,0 +1,159 @@ +; MoveEffectsPointers indexes (see data/moves/move_effects_pointers.asm) + const_def + const EFFECT_NORMAL_HIT + const EFFECT_SLEEP + const EFFECT_POISON_HIT + const EFFECT_LEECH_HIT + const EFFECT_BURN_HIT + const EFFECT_FREEZE_HIT + const EFFECT_PARALYZE_HIT + const EFFECT_SELFDESTRUCT + const EFFECT_DREAM_EATER + const EFFECT_MIRROR_MOVE + const EFFECT_ATTACK_UP + const EFFECT_DEFENSE_UP + const EFFECT_SPEED_UP + const EFFECT_SP_ATK_UP + const EFFECT_SP_DEF_UP + const EFFECT_ACCURACY_UP + const EFFECT_EVASION_UP + const EFFECT_ALWAYS_HIT + const EFFECT_ATTACK_DOWN + const EFFECT_DEFENSE_DOWN + const EFFECT_SPEED_DOWN + const EFFECT_SP_ATK_DOWN + const EFFECT_SP_DEF_DOWN + const EFFECT_ACCURACY_DOWN + const EFFECT_EVASION_DOWN + const EFFECT_RESET_STATS + const EFFECT_BIDE + const EFFECT_RAMPAGE + const EFFECT_FORCE_SWITCH + const EFFECT_MULTI_HIT + const EFFECT_CONVERSION + const EFFECT_FLINCH_HIT + const EFFECT_HEAL + const EFFECT_TOXIC + const EFFECT_PAY_DAY + const EFFECT_LIGHT_SCREEN + const EFFECT_TRI_ATTACK + const EFFECT_UNUSED_25 + const EFFECT_OHKO + const EFFECT_RAZOR_WIND + const EFFECT_SUPER_FANG + const EFFECT_STATIC_DAMAGE + const EFFECT_TRAP_TARGET + const EFFECT_UNUSED_2B + const EFFECT_DOUBLE_HIT + const EFFECT_JUMP_KICK + const EFFECT_MIST + const EFFECT_FOCUS_ENERGY + const EFFECT_RECOIL_HIT + const EFFECT_CONFUSE + const EFFECT_ATTACK_UP_2 + const EFFECT_DEFENSE_UP_2 + const EFFECT_SPEED_UP_2 + const EFFECT_SP_ATK_UP_2 + const EFFECT_SP_DEF_UP_2 + const EFFECT_ACCURACY_UP_2 + const EFFECT_EVASION_UP_2 + const EFFECT_TRANSFORM + const EFFECT_ATTACK_DOWN_2 + const EFFECT_DEFENSE_DOWN_2 + const EFFECT_SPEED_DOWN_2 + const EFFECT_SP_ATK_DOWN_2 + const EFFECT_SP_DEF_DOWN_2 + const EFFECT_ACCURACY_DOWN_2 + const EFFECT_EVASION_DOWN_2 + const EFFECT_REFLECT + const EFFECT_POISON + const EFFECT_PARALYZE + const EFFECT_ATTACK_DOWN_HIT + const EFFECT_DEFENSE_DOWN_HIT + const EFFECT_SPEED_DOWN_HIT + const EFFECT_SP_ATK_DOWN_HIT + const EFFECT_SP_DEF_DOWN_HIT + const EFFECT_ACCURACY_DOWN_HIT + const EFFECT_EVASION_DOWN_HIT + const EFFECT_SKY_ATTACK + const EFFECT_CONFUSE_HIT + const EFFECT_POISON_MULTI_HIT + const EFFECT_UNUSED_4E + const EFFECT_SUBSTITUTE + const EFFECT_HYPER_BEAM + const EFFECT_RAGE + const EFFECT_MIMIC + const EFFECT_METRONOME + const EFFECT_LEECH_SEED + const EFFECT_SPLASH + const EFFECT_DISABLE + const EFFECT_LEVEL_DAMAGE + const EFFECT_PSYWAVE + const EFFECT_COUNTER + const EFFECT_ENCORE + const EFFECT_PAIN_SPLIT + const EFFECT_SNORE + const EFFECT_CONVERSION2 + const EFFECT_LOCK_ON + const EFFECT_SKETCH + const EFFECT_DEFROST_OPPONENT + const EFFECT_SLEEP_TALK + const EFFECT_DESTINY_BOND + const EFFECT_REVERSAL + const EFFECT_SPITE + const EFFECT_FALSE_SWIPE + const EFFECT_HEAL_BELL + const EFFECT_PRIORITY_HIT + const EFFECT_TRIPLE_KICK + const EFFECT_THIEF + const EFFECT_MEAN_LOOK + const EFFECT_NIGHTMARE + const EFFECT_FLAME_WHEEL + const EFFECT_CURSE + const EFFECT_UNUSED_6E + const EFFECT_PROTECT + const EFFECT_SPIKES + const EFFECT_FORESIGHT + const EFFECT_PERISH_SONG + const EFFECT_SANDSTORM + const EFFECT_ENDURE + const EFFECT_ROLLOUT + const EFFECT_SWAGGER + const EFFECT_FURY_CUTTER + const EFFECT_ATTRACT + const EFFECT_RETURN + const EFFECT_PRESENT + const EFFECT_FRUSTRATION + const EFFECT_SAFEGUARD + const EFFECT_SACRED_FIRE + const EFFECT_MAGNITUDE + const EFFECT_BATON_PASS + const EFFECT_PURSUIT + const EFFECT_RAPID_SPIN + const EFFECT_UNUSED_82 + const EFFECT_UNUSED_83 + const EFFECT_MORNING_SUN + const EFFECT_SYNTHESIS + const EFFECT_MOONLIGHT + const EFFECT_HIDDEN_POWER + const EFFECT_RAIN_DANCE + const EFFECT_SUNNY_DAY + const EFFECT_DEFENSE_UP_HIT + const EFFECT_ATTACK_UP_HIT + const EFFECT_ALL_UP_HIT + const EFFECT_FAKE_OUT + const EFFECT_BELLY_DRUM + const EFFECT_PSYCH_UP + const EFFECT_MIRROR_COAT + const EFFECT_SKULL_BASH + const EFFECT_TWISTER + const EFFECT_EARTHQUAKE + const EFFECT_FUTURE_SIGHT + const EFFECT_GUST + const EFFECT_STOMP + const EFFECT_SOLARBEAM + const EFFECT_THUNDER + const EFFECT_TELEPORT + const EFFECT_BEAT_UP + const EFFECT_FLY + const EFFECT_DEFENSE_CURL diff --git a/constants/trainer_constants.asm b/constants/trainer_constants.asm index a5440ad80..f5263e5d4 100644 --- a/constants/trainer_constants.asm +++ b/constants/trainer_constants.asm @@ -677,57 +677,3 @@ KRIS EQU __enum__ const EUSINE NUM_TRAINER_CLASSES EQU __enum__ - -; TrainerClassAttributes struct members (see data/trainers/trainer_attributes.asm) - const_def - const TRNATTR_ITEM1 ; 0 - const TRNATTR_ITEM2 ; 1 - const TRNATTR_BASEMONEY ; 2 - const TRNATTR_AI_MOVE_WEIGHTS ; 3 - const TRNATTR_AI2 ; 4 - const TRNATTR_AI_ITEM_SWITCH ; 5 - const TRNATTR_AI4 ; 6 -NUM_TRAINER_ATTRIBUTES EQU const_value - -; TRNATTR_AI_MOVE_WEIGHTS bit flags (wEnemyTrainerAIFlags) - const_def - const NO_AI -const_value = 0 - shift_const AI_BASIC - shift_const AI_SETUP - shift_const AI_TYPES - shift_const AI_OFFENSIVE - shift_const AI_SMART - shift_const AI_OPPORTUNIST - shift_const AI_AGGRESSIVE - shift_const AI_CAUTIOUS - shift_const AI_STATUS - shift_const AI_RISKY - shift_const AI_10 - shift_const AI_11 - shift_const AI_12 - shift_const AI_13 - shift_const AI_14 - shift_const AI_15 - -; TRNATTR_AI_ITEM_SWITCH bit flags -CONTEXT_USE_F EQU 6 -UNKNOWN_USE_F EQU 5 -ALWAYS_USE_F EQU 4 -SWITCH_SOMETIMES_F EQU 2 -SWITCH_RARELY_F EQU 1 -SWITCH_OFTEN_F EQU 0 - -CONTEXT_USE EQU 1 << CONTEXT_USE_F -UNKNOWN_USE EQU 1 << UNKNOWN_USE_F -ALWAYS_USE EQU 1 << ALWAYS_USE_F -SWITCH_SOMETIMES EQU 1 << SWITCH_SOMETIMES_F -SWITCH_RARELY EQU 1 << SWITCH_RARELY_F -SWITCH_OFTEN EQU 1 << SWITCH_OFTEN_F - -; TrainerTypes indexes (see trainers/read_party.asm) - const_def - const TRAINERTYPE_NORMAL - const TRAINERTYPE_MOVES - const TRAINERTYPE_ITEM - const TRAINERTYPE_ITEM_MOVES diff --git a/constants/trainer_data_constants.asm b/constants/trainer_data_constants.asm new file mode 100644 index 000000000..631070e1c --- /dev/null +++ b/constants/trainer_data_constants.asm @@ -0,0 +1,53 @@ +; TrainerClassAttributes struct members (see data/trainers/trainer_attributes.asm) + const_def + const TRNATTR_ITEM1 ; 0 + const TRNATTR_ITEM2 ; 1 + const TRNATTR_BASEMONEY ; 2 + const TRNATTR_AI_MOVE_WEIGHTS ; 3 + const TRNATTR_AI2 ; 4 + const TRNATTR_AI_ITEM_SWITCH ; 5 + const TRNATTR_AI4 ; 6 +NUM_TRAINER_ATTRIBUTES EQU const_value + +; TRNATTR_AI_MOVE_WEIGHTS bit flags (wEnemyTrainerAIFlags) + const_def + const NO_AI +const_value = 0 + shift_const AI_BASIC + shift_const AI_SETUP + shift_const AI_TYPES + shift_const AI_OFFENSIVE + shift_const AI_SMART + shift_const AI_OPPORTUNIST + shift_const AI_AGGRESSIVE + shift_const AI_CAUTIOUS + shift_const AI_STATUS + shift_const AI_RISKY + shift_const AI_10 + shift_const AI_11 + shift_const AI_12 + shift_const AI_13 + shift_const AI_14 + shift_const AI_15 + +; TRNATTR_AI_ITEM_SWITCH bit flags +CONTEXT_USE_F EQU 6 +UNKNOWN_USE_F EQU 5 +ALWAYS_USE_F EQU 4 +SWITCH_SOMETIMES_F EQU 2 +SWITCH_RARELY_F EQU 1 +SWITCH_OFTEN_F EQU 0 + +CONTEXT_USE EQU 1 << CONTEXT_USE_F +UNKNOWN_USE EQU 1 << UNKNOWN_USE_F +ALWAYS_USE EQU 1 << ALWAYS_USE_F +SWITCH_SOMETIMES EQU 1 << SWITCH_SOMETIMES_F +SWITCH_RARELY EQU 1 << SWITCH_RARELY_F +SWITCH_OFTEN EQU 1 << SWITCH_OFTEN_F + +; TrainerTypes indexes (see trainers/read_party.asm) + const_def + const TRAINERTYPE_NORMAL + const TRAINERTYPE_MOVES + const TRAINERTYPE_ITEM + const TRAINERTYPE_ITEM_MOVES