From e2b00ea1179bd50ffbd865ad9e2f8d67f0451c8d Mon Sep 17 00:00:00 2001 From: yenatch Date: Mon, 30 Dec 2013 23:12:06 -0500 Subject: [PATCH 1/5] shorten SP_ATTACK and SP_DEFENSE move effect constants --- battle/ai/scoring.asm | 2 +- battle/moves/moves.asm | 10 +++++----- constants/battle_constants.asm | 20 ++++++++++---------- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/battle/ai/scoring.asm b/battle/ai/scoring.asm index 3ad219851..e0c0248e5 100644 --- a/battle/ai/scoring.asm +++ b/battle/ai/scoring.asm @@ -326,7 +326,7 @@ AIScoring_Smart: ; 386be dbw EFFECT_BIND, AIScoring_Bind dbw EFFECT_UNUSED_2B, AIScoring_Unused2B dbw EFFECT_CONFUSE, AIScoring_Confuse - dbw EFFECT_SP_DEFENSE_UP_2, AIScoring_SpDefenseUp2 + dbw EFFECT_SP_DEF_UP_2, AIScoring_SpDefenseUp2 dbw EFFECT_REFLECT, AIScoring_Reflect dbw EFFECT_PARALYZE, AIScoring_Paralyze dbw EFFECT_SPEED_DOWN_HIT, AIScoring_SpeedDownHit diff --git a/battle/moves/moves.asm b/battle/moves/moves.asm index ee30cd1e7..d7f94743a 100644 --- a/battle/moves/moves.asm +++ b/battle/moves/moves.asm @@ -77,7 +77,7 @@ Move2: db ABSORB, EFFECT_LEECH_HIT, 20, GRASS, $ff, 20, $00 db MEGA_DRAIN, EFFECT_LEECH_HIT, 40, GRASS, $ff, 10, $00 db LEECH_SEED, EFFECT_LEECH_SEED, 0, GRASS, $e5, 10, $00 - db GROWTH, EFFECT_SP_ATTACK_UP, 0, NORMAL, $ff, 40, $00 + db GROWTH, EFFECT_SP_ATK_UP, 0, NORMAL, $ff, 40, $00 db RAZOR_LEAF, EFFECT_NORMAL_HIT, 55, GRASS, $f2, 25, $00 db SOLARBEAM, EFFECT_SOLARBEAM, 120, GRASS, $ff, 10, $00 db POISONPOWDER, EFFECT_POISON, 0, POISON, $bf, 35, $00 @@ -97,7 +97,7 @@ Move2: db DIG, EFFECT_FLY, 60, GROUND, $ff, 10, $00 db TOXIC, EFFECT_TOXIC, 0, POISON, $d8, 10, $00 db CONFUSION, EFFECT_CONFUSE_HIT, 50, PSYCHIC, $ff, 25, $19 - db PSYCHIC_M, EFFECT_SP_DEFENSE_DOWN_HIT, 90, PSYCHIC, $ff, 10, $19 + db PSYCHIC_M, EFFECT_SP_DEF_DOWN_HIT, 90, PSYCHIC, $ff, 10, $19 db HYPNOSIS, EFFECT_SLEEP, 0, PSYCHIC, $99, 20, $00 db MEDITATE, EFFECT_ATTACK_UP, 0, PSYCHIC, $ff, 40, $00 db AGILITY, EFFECT_SPEED_UP_2, 0, PSYCHIC, $ff, 30, $00 @@ -136,7 +136,7 @@ Move2: db SKULL_BASH, EFFECT_SKULL_BASH, 100, NORMAL, $ff, 15, $00 db SPIKE_CANNON, EFFECT_MULTI_HIT, 20, NORMAL, $ff, 15, $00 db CONSTRICT, EFFECT_SPEED_DOWN_HIT, 10, NORMAL, $ff, 35, $19 - db AMNESIA, EFFECT_SP_DEFENSE_UP_2, 0, PSYCHIC, $ff, 20, $00 + db AMNESIA, EFFECT_SP_DEF_UP_2, 0, PSYCHIC, $ff, 20, $00 db KINESIS, EFFECT_ACCURACY_DOWN, 0, PSYCHIC, $cc, 15, $00 db SOFTBOILED, EFFECT_HEAL, 0, NORMAL, $ff, 10, $00 db HI_JUMP_KICK, EFFECT_JUMP_KICK, 85, FIGHTING, $e5, 20, $00 @@ -245,12 +245,12 @@ Move2: db TWISTER, EFFECT_TWISTER, 40, DRAGON, $ff, 20, $33 db RAIN_DANCE, EFFECT_RAIN_DANCE, 0, WATER, $e5, 5, $00 db SUNNY_DAY, EFFECT_SUNNY_DAY, 0, FIRE, $e5, 5, $00 - db CRUNCH, EFFECT_SP_DEFENSE_DOWN_HIT, 80, DARK, $ff, 15, $33 + db CRUNCH, EFFECT_SP_DEF_DOWN_HIT, 80, DARK, $ff, 15, $33 db MIRROR_COAT, EFFECT_MIRROR_COAT, 1, PSYCHIC, $ff, 20, $00 db PSYCH_UP, EFFECT_PSYCH_UP, 0, NORMAL, $ff, 10, $00 db EXTREMESPEED, EFFECT_PRIORITY_HIT, 80, NORMAL, $ff, 5, $00 db ANCIENTPOWER, EFFECT_ANCIENTPOWER, 60, ROCK, $ff, 5, $19 - db SHADOW_BALL, EFFECT_SP_DEFENSE_DOWN_HIT, 80, GHOST, $ff, 15, $33 + db SHADOW_BALL, EFFECT_SP_DEF_DOWN_HIT, 80, GHOST, $ff, 15, $33 db FUTURE_SIGHT, EFFECT_FUTURE_SIGHT, 80, PSYCHIC, $e5, 15, $00 db ROCK_SMASH, EFFECT_DEFENSE_DOWN_HIT, 20, FIGHTING, $ff, 15, $7f db WHIRLPOOL, EFFECT_BIND, 15, WATER, $b2, 15, $00 diff --git a/constants/battle_constants.asm b/constants/battle_constants.asm index b95991ae7..d4a5abb14 100644 --- a/constants/battle_constants.asm +++ b/constants/battle_constants.asm @@ -141,16 +141,16 @@ 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_SP_ATK_UP EQU $0d +EFFECT_SP_DEF_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_SP_ATK_DOWN EQU $15 +EFFECT_SP_DEF_DOWN EQU $16 EFFECT_ACCURACY_DOWN EQU $17 EFFECT_EVASION_DOWN EQU $18 EFFECT_HAZE EQU $19 @@ -181,16 +181,16 @@ 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_SP_ATK_UP_2 EQU $35 +EFFECT_SP_DEF_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_SP_ATK_DOWN_2 EQU $3d +EFFECT_SP_DEF_DOWN_2 EQU $3e EFFECT_ACCURACY_DOWN_2 EQU $3f EFFECT_EVASION_DOWN_2 EQU $40 EFFECT_REFLECT EQU $41 @@ -199,8 +199,8 @@ 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_SP_ATK_DOWN_HIT EQU $47 +EFFECT_SP_DEF_DOWN_HIT EQU $48 EFFECT_ACCURACY_DOWN_HIT EQU $49 EFFECT_EVASION_DOWN_HIT EQU $4a EFFECT_SKY_ATTACK EQU $4b From f91be01df858f53cfc5d37eaeaaa7252ba4ae12b Mon Sep 17 00:00:00 2001 From: yenatch Date: Mon, 30 Dec 2013 23:13:25 -0500 Subject: [PATCH 2/5] use a macro to define move structs for percentage values --- battle/moves/moves.asm | 516 +++++++++++++++++++++-------------------- 1 file changed, 263 insertions(+), 253 deletions(-) diff --git a/battle/moves/moves.asm b/battle/moves/moves.asm index d7f94743a..a9c571228 100644 --- a/battle/moves/moves.asm +++ b/battle/moves/moves.asm @@ -2,257 +2,267 @@ ; animation, effect, power, type, accuracy, PP, effect chance -Move1: - db POUND, EFFECT_NORMAL_HIT, 40, NORMAL, $ff, 35, $00 -Move2: - db KARATE_CHOP, EFFECT_NORMAL_HIT, 50, FIGHTING, $ff, 25, $00 - db DOUBLESLAP, EFFECT_MULTI_HIT, 15, NORMAL, $d8, 10, $00 - db COMET_PUNCH, EFFECT_MULTI_HIT, 18, NORMAL, $d8, 15, $00 - db MEGA_PUNCH, EFFECT_NORMAL_HIT, 80, NORMAL, $d8, 20, $00 - db PAY_DAY, EFFECT_PAY_DAY, 40, NORMAL, $ff, 20, $00 - db FIRE_PUNCH, EFFECT_BURN_HIT, 75, FIRE, $ff, 15, $19 - db ICE_PUNCH, EFFECT_FREEZE_HIT, 75, ICE, $ff, 15, $19 - db THUNDERPUNCH, EFFECT_PARALYZE_HIT, 75, ELECTRIC, $ff, 15, $19 - db SCRATCH, EFFECT_NORMAL_HIT, 40, NORMAL, $ff, 35, $00 - db VICEGRIP, EFFECT_NORMAL_HIT, 55, NORMAL, $ff, 30, $00 - db GUILLOTINE, EFFECT_OHKO, 0, NORMAL, $4c, 5, $00 - db RAZOR_WIND, EFFECT_RAZOR_WIND, 80, NORMAL, $bf, 10, $00 - db SWORDS_DANCE, EFFECT_ATTACK_UP_2, 0, NORMAL, $ff, 30, $00 - db CUT, EFFECT_NORMAL_HIT, 50, NORMAL, $f2, 30, $00 - db GUST, EFFECT_GUST, 40, FLYING, $ff, 35, $00 - db WING_ATTACK, EFFECT_NORMAL_HIT, 60, FLYING, $ff, 35, $00 - db WHIRLWIND, EFFECT_WHIRLWIND, 0, NORMAL, $ff, 20, $00 - db FLY, EFFECT_FLY, 70, FLYING, $f2, 15, $00 - db BIND, EFFECT_BIND, 15, NORMAL, $bf, 20, $00 - db SLAM, EFFECT_NORMAL_HIT, 80, NORMAL, $bf, 20, $00 - db VINE_WHIP, EFFECT_NORMAL_HIT, 35, GRASS, $ff, 10, $00 - db STOMP, EFFECT_STOMP, 65, NORMAL, $ff, 20, $4c - db DOUBLE_KICK, EFFECT_DOUBLE_HIT, 30, FIGHTING, $ff, 30, $00 - db MEGA_KICK, EFFECT_NORMAL_HIT, 120, NORMAL, $bf, 5, $00 - db JUMP_KICK, EFFECT_JUMP_KICK, 70, FIGHTING, $f2, 25, $00 - db ROLLING_KICK, EFFECT_FLINCH_HIT, 60, FIGHTING, $d8, 15, $4c - db SAND_ATTACK, EFFECT_ACCURACY_DOWN, 0, GROUND, $ff, 15, $00 - db HEADBUTT, EFFECT_FLINCH_HIT, 70, NORMAL, $ff, 15, $4c - db HORN_ATTACK, EFFECT_NORMAL_HIT, 65, NORMAL, $ff, 25, $00 - db FURY_ATTACK, EFFECT_MULTI_HIT, 15, NORMAL, $d8, 20, $00 - db HORN_DRILL, EFFECT_OHKO, 1, NORMAL, $4c, 5, $00 - db TACKLE, EFFECT_NORMAL_HIT, 35, NORMAL, $f2, 35, $00 - db BODY_SLAM, EFFECT_PARALYZE_HIT, 85, NORMAL, $ff, 15, $4c - db WRAP, EFFECT_BIND, 15, NORMAL, $d8, 20, $00 - db TAKE_DOWN, EFFECT_RECOIL_HIT, 90, NORMAL, $d8, 20, $00 - db THRASH, EFFECT_RAMPAGE, 90, NORMAL, $ff, 20, $00 - db DOUBLE_EDGE, EFFECT_RECOIL_HIT, 120, NORMAL, $ff, 15, $00 - db TAIL_WHIP, EFFECT_DEFENSE_DOWN, 0, NORMAL, $ff, 30, $00 - db POISON_STING, EFFECT_POISON_HIT, 15, POISON, $ff, 35, $4c - db TWINEEDLE, EFFECT_TWINEEDLE, 25, BUG, $ff, 20, $33 - db PIN_MISSILE, EFFECT_MULTI_HIT, 14, BUG, $d8, 20, $00 - db LEER, EFFECT_DEFENSE_DOWN, 0, NORMAL, $ff, 30, $00 - db BITE, EFFECT_FLINCH_HIT, 60, DARK, $ff, 25, $4c - db GROWL, EFFECT_ATTACK_DOWN, 0, NORMAL, $ff, 40, $00 - db ROAR, EFFECT_WHIRLWIND, 0, NORMAL, $ff, 20, $00 - db SING, EFFECT_SLEEP, 0, NORMAL, $8c, 15, $00 - db SUPERSONIC, EFFECT_CONFUSE, 0, NORMAL, $8c, 20, $00 - db SONICBOOM, EFFECT_STATIC_DAMAGE, 20, NORMAL, $e5, 20, $00 - db DISABLE, EFFECT_DISABLE, 0, NORMAL, $8c, 20, $00 - db ACID, EFFECT_DEFENSE_DOWN_HIT, 40, POISON, $ff, 30, $19 - db EMBER, EFFECT_BURN_HIT, 40, FIRE, $ff, 25, $19 - db FLAMETHROWER, EFFECT_BURN_HIT, 95, FIRE, $ff, 15, $19 - db MIST, EFFECT_MIST, 0, ICE, $ff, 30, $00 - db WATER_GUN, EFFECT_NORMAL_HIT, 40, WATER, $ff, 25, $00 - db HYDRO_PUMP, EFFECT_NORMAL_HIT, 120, WATER, $cc, 5, $00 - db SURF, EFFECT_NORMAL_HIT, 95, WATER, $ff, 15, $00 - db ICE_BEAM, EFFECT_FREEZE_HIT, 95, ICE, $ff, 10, $19 - db BLIZZARD, EFFECT_FREEZE_HIT, 120, ICE, $b2, 5, $19 - db PSYBEAM, EFFECT_CONFUSE_HIT, 65, PSYCHIC, $ff, 20, $19 - db BUBBLEBEAM, EFFECT_SPEED_DOWN_HIT, 65, WATER, $ff, 20, $19 - db AURORA_BEAM, EFFECT_ATTACK_DOWN_HIT, 65, ICE, $ff, 20, $19 - db HYPER_BEAM, EFFECT_HYPER_BEAM, 150, NORMAL, $e5, 5, $00 - db PECK, EFFECT_NORMAL_HIT, 35, FLYING, $ff, 35, $00 - db DRILL_PECK, EFFECT_NORMAL_HIT, 80, FLYING, $ff, 20, $00 - db SUBMISSION, EFFECT_RECOIL_HIT, 80, FIGHTING, $cc, 25, $00 - db LOW_KICK, EFFECT_FLINCH_HIT, 50, FIGHTING, $e5, 20, $4c - db COUNTER, EFFECT_COUNTER, 1, FIGHTING, $ff, 20, $00 - db SEISMIC_TOSS, EFFECT_LEVEL_DAMAGE, 1, FIGHTING, $ff, 20, $00 - db STRENGTH, EFFECT_NORMAL_HIT, 80, NORMAL, $ff, 15, $00 - db ABSORB, EFFECT_LEECH_HIT, 20, GRASS, $ff, 20, $00 - db MEGA_DRAIN, EFFECT_LEECH_HIT, 40, GRASS, $ff, 10, $00 - db LEECH_SEED, EFFECT_LEECH_SEED, 0, GRASS, $e5, 10, $00 - db GROWTH, EFFECT_SP_ATK_UP, 0, NORMAL, $ff, 40, $00 - db RAZOR_LEAF, EFFECT_NORMAL_HIT, 55, GRASS, $f2, 25, $00 - db SOLARBEAM, EFFECT_SOLARBEAM, 120, GRASS, $ff, 10, $00 - db POISONPOWDER, EFFECT_POISON, 0, POISON, $bf, 35, $00 - db STUN_SPORE, EFFECT_PARALYZE, 0, GRASS, $bf, 30, $00 - db SLEEP_POWDER, EFFECT_SLEEP, 0, GRASS, $bf, 15, $00 - db PETAL_DANCE, EFFECT_RAMPAGE, 70, GRASS, $ff, 20, $00 - db STRING_SHOT, EFFECT_SPEED_DOWN, 0, BUG, $f2, 40, $00 - db DRAGON_RAGE, EFFECT_STATIC_DAMAGE, 40, DRAGON, $ff, 10, $00 - db FIRE_SPIN, EFFECT_BIND, 15, FIRE, $b2, 15, $00 - db THUNDERSHOCK, EFFECT_PARALYZE_HIT, 40, ELECTRIC, $ff, 30, $19 - db THUNDERBOLT, EFFECT_PARALYZE_HIT, 95, ELECTRIC, $ff, 15, $19 - db THUNDER_WAVE, EFFECT_PARALYZE, 0, ELECTRIC, $ff, 20, $00 - db THUNDER, EFFECT_THUNDER, 120, ELECTRIC, $b2, 10, $4c - db ROCK_THROW, EFFECT_NORMAL_HIT, 50, ROCK, $e5, 15, $00 - db EARTHQUAKE, EFFECT_EARTHQUAKE, 100, GROUND, $ff, 10, $00 - db FISSURE, EFFECT_OHKO, 1, GROUND, $4c, 5, $00 - db DIG, EFFECT_FLY, 60, GROUND, $ff, 10, $00 - db TOXIC, EFFECT_TOXIC, 0, POISON, $d8, 10, $00 - db CONFUSION, EFFECT_CONFUSE_HIT, 50, PSYCHIC, $ff, 25, $19 - db PSYCHIC_M, EFFECT_SP_DEF_DOWN_HIT, 90, PSYCHIC, $ff, 10, $19 - db HYPNOSIS, EFFECT_SLEEP, 0, PSYCHIC, $99, 20, $00 - db MEDITATE, EFFECT_ATTACK_UP, 0, PSYCHIC, $ff, 40, $00 - db AGILITY, EFFECT_SPEED_UP_2, 0, PSYCHIC, $ff, 30, $00 - db QUICK_ATTACK, EFFECT_PRIORITY_HIT, 40, NORMAL, $ff, 30, $00 - db RAGE, EFFECT_RAGE, 20, NORMAL, $ff, 20, $00 - db TELEPORT, EFFECT_TELEPORT, 0, PSYCHIC, $ff, 20, $00 - db NIGHT_SHADE, EFFECT_LEVEL_DAMAGE, 1, GHOST, $ff, 15, $00 - db MIMIC, EFFECT_MIMIC, 0, NORMAL, $ff, 10, $00 - db SCREECH, EFFECT_DEFENSE_DOWN_2, 0, NORMAL, $d8, 40, $00 - db DOUBLE_TEAM, EFFECT_EVASION_UP, 0, NORMAL, $ff, 15, $00 - db RECOVER, EFFECT_HEAL, 0, NORMAL, $ff, 20, $00 - db HARDEN, EFFECT_DEFENSE_UP, 0, NORMAL, $ff, 30, $00 - db MINIMIZE, EFFECT_EVASION_UP, 0, NORMAL, $ff, 20, $00 - db SMOKESCREEN, EFFECT_ACCURACY_DOWN, 0, NORMAL, $ff, 20, $00 - db CONFUSE_RAY, EFFECT_CONFUSE, 0, GHOST, $ff, 10, $00 - db WITHDRAW, EFFECT_DEFENSE_UP, 0, WATER, $ff, 40, $00 - db DEFENSE_CURL, EFFECT_DEFENSE_CURL, 0, NORMAL, $ff, 40, $00 - db BARRIER, EFFECT_DEFENSE_UP_2, 0, PSYCHIC, $ff, 30, $00 - db LIGHT_SCREEN, EFFECT_LIGHT_SCREEN, 0, PSYCHIC, $ff, 30, $00 - db HAZE, EFFECT_HAZE, 0, ICE, $ff, 30, $00 - db REFLECT, EFFECT_REFLECT, 0, PSYCHIC, $ff, 20, $00 - db FOCUS_ENERGY, EFFECT_FOCUS_ENERGY, 0, NORMAL, $ff, 30, $00 - db BIDE, EFFECT_BIDE, 0, NORMAL, $ff, 10, $00 - db METRONOME, EFFECT_METRONOME, 0, NORMAL, $ff, 10, $00 - db MIRROR_MOVE, EFFECT_MIRROR_MOVE, 0, FLYING, $ff, 20, $00 - db SELFDESTRUCT, EFFECT_EXPLOSION, 200, NORMAL, $ff, 5, $00 - db EGG_BOMB, EFFECT_NORMAL_HIT, 100, NORMAL, $bf, 10, $00 - db LICK, EFFECT_PARALYZE_HIT, 20, GHOST, $ff, 30, $4c - db SMOG, EFFECT_POISON_HIT, 20, POISON, $b2, 20, $66 - db SLUDGE, EFFECT_POISON_HIT, 65, POISON, $ff, 20, $4c - db BONE_CLUB, EFFECT_FLINCH_HIT, 65, GROUND, $d8, 20, $19 - db FIRE_BLAST, EFFECT_BURN_HIT, 120, FIRE, $d8, 5, $19 - db WATERFALL, EFFECT_NORMAL_HIT, 80, WATER, $ff, 15, $00 - db CLAMP, EFFECT_BIND, 35, WATER, $bf, 10, $00 - db SWIFT, EFFECT_ALWAYS_HIT, 60, NORMAL, $ff, 20, $00 - db SKULL_BASH, EFFECT_SKULL_BASH, 100, NORMAL, $ff, 15, $00 - db SPIKE_CANNON, EFFECT_MULTI_HIT, 20, NORMAL, $ff, 15, $00 - db CONSTRICT, EFFECT_SPEED_DOWN_HIT, 10, NORMAL, $ff, 35, $19 - db AMNESIA, EFFECT_SP_DEF_UP_2, 0, PSYCHIC, $ff, 20, $00 - db KINESIS, EFFECT_ACCURACY_DOWN, 0, PSYCHIC, $cc, 15, $00 - db SOFTBOILED, EFFECT_HEAL, 0, NORMAL, $ff, 10, $00 - db HI_JUMP_KICK, EFFECT_JUMP_KICK, 85, FIGHTING, $e5, 20, $00 - db GLARE, EFFECT_PARALYZE, 0, NORMAL, $bf, 30, $00 - db DREAM_EATER, EFFECT_DREAM_EATER, 100, PSYCHIC, $ff, 15, $00 - db POISON_GAS, EFFECT_POISON, 0, POISON, $8c, 40, $00 - db BARRAGE, EFFECT_MULTI_HIT, 15, NORMAL, $d8, 20, $00 - db LEECH_LIFE, EFFECT_LEECH_HIT, 20, BUG, $ff, 15, $00 - db LOVELY_KISS, EFFECT_SLEEP, 0, NORMAL, $bf, 10, $00 - db SKY_ATTACK, EFFECT_SKY_ATTACK, 140, FLYING, $e5, 5, $00 - db TRANSFORM, EFFECT_TRANSFORM, 0, NORMAL, $ff, 10, $00 - db BUBBLE, EFFECT_SPEED_DOWN_HIT, 20, WATER, $ff, 30, $19 - db DIZZY_PUNCH, EFFECT_CONFUSE_HIT, 70, NORMAL, $ff, 10, $33 - db SPORE, EFFECT_SLEEP, 0, GRASS, $ff, 15, $00 - db FLASH, EFFECT_ACCURACY_DOWN, 0, NORMAL, $b2, 20, $00 - db PSYWAVE, EFFECT_PSYWAVE, 1, PSYCHIC, $cc, 15, $00 - db SPLASH, EFFECT_SPLASH, 0, NORMAL, $ff, 40, $00 - db ACID_ARMOR, EFFECT_DEFENSE_UP_2, 0, POISON, $ff, 40, $00 - db CRABHAMMER, EFFECT_NORMAL_HIT, 90, WATER, $d8, 10, $00 - db EXPLOSION, EFFECT_EXPLOSION, 250, NORMAL, $ff, 5, $00 - db FURY_SWIPES, EFFECT_MULTI_HIT, 18, NORMAL, $cc, 15, $00 - db BONEMERANG, EFFECT_DOUBLE_HIT, 50, GROUND, $e5, 10, $00 - db REST, EFFECT_HEAL, 0, PSYCHIC, $ff, 10, $00 - db ROCK_SLIDE, EFFECT_FLINCH_HIT, 75, ROCK, $e5, 10, $4c - db HYPER_FANG, EFFECT_FLINCH_HIT, 80, NORMAL, $e5, 15, $19 - db SHARPEN, EFFECT_ATTACK_UP, 0, NORMAL, $ff, 30, $00 - db CONVERSION, EFFECT_CONVERSION, 0, NORMAL, $ff, 30, $00 - db TRI_ATTACK, EFFECT_TRI_ATTACK, 80, NORMAL, $ff, 10, $33 - db SUPER_FANG, EFFECT_SUPER_FANG, 1, NORMAL, $e5, 10, $00 - db SLASH, EFFECT_NORMAL_HIT, 70, NORMAL, $ff, 20, $00 - db SUBSTITUTE, EFFECT_SUBSTITUTE, 0, NORMAL, $ff, 10, $00 - db STRUGGLE, EFFECT_RECOIL_HIT, 50, NORMAL, $ff, 1, $00 - db SKETCH, EFFECT_SKETCH, 0, NORMAL, $ff, 1, $00 - db TRIPLE_KICK, EFFECT_TRIPLE_KICK, 10, FIGHTING, $e5, 10, $00 - db THIEF, EFFECT_THIEF, 40, DARK, $ff, 10, $ff - db SPIDER_WEB, EFFECT_MEAN_LOOK, 0, BUG, $ff, 10, $00 - db MIND_READER, EFFECT_LOCK_ON, 0, NORMAL, $ff, 5, $00 - db NIGHTMARE, EFFECT_NIGHTMARE, 0, GHOST, $ff, 15, $00 - db FLAME_WHEEL, EFFECT_FLAME_WHEEL, 60, FIRE, $ff, 25, $19 - db SNORE, EFFECT_SNORE, 40, NORMAL, $ff, 15, $4c - db CURSE, EFFECT_CURSE, 0, CURSE_T, $ff, 10, $00 - db FLAIL, EFFECT_REVERSAL, 1, NORMAL, $ff, 15, $00 - db CONVERSION2, EFFECT_CONVERSION2, 0, NORMAL, $ff, 30, $00 - db AEROBLAST, EFFECT_NORMAL_HIT, 100, FLYING, $f2, 5, $00 - db COTTON_SPORE, EFFECT_SPEED_DOWN_2, 0, GRASS, $d8, 40, $00 - db REVERSAL, EFFECT_REVERSAL, 1, FIGHTING, $ff, 15, $00 - db SPITE, EFFECT_SPITE, 0, GHOST, $ff, 10, $00 - db POWDER_SNOW, EFFECT_FREEZE_HIT, 40, ICE, $ff, 25, $19 - db PROTECT, EFFECT_PROTECT, 0, NORMAL, $ff, 10, $00 - db MACH_PUNCH, EFFECT_PRIORITY_HIT, 40, FIGHTING, $ff, 30, $00 - db SCARY_FACE, EFFECT_SPEED_DOWN_2, 0, NORMAL, $e5, 10, $00 - db FAINT_ATTACK, EFFECT_ALWAYS_HIT, 60, DARK, $ff, 20, $00 - db SWEET_KISS, EFFECT_CONFUSE, 0, NORMAL, $bf, 10, $00 - db BELLY_DRUM, EFFECT_BELLY_DRUM, 0, NORMAL, $ff, 10, $00 - db SLUDGE_BOMB, EFFECT_POISON_HIT, 90, POISON, $ff, 10, $4c - db MUD_SLAP, EFFECT_ACCURACY_DOWN_HIT, 20, GROUND, $ff, 10, $ff - db OCTAZOOKA, EFFECT_ACCURACY_DOWN_HIT, 65, WATER, $d8, 10, $7f - db SPIKES, EFFECT_SPIKES, 0, GROUND, $ff, 20, $00 - db ZAP_CANNON, EFFECT_PARALYZE_HIT, 100, ELECTRIC, $7f, 5, $ff - db FORESIGHT, EFFECT_FORESIGHT, 0, NORMAL, $ff, 40, $00 - db DESTINY_BOND, EFFECT_DESTINY_BOND, 0, GHOST, $ff, 5, $00 - db PERISH_SONG, EFFECT_PERISH_SONG, 0, NORMAL, $ff, 5, $00 - db ICY_WIND, EFFECT_SPEED_DOWN_HIT, 55, ICE, $f2, 15, $ff - db DETECT, EFFECT_PROTECT, 0, FIGHTING, $ff, 5, $00 - db BONE_RUSH, EFFECT_MULTI_HIT, 25, GROUND, $cc, 10, $00 - db LOCK_ON, EFFECT_LOCK_ON, 0, NORMAL, $ff, 5, $00 - db OUTRAGE, EFFECT_RAMPAGE, 90, DRAGON, $ff, 15, $00 - db SANDSTORM, EFFECT_SANDSTORM, 0, ROCK, $ff, 10, $00 - db GIGA_DRAIN, EFFECT_LEECH_HIT, 60, GRASS, $ff, 5, $00 - db ENDURE, EFFECT_ENDURE, 0, NORMAL, $ff, 10, $00 - db CHARM, EFFECT_ATTACK_DOWN_2, 0, NORMAL, $ff, 20, $00 - db ROLLOUT, EFFECT_ROLLOUT, 30, ROCK, $e5, 20, $00 - db FALSE_SWIPE, EFFECT_FALSE_SWIPE, 40, NORMAL, $ff, 40, $00 - db SWAGGER, EFFECT_SWAGGER, 0, NORMAL, $e5, 15, $ff - db MILK_DRINK, EFFECT_HEAL, 0, NORMAL, $ff, 10, $00 - db SPARK, EFFECT_PARALYZE_HIT, 65, ELECTRIC, $ff, 20, $4c - db FURY_CUTTER, EFFECT_FURY_CUTTER, 10, BUG, $f2, 20, $00 - db STEEL_WING, EFFECT_STEEL_WING, 70, STEEL, $e5, 25, $19 - db MEAN_LOOK, EFFECT_MEAN_LOOK, 0, NORMAL, $ff, 5, $00 - db ATTRACT, EFFECT_ATTRACT, 0, NORMAL, $ff, 15, $00 - db SLEEP_TALK, EFFECT_SLEEP_TALK, 0, NORMAL, $ff, 10, $00 - db HEAL_BELL, EFFECT_HEAL_BELL, 0, NORMAL, $ff, 5, $00 - db RETURN, EFFECT_RETURN, 1, NORMAL, $ff, 20, $00 - db PRESENT, EFFECT_PRESENT, 1, NORMAL, $e5, 15, $00 - db FRUSTRATION, EFFECT_FRUSTRATION, 1, NORMAL, $ff, 20, $00 - db SAFEGUARD, EFFECT_SAFEGUARD, 0, NORMAL, $ff, 25, $00 - db PAIN_SPLIT, EFFECT_PAIN_SPLIT, 0, NORMAL, $ff, 20, $00 - db SACRED_FIRE, EFFECT_SACRED_FIRE, 100, FIRE, $f2, 5, $7f - db MAGNITUDE, EFFECT_MAGNITUDE, 1, GROUND, $ff, 30, $00 - db DYNAMICPUNCH, EFFECT_CONFUSE_HIT, 100, FIGHTING, $7f, 5, $ff - db MEGAHORN, EFFECT_NORMAL_HIT, 120, BUG, $d8, 10, $00 - db DRAGONBREATH, EFFECT_PARALYZE_HIT, 60, DRAGON, $ff, 20, $4c - db BATON_PASS, EFFECT_BATON_PASS, 0, NORMAL, $ff, 40, $00 - db ENCORE, EFFECT_ENCORE, 0, NORMAL, $ff, 5, $00 - db PURSUIT, EFFECT_PURSUIT, 40, DARK, $ff, 20, $00 - db RAPID_SPIN, EFFECT_RAPID_SPIN, 20, NORMAL, $ff, 40, $00 - db SWEET_SCENT, EFFECT_EVASION_DOWN, 0, NORMAL, $ff, 20, $00 - db IRON_TAIL, EFFECT_DEFENSE_DOWN_HIT, 100, STEEL, $bf, 15, $4c - db METAL_CLAW, EFFECT_METAL_CLAW, 50, STEEL, $f2, 35, $19 - db VITAL_THROW, EFFECT_ALWAYS_HIT, 70, FIGHTING, $ff, 10, $00 - db MORNING_SUN, EFFECT_MORNING_SUN, 0, NORMAL, $ff, 5, $00 - db SYNTHESIS, EFFECT_SYNTHESIS, 0, GRASS, $ff, 5, $00 - db MOONLIGHT, EFFECT_MOONLIGHT, 0, NORMAL, $ff, 5, $00 - db HIDDEN_POWER, EFFECT_HIDDEN_POWER, 1, NORMAL, $ff, 15, $00 - db CROSS_CHOP, EFFECT_NORMAL_HIT, 100, FIGHTING, $cc, 5, $00 - db TWISTER, EFFECT_TWISTER, 40, DRAGON, $ff, 20, $33 - db RAIN_DANCE, EFFECT_RAIN_DANCE, 0, WATER, $e5, 5, $00 - db SUNNY_DAY, EFFECT_SUNNY_DAY, 0, FIRE, $e5, 5, $00 - db CRUNCH, EFFECT_SP_DEF_DOWN_HIT, 80, DARK, $ff, 15, $33 - db MIRROR_COAT, EFFECT_MIRROR_COAT, 1, PSYCHIC, $ff, 20, $00 - db PSYCH_UP, EFFECT_PSYCH_UP, 0, NORMAL, $ff, 10, $00 - db EXTREMESPEED, EFFECT_PRIORITY_HIT, 80, NORMAL, $ff, 5, $00 - db ANCIENTPOWER, EFFECT_ANCIENTPOWER, 60, ROCK, $ff, 5, $19 - db SHADOW_BALL, EFFECT_SP_DEF_DOWN_HIT, 80, GHOST, $ff, 15, $33 - db FUTURE_SIGHT, EFFECT_FUTURE_SIGHT, 80, PSYCHIC, $e5, 15, $00 - db ROCK_SMASH, EFFECT_DEFENSE_DOWN_HIT, 20, FIGHTING, $ff, 15, $7f - db WHIRLPOOL, EFFECT_BIND, 15, WATER, $b2, 15, $00 - db BEAT_UP, EFFECT_BEAT_UP, 10, DARK, $ff, 10, $00 +move: MACRO + db \1 ; animation + db \2 ; effect + db \3 ; power + db \4 ; type + db \5 * $ff / 100 ; accuracy (percent) + db \6 ; pp + db \7 * $ff / 100 ; effect chance (percent) +ENDM + +Move1: + move POUND, EFFECT_NORMAL_HIT, 40, NORMAL, 100, 35, 0 +Move2: + move KARATE_CHOP, EFFECT_NORMAL_HIT, 50, FIGHTING, 100, 25, 0 + move DOUBLESLAP, EFFECT_MULTI_HIT, 15, NORMAL, 85, 10, 0 + move COMET_PUNCH, EFFECT_MULTI_HIT, 18, NORMAL, 85, 15, 0 + move MEGA_PUNCH, EFFECT_NORMAL_HIT, 80, NORMAL, 85, 20, 0 + move PAY_DAY, EFFECT_PAY_DAY, 40, NORMAL, 100, 20, 0 + move FIRE_PUNCH, EFFECT_BURN_HIT, 75, FIRE, 100, 15, 10 + move ICE_PUNCH, EFFECT_FREEZE_HIT, 75, ICE, 100, 15, 10 + move THUNDERPUNCH, EFFECT_PARALYZE_HIT, 75, ELECTRIC, 100, 15, 10 + move SCRATCH, EFFECT_NORMAL_HIT, 40, NORMAL, 100, 35, 0 + move VICEGRIP, EFFECT_NORMAL_HIT, 55, NORMAL, 100, 30, 0 + move GUILLOTINE, EFFECT_OHKO, 0, NORMAL, 30, 5, 0 + move RAZOR_WIND, EFFECT_RAZOR_WIND, 80, NORMAL, 75, 10, 0 + move SWORDS_DANCE, EFFECT_ATTACK_UP_2, 0, NORMAL, 100, 30, 0 + move CUT, EFFECT_NORMAL_HIT, 50, NORMAL, 95, 30, 0 + move GUST, EFFECT_GUST, 40, FLYING, 100, 35, 0 + move WING_ATTACK, EFFECT_NORMAL_HIT, 60, FLYING, 100, 35, 0 + move WHIRLWIND, EFFECT_WHIRLWIND, 0, NORMAL, 100, 20, 0 + move FLY, EFFECT_FLY, 70, FLYING, 95, 15, 0 + move BIND, EFFECT_BIND, 15, NORMAL, 75, 20, 0 + move SLAM, EFFECT_NORMAL_HIT, 80, NORMAL, 75, 20, 0 + move VINE_WHIP, EFFECT_NORMAL_HIT, 35, GRASS, 100, 10, 0 + move STOMP, EFFECT_STOMP, 65, NORMAL, 100, 20, 30 + move DOUBLE_KICK, EFFECT_DOUBLE_HIT, 30, FIGHTING, 100, 30, 0 + move MEGA_KICK, EFFECT_NORMAL_HIT, 120, NORMAL, 75, 5, 0 + move JUMP_KICK, EFFECT_JUMP_KICK, 70, FIGHTING, 95, 25, 0 + move ROLLING_KICK, EFFECT_FLINCH_HIT, 60, FIGHTING, 85, 15, 30 + move SAND_ATTACK, EFFECT_ACCURACY_DOWN, 0, GROUND, 100, 15, 0 + move HEADBUTT, EFFECT_FLINCH_HIT, 70, NORMAL, 100, 15, 30 + move HORN_ATTACK, EFFECT_NORMAL_HIT, 65, NORMAL, 100, 25, 0 + move FURY_ATTACK, EFFECT_MULTI_HIT, 15, NORMAL, 85, 20, 0 + move HORN_DRILL, EFFECT_OHKO, 1, NORMAL, 30, 5, 0 + move TACKLE, EFFECT_NORMAL_HIT, 35, NORMAL, 95, 35, 0 + move BODY_SLAM, EFFECT_PARALYZE_HIT, 85, NORMAL, 100, 15, 30 + move WRAP, EFFECT_BIND, 15, NORMAL, 85, 20, 0 + move TAKE_DOWN, EFFECT_RECOIL_HIT, 90, NORMAL, 85, 20, 0 + move THRASH, EFFECT_RAMPAGE, 90, NORMAL, 100, 20, 0 + move DOUBLE_EDGE, EFFECT_RECOIL_HIT, 120, NORMAL, 100, 15, 0 + move TAIL_WHIP, EFFECT_DEFENSE_DOWN, 0, NORMAL, 100, 30, 0 + move POISON_STING, EFFECT_POISON_HIT, 15, POISON, 100, 35, 30 + move TWINEEDLE, EFFECT_TWINEEDLE, 25, BUG, 100, 20, 20 + move PIN_MISSILE, EFFECT_MULTI_HIT, 14, BUG, 85, 20, 0 + move LEER, EFFECT_DEFENSE_DOWN, 0, NORMAL, 100, 30, 0 + move BITE, EFFECT_FLINCH_HIT, 60, DARK, 100, 25, 30 + move GROWL, EFFECT_ATTACK_DOWN, 0, NORMAL, 100, 40, 0 + move ROAR, EFFECT_WHIRLWIND, 0, NORMAL, 100, 20, 0 + move SING, EFFECT_SLEEP, 0, NORMAL, 55, 15, 0 + move SUPERSONIC, EFFECT_CONFUSE, 0, NORMAL, 55, 20, 0 + move SONICBOOM, EFFECT_STATIC_DAMAGE, 20, NORMAL, 90, 20, 0 + move DISABLE, EFFECT_DISABLE, 0, NORMAL, 55, 20, 0 + move ACID, EFFECT_DEFENSE_DOWN_HIT, 40, POISON, 100, 30, 10 + move EMBER, EFFECT_BURN_HIT, 40, FIRE, 100, 25, 10 + move FLAMETHROWER, EFFECT_BURN_HIT, 95, FIRE, 100, 15, 10 + move MIST, EFFECT_MIST, 0, ICE, 100, 30, 0 + move WATER_GUN, EFFECT_NORMAL_HIT, 40, WATER, 100, 25, 0 + move HYDRO_PUMP, EFFECT_NORMAL_HIT, 120, WATER, 80, 5, 0 + move SURF, EFFECT_NORMAL_HIT, 95, WATER, 100, 15, 0 + move ICE_BEAM, EFFECT_FREEZE_HIT, 95, ICE, 100, 10, 10 + move BLIZZARD, EFFECT_FREEZE_HIT, 120, ICE, 70, 5, 10 + move PSYBEAM, EFFECT_CONFUSE_HIT, 65, PSYCHIC, 100, 20, 10 + move BUBBLEBEAM, EFFECT_SPEED_DOWN_HIT, 65, WATER, 100, 20, 10 + move AURORA_BEAM, EFFECT_ATTACK_DOWN_HIT, 65, ICE, 100, 20, 10 + move HYPER_BEAM, EFFECT_HYPER_BEAM, 150, NORMAL, 90, 5, 0 + move PECK, EFFECT_NORMAL_HIT, 35, FLYING, 100, 35, 0 + move DRILL_PECK, EFFECT_NORMAL_HIT, 80, FLYING, 100, 20, 0 + move SUBMISSION, EFFECT_RECOIL_HIT, 80, FIGHTING, 80, 25, 0 + move LOW_KICK, EFFECT_FLINCH_HIT, 50, FIGHTING, 90, 20, 30 + move COUNTER, EFFECT_COUNTER, 1, FIGHTING, 100, 20, 0 + move SEISMIC_TOSS, EFFECT_LEVEL_DAMAGE, 1, FIGHTING, 100, 20, 0 + move STRENGTH, EFFECT_NORMAL_HIT, 80, NORMAL, 100, 15, 0 + move ABSORB, EFFECT_LEECH_HIT, 20, GRASS, 100, 20, 0 + move MEGA_DRAIN, EFFECT_LEECH_HIT, 40, GRASS, 100, 10, 0 + move LEECH_SEED, EFFECT_LEECH_SEED, 0, GRASS, 90, 10, 0 + move GROWTH, EFFECT_SP_ATK_UP, 0, NORMAL, 100, 40, 0 + move RAZOR_LEAF, EFFECT_NORMAL_HIT, 55, GRASS, 95, 25, 0 + move SOLARBEAM, EFFECT_SOLARBEAM, 120, GRASS, 100, 10, 0 + move POISONPOWDER, EFFECT_POISON, 0, POISON, 75, 35, 0 + move STUN_SPORE, EFFECT_PARALYZE, 0, GRASS, 75, 30, 0 + move SLEEP_POWDER, EFFECT_SLEEP, 0, GRASS, 75, 15, 0 + move PETAL_DANCE, EFFECT_RAMPAGE, 70, GRASS, 100, 20, 0 + move STRING_SHOT, EFFECT_SPEED_DOWN, 0, BUG, 95, 40, 0 + move DRAGON_RAGE, EFFECT_STATIC_DAMAGE, 40, DRAGON, 100, 10, 0 + move FIRE_SPIN, EFFECT_BIND, 15, FIRE, 70, 15, 0 + move THUNDERSHOCK, EFFECT_PARALYZE_HIT, 40, ELECTRIC, 100, 30, 10 + move THUNDERBOLT, EFFECT_PARALYZE_HIT, 95, ELECTRIC, 100, 15, 10 + move THUNDER_WAVE, EFFECT_PARALYZE, 0, ELECTRIC, 100, 20, 0 + move THUNDER, EFFECT_THUNDER, 120, ELECTRIC, 70, 10, 30 + move ROCK_THROW, EFFECT_NORMAL_HIT, 50, ROCK, 90, 15, 0 + move EARTHQUAKE, EFFECT_EARTHQUAKE, 100, GROUND, 100, 10, 0 + move FISSURE, EFFECT_OHKO, 1, GROUND, 30, 5, 0 + move DIG, EFFECT_FLY, 60, GROUND, 100, 10, 0 + move TOXIC, EFFECT_TOXIC, 0, POISON, 85, 10, 0 + move CONFUSION, EFFECT_CONFUSE_HIT, 50, PSYCHIC, 100, 25, 10 + move PSYCHIC_M, EFFECT_SP_DEF_DOWN_HIT, 90, PSYCHIC, 100, 10, 10 + move HYPNOSIS, EFFECT_SLEEP, 0, PSYCHIC, 60, 20, 0 + move MEDITATE, EFFECT_ATTACK_UP, 0, PSYCHIC, 100, 40, 0 + move AGILITY, EFFECT_SPEED_UP_2, 0, PSYCHIC, 100, 30, 0 + move QUICK_ATTACK, EFFECT_PRIORITY_HIT, 40, NORMAL, 100, 30, 0 + move RAGE, EFFECT_RAGE, 20, NORMAL, 100, 20, 0 + move TELEPORT, EFFECT_TELEPORT, 0, PSYCHIC, 100, 20, 0 + move NIGHT_SHADE, EFFECT_LEVEL_DAMAGE, 1, GHOST, 100, 15, 0 + move MIMIC, EFFECT_MIMIC, 0, NORMAL, 100, 10, 0 + move SCREECH, EFFECT_DEFENSE_DOWN_2, 0, NORMAL, 85, 40, 0 + move DOUBLE_TEAM, EFFECT_EVASION_UP, 0, NORMAL, 100, 15, 0 + move RECOVER, EFFECT_HEAL, 0, NORMAL, 100, 20, 0 + move HARDEN, EFFECT_DEFENSE_UP, 0, NORMAL, 100, 30, 0 + move MINIMIZE, EFFECT_EVASION_UP, 0, NORMAL, 100, 20, 0 + move SMOKESCREEN, EFFECT_ACCURACY_DOWN, 0, NORMAL, 100, 20, 0 + move CONFUSE_RAY, EFFECT_CONFUSE, 0, GHOST, 100, 10, 0 + move WITHDRAW, EFFECT_DEFENSE_UP, 0, WATER, 100, 40, 0 + move DEFENSE_CURL, EFFECT_DEFENSE_CURL, 0, NORMAL, 100, 40, 0 + move BARRIER, EFFECT_DEFENSE_UP_2, 0, PSYCHIC, 100, 30, 0 + move LIGHT_SCREEN, EFFECT_LIGHT_SCREEN, 0, PSYCHIC, 100, 30, 0 + move HAZE, EFFECT_HAZE, 0, ICE, 100, 30, 0 + move REFLECT, EFFECT_REFLECT, 0, PSYCHIC, 100, 20, 0 + move FOCUS_ENERGY, EFFECT_FOCUS_ENERGY, 0, NORMAL, 100, 30, 0 + move BIDE, EFFECT_BIDE, 0, NORMAL, 100, 10, 0 + move METRONOME, EFFECT_METRONOME, 0, NORMAL, 100, 10, 0 + move MIRROR_MOVE, EFFECT_MIRROR_MOVE, 0, FLYING, 100, 20, 0 + move SELFDESTRUCT, EFFECT_EXPLOSION, 200, NORMAL, 100, 5, 0 + move EGG_BOMB, EFFECT_NORMAL_HIT, 100, NORMAL, 75, 10, 0 + move LICK, EFFECT_PARALYZE_HIT, 20, GHOST, 100, 30, 30 + move SMOG, EFFECT_POISON_HIT, 20, POISON, 70, 20, 40 + move SLUDGE, EFFECT_POISON_HIT, 65, POISON, 100, 20, 30 + move BONE_CLUB, EFFECT_FLINCH_HIT, 65, GROUND, 85, 20, 10 + move FIRE_BLAST, EFFECT_BURN_HIT, 120, FIRE, 85, 5, 10 + move WATERFALL, EFFECT_NORMAL_HIT, 80, WATER, 100, 15, 0 + move CLAMP, EFFECT_BIND, 35, WATER, 75, 10, 0 + move SWIFT, EFFECT_ALWAYS_HIT, 60, NORMAL, 100, 20, 0 + move SKULL_BASH, EFFECT_SKULL_BASH, 100, NORMAL, 100, 15, 0 + move SPIKE_CANNON, EFFECT_MULTI_HIT, 20, NORMAL, 100, 15, 0 + move CONSTRICT, EFFECT_SPEED_DOWN_HIT, 10, NORMAL, 100, 35, 10 + move AMNESIA, EFFECT_SP_DEF_UP_2, 0, PSYCHIC, 100, 20, 0 + move KINESIS, EFFECT_ACCURACY_DOWN, 0, PSYCHIC, 80, 15, 0 + move SOFTBOILED, EFFECT_HEAL, 0, NORMAL, 100, 10, 0 + move HI_JUMP_KICK, EFFECT_JUMP_KICK, 85, FIGHTING, 90, 20, 0 + move GLARE, EFFECT_PARALYZE, 0, NORMAL, 75, 30, 0 + move DREAM_EATER, EFFECT_DREAM_EATER, 100, PSYCHIC, 100, 15, 0 + move POISON_GAS, EFFECT_POISON, 0, POISON, 55, 40, 0 + move BARRAGE, EFFECT_MULTI_HIT, 15, NORMAL, 85, 20, 0 + move LEECH_LIFE, EFFECT_LEECH_HIT, 20, BUG, 100, 15, 0 + move LOVELY_KISS, EFFECT_SLEEP, 0, NORMAL, 75, 10, 0 + move SKY_ATTACK, EFFECT_SKY_ATTACK, 140, FLYING, 90, 5, 0 + move TRANSFORM, EFFECT_TRANSFORM, 0, NORMAL, 100, 10, 0 + move BUBBLE, EFFECT_SPEED_DOWN_HIT, 20, WATER, 100, 30, 10 + move DIZZY_PUNCH, EFFECT_CONFUSE_HIT, 70, NORMAL, 100, 10, 20 + move SPORE, EFFECT_SLEEP, 0, GRASS, 100, 15, 0 + move FLASH, EFFECT_ACCURACY_DOWN, 0, NORMAL, 70, 20, 0 + move PSYWAVE, EFFECT_PSYWAVE, 1, PSYCHIC, 80, 15, 0 + move SPLASH, EFFECT_SPLASH, 0, NORMAL, 100, 40, 0 + move ACID_ARMOR, EFFECT_DEFENSE_UP_2, 0, POISON, 100, 40, 0 + move CRABHAMMER, EFFECT_NORMAL_HIT, 90, WATER, 85, 10, 0 + move EXPLOSION, EFFECT_EXPLOSION, 250, NORMAL, 100, 5, 0 + move FURY_SWIPES, EFFECT_MULTI_HIT, 18, NORMAL, 80, 15, 0 + move BONEMERANG, EFFECT_DOUBLE_HIT, 50, GROUND, 90, 10, 0 + move REST, EFFECT_HEAL, 0, PSYCHIC, 100, 10, 0 + move ROCK_SLIDE, EFFECT_FLINCH_HIT, 75, ROCK, 90, 10, 30 + move HYPER_FANG, EFFECT_FLINCH_HIT, 80, NORMAL, 90, 15, 10 + move SHARPEN, EFFECT_ATTACK_UP, 0, NORMAL, 100, 30, 0 + move CONVERSION, EFFECT_CONVERSION, 0, NORMAL, 100, 30, 0 + move TRI_ATTACK, EFFECT_TRI_ATTACK, 80, NORMAL, 100, 10, 20 + move SUPER_FANG, EFFECT_SUPER_FANG, 1, NORMAL, 90, 10, 0 + move SLASH, EFFECT_NORMAL_HIT, 70, NORMAL, 100, 20, 0 + move SUBSTITUTE, EFFECT_SUBSTITUTE, 0, NORMAL, 100, 10, 0 + move STRUGGLE, EFFECT_RECOIL_HIT, 50, NORMAL, 100, 1, 0 + move SKETCH, EFFECT_SKETCH, 0, NORMAL, 100, 1, 0 + move TRIPLE_KICK, EFFECT_TRIPLE_KICK, 10, FIGHTING, 90, 10, 0 + move THIEF, EFFECT_THIEF, 40, DARK, 100, 10, 100 + move SPIDER_WEB, EFFECT_MEAN_LOOK, 0, BUG, 100, 10, 0 + move MIND_READER, EFFECT_LOCK_ON, 0, NORMAL, 100, 5, 0 + move NIGHTMARE, EFFECT_NIGHTMARE, 0, GHOST, 100, 15, 0 + move FLAME_WHEEL, EFFECT_FLAME_WHEEL, 60, FIRE, 100, 25, 10 + move SNORE, EFFECT_SNORE, 40, NORMAL, 100, 15, 30 + move CURSE, EFFECT_CURSE, 0, CURSE_T, 100, 10, 0 + move FLAIL, EFFECT_REVERSAL, 1, NORMAL, 100, 15, 0 + move CONVERSION2, EFFECT_CONVERSION2, 0, NORMAL, 100, 30, 0 + move AEROBLAST, EFFECT_NORMAL_HIT, 100, FLYING, 95, 5, 0 + move COTTON_SPORE, EFFECT_SPEED_DOWN_2, 0, GRASS, 85, 40, 0 + move REVERSAL, EFFECT_REVERSAL, 1, FIGHTING, 100, 15, 0 + move SPITE, EFFECT_SPITE, 0, GHOST, 100, 10, 0 + move POWDER_SNOW, EFFECT_FREEZE_HIT, 40, ICE, 100, 25, 10 + move PROTECT, EFFECT_PROTECT, 0, NORMAL, 100, 10, 0 + move MACH_PUNCH, EFFECT_PRIORITY_HIT, 40, FIGHTING, 100, 30, 0 + move SCARY_FACE, EFFECT_SPEED_DOWN_2, 0, NORMAL, 90, 10, 0 + move FAINT_ATTACK, EFFECT_ALWAYS_HIT, 60, DARK, 100, 20, 0 + move SWEET_KISS, EFFECT_CONFUSE, 0, NORMAL, 75, 10, 0 + move BELLY_DRUM, EFFECT_BELLY_DRUM, 0, NORMAL, 100, 10, 0 + move SLUDGE_BOMB, EFFECT_POISON_HIT, 90, POISON, 100, 10, 30 + move MUD_SLAP, EFFECT_ACCURACY_DOWN_HIT, 20, GROUND, 100, 10, 100 + move OCTAZOOKA, EFFECT_ACCURACY_DOWN_HIT, 65, WATER, 85, 10, 50 + move SPIKES, EFFECT_SPIKES, 0, GROUND, 100, 20, 0 + move ZAP_CANNON, EFFECT_PARALYZE_HIT, 100, ELECTRIC, 50, 5, 100 + move FORESIGHT, EFFECT_FORESIGHT, 0, NORMAL, 100, 40, 0 + move DESTINY_BOND, EFFECT_DESTINY_BOND, 0, GHOST, 100, 5, 0 + move PERISH_SONG, EFFECT_PERISH_SONG, 0, NORMAL, 100, 5, 0 + move ICY_WIND, EFFECT_SPEED_DOWN_HIT, 55, ICE, 95, 15, 100 + move DETECT, EFFECT_PROTECT, 0, FIGHTING, 100, 5, 0 + move BONE_RUSH, EFFECT_MULTI_HIT, 25, GROUND, 80, 10, 0 + move LOCK_ON, EFFECT_LOCK_ON, 0, NORMAL, 100, 5, 0 + move OUTRAGE, EFFECT_RAMPAGE, 90, DRAGON, 100, 15, 0 + move SANDSTORM, EFFECT_SANDSTORM, 0, ROCK, 100, 10, 0 + move GIGA_DRAIN, EFFECT_LEECH_HIT, 60, GRASS, 100, 5, 0 + move ENDURE, EFFECT_ENDURE, 0, NORMAL, 100, 10, 0 + move CHARM, EFFECT_ATTACK_DOWN_2, 0, NORMAL, 100, 20, 0 + move ROLLOUT, EFFECT_ROLLOUT, 30, ROCK, 90, 20, 0 + move FALSE_SWIPE, EFFECT_FALSE_SWIPE, 40, NORMAL, 100, 40, 0 + move SWAGGER, EFFECT_SWAGGER, 0, NORMAL, 90, 15, 100 + move MILK_DRINK, EFFECT_HEAL, 0, NORMAL, 100, 10, 0 + move SPARK, EFFECT_PARALYZE_HIT, 65, ELECTRIC, 100, 20, 30 + move FURY_CUTTER, EFFECT_FURY_CUTTER, 10, BUG, 95, 20, 0 + move STEEL_WING, EFFECT_STEEL_WING, 70, STEEL, 90, 25, 10 + move MEAN_LOOK, EFFECT_MEAN_LOOK, 0, NORMAL, 100, 5, 0 + move ATTRACT, EFFECT_ATTRACT, 0, NORMAL, 100, 15, 0 + move SLEEP_TALK, EFFECT_SLEEP_TALK, 0, NORMAL, 100, 10, 0 + move HEAL_BELL, EFFECT_HEAL_BELL, 0, NORMAL, 100, 5, 0 + move RETURN, EFFECT_RETURN, 1, NORMAL, 100, 20, 0 + move PRESENT, EFFECT_PRESENT, 1, NORMAL, 90, 15, 0 + move FRUSTRATION, EFFECT_FRUSTRATION, 1, NORMAL, 100, 20, 0 + move SAFEGUARD, EFFECT_SAFEGUARD, 0, NORMAL, 100, 25, 0 + move PAIN_SPLIT, EFFECT_PAIN_SPLIT, 0, NORMAL, 100, 20, 0 + move SACRED_FIRE, EFFECT_SACRED_FIRE, 100, FIRE, 95, 5, 50 + move MAGNITUDE, EFFECT_MAGNITUDE, 1, GROUND, 100, 30, 0 + move DYNAMICPUNCH, EFFECT_CONFUSE_HIT, 100, FIGHTING, 50, 5, 100 + move MEGAHORN, EFFECT_NORMAL_HIT, 120, BUG, 85, 10, 0 + move DRAGONBREATH, EFFECT_PARALYZE_HIT, 60, DRAGON, 100, 20, 30 + move BATON_PASS, EFFECT_BATON_PASS, 0, NORMAL, 100, 40, 0 + move ENCORE, EFFECT_ENCORE, 0, NORMAL, 100, 5, 0 + move PURSUIT, EFFECT_PURSUIT, 40, DARK, 100, 20, 0 + move RAPID_SPIN, EFFECT_RAPID_SPIN, 20, NORMAL, 100, 40, 0 + move SWEET_SCENT, EFFECT_EVASION_DOWN, 0, NORMAL, 100, 20, 0 + move IRON_TAIL, EFFECT_DEFENSE_DOWN_HIT, 100, STEEL, 75, 15, 30 + move METAL_CLAW, EFFECT_METAL_CLAW, 50, STEEL, 95, 35, 10 + move VITAL_THROW, EFFECT_ALWAYS_HIT, 70, FIGHTING, 100, 10, 0 + move MORNING_SUN, EFFECT_MORNING_SUN, 0, NORMAL, 100, 5, 0 + move SYNTHESIS, EFFECT_SYNTHESIS, 0, GRASS, 100, 5, 0 + move MOONLIGHT, EFFECT_MOONLIGHT, 0, NORMAL, 100, 5, 0 + move HIDDEN_POWER, EFFECT_HIDDEN_POWER, 1, NORMAL, 100, 15, 0 + move CROSS_CHOP, EFFECT_NORMAL_HIT, 100, FIGHTING, 80, 5, 0 + move TWISTER, EFFECT_TWISTER, 40, DRAGON, 100, 20, 20 + move RAIN_DANCE, EFFECT_RAIN_DANCE, 0, WATER, 90, 5, 0 + move SUNNY_DAY, EFFECT_SUNNY_DAY, 0, FIRE, 90, 5, 0 + move CRUNCH, EFFECT_SP_DEF_DOWN_HIT, 80, DARK, 100, 15, 20 + move MIRROR_COAT, EFFECT_MIRROR_COAT, 1, PSYCHIC, 100, 20, 0 + move PSYCH_UP, EFFECT_PSYCH_UP, 0, NORMAL, 100, 10, 0 + move EXTREMESPEED, EFFECT_PRIORITY_HIT, 80, NORMAL, 100, 5, 0 + move ANCIENTPOWER, EFFECT_ANCIENTPOWER, 60, ROCK, 100, 5, 10 + move SHADOW_BALL, EFFECT_SP_DEF_DOWN_HIT, 80, GHOST, 100, 15, 20 + move FUTURE_SIGHT, EFFECT_FUTURE_SIGHT, 80, PSYCHIC, 90, 15, 0 + move ROCK_SMASH, EFFECT_DEFENSE_DOWN_HIT, 20, FIGHTING, 100, 15, 50 + move WHIRLPOOL, EFFECT_BIND, 15, WATER, 70, 15, 0 + move BEAT_UP, EFFECT_BEAT_UP, 10, DARK, 100, 10, 0 From 82214440e190fc250023a7b59bb4c20432700555 Mon Sep 17 00:00:00 2001 From: yenatch Date: Mon, 30 Dec 2013 23:17:11 -0500 Subject: [PATCH 3/5] move the Moves label into battle/moves/moves.asm --- battle/moves/moves.asm | 2 ++ main.asm | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/battle/moves/moves.asm b/battle/moves/moves.asm index a9c571228..d37376378 100644 --- a/battle/moves/moves.asm +++ b/battle/moves/moves.asm @@ -1,3 +1,5 @@ +Moves: ; 41afb + ; Characteristics of each move ; animation, effect, power, type, accuracy, PP, effect chance diff --git a/main.asm b/main.asm index 2e1946282..b8475cdad 100644 --- a/main.asm +++ b/main.asm @@ -40129,7 +40129,6 @@ Function41af7: ; 41af7 ; 41afb -Moves: ; 0x41afb INCLUDE "battle/moves/moves.asm" From bfaad924e7f0ebad59da85830211b9b0c8d2afa8 Mon Sep 17 00:00:00 2001 From: yenatch Date: Mon, 30 Dec 2013 23:22:27 -0500 Subject: [PATCH 4/5] label more pointers to Moves --- battle/core.asm | 12 ++++++------ main.asm | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/battle/core.asm b/battle/core.asm index 728d5e5bf..9650a9323 100644 --- a/battle/core.asm +++ b/battle/core.asm @@ -896,10 +896,10 @@ GetMovePriority: ; 3c5c5 Function3c5ec: ; 3c5ec ld a, b dec a - ld hl, $5afc - ld bc, $0007 + ld hl, Moves + MOVE_EFFECT + ld bc, Move2 - Move1 call AddNTimes - ld a, $10 + ld a, BANK(Moves) call GetFarByte ld b, a ret @@ -3399,11 +3399,11 @@ Function3d5d7: ; 3d5d7 push de push bc dec a - ld hl, $5afb - ld bc, $0007 + ld hl, Moves + MOVE_ANIM + ld bc, Move2 - Move1 call AddNTimes ld de, EnemyMoveAnimation - ld a, $10 + ld a, BANK(Moves) call FarCopyBytes call SetEnemyTurn callab Function0x347c8 diff --git a/main.asm b/main.asm index b8475cdad..3ae79784b 100644 --- a/main.asm +++ b/main.asm @@ -12183,11 +12183,11 @@ FillPP: ; da6d push hl push de push bc - ld hl, $5afb - ld bc, $0007 + ld hl, Moves + ld bc, Move2 - Move1 call AddNTimes ld de, StringBuffer1 - ld a, $10 + ld a, BANK(Moves) call FarCopyBytes pop bc pop de @@ -19254,10 +19254,10 @@ Function13256: ; 13256 call Predef ld a, [CurSpecies] dec a - ld hl, $5afd - ld bc, $0007 + ld hl, Moves + MOVE_POWER + ld bc, Move2 - Move1 call AddNTimes - ld a, $10 + ld a, BANK(Moves) call GetFarByte ld hl, $c5a0 cp $2 From a10ee4e9f1ee3d671b67e2e68531b1f851661000 Mon Sep 17 00:00:00 2001 From: yenatch Date: Mon, 30 Dec 2013 23:32:37 -0500 Subject: [PATCH 5/5] comment move priority functions --- battle/core.asm | 32 +++++++++++++++++++++----------- battle/effect_commands.asm | 6 +++--- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/battle/core.asm b/battle/core.asm index 9650a9323..e014d80e2 100644 --- a/battle/core.asm +++ b/battle/core.asm @@ -475,7 +475,7 @@ Function3c314: ; 3c314 ld a, [$d0ec] and a jp nz, .asm_3c3f1 - call Function3c5b4 + call CompareMovePriority jr z, .asm_3c36d jp c, .asm_3c3f1 jp Function3c3f3 @@ -848,7 +848,10 @@ AlwaysFleeMons: ; 3c5b1 ; 3c5b4 -Function3c5b4: ; 3c5b4 +CompareMovePriority: ; 3c5b4 +; Compare the priority of the player and enemy's moves. +; Return carry if the player goes first, or z if they match. + ld a, [CurPlayerMove] call GetMovePriority ld b, a @@ -861,39 +864,45 @@ Function3c5b4: ; 3c5b4 ; 3c5c5 GetMovePriority: ; 3c5c5 +; Return the priority (0-3) of move a. + ld b, a + + ; Vital throw goes last. cp VITAL_THROW ld a, 0 ret z - call Function3c5ec - ld hl, .data_3c5df + + call GetMoveEffect + ld hl, MoveEffectPriorities .loop ld a, [hli] cp b - jr z, .asm_3c5dd + jr z, .done inc hl - cp $ff + cp -1 jr nz, .loop + ld a, 1 ret -.asm_3c5dd +.done ld a, [hl] ret ; 3c5df -.data_3c5df +MoveEffectPriorities: ; 3c5df db EFFECT_PROTECT, 3 db EFFECT_ENDURE, 3 db EFFECT_PRIORITY_HIT, 2 db EFFECT_WHIRLWIND, 0 db EFFECT_COUNTER, 0 db EFFECT_MIRROR_COAT, 0 - db $ff + db -1 ; 3c5ec -Function3c5ec: ; 3c5ec +GetMoveEffect: ; 3c5ec ld a, b dec a ld hl, Moves + MOVE_EFFECT @@ -905,6 +914,7 @@ Function3c5ec: ; 3c5ec ret ; 3c5fe + Function3c5fe: ; 3c5fe call Function309d call Function3c543 @@ -4282,7 +4292,7 @@ Function3dc5b: ; 3dc5b ld a, $10 call GetBattleVar ld b, a - call Function3c5ec + call GetMoveEffect ld a, b cp $80 jr nz, .asm_3dce4 diff --git a/battle/effect_commands.asm b/battle/effect_commands.asm index 24eaf4288..666a75ef7 100644 --- a/battle/effect_commands.asm +++ b/battle/effect_commands.asm @@ -4469,7 +4469,7 @@ BattleCommand40: ; 35813 ret z ld b, a - callab Function3c5ec + callab GetMoveEffect ld a, b cp $59 @@ -5095,7 +5095,7 @@ BattleCommand48: ; 35b33 push bc ld b, a - callab Function3c5ec + callab GetMoveEffect ld a, b pop bc @@ -10181,7 +10181,7 @@ BattleCommand9a: ; 37c95 and a ret z ld b, a - callab Function3c5ec + callab GetMoveEffect ld a, b cp $90 ret z