MAX_LEVEL EQU 100 NUM_MOVES EQU 4 ; move struct MOVE_LENGTH EQU 7 MOVE_ANIM EQU 0 MOVE_EFFECT EQU 1 MOVE_POWER EQU 2 MOVE_TYPE EQU 3 MOVE_ACC EQU 4 MOVE_PP EQU 5 MOVE_CHANCE EQU 6 ; stat constants NUM_STATS EQU 6 STAT_HP EQU 1 STAT_ATK EQU 2 STAT_DEF EQU 3 STAT_SPD EQU 4 STAT_SATK EQU 5 STAT_SDEF EQU 6 STAT_MIN_NORMAL EQU 5 STAT_MIN_HP EQU 10 ; shiny dvs ATKDEFDV_SHINY EQU $EA SPDSPCDV_SHINY EQU $AA ; battle classes WILD_BATTLE EQU 1 TRAINER_BATTLE EQU 2 ; battle types BATTLETYPE_NORMAL EQU $00 BATTLETYPE_TUTORIAL EQU $03 BATTLETYPE_FISH EQU $04 BATTLETYPE_ROAMING EQU $05 BATTLETYPE_SHINY EQU $07 BATTLETYPE_TREE EQU $08 BATTLETYPE_FORCEITEM EQU $0a BATTLETYPE_SUICUNE EQU $0c ; battle variables BATTLE_VARS_SUBSTATUS1 EQU 0 BATTLE_VARS_SUBSTATUS2 EQU 1 BATTLE_VARS_SUBSTATUS3 EQU 2 BATTLE_VARS_SUBSTATUS4 EQU 3 BATTLE_VARS_SUBSTATUS5 EQU 4 BATTLE_VARS_SUBSTATUS1_OPP EQU 5 BATTLE_VARS_SUBSTATUS2_OPP EQU 6 BATTLE_VARS_SUBSTATUS3_OPP EQU 7 BATTLE_VARS_SUBSTATUS4_OPP EQU 8 BATTLE_VARS_SUBSTATUS5_OPP EQU 9 BATTLE_VARS_STATUS EQU 10 BATTLE_VARS_STATUS_OPP EQU 11 BATTLE_VARS_MOVE_ANIM EQU 12 BATTLE_VARS_MOVE_EFFECT EQU 13 BATTLE_VARS_MOVE_POWER EQU 14 BATTLE_VARS_MOVE_TYPE EQU 15 BATTLE_VARS_MOVE EQU 16 BATTLE_VARS_LAST_COUNTER_MOVE EQU 17 BATTLE_VARS_LAST_COUNTER_MOVE_OPP EQU 18 BATTLE_VARS_LAST_MOVE EQU 19 BATTLE_VARS_LAST_MOVE_OPP EQU 20 ; status SLP EQU 7 ; 7 turns PSN EQU 3 BRN EQU 4 FRZ EQU 5 PAR EQU 6 ; substatus SUBSTATUS_IN_LOVE EQU 7 SUBSTATUS_ENCORED EQU 6 SUBSTATUS_ENDURE EQU 5 SUBSTATUS_PERISH EQU 4 SUBSTATUS_IDENTIFIED EQU 3 SUBSTATUS_PROTECT EQU 2 SUBSTATUS_CURSE EQU 1 SUBSTATUS_NIGHTMARE EQU 0 SUBSTATUS_CURLED EQU 0 SUBSTATUS_CONFUSED EQU 7 SUBSTATUS_FLYING EQU 6 SUBSTATUS_UNDERGROUND EQU 5 SUBSTATUS_CHARGED EQU 4 SUBSTATUS_FLINCHED EQU 3 SUBSTATUS_ROLLOUT EQU 1 SUBSTATUS_BIDE EQU 0 SUBSTATUS_LEECH_SEED EQU 7 SUBSTATUS_RAGE EQU 6 SUBSTATUS_RECHARGE EQU 5 SUBSTATUS_SUBSTITUTE EQU 4 SUBSTATUS_FOCUS_ENERGY EQU 2 SUBSTATUS_MIST EQU 1 SUBSTATUS_UNLEASH EQU 0 SUBSTATUS_CANT_RUN EQU 7 SUBSTATUS_DESTINY_BOND EQU 6 SUBSTATUS_LOCK_ON EQU 5 SUBSTATUS_TOXIC EQU 0 ; environmental SCREENS_REFLECT EQU 4 SCREENS_LIGHT_SCREEN EQU 3 SCREENS_SAFEGUARD EQU 2 SCREENS_SPIKES EQU 0 ; weather WEATHER_RAIN EQU 1 WEATHER_SUN EQU 2 WEATHER_SANDSTORM EQU 3 WEATHER_RAIN_END EQU 4 WEATHER_SUN_END EQU 5 WEATHER_SANDSTORM_END EQU 6 ; move animations are 1:1 with move ids ANIM_CONFUSED EQU $103 ANIM_SLEEP EQU $104 ANIM_INLOVE EQU $10a ; move effects EFFECT_NORMAL_HIT EQU $00 EFFECT_SLEEP EQU $01 EFFECT_POISON_HIT EQU $02 EFFECT_LEECH_HIT EQU $03 EFFECT_BURN_HIT EQU $04 EFFECT_FREEZE_HIT EQU $05 EFFECT_PARALYZE_HIT EQU $06 EFFECT_EXPLOSION EQU $07 EFFECT_DREAM_EATER EQU $08 EFFECT_MIRROR_MOVE EQU $09 EFFECT_ATTACK_UP EQU $0a EFFECT_DEFENSE_UP EQU $0b EFFECT_SPEED_UP EQU $0c EFFECT_SP_ATTACK_UP EQU $0d EFFECT_SP_DEFENSE_UP EQU $0e EFFECT_ACCURACY_UP EQU $0f EFFECT_EVASION_UP EQU $10 EFFECT_ALWAYS_HIT EQU $11 EFFECT_ATTACK_DOWN EQU $12 EFFECT_DEFENSE_DOWN EQU $13 EFFECT_SPEED_DOWN EQU $14 EFFECT_SP_ATTACK_DOWN EQU $15 EFFECT_SP_DEFENSE_DOWN EQU $16 EFFECT_ACCURACY_DOWN EQU $17 EFFECT_EVASION_DOWN EQU $18 EFFECT_HAZE EQU $19 EFFECT_BIDE EQU $1a EFFECT_RAMPAGE EQU $1b EFFECT_WHIRLWIND EQU $1c EFFECT_MULTI_HIT EQU $1d EFFECT_CONVERSION EQU $1e EFFECT_FLINCH_HIT EQU $1f EFFECT_HEAL EQU $20 EFFECT_TOXIC EQU $21 EFFECT_PAY_DAY EQU $22 EFFECT_LIGHT_SCREEN EQU $23 EFFECT_TRI_ATTACK EQU $24 EFFECT_UNUSED_25 EQU $25 ; unused EFFECT_OHKO EQU $26 EFFECT_RAZOR_WIND EQU $27 EFFECT_SUPER_FANG EQU $28 EFFECT_STATIC_DAMAGE EQU $29 EFFECT_BIND EQU $2a EFFECT_UNUSED_2B EQU $2b ; unused EFFECT_DOUBLE_HIT EQU $2c EFFECT_JUMP_KICK EQU $2d EFFECT_MIST EQU $2e EFFECT_FOCUS_ENERGY EQU $2f EFFECT_RECOIL_HIT EQU $30 EFFECT_CONFUSE EQU $31 EFFECT_ATTACK_UP_2 EQU $32 EFFECT_DEFENSE_UP_2 EQU $33 EFFECT_SPEED_UP_2 EQU $34 EFFECT_SP_ATTACK_UP_2 EQU $35 EFFECT_SP_DEFENSE_UP_2 EQU $36 EFFECT_ACCURACY_UP_2 EQU $37 EFFECT_EVASION_UP_2 EQU $38 EFFECT_TRANSFORM EQU $39 EFFECT_ATTACK_DOWN_2 EQU $3a EFFECT_DEFENSE_DOWN_2 EQU $3b EFFECT_SPEED_DOWN_2 EQU $3c EFFECT_SP_ATTACK_DOWN_2 EQU $3d EFFECT_SP_DEFENSE_DOWN_2 EQU $3e EFFECT_ACCURACY_DOWN_2 EQU $3f EFFECT_EVASION_DOWN_2 EQU $40 EFFECT_REFLECT EQU $41 EFFECT_POISON EQU $42 EFFECT_PARALYZE EQU $43 EFFECT_ATTACK_DOWN_HIT EQU $44 EFFECT_DEFENSE_DOWN_HIT EQU $45 EFFECT_SPEED_DOWN_HIT EQU $46 EFFECT_SP_ATTACK_DOWN_HIT EQU $47 EFFECT_SP_DEFENSE_DOWN_HIT EQU $48 EFFECT_ACCURACY_DOWN_HIT EQU $49 EFFECT_EVASION_DOWN_HIT EQU $4a EFFECT_SKY_ATTACK EQU $4b EFFECT_CONFUSE_HIT EQU $4c EFFECT_TWINEEDLE EQU $4d EFFECT_UNUSED_4E EQU $4e ; unused EFFECT_SUBSTITUTE EQU $4f EFFECT_HYPER_BEAM EQU $50 EFFECT_RAGE EQU $51 EFFECT_MIMIC EQU $52 EFFECT_METRONOME EQU $53 EFFECT_LEECH_SEED EQU $54 EFFECT_SPLASH EQU $55 EFFECT_DISABLE EQU $56 EFFECT_LEVEL_DAMAGE EQU $57 EFFECT_PSYWAVE EQU $58 EFFECT_COUNTER EQU $59 EFFECT_ENCORE EQU $5a EFFECT_PAIN_SPLIT EQU $5b EFFECT_SNORE EQU $5c EFFECT_CONVERSION2 EQU $5d EFFECT_LOCK_ON EQU $5e EFFECT_SKETCH EQU $5f EFFECT_DEFROST_OPPONENT EQU $60 EFFECT_SLEEP_TALK EQU $61 EFFECT_DESTINY_BOND EQU $62 EFFECT_REVERSAL EQU $63 EFFECT_SPITE EQU $64 EFFECT_FALSE_SWIPE EQU $65 EFFECT_HEAL_BELL EQU $66 EFFECT_PRIORITY_HIT EQU $67 EFFECT_TRIPLE_KICK EQU $68 EFFECT_THIEF EQU $69 EFFECT_MEAN_LOOK EQU $6a EFFECT_NIGHTMARE EQU $6b EFFECT_FLAME_WHEEL EQU $6c EFFECT_CURSE EQU $6d EFFECT_UNUSED_6E EQU $6e ; unused EFFECT_PROTECT EQU $6f EFFECT_SPIKES EQU $70 EFFECT_FORESIGHT EQU $71 EFFECT_PERISH_SONG EQU $72 EFFECT_SANDSTORM EQU $73 EFFECT_ENDURE EQU $74 EFFECT_ROLLOUT EQU $75 EFFECT_SWAGGER EQU $76 EFFECT_FURY_CUTTER EQU $77 EFFECT_ATTRACT EQU $78 EFFECT_RETURN EQU $79 EFFECT_PRESENT EQU $7a EFFECT_FRUSTRATION EQU $7b EFFECT_SAFEGUARD EQU $7c EFFECT_SACRED_FIRE EQU $7d EFFECT_MAGNITUDE EQU $7e EFFECT_BATON_PASS EQU $7f EFFECT_PURSUIT EQU $80 EFFECT_RAPID_SPIN EQU $81 EFFECT_UNUSED_82 EQU $82 ; unused EFFECT_UNUSED_83 EQU $83 ; unused EFFECT_MORNING_SUN EQU $84 EFFECT_SYNTHESIS EQU $85 EFFECT_MOONLIGHT EQU $86 EFFECT_HIDDEN_POWER EQU $87 EFFECT_RAIN_DANCE EQU $88 EFFECT_SUNNY_DAY EQU $89 EFFECT_STEEL_WING EQU $8a EFFECT_METAL_CLAW EQU $8b EFFECT_ANCIENTPOWER EQU $8c EFFECT_FAKE_OUT EQU $8d EFFECT_BELLY_DRUM EQU $8e EFFECT_PSYCH_UP EQU $8f EFFECT_MIRROR_COAT EQU $90 EFFECT_SKULL_BASH EQU $91 EFFECT_TWISTER EQU $92 EFFECT_EARTHQUAKE EQU $93 EFFECT_FUTURE_SIGHT EQU $94 EFFECT_GUST EQU $95 EFFECT_STOMP EQU $96 EFFECT_SOLARBEAM EQU $97 EFFECT_THUNDER EQU $98 EFFECT_TELEPORT EQU $99 EFFECT_BEAT_UP EQU $9a EFFECT_FLY EQU $9b EFFECT_DEFENSE_CURL EQU $9c