diff options
author | jiangzhengwenjz <jiangzhengwenjzw@qq.com> | 2019-07-15 13:10:29 +0800 |
---|---|---|
committer | jiangzhengwenjz <jiangzhengwenjzw@qq.com> | 2019-07-15 13:10:29 +0800 |
commit | 51a779aa7b0318d9c4388d839b2210f963607a82 (patch) | |
tree | 892e223e4c26d654e9886933482dbdd9ecb3f79b /src/data | |
parent | 00cd1d483d76c9e63b010eb98a3e1f03386934ca (diff) |
finished pokemon data decomp
Diffstat (limited to 'src/data')
-rw-r--r-- | src/data/battle_moves.h | 4617 | ||||
-rw-r--r-- | src/data/pokemon/item_effects.h | 305 | ||||
-rw-r--r-- | src/data/pokemon/tmhm_learnsets.h | 4 | ||||
-rw-r--r-- | src/data/pokemon/trainer_class_lookups.h | 302 |
4 files changed, 4896 insertions, 332 deletions
diff --git a/src/data/battle_moves.h b/src/data/battle_moves.h new file mode 100644 index 000000000..63e1898dc --- /dev/null +++ b/src/data/battle_moves.h @@ -0,0 +1,4617 @@ +const struct BattleMove gBattleMoves[MOVES_COUNT] = +{ + [MOVE_NONE] = + { + .effect = EFFECT_HIT, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 0, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = 0, + }, + + [MOVE_POUND] = + { + .effect = EFFECT_HIT, + .power = 40, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 35, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_KARATE_CHOP] = + { + .effect = EFFECT_HIGH_CRITICAL, + .power = 50, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 25, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_DOUBLE_SLAP] = + { + .effect = EFFECT_MULTI_HIT, + .power = 15, + .type = TYPE_NORMAL, + .accuracy = 85, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_COMET_PUNCH] = + { + .effect = EFFECT_MULTI_HIT, + .power = 18, + .type = TYPE_NORMAL, + .accuracy = 85, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_MEGA_PUNCH] = + { + .effect = EFFECT_HIT, + .power = 80, + .type = TYPE_NORMAL, + .accuracy = 85, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_PAY_DAY] = + { + .effect = EFFECT_PAY_DAY, + .power = 40, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_FIRE_PUNCH] = + { + .effect = EFFECT_BURN_HIT, + .power = 75, + .type = TYPE_FIRE, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ICE_PUNCH] = + { + .effect = EFFECT_FREEZE_HIT, + .power = 75, + .type = TYPE_ICE, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_THUNDER_PUNCH] = + { + .effect = EFFECT_PARALYZE_HIT, + .power = 75, + .type = TYPE_ELECTRIC, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SCRATCH] = + { + .effect = EFFECT_HIT, + .power = 40, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 35, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_VICE_GRIP] = + { + .effect = EFFECT_HIT, + .power = 55, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_GUILLOTINE] = + { + .effect = EFFECT_OHKO, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 30, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_RAZOR_WIND] = + { + .effect = EFFECT_RAZOR_WIND, + .power = 80, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SWORDS_DANCE] = + { + .effect = EFFECT_ATTACK_UP_2, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_CUT] = + { + .effect = EFFECT_HIT, + .power = 50, + .type = TYPE_NORMAL, + .accuracy = 95, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_GUST] = + { + .effect = EFFECT_GUST, + .power = 40, + .type = TYPE_FLYING, + .accuracy = 100, + .pp = 35, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_WING_ATTACK] = + { + .effect = EFFECT_HIT, + .power = 60, + .type = TYPE_FLYING, + .accuracy = 100, + .pp = 35, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_WHIRLWIND] = + { + .effect = EFFECT_ROAR, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = -6, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FLY] = + { + .effect = EFFECT_SEMI_INVULNERABLE, + .power = 70, + .type = TYPE_FLYING, + .accuracy = 95, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_BIND] = + { + .effect = EFFECT_TRAP, + .power = 15, + .type = TYPE_NORMAL, + .accuracy = 75, + .pp = 20, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SLAM] = + { + .effect = EFFECT_HIT, + .power = 80, + .type = TYPE_NORMAL, + .accuracy = 75, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_VINE_WHIP] = + { + .effect = EFFECT_HIT, + .power = 35, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_STOMP] = + { + .effect = EFFECT_FLINCH_MINIMIZE_HIT, + .power = 65, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_DOUBLE_KICK] = + { + .effect = EFFECT_DOUBLE_HIT, + .power = 30, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_MEGA_KICK] = + { + .effect = EFFECT_HIT, + .power = 120, + .type = TYPE_NORMAL, + .accuracy = 75, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_JUMP_KICK] = + { + .effect = EFFECT_RECOIL_IF_MISS, + .power = 70, + .type = TYPE_FIGHTING, + .accuracy = 95, + .pp = 25, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_ROLLING_KICK] = + { + .effect = EFFECT_FLINCH_HIT, + .power = 60, + .type = TYPE_FIGHTING, + .accuracy = 85, + .pp = 15, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SAND_ATTACK] = + { + .effect = EFFECT_ACCURACY_DOWN, + .power = 0, + .type = TYPE_GROUND, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_HEADBUTT] = + { + .effect = EFFECT_FLINCH_HIT, + .power = 70, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_HORN_ATTACK] = + { + .effect = EFFECT_HIT, + .power = 65, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 25, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_FURY_ATTACK] = + { + .effect = EFFECT_MULTI_HIT, + .power = 15, + .type = TYPE_NORMAL, + .accuracy = 85, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_HORN_DRILL] = + { + .effect = EFFECT_OHKO, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 30, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_TACKLE] = + { + .effect = EFFECT_HIT, + .power = 35, + .type = TYPE_NORMAL, + .accuracy = 95, + .pp = 35, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_BODY_SLAM] = + { + .effect = EFFECT_PARALYZE_HIT, + .power = 85, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_WRAP] = + { + .effect = EFFECT_TRAP, + .power = 15, + .type = TYPE_NORMAL, + .accuracy = 85, + .pp = 20, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_TAKE_DOWN] = + { + .effect = EFFECT_RECOIL, + .power = 90, + .type = TYPE_NORMAL, + .accuracy = 85, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_THRASH] = + { + .effect = EFFECT_RAMPAGE, + .power = 90, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_RANDOM, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_DOUBLE_EDGE] = + { + .effect = EFFECT_DOUBLE_EDGE, + .power = 120, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_TAIL_WHIP] = + { + .effect = EFFECT_DEFENSE_DOWN, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_POISON_STING] = + { + .effect = EFFECT_POISON_HIT, + .power = 15, + .type = TYPE_POISON, + .accuracy = 100, + .pp = 35, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_TWINEEDLE] = + { + .effect = EFFECT_TWINEEDLE, + .power = 25, + .type = TYPE_BUG, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 20, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_PIN_MISSILE] = + { + .effect = EFFECT_MULTI_HIT, + .power = 14, + .type = TYPE_BUG, + .accuracy = 85, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_LEER] = + { + .effect = EFFECT_DEFENSE_DOWN, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_BITE] = + { + .effect = EFFECT_FLINCH_HIT, + .power = 60, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 25, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_GROWL] = + { + .effect = EFFECT_ATTACK_DOWN, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ROAR] = + { + .effect = EFFECT_ROAR, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = -6, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SING] = + { + .effect = EFFECT_SLEEP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 55, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SUPERSONIC] = + { + .effect = EFFECT_CONFUSE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 55, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SONIC_BOOM] = + { + .effect = EFFECT_SONICBOOM, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 90, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_DISABLE] = + { + .effect = EFFECT_DISABLE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 55, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ACID] = + { + .effect = EFFECT_DEFENSE_DOWN_HIT, + .power = 40, + .type = TYPE_POISON, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_EMBER] = + { + .effect = EFFECT_BURN_HIT, + .power = 40, + .type = TYPE_FIRE, + .accuracy = 100, + .pp = 25, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FLAMETHROWER] = + { + .effect = EFFECT_BURN_HIT, + .power = 95, + .type = TYPE_FIRE, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MIST] = + { + .effect = EFFECT_MIST, + .power = 0, + .type = TYPE_ICE, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_WATER_GUN] = + { + .effect = EFFECT_HIT, + .power = 40, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 25, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_HYDRO_PUMP] = + { + .effect = EFFECT_HIT, + .power = 120, + .type = TYPE_WATER, + .accuracy = 80, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SURF] = + { + .effect = EFFECT_HIT, + .power = 95, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_ICE_BEAM] = + { + .effect = EFFECT_FREEZE_HIT, + .power = 95, + .type = TYPE_ICE, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_BLIZZARD] = + { + .effect = EFFECT_FREEZE_HIT, + .power = 120, + .type = TYPE_ICE, + .accuracy = 70, + .pp = 5, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_PSYBEAM] = + { + .effect = EFFECT_CONFUSE_HIT, + .power = 65, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_BUBBLE_BEAM] = + { + .effect = EFFECT_SPEED_DOWN_HIT, + .power = 65, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_AURORA_BEAM] = + { + .effect = EFFECT_ATTACK_DOWN_HIT, + .power = 65, + .type = TYPE_ICE, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_HYPER_BEAM] = + { + .effect = EFFECT_RECHARGE, + .power = 150, + .type = TYPE_NORMAL, + .accuracy = 90, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_PECK] = + { + .effect = EFFECT_HIT, + .power = 35, + .type = TYPE_FLYING, + .accuracy = 100, + .pp = 35, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_DRILL_PECK] = + { + .effect = EFFECT_HIT, + .power = 80, + .type = TYPE_FLYING, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SUBMISSION] = + { + .effect = EFFECT_RECOIL, + .power = 80, + .type = TYPE_FIGHTING, + .accuracy = 80, + .pp = 25, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_LOW_KICK] = + { + .effect = EFFECT_LOW_KICK, + .power = 1, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_COUNTER] = + { + .effect = EFFECT_COUNTER, + .power = 1, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = -5, + .flags = FLAG_MAKES_CONTACT | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SEISMIC_TOSS] = + { + .effect = EFFECT_LEVEL_DAMAGE, + .power = 1, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_STRENGTH] = + { + .effect = EFFECT_HIT, + .power = 80, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_ABSORB] = + { + .effect = EFFECT_ABSORB, + .power = 20, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MEGA_DRAIN] = + { + .effect = EFFECT_ABSORB, + .power = 40, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_LEECH_SEED] = + { + .effect = EFFECT_LEECH_SEED, + .power = 0, + .type = TYPE_GRASS, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_GROWTH] = + { + .effect = EFFECT_SPECIAL_ATTACK_UP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_RAZOR_LEAF] = + { + .effect = EFFECT_HIGH_CRITICAL, + .power = 55, + .type = TYPE_GRASS, + .accuracy = 95, + .pp = 25, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SOLAR_BEAM] = + { + .effect = EFFECT_SOLARBEAM, + .power = 120, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_POISON_POWDER] = + { + .effect = EFFECT_POISON, + .power = 0, + .type = TYPE_POISON, + .accuracy = 75, + .pp = 35, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_STUN_SPORE] = + { + .effect = EFFECT_PARALYZE, + .power = 0, + .type = TYPE_GRASS, + .accuracy = 75, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SLEEP_POWDER] = + { + .effect = EFFECT_SLEEP, + .power = 0, + .type = TYPE_GRASS, + .accuracy = 75, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_PETAL_DANCE] = + { + .effect = EFFECT_RAMPAGE, + .power = 70, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_RANDOM, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_STRING_SHOT] = + { + .effect = EFFECT_SPEED_DOWN, + .power = 0, + .type = TYPE_BUG, + .accuracy = 95, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_DRAGON_RAGE] = + { + .effect = EFFECT_DRAGON_RAGE, + .power = 1, + .type = TYPE_DRAGON, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_FIRE_SPIN] = + { + .effect = EFFECT_TRAP, + .power = 15, + .type = TYPE_FIRE, + .accuracy = 70, + .pp = 15, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_THUNDER_SHOCK] = + { + .effect = EFFECT_PARALYZE_HIT, + .power = 40, + .type = TYPE_ELECTRIC, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_THUNDERBOLT] = + { + .effect = EFFECT_PARALYZE_HIT, + .power = 95, + .type = TYPE_ELECTRIC, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_THUNDER_WAVE] = + { + .effect = EFFECT_PARALYZE, + .power = 0, + .type = TYPE_ELECTRIC, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_THUNDER] = + { + .effect = EFFECT_THUNDER, + .power = 120, + .type = TYPE_ELECTRIC, + .accuracy = 70, + .pp = 10, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ROCK_THROW] = + { + .effect = EFFECT_HIT, + .power = 50, + .type = TYPE_ROCK, + .accuracy = 90, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_EARTHQUAKE] = + { + .effect = EFFECT_EARTHQUAKE, + .power = 100, + .type = TYPE_GROUND, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_FOES_AND_ALLY, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_FISSURE] = + { + .effect = EFFECT_OHKO, + .power = 1, + .type = TYPE_GROUND, + .accuracy = 30, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_DIG] = + { + .effect = EFFECT_SEMI_INVULNERABLE, + .power = 60, + .type = TYPE_GROUND, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_TOXIC] = + { + .effect = EFFECT_TOXIC, + .power = 0, + .type = TYPE_POISON, + .accuracy = 85, + .pp = 10, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_CONFUSION] = + { + .effect = EFFECT_CONFUSE_HIT, + .power = 50, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 25, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_PSYCHIC] = + { + .effect = EFFECT_SPECIAL_DEFENSE_DOWN_HIT, + .power = 90, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_HYPNOSIS] = + { + .effect = EFFECT_SLEEP, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 60, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MEDITATE] = + { + .effect = EFFECT_ATTACK_UP, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_AGILITY] = + { + .effect = EFFECT_SPEED_UP_2, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_QUICK_ATTACK] = + { + .effect = EFFECT_QUICK_ATTACK, + .power = 40, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 1, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_RAGE] = + { + .effect = EFFECT_RAGE, + .power = 20, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_TELEPORT] = + { + .effect = EFFECT_TELEPORT, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_NIGHT_SHADE] = + { + .effect = EFFECT_LEVEL_DAMAGE, + .power = 1, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_MIMIC] = + { + .effect = EFFECT_MIMIC, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED, + }, + + [MOVE_SCREECH] = + { + .effect = EFFECT_DEFENSE_DOWN_2, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 85, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_DOUBLE_TEAM] = + { + .effect = EFFECT_EVASION_UP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_RECOVER] = + { + .effect = EFFECT_RESTORE_HP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_HARDEN] = + { + .effect = EFFECT_DEFENSE_UP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_MINIMIZE] = + { + .effect = EFFECT_MINIMIZE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_SMOKESCREEN] = + { + .effect = EFFECT_ACCURACY_DOWN, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_CONFUSE_RAY] = + { + .effect = EFFECT_CONFUSE, + .power = 0, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_WITHDRAW] = + { + .effect = EFFECT_DEFENSE_UP, + .power = 0, + .type = TYPE_WATER, + .accuracy = 0, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_DEFENSE_CURL] = + { + .effect = EFFECT_DEFENSE_CURL, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_BARRIER] = + { + .effect = EFFECT_DEFENSE_UP_2, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_LIGHT_SCREEN] = + { + .effect = EFFECT_LIGHT_SCREEN, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_HAZE] = + { + .effect = EFFECT_HAZE, + .power = 0, + .type = TYPE_ICE, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED, + }, + + [MOVE_REFLECT] = + { + .effect = EFFECT_REFLECT, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_FOCUS_ENERGY] = + { + .effect = EFFECT_FOCUS_ENERGY, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_BIDE] = + { + .effect = EFFECT_BIDE, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_METRONOME] = + { + .effect = EFFECT_METRONOME, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = 0, + .flags = 0, + }, + + [MOVE_MIRROR_MOVE] = + { + .effect = EFFECT_MIRROR_MOVE, + .power = 0, + .type = TYPE_FLYING, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = 0, + .flags = 0, + }, + + [MOVE_SELF_DESTRUCT] = + { + .effect = EFFECT_EXPLOSION, + .power = 200, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_FOES_AND_ALLY, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_EGG_BOMB] = + { + .effect = EFFECT_HIT, + .power = 100, + .type = TYPE_NORMAL, + .accuracy = 75, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_LICK] = + { + .effect = EFFECT_PARALYZE_HIT, + .power = 20, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SMOG] = + { + .effect = EFFECT_POISON_HIT, + .power = 20, + .type = TYPE_POISON, + .accuracy = 70, + .pp = 20, + .secondaryEffectChance = 40, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SLUDGE] = + { + .effect = EFFECT_POISON_HIT, + .power = 65, + .type = TYPE_POISON, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_BONE_CLUB] = + { + .effect = EFFECT_FLINCH_HIT, + .power = 65, + .type = TYPE_GROUND, + .accuracy = 85, + .pp = 20, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FIRE_BLAST] = + { + .effect = EFFECT_BURN_HIT, + .power = 120, + .type = TYPE_FIRE, + .accuracy = 85, + .pp = 5, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_WATERFALL] = + { + .effect = EFFECT_HIT, + .power = 80, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_CLAMP] = + { + .effect = EFFECT_TRAP, + .power = 35, + .type = TYPE_WATER, + .accuracy = 75, + .pp = 10, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SWIFT] = + { + .effect = EFFECT_ALWAYS_HIT, + .power = 60, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SKULL_BASH] = + { + .effect = EFFECT_SKULL_BASH, + .power = 100, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SPIKE_CANNON] = + { + .effect = EFFECT_MULTI_HIT, + .power = 20, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_CONSTRICT] = + { + .effect = EFFECT_SPEED_DOWN_HIT, + .power = 10, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 35, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_AMNESIA] = + { + .effect = EFFECT_SPECIAL_DEFENSE_UP_2, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_KINESIS] = + { + .effect = EFFECT_ACCURACY_DOWN, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 80, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SOFT_BOILED] = + { + .effect = EFFECT_SOFTBOILED, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_HI_JUMP_KICK] = + { + .effect = EFFECT_RECOIL_IF_MISS, + .power = 85, + .type = TYPE_FIGHTING, + .accuracy = 90, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_GLARE] = + { + .effect = EFFECT_PARALYZE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 75, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_DREAM_EATER] = + { + .effect = EFFECT_DREAM_EATER, + .power = 100, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_POISON_GAS] = + { + .effect = EFFECT_POISON, + .power = 0, + .type = TYPE_POISON, + .accuracy = 55, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_BARRAGE] = + { + .effect = EFFECT_MULTI_HIT, + .power = 15, + .type = TYPE_NORMAL, + .accuracy = 85, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_LEECH_LIFE] = + { + .effect = EFFECT_ABSORB, + .power = 20, + .type = TYPE_BUG, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_LOVELY_KISS] = + { + .effect = EFFECT_SLEEP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 75, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SKY_ATTACK] = + { + .effect = EFFECT_SKY_ATTACK, + .power = 140, + .type = TYPE_FLYING, + .accuracy = 90, + .pp = 5, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_TRANSFORM] = + { + .effect = EFFECT_TRANSFORM, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = 0, + }, + + [MOVE_BUBBLE] = + { + .effect = EFFECT_SPEED_DOWN_HIT, + .power = 20, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_DIZZY_PUNCH] = + { + .effect = EFFECT_CONFUSE_HIT, + .power = 70, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 20, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SPORE] = + { + .effect = EFFECT_SLEEP, + .power = 0, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FLASH] = + { + .effect = EFFECT_ACCURACY_DOWN, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 70, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_PSYWAVE] = + { + .effect = EFFECT_PSYWAVE, + .power = 1, + .type = TYPE_PSYCHIC, + .accuracy = 80, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SPLASH] = + { + .effect = EFFECT_SPLASH, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_ACID_ARMOR] = + { + .effect = EFFECT_DEFENSE_UP_2, + .power = 0, + .type = TYPE_POISON, + .accuracy = 0, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_CRABHAMMER] = + { + .effect = EFFECT_HIGH_CRITICAL, + .power = 90, + .type = TYPE_WATER, + .accuracy = 85, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_EXPLOSION] = + { + .effect = EFFECT_EXPLOSION, + .power = 250, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_FOES_AND_ALLY, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_FURY_SWIPES] = + { + .effect = EFFECT_MULTI_HIT, + .power = 18, + .type = TYPE_NORMAL, + .accuracy = 80, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_BONEMERANG] = + { + .effect = EFFECT_DOUBLE_HIT, + .power = 50, + .type = TYPE_GROUND, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_REST] = + { + .effect = EFFECT_REST, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_ROCK_SLIDE] = + { + .effect = EFFECT_FLINCH_HIT, + .power = 75, + .type = TYPE_ROCK, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_HYPER_FANG] = + { + .effect = EFFECT_FLINCH_HIT, + .power = 80, + .type = TYPE_NORMAL, + .accuracy = 90, + .pp = 15, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SHARPEN] = + { + .effect = EFFECT_ATTACK_UP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_CONVERSION] = + { + .effect = EFFECT_CONVERSION, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_TRI_ATTACK] = + { + .effect = EFFECT_TRI_ATTACK, + .power = 80, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 20, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SUPER_FANG] = + { + .effect = EFFECT_SUPER_FANG, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SLASH] = + { + .effect = EFFECT_HIGH_CRITICAL, + .power = 70, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SUBSTITUTE] = + { + .effect = EFFECT_SUBSTITUTE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_STRUGGLE] = + { + .effect = EFFECT_RECOIL, + .power = 50, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 1, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SKETCH] = + { + .effect = EFFECT_SKETCH, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 1, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = 0, + }, + + [MOVE_TRIPLE_KICK] = + { + .effect = EFFECT_TRIPLE_KICK, + .power = 10, + .type = TYPE_FIGHTING, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_THIEF] = + { + .effect = EFFECT_THIEF, + .power = 40, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SPIDER_WEB] = + { + .effect = EFFECT_MEAN_LOOK, + .power = 0, + .type = TYPE_BUG, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MIND_READER] = + { + .effect = EFFECT_LOCK_ON, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_NIGHTMARE] = + { + .effect = EFFECT_NIGHTMARE, + .power = 0, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FLAME_WHEEL] = + { + .effect = EFFECT_THAW_HIT, + .power = 60, + .type = TYPE_FIRE, + .accuracy = 100, + .pp = 25, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SNORE] = + { + .effect = EFFECT_SNORE, + .power = 40, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_CURSE] = + { + .effect = EFFECT_CURSE, + .power = 0, + .type = TYPE_MYSTERY, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = 0, + }, + + [MOVE_FLAIL] = + { + .effect = EFFECT_FLAIL, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_CONVERSION_2] = + { + .effect = EFFECT_CONVERSION_2, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_AEROBLAST] = + { + .effect = EFFECT_HIGH_CRITICAL, + .power = 100, + .type = TYPE_FLYING, + .accuracy = 95, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_COTTON_SPORE] = + { + .effect = EFFECT_SPEED_DOWN_2, + .power = 0, + .type = TYPE_GRASS, + .accuracy = 85, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_REVERSAL] = + { + .effect = EFFECT_FLAIL, + .power = 1, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SPITE] = + { + .effect = EFFECT_SPITE, + .power = 0, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_POWDER_SNOW] = + { + .effect = EFFECT_FREEZE_HIT, + .power = 40, + .type = TYPE_ICE, + .accuracy = 100, + .pp = 25, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_PROTECT] = + { + .effect = EFFECT_PROTECT, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 3, + .flags = 0, + }, + + [MOVE_MACH_PUNCH] = + { + .effect = EFFECT_QUICK_ATTACK, + .power = 40, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 1, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SCARY_FACE] = + { + .effect = EFFECT_SPEED_DOWN_2, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FAINT_ATTACK] = + { + .effect = EFFECT_ALWAYS_HIT, + .power = 60, + .type = TYPE_DARK, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SWEET_KISS] = + { + .effect = EFFECT_CONFUSE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 75, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_BELLY_DRUM] = + { + .effect = EFFECT_BELLY_DRUM, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_SLUDGE_BOMB] = + { + .effect = EFFECT_POISON_HIT, + .power = 90, + .type = TYPE_POISON, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MUD_SLAP] = + { + .effect = EFFECT_ACCURACY_DOWN_HIT, + .power = 20, + .type = TYPE_GROUND, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_OCTAZOOKA] = + { + .effect = EFFECT_ACCURACY_DOWN_HIT, + .power = 65, + .type = TYPE_WATER, + .accuracy = 85, + .pp = 10, + .secondaryEffectChance = 50, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SPIKES] = + { + .effect = EFFECT_SPIKES, + .power = 0, + .type = TYPE_GROUND, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_OPPONENTS_FIELD, + .priority = 0, + .flags = 0, + }, + + [MOVE_ZAP_CANNON] = + { + .effect = EFFECT_PARALYZE_HIT, + .power = 100, + .type = TYPE_ELECTRIC, + .accuracy = 50, + .pp = 5, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FORESIGHT] = + { + .effect = EFFECT_FORESIGHT, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_DESTINY_BOND] = + { + .effect = EFFECT_DESTINY_BOND, + .power = 0, + .type = TYPE_GHOST, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_PERISH_SONG] = + { + .effect = EFFECT_PERISH_SONG, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_ICY_WIND] = + { + .effect = EFFECT_SPEED_DOWN_HIT, + .power = 55, + .type = TYPE_ICE, + .accuracy = 95, + .pp = 15, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_DETECT] = + { + .effect = EFFECT_PROTECT, + .power = 0, + .type = TYPE_FIGHTING, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 3, + .flags = 0, + }, + + [MOVE_BONE_RUSH] = + { + .effect = EFFECT_MULTI_HIT, + .power = 25, + .type = TYPE_GROUND, + .accuracy = 80, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_LOCK_ON] = + { + .effect = EFFECT_LOCK_ON, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_OUTRAGE] = + { + .effect = EFFECT_RAMPAGE, + .power = 90, + .type = TYPE_DRAGON, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_RANDOM, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SANDSTORM] = + { + .effect = EFFECT_SANDSTORM, + .power = 0, + .type = TYPE_ROCK, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_GIGA_DRAIN] = + { + .effect = EFFECT_ABSORB, + .power = 60, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ENDURE] = + { + .effect = EFFECT_ENDURE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 3, + .flags = 0, + }, + + [MOVE_CHARM] = + { + .effect = EFFECT_ATTACK_DOWN_2, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ROLLOUT] = + { + .effect = EFFECT_ROLLOUT, + .power = 30, + .type = TYPE_ROCK, + .accuracy = 90, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_FALSE_SWIPE] = + { + .effect = EFFECT_FALSE_SWIPE, + .power = 40, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SWAGGER] = + { + .effect = EFFECT_SWAGGER, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 90, + .pp = 15, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MILK_DRINK] = + { + .effect = EFFECT_SOFTBOILED, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_SNATCH_AFFECTED, + }, + + [MOVE_SPARK] = + { + .effect = EFFECT_PARALYZE_HIT, + .power = 65, + .type = TYPE_ELECTRIC, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FURY_CUTTER] = + { + .effect = EFFECT_FURY_CUTTER, + .power = 10, + .type = TYPE_BUG, + .accuracy = 95, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_STEEL_WING] = + { + .effect = EFFECT_DEFENSE_UP_HIT, + .power = 70, + .type = TYPE_STEEL, + .accuracy = 90, + .pp = 25, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_MEAN_LOOK] = + { + .effect = EFFECT_MEAN_LOOK, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ATTRACT] = + { + .effect = EFFECT_ATTRACT, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SLEEP_TALK] = + { + .effect = EFFECT_SLEEP_TALK, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = 0, + .flags = 0, + }, + + [MOVE_HEAL_BELL] = + { + .effect = EFFECT_HEAL_BELL, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_RETURN] = + { + .effect = EFFECT_RETURN, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_PRESENT] = + { + .effect = EFFECT_PRESENT, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 90, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FRUSTRATION] = + { + .effect = EFFECT_FRUSTRATION, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SAFEGUARD] = + { + .effect = EFFECT_SAFEGUARD, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 25, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_PAIN_SPLIT] = + { + .effect = EFFECT_PAIN_SPLIT, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SACRED_FIRE] = + { + .effect = EFFECT_THAW_HIT, + .power = 100, + .type = TYPE_FIRE, + .accuracy = 95, + .pp = 5, + .secondaryEffectChance = 50, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MAGNITUDE] = + { + .effect = EFFECT_MAGNITUDE, + .power = 1, + .type = TYPE_GROUND, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_FOES_AND_ALLY, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_DYNAMIC_PUNCH] = + { + .effect = EFFECT_CONFUSE_HIT, + .power = 100, + .type = TYPE_FIGHTING, + .accuracy = 50, + .pp = 5, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MEGAHORN] = + { + .effect = EFFECT_HIT, + .power = 120, + .type = TYPE_BUG, + .accuracy = 85, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_DRAGON_BREATH] = + { + .effect = EFFECT_PARALYZE_HIT, + .power = 60, + .type = TYPE_DRAGON, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_BATON_PASS] = + { + .effect = EFFECT_BATON_PASS, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_ENCORE] = + { + .effect = EFFECT_ENCORE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_PURSUIT] = + { + .effect = EFFECT_PURSUIT, + .power = 40, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_RAPID_SPIN] = + { + .effect = EFFECT_RAPID_SPIN, + .power = 20, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SWEET_SCENT] = + { + .effect = EFFECT_EVASION_DOWN, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_IRON_TAIL] = + { + .effect = EFFECT_DEFENSE_DOWN_HIT, + .power = 100, + .type = TYPE_STEEL, + .accuracy = 75, + .pp = 15, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_METAL_CLAW] = + { + .effect = EFFECT_ATTACK_UP_HIT, + .power = 50, + .type = TYPE_STEEL, + .accuracy = 95, + .pp = 35, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_VITAL_THROW] = + { + .effect = EFFECT_VITAL_THROW, + .power = 70, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = -1, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_MORNING_SUN] = + { + .effect = EFFECT_MORNING_SUN, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_SYNTHESIS] = + { + .effect = EFFECT_SYNTHESIS, + .power = 0, + .type = TYPE_GRASS, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_MOONLIGHT] = + { + .effect = EFFECT_MOONLIGHT, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_HIDDEN_POWER] = + { + .effect = EFFECT_HIDDEN_POWER, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_CROSS_CHOP] = + { + .effect = EFFECT_HIGH_CRITICAL, + .power = 100, + .type = TYPE_FIGHTING, + .accuracy = 80, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_TWISTER] = + { + .effect = EFFECT_TWISTER, + .power = 40, + .type = TYPE_DRAGON, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 20, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_RAIN_DANCE] = + { + .effect = EFFECT_RAIN_DANCE, + .power = 0, + .type = TYPE_WATER, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_SUNNY_DAY] = + { + .effect = EFFECT_SUNNY_DAY, + .power = 0, + .type = TYPE_FIRE, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_CRUNCH] = + { + .effect = EFFECT_SPECIAL_DEFENSE_DOWN_HIT, + .power = 80, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 20, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MIRROR_COAT] = + { + .effect = EFFECT_MIRROR_COAT, + .power = 1, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = -5, + .flags = FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_PSYCH_UP] = + { + .effect = EFFECT_PSYCH_UP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_EXTREME_SPEED] = + { + .effect = EFFECT_QUICK_ATTACK, + .power = 80, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 1, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_ANCIENT_POWER] = + { + .effect = EFFECT_ALL_STATS_UP_HIT, + .power = 60, + .type = TYPE_ROCK, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SHADOW_BALL] = + { + .effect = EFFECT_SPECIAL_DEFENSE_DOWN_HIT, + .power = 80, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 20, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FUTURE_SIGHT] = + { + .effect = EFFECT_FUTURE_SIGHT, + .power = 80, + .type = TYPE_PSYCHIC, + .accuracy = 90, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = 0, + }, + + [MOVE_ROCK_SMASH] = + { + .effect = EFFECT_DEFENSE_DOWN_HIT, + .power = 20, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 50, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_WHIRLPOOL] = + { + .effect = EFFECT_TRAP, + .power = 15, + .type = TYPE_WATER, + .accuracy = 70, + .pp = 15, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_BEAT_UP] = + { + .effect = EFFECT_BEAT_UP, + .power = 10, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_FAKE_OUT] = + { + .effect = EFFECT_FAKE_OUT, + .power = 40, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 1, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_UPROAR] = + { + .effect = EFFECT_UPROAR, + .power = 50, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_RANDOM, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_STOCKPILE] = + { + .effect = EFFECT_STOCKPILE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_SPIT_UP] = + { + .effect = EFFECT_SPIT_UP, + .power = 100, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SWALLOW] = + { + .effect = EFFECT_SWALLOW, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_HEAT_WAVE] = + { + .effect = EFFECT_BURN_HIT, + .power = 100, + .type = TYPE_FIRE, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_HAIL] = + { + .effect = EFFECT_HAIL, + .power = 0, + .type = TYPE_ICE, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED, + }, + + [MOVE_TORMENT] = + { + .effect = EFFECT_TORMENT, + .power = 0, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FLATTER] = + { + .effect = EFFECT_FLATTER, + .power = 0, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_WILL_O_WISP] = + { + .effect = EFFECT_WILL_O_WISP, + .power = 0, + .type = TYPE_FIRE, + .accuracy = 75, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MEMENTO] = + { + .effect = EFFECT_MEMENTO, + .power = 0, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FACADE] = + { + .effect = EFFECT_FACADE, + .power = 70, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FOCUS_PUNCH] = + { + .effect = EFFECT_FOCUS_PUNCH, + .power = 150, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = -3, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED, + }, + + [MOVE_SMELLING_SALT] = + { + .effect = EFFECT_SMELLINGSALT, + .power = 60, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FOLLOW_ME] = + { + .effect = EFFECT_FOLLOW_ME, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 3, + .flags = 0, + }, + + [MOVE_NATURE_POWER] = + { + .effect = EFFECT_NATURE_POWER, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = 0, + .flags = 0, + }, + + [MOVE_CHARGE] = + { + .effect = EFFECT_CHARGE, + .power = 0, + .type = TYPE_ELECTRIC, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_TAUNT] = + { + .effect = EFFECT_TAUNT, + .power = 0, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED, + }, + + [MOVE_HELPING_HAND] = + { + .effect = EFFECT_HELPING_HAND, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 5, + .flags = 0, + }, + + [MOVE_TRICK] = + { + .effect = EFFECT_TRICK, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ROLE_PLAY] = + { + .effect = EFFECT_ROLE_PLAY, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = 0, + }, + + [MOVE_WISH] = + { + .effect = EFFECT_WISH, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED, + }, + + [MOVE_ASSIST] = + { + .effect = EFFECT_ASSIST, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = 0, + .flags = 0, + }, + + [MOVE_INGRAIN] = + { + .effect = EFFECT_INGRAIN, + .power = 0, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_SUPERPOWER] = + { + .effect = EFFECT_SUPERPOWER, + .power = 120, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MAGIC_COAT] = + { + .effect = EFFECT_MAGIC_COAT, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = 4, + .flags = 0, + }, + + [MOVE_RECYCLE] = + { + .effect = EFFECT_RECYCLE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_REVENGE] = + { + .effect = EFFECT_REVENGE, + .power = 60, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = -4, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_BRICK_BREAK] = + { + .effect = EFFECT_BRICK_BREAK, + .power = 75, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_YAWN] = + { + .effect = EFFECT_YAWN, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_KNOCK_OFF] = + { + .effect = EFFECT_KNOCK_OFF, + .power = 20, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ENDEAVOR] = + { + .effect = EFFECT_ENDEAVOR, + .power = 1, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_ERUPTION] = + { + .effect = EFFECT_ERUPTION, + .power = 150, + .type = TYPE_FIRE, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SKILL_SWAP] = + { + .effect = EFFECT_SKILL_SWAP, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_IMPRISON] = + { + .effect = EFFECT_IMPRISON, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED, + }, + + [MOVE_REFRESH] = + { + .effect = EFFECT_REFRESH, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_GRUDGE] = + { + .effect = EFFECT_GRUDGE, + .power = 0, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SNATCH] = + { + .effect = EFFECT_SNATCH, + .power = 0, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = 4, + .flags = 0, + }, + + [MOVE_SECRET_POWER] = + { + .effect = EFFECT_SECRET_POWER, + .power = 70, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_DIVE] = + { + .effect = EFFECT_SEMI_INVULNERABLE, + .power = 60, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_ARM_THRUST] = + { + .effect = EFFECT_MULTI_HIT, + .power = 15, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_CAMOUFLAGE] = + { + .effect = EFFECT_CAMOUFLAGE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_TAIL_GLOW] = + { + .effect = EFFECT_SPECIAL_ATTACK_UP_2, + .power = 0, + .type = TYPE_BUG, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_LUSTER_PURGE] = + { + .effect = EFFECT_SPECIAL_DEFENSE_DOWN_HIT, + .power = 70, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 50, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MIST_BALL] = + { + .effect = EFFECT_SPECIAL_ATTACK_DOWN_HIT, + .power = 70, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 50, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_FEATHER_DANCE] = + { + .effect = EFFECT_ATTACK_DOWN_2, + .power = 0, + .type = TYPE_FLYING, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_TEETER_DANCE] = + { + .effect = EFFECT_TEETER_DANCE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_FOES_AND_ALLY, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED, + }, + + [MOVE_BLAZE_KICK] = + { + .effect = EFFECT_BLAZE_KICK, + .power = 85, + .type = TYPE_FIRE, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MUD_SPORT] = + { + .effect = EFFECT_MUD_SPORT, + .power = 0, + .type = TYPE_GROUND, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_ICE_BALL] = + { + .effect = EFFECT_ROLLOUT, + .power = 30, + .type = TYPE_ICE, + .accuracy = 90, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_NEEDLE_ARM] = + { + .effect = EFFECT_FLINCH_MINIMIZE_HIT, + .power = 60, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SLACK_OFF] = + { + .effect = EFFECT_RESTORE_HP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_HYPER_VOICE] = + { + .effect = EFFECT_HIT, + .power = 90, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_POISON_FANG] = + { + .effect = EFFECT_POISON_FANG, + .power = 50, + .type = TYPE_POISON, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_CRUSH_CLAW] = + { + .effect = EFFECT_DEFENSE_DOWN_HIT, + .power = 75, + .type = TYPE_NORMAL, + .accuracy = 95, + .pp = 10, + .secondaryEffectChance = 50, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_BLAST_BURN] = + { + .effect = EFFECT_RECHARGE, + .power = 150, + .type = TYPE_FIRE, + .accuracy = 90, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_HYDRO_CANNON] = + { + .effect = EFFECT_RECHARGE, + .power = 150, + .type = TYPE_WATER, + .accuracy = 90, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_METEOR_MASH] = + { + .effect = EFFECT_ATTACK_UP_HIT, + .power = 100, + .type = TYPE_STEEL, + .accuracy = 85, + .pp = 10, + .secondaryEffectChance = 20, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_ASTONISH] = + { + .effect = EFFECT_FLINCH_MINIMIZE_HIT, + .power = 30, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_WEATHER_BALL] = + { + .effect = EFFECT_WEATHER_BALL, + .power = 50, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_AROMATHERAPY] = + { + .effect = EFFECT_HEAL_BELL, + .power = 0, + .type = TYPE_GRASS, + .accuracy = 0, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_FAKE_TEARS] = + { + .effect = EFFECT_SPECIAL_DEFENSE_DOWN_2, + .power = 0, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_AIR_CUTTER] = + { + .effect = EFFECT_HIGH_CRITICAL, + .power = 55, + .type = TYPE_FLYING, + .accuracy = 95, + .pp = 25, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_OVERHEAT] = + { + .effect = EFFECT_OVERHEAT, + .power = 140, + .type = TYPE_FIRE, + .accuracy = 90, + .pp = 5, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_ODOR_SLEUTH] = + { + .effect = EFFECT_FORESIGHT, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_ROCK_TOMB] = + { + .effect = EFFECT_SPEED_DOWN_HIT, + .power = 50, + .type = TYPE_ROCK, + .accuracy = 80, + .pp = 10, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SILVER_WIND] = + { + .effect = EFFECT_ALL_STATS_UP_HIT, + .power = 60, + .type = TYPE_BUG, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_METAL_SOUND] = + { + .effect = EFFECT_SPECIAL_DEFENSE_DOWN_2, + .power = 0, + .type = TYPE_STEEL, + .accuracy = 85, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_GRASS_WHISTLE] = + { + .effect = EFFECT_SLEEP, + .power = 0, + .type = TYPE_GRASS, + .accuracy = 55, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_TICKLE] = + { + .effect = EFFECT_TICKLE, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_COSMIC_POWER] = + { + .effect = EFFECT_COSMIC_POWER, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_WATER_SPOUT] = + { + .effect = EFFECT_ERUPTION, + .power = 150, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SIGNAL_BEAM] = + { + .effect = EFFECT_CONFUSE_HIT, + .power = 75, + .type = TYPE_BUG, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SHADOW_PUNCH] = + { + .effect = EFFECT_ALWAYS_HIT, + .power = 60, + .type = TYPE_GHOST, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_EXTRASENSORY] = + { + .effect = EFFECT_FLINCH_MINIMIZE_HIT, + .power = 80, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_SKY_UPPERCUT] = + { + .effect = EFFECT_SKY_UPPERCUT, + .power = 85, + .type = TYPE_FIGHTING, + .accuracy = 90, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SAND_TOMB] = + { + .effect = EFFECT_TRAP, + .power = 15, + .type = TYPE_GROUND, + .accuracy = 70, + .pp = 15, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SHEER_COLD] = + { + .effect = EFFECT_OHKO, + .power = 1, + .type = TYPE_ICE, + .accuracy = 30, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_MUDDY_WATER] = + { + .effect = EFFECT_ACCURACY_DOWN_HIT, + .power = 95, + .type = TYPE_WATER, + .accuracy = 85, + .pp = 10, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_BULLET_SEED] = + { + .effect = EFFECT_MULTI_HIT, + .power = 10, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_AERIAL_ACE] = + { + .effect = EFFECT_ALWAYS_HIT, + .power = 60, + .type = TYPE_FLYING, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_ICICLE_SPEAR] = + { + .effect = EFFECT_MULTI_HIT, + .power = 10, + .type = TYPE_ICE, + .accuracy = 100, + .pp = 30, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_IRON_DEFENSE] = + { + .effect = EFFECT_DEFENSE_UP_2, + .power = 0, + .type = TYPE_STEEL, + .accuracy = 0, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_BLOCK] = + { + .effect = EFFECT_MEAN_LOOK, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_HOWL] = + { + .effect = EFFECT_ATTACK_UP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 40, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_DRAGON_CLAW] = + { + .effect = EFFECT_HIT, + .power = 80, + .type = TYPE_DRAGON, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_FRENZY_PLANT] = + { + .effect = EFFECT_RECHARGE, + .power = 150, + .type = TYPE_GRASS, + .accuracy = 90, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_BULK_UP] = + { + .effect = EFFECT_BULK_UP, + .power = 0, + .type = TYPE_FIGHTING, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_BOUNCE] = + { + .effect = EFFECT_SEMI_INVULNERABLE, + .power = 85, + .type = TYPE_FLYING, + .accuracy = 85, + .pp = 5, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_MUD_SHOT] = + { + .effect = EFFECT_SPEED_DOWN_HIT, + .power = 55, + .type = TYPE_GROUND, + .accuracy = 95, + .pp = 15, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_POISON_TAIL] = + { + .effect = EFFECT_POISON_TAIL, + .power = 50, + .type = TYPE_POISON, + .accuracy = 100, + .pp = 25, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_COVET] = + { + .effect = EFFECT_THIEF, + .power = 40, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 40, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + }, + + [MOVE_VOLT_TACKLE] = + { + .effect = EFFECT_DOUBLE_EDGE, + .power = 120, + .type = TYPE_ELECTRIC, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_MAGICAL_LEAF] = + { + .effect = EFFECT_ALWAYS_HIT, + .power = 60, + .type = TYPE_GRASS, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_WATER_SPORT] = + { + .effect = EFFECT_WATER_SPORT, + .power = 0, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = 0, + }, + + [MOVE_CALM_MIND] = + { + .effect = EFFECT_CALM_MIND, + .power = 0, + .type = TYPE_PSYCHIC, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_LEAF_BLADE] = + { + .effect = EFFECT_HIGH_CRITICAL, + .power = 70, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_DRAGON_DANCE] = + { + .effect = EFFECT_DRAGON_DANCE, + .power = 0, + .type = TYPE_DRAGON, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_x10, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + }, + + [MOVE_ROCK_BLAST] = + { + .effect = EFFECT_MULTI_HIT, + .power = 25, + .type = TYPE_ROCK, + .accuracy = 80, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_SHOCK_WAVE] = + { + .effect = EFFECT_ALWAYS_HIT, + .power = 60, + .type = TYPE_ELECTRIC, + .accuracy = 0, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_WATER_PULSE] = + { + .effect = EFFECT_CONFUSE_HIT, + .power = 60, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 20, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, + + [MOVE_DOOM_DESIRE] = + { + .effect = EFFECT_FUTURE_SIGHT, + .power = 120, + .type = TYPE_STEEL, + .accuracy = 85, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = 0, + }, + + [MOVE_PSYCHO_BOOST] = + { + .effect = EFFECT_OVERHEAT, + .power = 140, + .type = TYPE_PSYCHIC, + .accuracy = 90, + .pp = 5, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + }, +}; diff --git a/src/data/pokemon/item_effects.h b/src/data/pokemon/item_effects.h index a5b5e9f81..31a78a748 100644 --- a/src/data/pokemon/item_effects.h +++ b/src/data/pokemon/item_effects.h @@ -1,84 +1,84 @@ -const u8 gItemEffect_Potion[7] = { +static const u8 sItemEffect_Potion[7] = { [4] = ITEM4_HEAL_HP, [6] = 20, }; -const u8 gItemEffect_Antidote[6] = { +static const u8 sItemEffect_Antidote[6] = { [3] = ITEM3_POISON, }; -const u8 gItemEffect_BurnHeal[6] = { +static const u8 sItemEffect_BurnHeal[6] = { [3] = ITEM3_BURN, }; -const u8 gItemEffect_IceHeal[6] = { +static const u8 sItemEffect_IceHeal[6] = { [3] = ITEM3_FREEZE, }; -const u8 gItemEffect_Awakening[6] = { +static const u8 sItemEffect_Awakening[6] = { [3] = ITEM3_SLEEP, }; -const u8 gItemEffect_ParalyzeHeal[6] = { +static const u8 sItemEffect_ParalyzeHeal[6] = { [3] = ITEM3_PARALYSIS, }; -const u8 gItemEffect_FullRestore[7] = { +static const u8 sItemEffect_FullRestore[7] = { [3] = ITEM3_STATUS_ALL, [4] = ITEM4_HEAL_HP, [6] = -1, }; -const u8 gItemEffect_MaxPotion[7] = { +static const u8 sItemEffect_MaxPotion[7] = { [4] = ITEM4_HEAL_HP, [6] = -1, }; -const u8 gItemEffect_HyperPotion[7] = { +static const u8 sItemEffect_HyperPotion[7] = { [4] = ITEM4_HEAL_HP, [6] = 200, }; -const u8 gItemEffect_SuperPotion[7] = { +static const u8 sItemEffect_SuperPotion[7] = { [4] = ITEM4_HEAL_HP, [6] = 50, }; -const u8 gItemEffect_FullHeal[6] = { +static const u8 sItemEffect_FullHeal[6] = { [3] = ITEM3_STATUS_ALL, }; -const u8 gItemEffect_Revive[7] = { +static const u8 sItemEffect_Revive[7] = { [4] = ITEM4_REVIVE | ITEM4_HEAL_HP, [6] = -2, }; -const u8 gItemEffect_MaxRevive[7] = { +static const u8 sItemEffect_MaxRevive[7] = { [4] = ITEM4_REVIVE | ITEM4_HEAL_HP, [6] = -1, }; -const u8 gItemEffect_FreshWater[7] = { +static const u8 sItemEffect_FreshWater[7] = { [4] = ITEM4_HEAL_HP, [6] = 50, }; -const u8 gItemEffect_SodaPop[7] = { +static const u8 sItemEffect_SodaPop[7] = { [4] = ITEM4_HEAL_HP, [6] = 60, }; -const u8 gItemEffect_Lemonade[7] = { +static const u8 sItemEffect_Lemonade[7] = { [4] = ITEM4_HEAL_HP, [6] = 80, }; -const u8 gItemEffect_MoomooMilk[7] = { +static const u8 sItemEffect_MoomooMilk[7] = { [4] = ITEM4_HEAL_HP, [6] = 100, }; -const u8 gItemEffect_EnergyPowder[10] = { +static const u8 sItemEffect_EnergyPowder[10] = { [4] = ITEM4_HEAL_HP, [5] = ITEM5_FRIENDSHIP_ALL, [6] = 50, @@ -87,7 +87,7 @@ const u8 gItemEffect_EnergyPowder[10] = { [9] = -10, }; -const u8 gItemEffect_EnergyRoot[10] = { +static const u8 sItemEffect_EnergyRoot[10] = { [4] = ITEM4_HEAL_HP, [5] = ITEM5_FRIENDSHIP_ALL, [6] = 200, @@ -96,7 +96,7 @@ const u8 gItemEffect_EnergyRoot[10] = { [9] = -15, }; -const u8 gItemEffect_HealPowder[9] = { +static const u8 sItemEffect_HealPowder[9] = { [3] = ITEM3_STATUS_ALL, [5] = ITEM5_FRIENDSHIP_ALL, [6] = -5, @@ -104,7 +104,7 @@ const u8 gItemEffect_HealPowder[9] = { [8] = -10, }; -const u8 gItemEffect_RevivalHerb[10] = { +static const u8 sItemEffect_RevivalHerb[10] = { [4] = ITEM4_REVIVE | ITEM4_HEAL_HP, [5] = ITEM5_FRIENDSHIP_ALL, [6] = -1, @@ -113,54 +113,54 @@ const u8 gItemEffect_RevivalHerb[10] = { [9] = -20, }; -const u8 gItemEffect_Ether[7] = { +static const u8 sItemEffect_Ether[7] = { [4] = ITEM4_HEAL_PP_ONE | ITEM4_HEAL_PP_ALL, [6] = 10, }; -const u8 gItemEffect_MaxEther[7] = { +static const u8 sItemEffect_MaxEther[7] = { [4] = ITEM4_HEAL_PP_ONE | ITEM4_HEAL_PP_ALL, [6] = 0x7F, }; -const u8 gItemEffect_Elixir[7] = { +static const u8 sItemEffect_Elixir[7] = { [4] = ITEM4_HEAL_PP_ALL, [6] = 10, }; -const u8 gItemEffect_MaxElixir[7] = { +static const u8 sItemEffect_MaxElixir[7] = { [4] = ITEM4_HEAL_PP_ALL, [6] = 0x7F, }; -const u8 gItemEffect_LavaCookie[6] = { +static const u8 sItemEffect_LavaCookie[6] = { [3] = ITEM3_STATUS_ALL, }; -const u8 gItemEffect_BlueFlute[6] = { +static const u8 sItemEffect_BlueFlute[6] = { [3] = ITEM3_SLEEP, }; -const u8 gItemEffect_YellowFlute[6] = { +static const u8 sItemEffect_YellowFlute[6] = { [3] = ITEM3_CONFUSION, }; -const u8 gItemEffect_RedFlute[6] = { +static const u8 sItemEffect_RedFlute[6] = { [0] = ITEM0_INFATUATION, }; -const u8 gItemEffect_BerryJuice[7] = { +static const u8 sItemEffect_BerryJuice[7] = { [4] = ITEM4_HEAL_HP, [6] = 20, }; -const u8 gItemEffect_SacredAsh[7] = { +static const u8 sItemEffect_SacredAsh[7] = { [0] = ITEM0_SACRED_ASH, [4] = ITEM4_REVIVE | ITEM4_HEAL_HP, [6] = -1, }; -const u8 gItemEffect_HPUp[10] = { +static const u8 sItemEffect_HPUp[10] = { [4] = ITEM4_EV_HP, [5] = ITEM5_FRIENDSHIP_ALL, [6] = 10, @@ -169,7 +169,7 @@ const u8 gItemEffect_HPUp[10] = { [9] = 2, }; -const u8 gItemEffect_Protein[10] = { +static const u8 sItemEffect_Protein[10] = { [4] = ITEM4_EV_ATK, [5] = ITEM5_FRIENDSHIP_ALL, [6] = 10, @@ -178,7 +178,7 @@ const u8 gItemEffect_Protein[10] = { [9] = 2, }; -const u8 gItemEffect_Iron[10] = { +static const u8 sItemEffect_Iron[10] = { [5] = ITEM5_EV_DEF | ITEM5_FRIENDSHIP_ALL, [6] = 10, [7] = 5, @@ -186,7 +186,7 @@ const u8 gItemEffect_Iron[10] = { [9] = 2, }; -const u8 gItemEffect_Carbos[10] = { +static const u8 sItemEffect_Carbos[10] = { [5] = ITEM5_EV_SPEED | ITEM5_FRIENDSHIP_ALL, [6] = 10, [7] = 5, @@ -194,7 +194,7 @@ const u8 gItemEffect_Carbos[10] = { [9] = 2, }; -const u8 gItemEffect_Calcium[10] = { +static const u8 sItemEffect_Calcium[10] = { [5] = ITEM5_EV_SPATK | ITEM5_FRIENDSHIP_ALL, [6] = 10, [7] = 5, @@ -202,7 +202,7 @@ const u8 gItemEffect_Calcium[10] = { [9] = 2, }; -const u8 gItemEffect_RareCandy[10] = { +static const u8 sItemEffect_RareCandy[10] = { [3] = ITEM3_LEVEL_UP, [4] = ITEM4_REVIVE | ITEM4_HEAL_HP, [5] = ITEM5_FRIENDSHIP_ALL, @@ -212,7 +212,7 @@ const u8 gItemEffect_RareCandy[10] = { [9] = 2, }; -const u8 gItemEffect_PPUp[9] = { +static const u8 sItemEffect_PPUp[9] = { [4] = ITEM4_PP_UP, [5] = ITEM5_FRIENDSHIP_ALL, [6] = 5, @@ -220,7 +220,7 @@ const u8 gItemEffect_PPUp[9] = { [8] = 2, }; -const u8 gItemEffect_Zinc[10] = { +static const u8 sItemEffect_Zinc[10] = { [5] = ITEM5_EV_SPDEF | ITEM5_FRIENDSHIP_ALL, [6] = 10, [7] = 5, @@ -228,246 +228,193 @@ const u8 gItemEffect_Zinc[10] = { [9] = 2, }; -const u8 gItemEffect_PPMax[9] = { +static const u8 sItemEffect_PPMax[9] = { [5] = ITEM5_PP_MAX | ITEM5_FRIENDSHIP_ALL, [6] = 5, [7] = 3, [8] = 2, }; -const u8 gItemEffect_GuardSpec[8] = { +static const u8 sItemEffect_GuardSpec[8] = { [3] = ITEM3_MIST, [5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID, [6] = 1, [7] = 1, }; -const u8 gItemEffect_DireHit[8] = { +static const u8 sItemEffect_DireHit[8] = { [0] = 2 << 4, [5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID, [6] = 1, [7] = 1, }; -const u8 gItemEffect_XAttack[8] = { +static const u8 sItemEffect_XAttack[8] = { [0] = 1, [5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID, [6] = 1, [7] = 1, }; -const u8 gItemEffect_XDefend[8] = { +static const u8 sItemEffect_XDefend[8] = { [1] = 1 << 4, [5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID, [6] = 1, [7] = 1, }; -const u8 gItemEffect_XSpeed[8] = { +static const u8 sItemEffect_XSpeed[8] = { [1] = 1, [5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID, [6] = 1, [7] = 1, }; -const u8 gItemEffect_XAccuracy[8] = { +static const u8 sItemEffect_XAccuracy[8] = { [2] = 1 << 4, [5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID, [6] = 1, [7] = 1, }; -const u8 gItemEffect_XSpecial[8] = { +static const u8 sItemEffect_XSpecial[8] = { [2] = 1, [5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID, [6] = 1, [7] = 1, }; -const u8 gItemEffect_SunStone[6] = { +static const u8 sItemEffect_SunStone[6] = { [4] = ITEM4_EVO_STONE, }; -const u8 gItemEffect_MoonStone[6] = { +static const u8 sItemEffect_MoonStone[6] = { [4] = ITEM4_EVO_STONE, }; -const u8 gItemEffect_FireStone[6] = { +static const u8 sItemEffect_FireStone[6] = { [4] = ITEM4_EVO_STONE, }; -const u8 gItemEffect_ThunderStone[6] = { +static const u8 sItemEffect_ThunderStone[6] = { [4] = ITEM4_EVO_STONE, }; -const u8 gItemEffect_WaterStone[6] = { +static const u8 sItemEffect_WaterStone[6] = { [4] = ITEM4_EVO_STONE, }; -const u8 gItemEffect_LeafStone[6] = { +static const u8 sItemEffect_LeafStone[6] = { [4] = ITEM4_EVO_STONE, }; -const u8 gItemEffect_CheriBerry[6] = { +static const u8 sItemEffect_CheriBerry[6] = { [3] = ITEM3_PARALYSIS, }; -const u8 gItemEffect_ChestoBerry[6] = { +static const u8 sItemEffect_ChestoBerry[6] = { [3] = ITEM3_SLEEP, }; -const u8 gItemEffect_PechaBerry[6] = { +static const u8 sItemEffect_PechaBerry[6] = { [3] = ITEM3_POISON, }; -const u8 gItemEffect_RawstBerry[6] = { +static const u8 sItemEffect_RawstBerry[6] = { [3] = ITEM3_BURN, }; -const u8 gItemEffect_AspearBerry[6] = { +static const u8 sItemEffect_AspearBerry[6] = { [3] = ITEM3_FREEZE, }; -const u8 gItemEffect_LeppaBerry[7] = { +static const u8 sItemEffect_LeppaBerry[7] = { [4] = ITEM4_HEAL_PP_ONE | ITEM4_HEAL_PP_ALL, [6] = 10, }; -const u8 gItemEffect_OranBerry[7] = { +static const u8 sItemEffect_OranBerry[7] = { [4] = ITEM4_HEAL_HP, [6] = 10, }; -const u8 gItemEffect_PersimBerry[6] = { +static const u8 sItemEffect_PersimBerry[6] = { [3] = ITEM3_CONFUSION, }; -const u8 gItemEffect_LumBerry[6] = { +static const u8 sItemEffect_LumBerry[6] = { [3] = ITEM3_STATUS_ALL, }; -const u8 gItemEffect_SitrusBerry[7] = { +static const u8 sItemEffect_SitrusBerry[7] = { [4] = ITEM4_HEAL_HP, [6] = 30, }; -// emerald berry effects -/* -const u8 gItemEffect_PomegBerry[10] = { - [4] = ITEM4_EV_HP, - [5] = ITEM5_FRIENDSHIP_ALL, - [6] = -10, - [7] = 10, - [8] = 5, - [9] = 2, -}; - -const u8 gItemEffect_KelpsyBerry[10] = { - [4] = ITEM4_EV_ATK, - [5] = ITEM5_FRIENDSHIP_ALL, - [6] = -10, - [7] = 10, - [8] = 5, - [9] = 2, -}; - -const u8 gItemEffect_QualotBerry[10] = { - [5] = ITEM5_EV_DEF | ITEM5_FRIENDSHIP_ALL, - [6] = -10, - [7] = 10, - [8] = 5, - [9] = 2, -}; - -const u8 gItemEffect_HondrewBerry[10] = { - [5] = ITEM5_EV_SPATK | ITEM5_FRIENDSHIP_ALL, - [6] = -10, - [7] = 10, - [8] = 5, - [9] = 2, -}; - -const u8 gItemEffect_GrepaBerry[10] = { - [5] = ITEM5_EV_SPDEF | ITEM5_FRIENDSHIP_ALL, - [6] = -10, - [7] = 10, - [8] = 5, - [9] = 2, -}; - -const u8 gItemEffect_TamatoBerry[10] = { - [5] = ITEM5_EV_SPEED | ITEM5_FRIENDSHIP_ALL, - [6] = -10, - [7] = 10, - [8] = 5, - [9] = 2, -}; -*/ - const u8 *const gItemEffectTable[] = { - [ITEM_POTION - ITEM_POTION] = gItemEffect_Potion, - [ITEM_ANTIDOTE - ITEM_POTION] = gItemEffect_Antidote, - [ITEM_BURN_HEAL - ITEM_POTION] = gItemEffect_BurnHeal, - [ITEM_ICE_HEAL - ITEM_POTION] = gItemEffect_IceHeal, - [ITEM_AWAKENING - ITEM_POTION] = gItemEffect_Awakening, - [ITEM_PARALYZE_HEAL - ITEM_POTION] = gItemEffect_ParalyzeHeal, - [ITEM_FULL_RESTORE - ITEM_POTION] = gItemEffect_FullRestore, - [ITEM_MAX_POTION - ITEM_POTION] = gItemEffect_MaxPotion, - [ITEM_HYPER_POTION - ITEM_POTION] = gItemEffect_HyperPotion, - [ITEM_SUPER_POTION - ITEM_POTION] = gItemEffect_SuperPotion, - [ITEM_FULL_HEAL - ITEM_POTION] = gItemEffect_FullHeal, - [ITEM_REVIVE - ITEM_POTION] = gItemEffect_Revive, - [ITEM_MAX_REVIVE - ITEM_POTION] = gItemEffect_MaxRevive, - [ITEM_FRESH_WATER - ITEM_POTION] = gItemEffect_FreshWater, - [ITEM_SODA_POP - ITEM_POTION] = gItemEffect_SodaPop, - [ITEM_LEMONADE - ITEM_POTION] = gItemEffect_Lemonade, - [ITEM_MOOMOO_MILK - ITEM_POTION] = gItemEffect_MoomooMilk, - [ITEM_ENERGY_POWDER - ITEM_POTION] = gItemEffect_EnergyPowder, - [ITEM_ENERGY_ROOT - ITEM_POTION] = gItemEffect_EnergyRoot, - [ITEM_HEAL_POWDER - ITEM_POTION] = gItemEffect_HealPowder, - [ITEM_REVIVAL_HERB - ITEM_POTION] = gItemEffect_RevivalHerb, - [ITEM_ETHER - ITEM_POTION] = gItemEffect_Ether, - [ITEM_MAX_ETHER - ITEM_POTION] = gItemEffect_MaxEther, - [ITEM_ELIXIR - ITEM_POTION] = gItemEffect_Elixir, - [ITEM_MAX_ELIXIR - ITEM_POTION] = gItemEffect_MaxElixir, - [ITEM_LAVA_COOKIE - ITEM_POTION] = gItemEffect_LavaCookie, - [ITEM_BLUE_FLUTE - ITEM_POTION] = gItemEffect_BlueFlute, - [ITEM_YELLOW_FLUTE - ITEM_POTION] = gItemEffect_YellowFlute, - [ITEM_RED_FLUTE - ITEM_POTION] = gItemEffect_RedFlute, - [ITEM_BERRY_JUICE - ITEM_POTION] = gItemEffect_BerryJuice, - [ITEM_SACRED_ASH - ITEM_POTION] = gItemEffect_SacredAsh, - [ITEM_HP_UP - ITEM_POTION] = gItemEffect_HPUp, - [ITEM_PROTEIN - ITEM_POTION] = gItemEffect_Protein, - [ITEM_IRON - ITEM_POTION] = gItemEffect_Iron, - [ITEM_CARBOS - ITEM_POTION] = gItemEffect_Carbos, - [ITEM_CALCIUM - ITEM_POTION] = gItemEffect_Calcium, - [ITEM_RARE_CANDY - ITEM_POTION] = gItemEffect_RareCandy, - [ITEM_PP_UP - ITEM_POTION] = gItemEffect_PPUp, - [ITEM_ZINC - ITEM_POTION] = gItemEffect_Zinc, - [ITEM_PP_MAX - ITEM_POTION] = gItemEffect_PPMax, - [ITEM_GUARD_SPEC - ITEM_POTION] = gItemEffect_GuardSpec, - [ITEM_DIRE_HIT - ITEM_POTION] = gItemEffect_DireHit, - [ITEM_X_ATTACK - ITEM_POTION] = gItemEffect_XAttack, - [ITEM_X_DEFEND - ITEM_POTION] = gItemEffect_XDefend, - [ITEM_X_SPEED - ITEM_POTION] = gItemEffect_XSpeed, - [ITEM_X_ACCURACY - ITEM_POTION] = gItemEffect_XAccuracy, - [ITEM_X_SPECIAL - ITEM_POTION] = gItemEffect_XSpecial, - [ITEM_SUN_STONE - ITEM_POTION] = gItemEffect_SunStone, - [ITEM_MOON_STONE - ITEM_POTION] = gItemEffect_MoonStone, - [ITEM_FIRE_STONE - ITEM_POTION] = gItemEffect_FireStone, - [ITEM_THUNDER_STONE - ITEM_POTION] = gItemEffect_ThunderStone, - [ITEM_WATER_STONE - ITEM_POTION] = gItemEffect_WaterStone, - [ITEM_LEAF_STONE - ITEM_POTION] = gItemEffect_LeafStone, - [ITEM_CHERI_BERRY - ITEM_POTION] = gItemEffect_CheriBerry, - [ITEM_CHESTO_BERRY - ITEM_POTION] = gItemEffect_ChestoBerry, - [ITEM_PECHA_BERRY - ITEM_POTION] = gItemEffect_PechaBerry, - [ITEM_RAWST_BERRY - ITEM_POTION] = gItemEffect_RawstBerry, - [ITEM_ASPEAR_BERRY - ITEM_POTION] = gItemEffect_AspearBerry, - [ITEM_LEPPA_BERRY - ITEM_POTION] = gItemEffect_LeppaBerry, - [ITEM_ORAN_BERRY - ITEM_POTION] = gItemEffect_OranBerry, - [ITEM_PERSIM_BERRY - ITEM_POTION] = gItemEffect_PersimBerry, - [ITEM_LUM_BERRY - ITEM_POTION] = gItemEffect_LumBerry, - [ITEM_SITRUS_BERRY - ITEM_POTION] = gItemEffect_SitrusBerry, + [ITEM_POTION - ITEM_POTION] = sItemEffect_Potion, + [ITEM_ANTIDOTE - ITEM_POTION] = sItemEffect_Antidote, + [ITEM_BURN_HEAL - ITEM_POTION] = sItemEffect_BurnHeal, + [ITEM_ICE_HEAL - ITEM_POTION] = sItemEffect_IceHeal, + [ITEM_AWAKENING - ITEM_POTION] = sItemEffect_Awakening, + [ITEM_PARALYZE_HEAL - ITEM_POTION] = sItemEffect_ParalyzeHeal, + [ITEM_FULL_RESTORE - ITEM_POTION] = sItemEffect_FullRestore, + [ITEM_MAX_POTION - ITEM_POTION] = sItemEffect_MaxPotion, + [ITEM_HYPER_POTION - ITEM_POTION] = sItemEffect_HyperPotion, + [ITEM_SUPER_POTION - ITEM_POTION] = sItemEffect_SuperPotion, + [ITEM_FULL_HEAL - ITEM_POTION] = sItemEffect_FullHeal, + [ITEM_REVIVE - ITEM_POTION] = sItemEffect_Revive, + [ITEM_MAX_REVIVE - ITEM_POTION] = sItemEffect_MaxRevive, + [ITEM_FRESH_WATER - ITEM_POTION] = sItemEffect_FreshWater, + [ITEM_SODA_POP - ITEM_POTION] = sItemEffect_SodaPop, + [ITEM_LEMONADE - ITEM_POTION] = sItemEffect_Lemonade, + [ITEM_MOOMOO_MILK - ITEM_POTION] = sItemEffect_MoomooMilk, + [ITEM_ENERGY_POWDER - ITEM_POTION] = sItemEffect_EnergyPowder, + [ITEM_ENERGY_ROOT - ITEM_POTION] = sItemEffect_EnergyRoot, + [ITEM_HEAL_POWDER - ITEM_POTION] = sItemEffect_HealPowder, + [ITEM_REVIVAL_HERB - ITEM_POTION] = sItemEffect_RevivalHerb, + [ITEM_ETHER - ITEM_POTION] = sItemEffect_Ether, + [ITEM_MAX_ETHER - ITEM_POTION] = sItemEffect_MaxEther, + [ITEM_ELIXIR - ITEM_POTION] = sItemEffect_Elixir, + [ITEM_MAX_ELIXIR - ITEM_POTION] = sItemEffect_MaxElixir, + [ITEM_LAVA_COOKIE - ITEM_POTION] = sItemEffect_LavaCookie, + [ITEM_BLUE_FLUTE - ITEM_POTION] = sItemEffect_BlueFlute, + [ITEM_YELLOW_FLUTE - ITEM_POTION] = sItemEffect_YellowFlute, + [ITEM_RED_FLUTE - ITEM_POTION] = sItemEffect_RedFlute, + [ITEM_BERRY_JUICE - ITEM_POTION] = sItemEffect_BerryJuice, + [ITEM_SACRED_ASH - ITEM_POTION] = sItemEffect_SacredAsh, + [ITEM_HP_UP - ITEM_POTION] = sItemEffect_HPUp, + [ITEM_PROTEIN - ITEM_POTION] = sItemEffect_Protein, + [ITEM_IRON - ITEM_POTION] = sItemEffect_Iron, + [ITEM_CARBOS - ITEM_POTION] = sItemEffect_Carbos, + [ITEM_CALCIUM - ITEM_POTION] = sItemEffect_Calcium, + [ITEM_RARE_CANDY - ITEM_POTION] = sItemEffect_RareCandy, + [ITEM_PP_UP - ITEM_POTION] = sItemEffect_PPUp, + [ITEM_ZINC - ITEM_POTION] = sItemEffect_Zinc, + [ITEM_PP_MAX - ITEM_POTION] = sItemEffect_PPMax, + [ITEM_GUARD_SPEC - ITEM_POTION] = sItemEffect_GuardSpec, + [ITEM_DIRE_HIT - ITEM_POTION] = sItemEffect_DireHit, + [ITEM_X_ATTACK - ITEM_POTION] = sItemEffect_XAttack, + [ITEM_X_DEFEND - ITEM_POTION] = sItemEffect_XDefend, + [ITEM_X_SPEED - ITEM_POTION] = sItemEffect_XSpeed, + [ITEM_X_ACCURACY - ITEM_POTION] = sItemEffect_XAccuracy, + [ITEM_X_SPECIAL - ITEM_POTION] = sItemEffect_XSpecial, + [ITEM_SUN_STONE - ITEM_POTION] = sItemEffect_SunStone, + [ITEM_MOON_STONE - ITEM_POTION] = sItemEffect_MoonStone, + [ITEM_FIRE_STONE - ITEM_POTION] = sItemEffect_FireStone, + [ITEM_THUNDER_STONE - ITEM_POTION] = sItemEffect_ThunderStone, + [ITEM_WATER_STONE - ITEM_POTION] = sItemEffect_WaterStone, + [ITEM_LEAF_STONE - ITEM_POTION] = sItemEffect_LeafStone, + [ITEM_CHERI_BERRY - ITEM_POTION] = sItemEffect_CheriBerry, + [ITEM_CHESTO_BERRY - ITEM_POTION] = sItemEffect_ChestoBerry, + [ITEM_PECHA_BERRY - ITEM_POTION] = sItemEffect_PechaBerry, + [ITEM_RAWST_BERRY - ITEM_POTION] = sItemEffect_RawstBerry, + [ITEM_ASPEAR_BERRY - ITEM_POTION] = sItemEffect_AspearBerry, + [ITEM_LEPPA_BERRY - ITEM_POTION] = sItemEffect_LeppaBerry, + [ITEM_ORAN_BERRY - ITEM_POTION] = sItemEffect_OranBerry, + [ITEM_PERSIM_BERRY - ITEM_POTION] = sItemEffect_PersimBerry, + [ITEM_LUM_BERRY - ITEM_POTION] = sItemEffect_LumBerry, + [ITEM_SITRUS_BERRY - ITEM_POTION] = sItemEffect_SitrusBerry, [LAST_BERRY_INDEX - ITEM_POTION] = NULL, }; diff --git a/src/data/pokemon/tmhm_learnsets.h b/src/data/pokemon/tmhm_learnsets.h index 3ad9a97c6..1e3e347ca 100644 --- a/src/data/pokemon/tmhm_learnsets.h +++ b/src/data/pokemon/tmhm_learnsets.h @@ -3,8 +3,8 @@ // This table determines which TMs and HMs a species is capable of learning. // Each entry is a 64-bit bit array spread across two 32-bit values, with -// each bit corresponding to a . -const u32 gTMHMLearnsets[][2] = +// each bit corresponding to a machine. +static const u32 sTMHMLearnsets[][2] = { [SPECIES_NONE] = TMHM_LEARNSET(0), diff --git a/src/data/pokemon/trainer_class_lookups.h b/src/data/pokemon/trainer_class_lookups.h index 4e285c06c..faf23bf31 100644 --- a/src/data/pokemon/trainer_class_lookups.h +++ b/src/data/pokemon/trainer_class_lookups.h @@ -1,156 +1,156 @@ -// TODO: document the indices for GCC extension +// TODO: document trainer pic indices with macro const u8 gFacilityClassToPicIndex[] = { - [0] = FACILITY_CLASS_AQUA_LEADER, - [1] = FACILITY_CLASS_TEAM_AQUA, - [2] = FACILITY_CLASS_TEAM_AQUA_2, - [3] = FACILITY_CLASS_AROMA_LADY, - [4] = FACILITY_CLASS_RUIN_MANIAC, - [5] = FACILITY_CLASS_INTERVIEWER, - [6] = FACILITY_CLASS_TUBER, - [7] = FACILITY_CLASS_TUBER_2, - [8] = FACILITY_CLASS_COOLTRAINER, - [9] = FACILITY_CLASS_COOLTRAINER_2, - [10] = FACILITY_CLASS_HEX_MANIAC, - [11] = FACILITY_CLASS_LADY, - [12] = FACILITY_CLASS_BEAUTY, - [13] = FACILITY_CLASS_RICH_BOY, - [14] = FACILITY_CLASS_POKEMANIAC, - [15] = FACILITY_CLASS_SWIMMER_MALE, - [16] = FACILITY_CLASS_BLACK_BELT, - [17] = FACILITY_CLASS_GUITARIST, - [18] = FACILITY_CLASS_KINDLER, - [19] = FACILITY_CLASS_CAMPER, - [20] = FACILITY_CLASS_BUG_MANIAC, - [21] = FACILITY_CLASS_PSYCHIC, - [22] = FACILITY_CLASS_PSYCHIC_2, - [23] = FACILITY_CLASS_GENTLEMAN, - [24] = FACILITY_CLASS_ELITE_FOUR, - [25] = FACILITY_CLASS_ELITE_FOUR_2, - [26] = FACILITY_CLASS_LEADER, - [27] = FACILITY_CLASS_LEADER_2, - [28] = FACILITY_CLASS_LEADER_3, - [29] = FACILITY_CLASS_SCHOOL_KID, - [30] = FACILITY_CLASS_SCHOOL_KID_2, - [31] = FACILITY_CLASS_SR_AND_JR, - [32] = FACILITY_CLASS_POKEFAN, - [33] = FACILITY_CLASS_POKEFAN_2, - [34] = FACILITY_CLASS_EXPERT, - [35] = FACILITY_CLASS_EXPERT_2, - [36] = FACILITY_CLASS_YOUNGSTER, - [37] = FACILITY_CLASS_CHAMPION, - [38] = FACILITY_CLASS_FISHERMAN, - [39] = FACILITY_CLASS_TRIATHLETE, - [40] = FACILITY_CLASS_TRIATHLETE_2, - [41] = FACILITY_CLASS_TRIATHLETE_3, - [42] = FACILITY_CLASS_TRIATHLETE_4, - [43] = FACILITY_CLASS_TRIATHLETE_5, - [44] = FACILITY_CLASS_TRIATHLETE_6, - [45] = FACILITY_CLASS_DRAGON_TAMER, - [46] = FACILITY_CLASS_BIRD_KEEPER, - [47] = FACILITY_CLASS_NINJA_BOY, - [48] = FACILITY_CLASS_BATTLE_GIRL, - [49] = FACILITY_CLASS_PARASOL_LADY, - [50] = FACILITY_CLASS_SWIMMER_FEMALE, - [51] = FACILITY_CLASS_PICNICKER, - [52] = FACILITY_CLASS_TWINS, - [53] = FACILITY_CLASS_SAILOR, - [54] = FACILITY_CLASS_YOUNGSTER, - [55] = FACILITY_CLASS_YOUNGSTER, - [56] = FACILITY_CLASS_BOARDER, - [57] = FACILITY_CLASS_BOARDER_2, - [58] = FACILITY_CLASS_COLLECTOR, - [59] = FACILITY_CLASS_COLLECTOR, - [60] = FACILITY_CLASS_COLLECTOR, - [61] = FACILITY_CLASS_PKMN_TRAINER, - [62] = FACILITY_CLASS_PKMN_TRAINER, - [63] = FACILITY_CLASS_PKMN_TRAINER, - [64] = FACILITY_CLASS_PKMN_TRAINER_2, - [65] = FACILITY_CLASS_PKMN_TRAINER_3, - [66] = FACILITY_CLASS_PKMN_TRAINER_4, - [67] = FACILITY_CLASS_PKMN_TRAINER_5, - [68] = FACILITY_CLASS_PKMN_TRAINER_6, - [69] = FACILITY_CLASS_PKMN_TRAINER_7, - [70] = FACILITY_CLASS_PKMN_BREEDER, - [71] = FACILITY_CLASS_PKMN_BREEDER_2, - [72] = FACILITY_CLASS_PKMN_RANGER, - [73] = FACILITY_CLASS_PKMN_RANGER_2, - [74] = FACILITY_CLASS_MAGMA_LEADER, - [75] = FACILITY_CLASS_TEAM_MAGMA, - [76] = FACILITY_CLASS_TEAM_MAGMA_2, - [77] = FACILITY_CLASS_LASS, - [78] = FACILITY_CLASS_BUG_CATCHER, - [79] = FACILITY_CLASS_HIKER, - [80] = FACILITY_CLASS_YOUNG_COUPLE, - [81] = FACILITY_CLASS_OLD_COUPLE, - [82] = FACILITY_CLASS_SIS_AND_BRO, - [83] = FACILITY_CLASS_AQUA_ADMIN, - [84] = FACILITY_CLASS_AQUA_ADMIN_2, - [85] = FACILITY_CLASS_MAGMA_ADMIN, - [86] = FACILITY_CLASS_MAGMA_ADMIN_2, - [87] = FACILITY_CLASS_LEADER_4, - [88] = FACILITY_CLASS_LEADER_5, - [89] = FACILITY_CLASS_LEADER_6, - [90] = FACILITY_CLASS_LEADER_7, - [91] = FACILITY_CLASS_LEADER_8, - [92] = FACILITY_CLASS_ELITE_FOUR_3, - [93] = FACILITY_CLASS_ELITE_FOUR_4, - [94] = FACILITY_CLASS_YOUNGSTER_2, - [95] = FACILITY_CLASS_BUG_CATCHER_2, - [96] = FACILITY_CLASS_LASS_2, - [97] = FACILITY_CLASS_SAILOR_2, - [98] = FACILITY_CLASS_CAMPER_2, - [99] = FACILITY_CLASS_PICNICKER_2, - [100] = FACILITY_CLASS_POKEMANIAC_2, - [101] = FACILITY_CLASS_SUPER_NERD, - [102] = FACILITY_CLASS_HIKER_2, - [103] = FACILITY_CLASS_BIKER, - [104] = FACILITY_CLASS_BURGLAR, - [105] = FACILITY_CLASS_ENGINEER, - [106] = FACILITY_CLASS_FISHERMAN_2, - [107] = FACILITY_CLASS_SWIMMER_MALE_2, - [108] = FACILITY_CLASS_CUE_BALL, - [109] = FACILITY_CLASS_GAMER, - [110] = FACILITY_CLASS_BEAUTY_2, - [111] = FACILITY_CLASS_SWIMMER_FEMALE_2, - [112] = FACILITY_CLASS_PSYCHIC_3, - [113] = FACILITY_CLASS_ROCKER, - [114] = FACILITY_CLASS_JUGGLER, - [115] = FACILITY_CLASS_TAMER, - [116] = FACILITY_CLASS_BIRD_KEEPER_2, - [117] = FACILITY_CLASS_BLACK_BELT_2, - [118] = FACILITY_CLASS_RIVAL, - [119] = FACILITY_CLASS_SCIENTIST, - [120] = FACILITY_CLASS_COOLTRAINER_3, - [121] = FACILITY_CLASS_COOLTRAINER_4, - [122] = FACILITY_CLASS_RIVAL_2, - [123] = FACILITY_CLASS_CHAMPION_2, - [124] = FACILITY_CLASS_CHANNELER, - [125] = FACILITY_CLASS_TWINS_2, - [126] = FACILITY_CLASS_COOL_COUPLE, - [127] = FACILITY_CLASS_YOUNG_COUPLE_2, - [128] = FACILITY_CLASS_CRUSH_KIN, - [129] = FACILITY_CLASS_SIS_AND_BRO_2, - [130] = FACILITY_CLASS_PKMN_PROF, - [131] = FACILITY_CLASS_PLAYER, - [132] = FACILITY_CLASS_PLAYER_2, - [133] = FACILITY_CLASS_PLAYER_3, - [134] = FACILITY_CLASS_PLAYER_4, - [135] = FACILITY_CLASS_TEAM_ROCKET_2, - [136] = FACILITY_CLASS_PSYCHIC_4, - [137] = FACILITY_CLASS_CRUSH_GIRL, - [138] = FACILITY_CLASS_TUBER_3, - [139] = FACILITY_CLASS_PKMN_BREEDER_3, - [140] = FACILITY_CLASS_PKMN_RANGER_3, - [141] = FACILITY_CLASS_PKMN_RANGER_4, - [142] = FACILITY_CLASS_AROMA_LADY_2, - [143] = FACILITY_CLASS_RUIN_MANIAC_2, - [144] = FACILITY_CLASS_LADY_2, - [145] = FACILITY_CLASS_PAINTER, - [146] = FACILITY_CLASS_ELITE_FOUR_7, - [147] = FACILITY_CLASS_RIVAL, - [148] = FACILITY_CLASS_SCIENTIST, - [149] = FACILITY_CLASS_CHANNELER, + [FACILITY_CLASS_AQUA_LEADER] = 0, + [FACILITY_CLASS_TEAM_AQUA] = 1, + [FACILITY_CLASS_TEAM_AQUA_2] = 2, + [FACILITY_CLASS_AROMA_LADY] = 3, + [FACILITY_CLASS_RUIN_MANIAC] = 4, + [FACILITY_CLASS_INTERVIEWER] = 5, + [FACILITY_CLASS_TUBER] = 6, + [FACILITY_CLASS_TUBER_2] = 7, + [FACILITY_CLASS_COOLTRAINER] = 8, + [FACILITY_CLASS_COOLTRAINER_2] = 9, + [FACILITY_CLASS_HEX_MANIAC] = 10, + [FACILITY_CLASS_LADY] = 11, + [FACILITY_CLASS_BEAUTY] = 12, + [FACILITY_CLASS_RICH_BOY] = 13, + [FACILITY_CLASS_POKEMANIAC] = 14, + [FACILITY_CLASS_SWIMMER_MALE] = 15, + [FACILITY_CLASS_BLACK_BELT] = 16, + [FACILITY_CLASS_GUITARIST] = 17, + [FACILITY_CLASS_KINDLER] = 18, + [FACILITY_CLASS_CAMPER] = 19, + [FACILITY_CLASS_BUG_MANIAC] = 20, + [FACILITY_CLASS_PSYCHIC] = 21, + [FACILITY_CLASS_PSYCHIC_2] = 22, + [FACILITY_CLASS_GENTLEMAN] = 23, + [FACILITY_CLASS_ELITE_FOUR] = 24, + [FACILITY_CLASS_ELITE_FOUR_2] = 25, + [FACILITY_CLASS_LEADER] = 26, + [FACILITY_CLASS_LEADER_2] = 27, + [FACILITY_CLASS_LEADER_3] = 28, + [FACILITY_CLASS_SCHOOL_KID] = 29, + [FACILITY_CLASS_SCHOOL_KID_2] = 30, + [FACILITY_CLASS_SR_AND_JR] = 31, + [FACILITY_CLASS_POKEFAN] = 32, + [FACILITY_CLASS_POKEFAN_2] = 33, + [FACILITY_CLASS_EXPERT] = 34, + [FACILITY_CLASS_EXPERT_2] = 35, + [FACILITY_CLASS_YOUNGSTER] = 36, + [FACILITY_CLASS_CHAMPION] = 37, + [FACILITY_CLASS_FISHERMAN] = 38, + [FACILITY_CLASS_TRIATHLETE] = 39, + [FACILITY_CLASS_TRIATHLETE_2] = 40, + [FACILITY_CLASS_TRIATHLETE_3] = 41, + [FACILITY_CLASS_TRIATHLETE_4] = 42, + [FACILITY_CLASS_TRIATHLETE_5] = 43, + [FACILITY_CLASS_TRIATHLETE_6] = 44, + [FACILITY_CLASS_DRAGON_TAMER] = 45, + [FACILITY_CLASS_BIRD_KEEPER] = 46, + [FACILITY_CLASS_NINJA_BOY] = 47, + [FACILITY_CLASS_BATTLE_GIRL] = 48, + [FACILITY_CLASS_PARASOL_LADY] = 49, + [FACILITY_CLASS_SWIMMER_FEMALE] = 50, + [FACILITY_CLASS_PICNICKER] = 51, + [FACILITY_CLASS_TWINS] = 52, + [FACILITY_CLASS_SAILOR] = 53, + [FACILITY_CLASS_BOARDER] = 36, + [FACILITY_CLASS_BOARDER_2] = 36, + [FACILITY_CLASS_COLLECTOR] = 54, + [FACILITY_CLASS_PKMN_TRAINER] = 55, + [FACILITY_CLASS_PKMN_TRAINER_2] = 56, + [FACILITY_CLASS_PKMN_TRAINER_3] = 56, + [FACILITY_CLASS_PKMN_TRAINER_4] = 56, + [FACILITY_CLASS_PKMN_TRAINER_5] = 57, + [FACILITY_CLASS_PKMN_TRAINER_6] = 57, + [FACILITY_CLASS_PKMN_TRAINER_7] = 57, + [FACILITY_CLASS_PKMN_BREEDER] = 58, + [FACILITY_CLASS_PKMN_BREEDER_2] = 59, + [FACILITY_CLASS_PKMN_RANGER] = 60, + [FACILITY_CLASS_PKMN_RANGER_2] = 61, + [FACILITY_CLASS_MAGMA_LEADER] = 62, + [FACILITY_CLASS_TEAM_MAGMA] = 63, + [FACILITY_CLASS_TEAM_MAGMA_2] = 64, + [FACILITY_CLASS_LASS] = 65, + [FACILITY_CLASS_BUG_CATCHER] = 66, + [FACILITY_CLASS_HIKER] = 67, + [FACILITY_CLASS_YOUNG_COUPLE] = 68, + [FACILITY_CLASS_OLD_COUPLE] = 69, + [FACILITY_CLASS_SIS_AND_BRO] = 70, + [FACILITY_CLASS_AQUA_ADMIN] = 71, + [FACILITY_CLASS_AQUA_ADMIN_2] = 72, + [FACILITY_CLASS_MAGMA_ADMIN] = 73, + [FACILITY_CLASS_MAGMA_ADMIN_2] = 74, + [FACILITY_CLASS_LEADER_4] = 75, + [FACILITY_CLASS_LEADER_5] = 76, + [FACILITY_CLASS_LEADER_6] = 77, + [FACILITY_CLASS_LEADER_7] = 78, + [FACILITY_CLASS_LEADER_8] = 79, + [FACILITY_CLASS_ELITE_FOUR_3] = 80, + [FACILITY_CLASS_ELITE_FOUR_4] = 81, + [FACILITY_CLASS_YOUNGSTER_2] = 82, + [FACILITY_CLASS_BUG_CATCHER_2] = 83, + [FACILITY_CLASS_LASS_2] = 84, + [FACILITY_CLASS_SAILOR_2] = 85, + [FACILITY_CLASS_CAMPER_2] = 86, + [FACILITY_CLASS_PICNICKER_2] = 87, + [FACILITY_CLASS_POKEMANIAC_2] = 88, + [FACILITY_CLASS_SUPER_NERD] = 89, + [FACILITY_CLASS_HIKER_2] = 90, + [FACILITY_CLASS_BIKER] = 91, + [FACILITY_CLASS_BURGLAR] = 92, + [FACILITY_CLASS_ENGINEER] = 93, + [FACILITY_CLASS_FISHERMAN_2] = 94, + [FACILITY_CLASS_SWIMMER_MALE_2] = 95, + [FACILITY_CLASS_CUE_BALL] = 96, + [FACILITY_CLASS_GAMER] = 97, + [FACILITY_CLASS_BEAUTY_2] = 98, + [FACILITY_CLASS_SWIMMER_FEMALE_2] = 99, + [FACILITY_CLASS_PSYCHIC_3] = 100, + [FACILITY_CLASS_ROCKER] = 101, + [FACILITY_CLASS_JUGGLER] = 102, + [FACILITY_CLASS_TAMER] = 103, + [FACILITY_CLASS_BIRD_KEEPER_2] = 104, + [FACILITY_CLASS_BLACK_BELT_2] = 105, + [FACILITY_CLASS_RIVAL] = 106, + [FACILITY_CLASS_SCIENTIST] = 107, + [FACILITY_CLASS_BOSS] = 108, + [FACILITY_CLASS_TEAM_ROCKET] = 109, + [FACILITY_CLASS_COOLTRAINER_3] = 110, + [FACILITY_CLASS_COOLTRAINER_4] = 111, + [FACILITY_CLASS_ELITE_FOUR_5] = 112, + [FACILITY_CLASS_ELITE_FOUR_6] = 113, + [FACILITY_CLASS_LEADER_9] = 116, + [FACILITY_CLASS_LEADER_10] = 117, + [FACILITY_CLASS_GENTLEMAN_2] = 123, + [FACILITY_CLASS_RIVAL_2] = 124, + [FACILITY_CLASS_CHAMPION_2] = 125, + [FACILITY_CLASS_CHANNELER] = 126, + [FACILITY_CLASS_TWINS_2] = 127, + [FACILITY_CLASS_COOL_COUPLE] = 128, + [FACILITY_CLASS_YOUNG_COUPLE_2] = 129, + [FACILITY_CLASS_CRUSH_KIN] = 130, + [FACILITY_CLASS_SIS_AND_BRO_2] = 131, + [FACILITY_CLASS_PKMN_PROF] = 132, + [FACILITY_CLASS_PLAYER] = 133, + [FACILITY_CLASS_PLAYER_2] = 134, + [FACILITY_CLASS_PLAYER_3] = 135, + [FACILITY_CLASS_PLAYER_4] = 136, + [FACILITY_CLASS_TEAM_ROCKET_2] = 137, + [FACILITY_CLASS_PSYCHIC_4] = 138, + [FACILITY_CLASS_CRUSH_GIRL] = 139, + [FACILITY_CLASS_TUBER_3] = 140, + [FACILITY_CLASS_PKMN_BREEDER_3] = 141, + [FACILITY_CLASS_PKMN_RANGER_3] = 142, + [FACILITY_CLASS_PKMN_RANGER_4] = 143, + [FACILITY_CLASS_AROMA_LADY_2] = 144, + [FACILITY_CLASS_RUIN_MANIAC_2] = 145, + [FACILITY_CLASS_LADY_2] = 146, + [FACILITY_CLASS_PAINTER] = 147, + [FACILITY_CLASS_ELITE_FOUR_7] = 112, + [FACILITY_CLASS_ELITE_FOUR_8] = 113, + [FACILITY_CLASS_CHAMPION_3] = 125, }; const u8 gFacilityClassToTrainerClass[] = |