diff --git a/src/data/moves_info.h b/src/data/moves_info.h index 2db536438bf0..91d1952cc528 100644 --- a/src/data/moves_info.h +++ b/src/data/moves_info.h @@ -122,15 +122,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("-"), .description = COMPOUND_STRING(""), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 0, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .mirrorMoveBanned = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, + .mirrorMoveBanned = TRUE, .sketchBanned = TRUE, }, @@ -141,13 +141,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Pounds the foe with\n" "forelegs or tail."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 35, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresKingsRock = B_UPDATED_MOVE_FLAGS == GEN_4, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, @@ -163,14 +163,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A chopping attack with a\n" "high critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -185,13 +185,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Repeatedly slaps the foe\n" "2 to 5 times."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 15, + .type = TYPE_NORMAL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -206,13 +206,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Repeatedly punches the foe\n" "2 to 5 times."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 18, + .type = TYPE_NORMAL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, @@ -228,13 +228,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A strong punch thrown with\n" "incredible power."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_NORMAL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, @@ -250,13 +250,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Throws coins at the foe.\n" "Money is recovered after."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PAYDAY, }), @@ -273,13 +273,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A fiery punch that may burn\n" "the foe."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -303,13 +303,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "freeze the foe."), #endif .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -329,13 +329,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An electrified punch that\n" "may paralyze the foe."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -355,13 +355,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Scratches the foe with\n" "sharp claws."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 35, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -376,13 +376,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Grips the foe with large and\n" "powerful pincers."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 55, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -397,13 +397,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A powerful pincer attack\n" "that may cause fainting."), .effect = EFFECT_OHKO, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 30, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -418,17 +418,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A 2-turn move that strikes\n" "the foe on the 2nd turn."), .effect = EFFECT_TWO_TURNS_ATTACK, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_BOTH, + .criticalHitStage = 1, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, - .criticalHitStage = 1, - .windMove = B_EXTRAPOLATED_MOVE_FLAGS, + .category = DAMAGE_CATEGORY_SPECIAL, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .windMove = B_EXTRAPOLATED_MOVE_FLAGS, .argument = TWO_TURN_ARG(STRINGID_PKMNWHIPPEDWHIRLWIND), .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_COOL, @@ -443,16 +443,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A fighting dance that\n" "sharply raises Attack."), .effect = EFFECT_ATTACK_UP_2, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 30, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .danceMove = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = COMBO_STARTER_SWORDS_DANCE, @@ -466,13 +466,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Cuts the foe with sharp\n" "scythes, claws, etc."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_NORMAL, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, @@ -488,16 +488,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes the foe with a gust\n" "of wind whipped up by wings."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 35, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_4) || (B_UPDATED_MOVE_FLAGS < GEN_3), - .windMove = TRUE, .damagesAirborneDoubleDamage = TRUE, + .windMove = TRUE, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -511,13 +511,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes the foe with wings\n" "spread wide."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 35, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_COOL, @@ -532,18 +532,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Blows away the foe with\n" "wind and ends the battle."), .effect = EFFECT_ROAR, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 0 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = -6, - .ignoresProtect = B_UPDATED_MOVE_FLAGS >= GEN_6, - .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .windMove = TRUE, + .ignoresProtect = B_UPDATED_MOVE_FLAGS >= GEN_6, .ignoresSubstitute = TRUE, + .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .copycatBanned = TRUE, .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, @@ -559,18 +559,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Flies up on the first turn,\n" "then strikes the next turn."), .effect = EFFECT_SEMI_INVULNERABLE, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_4 ? 90 : 70, + .type = TYPE_FLYING, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .gravityBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .argument = TWO_TURN_ARG(STRINGID_PKMNFLEWHIGH, COMPRESS_BITS(STATUS3_ON_AIR)), .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -585,13 +585,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Binds and squeezes the foe\n" "for "BINDING_TURNS" turns."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 15, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 75, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresKingsRock = B_UPDATED_MOVE_FLAGS < GEN_3, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -610,13 +610,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slams the foe with a long\n" "tail, vine, etc."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_NORMAL, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, @@ -631,12 +631,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Strikes the foe with\n" "slender, whiplike vines."), - .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, - .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 45 : 35, - .accuracy = 100, - .target = MOVE_TARGET_SELECTED, #if B_UPDATED_MOVE_DATA >= GEN_6 .pp = 25, #elif B_UPDATED_MOVE_DATA >= GEN_4 @@ -644,7 +638,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .pp = 10, #endif + .effect = EFFECT_HIT, + .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 45 : 35, + .type = TYPE_GRASS, + .accuracy = 100, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, @@ -659,13 +659,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stomps the enemy with a big\n" "foot. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .minimizeDoubleDamage = TRUE, .skyBattleBanned = TRUE, @@ -686,15 +686,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A double-kicking attack\n" "that strikes the foe twice."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 30, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 2, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .strikeCount = 2, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -708,13 +708,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An extremely powerful kick\n" "with intense force."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_NORMAL, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, @@ -728,9 +728,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "A strong jumping kick. May\n" "miss and hurt the kicker."), - .effect = EFFECT_RECOIL_IF_MISS, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, #if B_UPDATED_MOVE_DATA >= GEN_5 .power = 100, #elif B_UPDATED_MOVE_DATA >= GEN_4 @@ -738,10 +735,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .power = 70, #endif + .effect = EFFECT_RECOIL_IF_MISS, + .type = TYPE_FIGHTING, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_5 ? 10 : 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .gravityBanned = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, @@ -757,13 +757,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A fast kick delivered from\n" "a rapid spin."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_FIGHTING, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresKingsRock = B_UPDATED_MOVE_FLAGS < GEN_3, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -783,14 +783,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Reduces the foe's accuracy\n" "by hurling sand in its face."), .effect = EFFECT_ACCURACY_DOWN, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -805,13 +805,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A ramming attack that may\n" "cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -830,13 +830,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Jabs the foe with sharp\n" "horns."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, @@ -851,13 +851,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Jabs the foe 2 to 5 times\n" "with sharp horns, etc."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 15, + .type = TYPE_NORMAL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_COOL, @@ -872,13 +872,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A one-hit KO attack that\n" "uses a horn like a drill."), .effect = EFFECT_OHKO, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 30, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -892,9 +892,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Charges the foe with a full-\n" "body tackle."), - .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, #if B_UPDATED_MOVE_DATA >= GEN_7 .power = 40, #elif B_UPDATED_MOVE_DATA >= GEN_5 @@ -902,10 +899,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .power = 35, #endif + .effect = EFFECT_HIT, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 95, - .target = MOVE_TARGET_SELECTED, .pp = 35, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -920,13 +920,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A full-body slam that may\n" "cause paralysis."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS >= GEN_6, .skyBattleBanned = TRUE, @@ -947,13 +947,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Wraps and squeezes the foe\n" BINDING_TURNS" times with vines, etc."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 15, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 85, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_WRAP, @@ -971,14 +971,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A reckless charge attack\n" "that also hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_NORMAL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, + .recoil = 25, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 25, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -993,13 +993,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A rampage of 2 to 3 turns\n" "that confuses the user."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 120 : 90, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_RANDOM, .pp = B_UPDATED_MOVE_DATA >= GEN_5 ? 10 : 20, + .target = MOVE_TARGET_RANDOM, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .instructBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -1019,14 +1019,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A life-risking tackle that\n" "also hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .recoil = 33, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 33, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -1041,14 +1041,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Wags the tail to lower the\n" "foe's Defense."), .effect = EFFECT_DEFENSE_DOWN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 30, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -1063,13 +1063,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A toxic attack with barbs,\n" "etc., that may poison."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 15, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 35, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, .chance = 30, @@ -1087,15 +1087,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stingers on the forelegs\n" "jab the foe twice."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 25, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 2, + .category = DAMAGE_CATEGORY_PHYSICAL, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), + .strikeCount = 2, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, .chance = 20, @@ -1113,13 +1113,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sharp pins are fired to\n" "strike 2 to 5 times."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 25 : 14, + .type = TYPE_BUG, .accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 95 : 85, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -1133,14 +1133,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Frightens the foe with a\n" "leer to lower Defense."), .effect = EFFECT_DEFENSE_DOWN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 30, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, .contestCategory = CONTEST_CATEGORY_COOL, @@ -1155,13 +1155,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Bites with vicious fangs.\n" "May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -1181,14 +1181,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Growls cutely to reduce the\n" "foe's Attack."), .effect = EFFECT_ATTACK_DOWN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 40, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, @@ -1205,18 +1205,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the foe flee to end\n" "the battle."), .effect = EFFECT_ROAR, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 0 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = -6, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = B_UPDATED_MOVE_FLAGS >= GEN_6, + .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .soundMove = TRUE, - .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .copycatBanned = TRUE, .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, @@ -1232,17 +1232,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A soothing song lulls the\n" "foe into a deep slumber."), .effect = EFFECT_SLEEP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 55, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .magicCoatAffected = TRUE, .soundMove = TRUE, - .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = COMBO_STARTER_SING, @@ -1256,17 +1256,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Emits bizarre sound waves\n" "that may confuse the foe."), .effect = EFFECT_CONFUSE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 55, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .magicCoatAffected = TRUE, .soundMove = TRUE, - .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -1280,13 +1280,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Launches shock waves that\n" "always inflict 20 HP damage."), .effect = EFFECT_FIXED_DAMAGE_ARG, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = 20, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_COOL, @@ -1300,10 +1300,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Psychically disables one of\n" "the foe's moves."), - .effect = EFFECT_DISABLE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, - .power = 0, #if B_UPDATED_MOVE_DATA >= GEN_5 .accuracy = 100, #elif B_UPDATED_MOVE_DATA == GEN_4 @@ -1311,12 +1307,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .accuracy = 55, #endif - .target = MOVE_TARGET_SELECTED, + .effect = EFFECT_DISABLE, + .power = 0, + .type = TYPE_NORMAL, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresSubstitute = TRUE, + .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -1334,14 +1334,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "May lower Defense."), #endif .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 30, + .target = MOVE_TARGET_BOTH, .priority = 0, - .additionalEffects = ADDITIONAL_EFFECTS({ + .category = DAMAGE_CATEGORY_SPECIAL, + .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = B_UPDATED_MOVE_DATA >= GEN_4 ? MOVE_EFFECT_SP_DEF_MINUS_1 : MOVE_EFFECT_DEF_MINUS_1, .chance = 10, }), @@ -1358,13 +1358,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A weak fire attack that may\n" "inflict a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, .chance = 10, @@ -1382,13 +1382,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A powerful fire attack that\n" "may inflict a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, .chance = 10, @@ -1406,17 +1406,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Creates a mist that stops\n" "reduction of abilities."), .effect = EFFECT_MIST, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ICE, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -1430,13 +1430,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Squirts water to attack\n" "the foe."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -1450,13 +1450,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Blasts water at high power\n" "to strike the foe."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120, + .type = TYPE_WATER, .accuracy = 80, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -1470,13 +1470,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Creates a huge wave, then\n" "crashes it down on the foe."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95, + .type = TYPE_WATER, .accuracy = 100, - .target = B_UPDATED_MOVE_DATA >= GEN_4 ? MOVE_TARGET_FOES_AND_ALLY : MOVE_TARGET_BOTH, .pp = 15, + .target = B_UPDATED_MOVE_DATA >= GEN_4 ? MOVE_TARGET_FOES_AND_ALLY : MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .damagesUnderwater = TRUE, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, @@ -1496,13 +1496,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "beam that may freeze it."), #endif .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ // The following effect is also relevant in battle_pike.c // If you cherry-pick this to use something other than the config, make sure to update it there too @@ -1526,13 +1526,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "storm that may freeze it."), #endif .effect = B_BLIZZARD_HAIL >= GEN_4 ? EFFECT_BLIZZARD : EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120, + .type = TYPE_ICE, .accuracy = 70, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE, @@ -1551,13 +1551,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fires a peculiar ray that\n" "may confuse the foe."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CONFUSION, .chance = 10, @@ -1575,13 +1575,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Forcefully sprays bubbles\n" "that may lower Speed."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, .chance = 10, @@ -1599,13 +1599,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fires a rainbow-colored\n" "beam that may lower Attack."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ATK_MINUS_1, .chance = 10, @@ -1621,13 +1621,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Hyper Beam"), .description = sHyperBeamDescription, .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_NORMAL, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresKingsRock = B_UPDATED_MOVE_FLAGS < GEN_3, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RECHARGE, @@ -1646,13 +1646,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks the foe with a\n" "jabbing beak, etc."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 35, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 35, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, @@ -1667,13 +1667,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A corkscrewing attack with\n" "the beak acting as a drill."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, @@ -1688,14 +1688,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A reckless body slam that\n" "also hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_FIGHTING, .accuracy = 80, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 25, - .priority = 0, .recoil = 25, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_COOL, @@ -1710,13 +1710,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A kick that inflicts more\n" "damage on heavier foes."), .effect = EFFECT_LOW_KICK, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -1731,13 +1731,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Retaliates any physical hit\n" "with double the power."), .effect = EFFECT_COUNTER, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_DEPENDS, .pp = 20, + .target = MOVE_TARGET_DEPENDS, .priority = -5, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), .meFirstBanned = TRUE, @@ -1757,13 +1757,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts damage identical\n" "to the user's level."), .effect = EFFECT_LEVEL_DAMAGE, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, @@ -1779,13 +1779,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Builds enormous power,\n" "then slams the foe."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -1800,13 +1800,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that absorbs\n" "half the damage inflicted."), .effect = EFFECT_ABSORB, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 20, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_4 ? 25 : 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), .healingMove = B_HEAL_BLOCKING >= GEN_6, .contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON, @@ -1820,13 +1820,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Mega Drain"), .description = sMegaDrainDescription, .effect = EFFECT_ABSORB, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_4 ? 15 : 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), .healingMove = B_HEAL_BLOCKING >= GEN_6, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, @@ -1842,14 +1842,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Plants a seed on the foe to\n" "steal HP on every turn."), .effect = EFFECT_LEECH_SEED, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -1864,17 +1864,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Forces the body to grow\n" "and heightens Sp. Atk."), .effect = B_GROWTH_STAT_RAISE >= GEN_5 ? EFFECT_GROWTH : EFFECT_SPECIAL_ATTACK_UP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 40, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = COMBO_STARTER_GROWTH, @@ -1888,14 +1888,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Cuts the enemy with leaves.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 55, + .type = TYPE_GRASS, .accuracy = 95, - .target = MOVE_TARGET_BOTH, + .criticalHitStage = 1, .pp = 25, + .target = MOVE_TARGET_BOTH, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_COOL, @@ -1910,13 +1910,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Absorbs light in one turn,\n" "then attacks next turn."), .effect = EFFECT_SOLAR_BEAM, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 120, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .argument = TWO_TURN_ARG(STRINGID_PKMNTOOKSUNLIGHT, B_WEATHER_SUN), @@ -1933,14 +1933,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Scatters a toxic powder\n" "that may poison the foe."), .effect = EFFECT_POISON, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 35, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .powderMove = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, @@ -1956,14 +1956,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Scatters a powder that may\n" "paralyze the foe."), .effect = EFFECT_PARALYZE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 30, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .magicCoatAffected = TRUE, .powderMove = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, @@ -1979,14 +1979,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Scatters a powder that may\n" "cause the foe to sleep."), .effect = EFFECT_SLEEP, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = TRUE, .powderMove = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, @@ -2001,9 +2001,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "A rampage of 2 to 3 turns\n" "that confuses the user."), - .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, #if B_UPDATED_MOVE_DATA >= GEN_5 .power = 120, #elif B_UPDATED_MOVE_DATA == GEN_4 @@ -2011,10 +2008,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .power = 70, #endif + .effect = EFFECT_HIT, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_RANDOM, .pp = B_UPDATED_MOVE_DATA >= GEN_5 ? 10 : 20, + .target = MOVE_TARGET_RANDOM, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .makesContact = TRUE, .danceMove = TRUE, .instructBanned = TRUE, @@ -2035,14 +2035,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Binds the foe with string\n" "to reduce its Speed."), .effect = B_UPDATED_MOVE_DATA >= GEN_6 ? EFFECT_SPEED_DOWN_2 : EFFECT_SPEED_DOWN, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 95, - .target = MOVE_TARGET_BOTH, .pp = 40, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON, .contestCategory = CONTEST_CATEGORY_SMART, @@ -2057,13 +2057,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Launches shock waves that\n" "always inflict 40 HP damage."), .effect = EFFECT_FIXED_DAMAGE_ARG, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_4) || (B_UPDATED_MOVE_FLAGS < GEN_3), .argument = 40, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, @@ -2079,13 +2079,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Traps the foe in a ring of\n" "fire for "BINDING_TURNS" turns."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 35 : 15, + .type = TYPE_FIRE, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 70, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresKingsRock = B_UPDATED_MOVE_FLAGS < GEN_3, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_WRAP, @@ -2103,13 +2103,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An electrical attack that\n" "may paralyze the foe."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, .chance = 10, @@ -2127,13 +2127,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A strong electrical attack\n" "that may paralyze the foe."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, .chance = 10, @@ -2151,14 +2151,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A weak jolt of electricity\n" "that paralyzes the foe."), .effect = EFFECT_PARALYZE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ELECTRIC, .accuracy = B_UPDATED_MOVE_DATA >= GEN_7 ? 90 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -2173,13 +2173,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A lightning attack that may\n" "cause paralysis."), .effect = EFFECT_THUNDER, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120, + .type = TYPE_ELECTRIC, .accuracy = 70, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .damagesAirborne = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -2198,13 +2198,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Throws small rocks to\n" "strike the foe."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_ROCK, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = COMBO_STARTER_ROCK_THROW, @@ -2218,13 +2218,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A powerful quake, but has\n" "no effect on flying foes."), .effect = EFFECT_EARTHQUAKE, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 10, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ignoresKingsRock = B_UPDATED_MOVE_FLAGS < GEN_3, .damagesUnderground = TRUE, .skyBattleBanned = TRUE, @@ -2241,13 +2241,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A one-hit KO move that\n" "drops the foe in a fissure."), .effect = EFFECT_OHKO, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_GROUND, .accuracy = 30, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .damagesUnderground = TRUE, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, @@ -2263,17 +2263,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Digs underground the first\n" "turn and strikes next turn."), .effect = EFFECT_SEMI_INVULNERABLE, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_4 ? 80 : 60, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .skyBattleBanned = TRUE, .argument = TWO_TURN_ARG(STRINGID_PKMNDUGHOLE, COMPRESS_BITS(STATUS3_UNDERGROUND)), .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, @@ -2289,14 +2289,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Poisons the foe with an\n" "intensifying toxin."), .effect = EFFECT_TOXIC, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -2311,13 +2311,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A psychic attack that may\n" "cause confusion."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 50, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CONFUSION, .chance = 10, @@ -2335,13 +2335,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A powerful psychic attack\n" "that may lower Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1, .chance = 10, @@ -2359,14 +2359,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A hypnotizing move that\n" "may induce sleep."), .effect = EFFECT_SLEEP, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 60, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -2381,17 +2381,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Meditates in a peaceful\n" "fashion to raise Attack."), .effect = EFFECT_ATTACK_UP, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 40, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -2405,17 +2405,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Relaxes the body to sharply\n" "boost Speed."), .effect = EFFECT_SPEED_UP_2, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -2429,13 +2429,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An extremely fast attack\n" "that always strikes first."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_COOL, @@ -2450,13 +2450,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises the user's Attack\n" "every time it is hit."), .effect = EFFECT_RAGE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 20, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_COOL, @@ -2471,14 +2471,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A psychic move for fleeing\n" "from battle instantly."), .effect = EFFECT_TELEPORT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_USER, .priority = -6, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, @@ -2494,13 +2494,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts damage identical\n" "to the user's level."), .effect = EFFECT_LEVEL_DAMAGE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -2514,22 +2514,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Copies a move used by the\n" "foe during one battle."), .effect = EFFECT_MIMIC, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, .ignoresSubstitute = TRUE, .mimicBanned = TRUE, .metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_2, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONE, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -2543,17 +2543,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Emits a screech to sharply\n" "reduce the foe's Defense."), .effect = EFFECT_DEFENSE_DOWN_2, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 40, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .magicCoatAffected = TRUE, .soundMove = TRUE, - .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -2567,17 +2567,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Creates illusory copies to\n" "raise evasiveness."), .effect = EFFECT_EVASION_UP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 15, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = COMBO_STARTER_DOUBLE_TEAM, @@ -2590,12 +2590,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Recovers up to half the\n" "user's maximum HP."), - .effect = EFFECT_RESTORE_HP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, - .power = 0, - .accuracy = 0, - .target = MOVE_TARGET_USER, #if B_UPDATED_MOVE_DATA >= GEN_9 .pp = 5, #elif B_UPDATED_MOVE_DATA >= GEN_4 @@ -2603,12 +2597,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .pp = 20, #endif - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .effect = EFFECT_RESTORE_HP, + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, - .healingMove = TRUE, .mirrorMoveBanned = TRUE, + .healingMove = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -2622,17 +2622,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stiffens the body's \n" "muscles to raise Defense."), .effect = EFFECT_DEFENSE_UP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = COMBO_STARTER_HARDEN, @@ -2646,17 +2646,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Minimizes the user's size\n" "to raise evasiveness."), .effect = EFFECT_MINIMIZE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 10 : 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -2670,14 +2670,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lowers the foe's accuracy\n" "using smoke, ink, etc."), .effect = EFFECT_ACCURACY_DOWN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_SHIFT_JUDGE_ATTENTION, .contestCategory = CONTEST_CATEGORY_SMART, @@ -2692,14 +2692,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A sinister ray that\n" "confuses the foe."), .effect = EFFECT_CONFUSE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, .contestCategory = CONTEST_CATEGORY_SMART, @@ -2714,17 +2714,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Withdraws the body into its\n" "hard shell to raise Defense."), .effect = EFFECT_DEFENSE_UP, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 40, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -2738,17 +2738,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Curls up to conceal weak\n" "spots and raise Defense."), .effect = EFFECT_DEFENSE_CURL, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 40, - .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = COMBO_STARTER_DEFENSE_CURL, @@ -2762,17 +2762,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Creates a barrier that\n" "sharply raises Defense."), .effect = EFFECT_DEFENSE_UP_2, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 30, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -2786,17 +2786,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Creates a wall of light that\n" "lowers Sp. Atk damage."), .effect = EFFECT_LIGHT_SCREEN, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -2810,14 +2810,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Creates a black haze that\n" "eliminates all stat changes."), .effect = EFFECT_HAZE, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ICE, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 30, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -2834,17 +2834,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Creates a wall of light that\n" "weakens physical attacks."), .effect = EFFECT_REFLECT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -2858,18 +2858,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Focuses power to raise the\n" "critical-hit ratio."), .effect = EFFECT_FOCUS_ENERGY, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, + .argument = STATUS2_FOCUS_ENERGY, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, - .argument = STATUS2_FOCUS_ENERGY, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = COMBO_STARTER_FOCUS_ENERGY, @@ -2883,17 +2883,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Endures attack for 2\n" "turns to retaliate double."), .effect = EFFECT_BIDE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 100, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = B_UPDATED_MOVE_DATA >= GEN_4 ? 1 : 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .mirrorMoveBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -2907,22 +2907,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Waggles a finger to use any\n" "Pokémon move at random."), .effect = EFFECT_METRONOME, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_DEPENDS, .pp = 10, + .target = MOVE_TARGET_DEPENDS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = B_UPDATED_MOVE_FLAGS >= GEN_3, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -2936,21 +2936,21 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Counters the foe's attack\n" "with the same move."), .effect = EFFECT_MIRROR_MOVE, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FLYING, .accuracy = 0, - .target = MOVE_TARGET_DEPENDS, .pp = 20, - .zMove = { .effect = Z_EFFECT_ATK_UP_2 }, + .target = MOVE_TARGET_DEPENDS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_2 }, .mimicBanned = TRUE, .metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_4, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = B_UPDATED_MOVE_FLAGS >= GEN_3, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -2964,13 +2964,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts severe damage but\n" "makes the user faint."), .effect = EFFECT_EXPLOSION, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 200, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 5, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .parentalBondBanned = TRUE, .contestEffect = CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -2985,13 +2985,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An egg is forcibly hurled at\n" "the foe."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_NORMAL, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -3006,13 +3006,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Licks with a long tongue to\n" "injure. May also paralyze."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 30 : 20, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -3031,13 +3031,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An exhaust-gas attack\n" "that may also poison."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 30 : 20, + .type = TYPE_POISON, .accuracy = 70, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, .chance = 40, @@ -3055,13 +3055,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sludge is hurled to inflict\n" "damage. May also poison."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, .chance = 30, @@ -3079,13 +3079,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Clubs the foe with a bone.\n" "May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_GROUND, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, .chance = 10, @@ -3103,13 +3103,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Incinerates everything it\n" "strikes. May cause a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120, + .type = TYPE_FIRE, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, .chance = 10, @@ -3127,13 +3127,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Charges the foe with speed\n" "to climb waterfalls."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, #if B_UPDATED_MOVE_DATA >= GEN_4 .additionalEffects = ADDITIONAL_EFFECTS({ @@ -3154,13 +3154,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Traps and squeezes the\n" "foe for "BINDING_TURNS" turns."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 35, + .type = TYPE_WATER, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 75, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_5 ? 15 : 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresKingsRock = B_UPDATED_MOVE_FLAGS < GEN_3, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -3179,13 +3179,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sprays star-shaped rays\n" "that never miss."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_BOTH, .pp = 20, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -3199,13 +3199,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Tucks in the head, then\n" "attacks on the next turn."), .effect = EFFECT_TWO_TURNS_ATTACK, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 130 : 100, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 10 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, @@ -3228,13 +3228,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Launches sharp spikes that\n" "strike 2 to 5 times."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 20, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -3248,13 +3248,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Constricts to inflict pain.\n" "May lower Speed."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 35, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, @@ -3273,17 +3273,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Forgets about something\n" "and sharply raises Sp. Def."), .effect = EFFECT_SPECIAL_DEFENSE_UP_2, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, - .snatchAffected = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -3297,14 +3297,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Distracts the foe.\n" "May lower accuracy."), .effect = EFFECT_ACCURACY_DOWN, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 80, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -3319,18 +3319,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Recovers up to half the\n" "user's maximum HP."), .effect = EFFECT_SOFTBOILED, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .healingMove = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = COMBO_STARTER_SOFT_BOILED, @@ -3343,9 +3343,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "A jumping knee kick. If it\n" "misses, the user is hurt."), - .effect = EFFECT_RECOIL_IF_MISS, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, #if B_UPDATED_MOVE_DATA >= GEN_5 .power = 130, #elif B_UPDATED_MOVE_DATA == GEN_4 @@ -3353,10 +3350,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .power = 85, #endif + .effect = EFFECT_RECOIL_IF_MISS, + .type = TYPE_FIGHTING, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_5 ? 10 : 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .gravityBanned = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, @@ -3371,10 +3371,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Intimidates and frightens\n" "the foe into paralysis."), - .effect = EFFECT_PARALYZE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, - .power = 0, #if B_UPDATED_MOVE_DATA >= GEN_6 .accuracy = 100, #elif B_UPDATED_MOVE_DATA == GEN_5 @@ -3382,10 +3378,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .accuracy = 75, #endif - .target = MOVE_TARGET_SELECTED, + .effect = EFFECT_PARALYZE, + .power = 0, + .type = TYPE_NORMAL, .pp = 30, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -3400,13 +3400,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Takes one half the damage\n" "inflicted on a sleeping foe."), .effect = EFFECT_DREAM_EATER, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .healingMove = B_HEAL_BLOCKING >= GEN_6, .contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -3420,10 +3420,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Envelops the foe in a toxic\n" "gas that may poison."), - .effect = EFFECT_POISON, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, - .power = 0, #if B_UPDATED_MOVE_DATA >= GEN_6 .accuracy = 90, #elif B_UPDATED_MOVE_DATA >= GEN_5 @@ -3431,10 +3427,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .accuracy = 55, #endif - .target = B_UPDATED_MOVE_DATA >= GEN_5 ? MOVE_TARGET_BOTH : MOVE_TARGET_SELECTED, + .effect = EFFECT_POISON, + .power = 0, + .type = TYPE_POISON, .pp = 40, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = B_UPDATED_MOVE_DATA >= GEN_5 ? MOVE_TARGET_BOTH : MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -3449,13 +3449,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hurls round objects at the\n" "foe 2 to 5 times."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 15, + .type = TYPE_NORMAL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -3470,13 +3470,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that steals half\n" "the damage inflicted."), .effect = EFFECT_ABSORB, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_7 ? 80 : 20, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_7 ? 10 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), .healingMove = B_HEAL_BLOCKING >= GEN_6, @@ -3493,14 +3493,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Demands a kiss with a scary\n" "face that induces sleep."), .effect = EFFECT_SLEEP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -3515,13 +3515,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Searches out weak spots,\n" "then strikes the next turn."), .effect = EFFECT_TWO_TURNS_ATTACK, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 140, + .type = TYPE_FLYING, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .criticalHitStage = B_UPDATED_MOVE_DATA >= GEN_3, .sleepTalkBanned = TRUE, .instructBanned = TRUE, @@ -3545,22 +3545,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Alters the user's cells to\n" "become a copy of the foe."), .effect = EFFECT_TRANSFORM, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .mimicBanned = TRUE, .metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_5, .copycatBanned = TRUE, - .assistBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -3574,13 +3574,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack using bubbles.\n" "May lower the foe's Speed."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 40 : 20, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 30, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, .chance = 10, @@ -3598,13 +3598,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A rhythmic punch that may\n" "confuse the foe."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -3624,14 +3624,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Scatters a cloud of spores\n" "that always induce sleep."), .effect = EFFECT_SLEEP, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .magicCoatAffected = TRUE, .powderMove = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, @@ -3647,14 +3647,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Looses a powerful blast of\n" "light that cuts accuracy."), .effect = EFFECT_ACCURACY_DOWN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 100 : 70, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_SHIFT_JUDGE_ATTENTION, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -3669,13 +3669,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a psychic\n" "wave of varying intensity."), .effect = EFFECT_PSYWAVE, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_PSYCHIC, .accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 100 : 80, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -3689,17 +3689,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "It's just a splash...\n" "Has no effect whatsoever."), .effect = EFFECT_DO_NOTHING, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 40, - .zMove = { .effect = Z_EFFECT_ATK_UP_3 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_3 }, .ignoresProtect = TRUE, - .gravityBanned = TRUE, .mirrorMoveBanned = TRUE, + .gravityBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -3713,16 +3713,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Liquifies the user's body\n" "to sharply raise Defense."), .effect = EFFECT_DEFENSE_UP_2, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 40, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -3737,14 +3737,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hammers with a pincer. Has a\n" "high critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 100 : 90, + .type = TYPE_WATER, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 85, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -3759,13 +3759,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts severe damage but\n" "makes the user faint."), .effect = EFFECT_EXPLOSION, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 250, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 5, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .parentalBondBanned = TRUE, .contestEffect = CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -3780,13 +3780,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Rakes the foe with sharp\n" "claws, etc., 2 to 5 times."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 18, + .type = TYPE_NORMAL, .accuracy = 80, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -3801,13 +3801,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Throws a bone boomerang\n" "that strikes twice."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_GROUND, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .strikeCount = 2, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -3822,18 +3822,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user sleeps for 2 turns,\n" "restoring HP and status."), .effect = EFFECT_REST, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, - .healingMove = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, + .healingMove = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = COMBO_STARTER_REST, @@ -3847,13 +3847,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Large boulders are hurled.\n" "May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_ROCK, .accuracy = 90, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, .chance = 30, @@ -3871,13 +3871,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with sharp fangs.\n" "May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_NORMAL, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -3897,16 +3897,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Reduces the polygon count\n" "and raises Attack."), .effect = EFFECT_ATTACK_UP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -3921,16 +3921,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Changes the user's type\n" "into a known move's type."), .effect = EFFECT_CONVERSION, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -3945,13 +3945,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fires three types of beams\n" "at the same time."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_TRI_ATTACK, .chance = 20, @@ -3969,13 +3969,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with sharp fangs\n" "and cuts half the foe's HP."), .effect = EFFECT_SUPER_FANG, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, @@ -3991,14 +3991,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slashes with claws, etc. Has\n" "a high critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, @@ -4014,16 +4014,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Creates a decoy using 1/4\n" "of the user's maximum HP."), .effect = EFFECT_SUBSTITUTE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, @@ -4038,32 +4038,35 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Used only if all PP are gone.\n" "Also hurts the user a little."), - .effect = B_UPDATED_MOVE_DATA >= GEN_4 ? EFFECT_RECOIL_HP_25 : EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, + #if B_UPDATED_MOVE_DATA >= GEN_4 + .effect = EFFECT_RECOIL_HP_25, + .accuracy = 0, + .mirrorMoveBanned = TRUE, + .additionalEffects = ADDITIONAL_EFFECTS({ + .moveEffect = MOVE_EFFECT_RECOIL_HP_25, + .self = TRUE, + }), + #else + .effect = EFFECT_HIT, + .accuracy = 100, + .recoil = 25, + #endif .power = 50, - .accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 100, - .target = MOVE_TARGET_SELECTED, + .type = TYPE_NORMAL, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 25, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .mirrorMoveBanned = B_UPDATED_MOVE_DATA >= GEN_4, .meFirstBanned = TRUE, .mimicBanned = TRUE, .metronomeBanned = TRUE, - .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, + .copycatBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .sketchBanned = TRUE, - #if B_UPDATED_MOVE_DATA >= GEN_4 - .additionalEffects = ADDITIONAL_EFFECTS({ - .moveEffect = MOVE_EFFECT_RECOIL_HP_25, - .self = TRUE, - }), - #endif }, [MOVE_SKETCH] = @@ -4073,24 +4076,24 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Copies the foe's last move\n" "permanently."), .effect = EFFECT_SKETCH, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, - .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = B_UPDATED_MOVE_FLAGS >= GEN_5, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .sketchBanned = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -4105,15 +4108,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Kicks the foe 3 times in a\n" "row with rising intensity."), .effect = EFFECT_TRIPLE_KICK, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_FIGHTING, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 3, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .strikeCount = 3, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -4127,13 +4130,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "While attacking, it may\n" "steal the foe's held item."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 40, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 25 : 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), .meFirstBanned = TRUE, @@ -4156,14 +4159,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Ensnares the foe to stop it\n" "from fleeing or switching."), .effect = EFFECT_MEAN_LOOK, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = (B_UPDATED_MOVE_FLAGS >= GEN_6) || (B_UPDATED_MOVE_FLAGS <= GEN_3), .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, @@ -4179,14 +4182,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Senses the foe's action to\n" "ensure the next move's hit."), .effect = EFFECT_LOCK_ON, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = COMBO_STARTER_MIND_READER, @@ -4200,14 +4203,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts 1/4 damage on a\n" "sleeping foe every turn."), .effect = EFFECT_NIGHTMARE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GHOST, .accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 100 : 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .ignoresProtect = B_UPDATED_MOVE_FLAGS <= GEN_3, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -4222,13 +4225,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A fiery charge attack that\n" "may inflict a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .thawsUser = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -4248,15 +4251,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A loud attack that can be\n" "used only while asleep."), .effect = EFFECT_SNORE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 50 : 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_5, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -4275,14 +4278,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A move that functions\n" "differently for GHOSTS."), .effect = EFFECT_CURSE, - .type = B_UPDATED_MOVE_TYPES >= GEN_5 ? TYPE_GHOST : TYPE_MYSTERY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = B_UPDATED_MOVE_TYPES >= GEN_5 ? TYPE_GHOST : TYPE_MYSTERY, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_CURSE }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_CURSE }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -4299,13 +4302,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts more damage when\n" "the user's HP is down."), .effect = EFFECT_FLAIL, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -4320,14 +4323,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the user resistant\n" "to the last attack's type."), .effect = EFFECT_CONVERSION_2, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .ignoresProtect = B_UPDATED_MOVE_FLAGS >= GEN_5, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -4344,14 +4347,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Launches a vacuumed blast.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_FLYING, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_COOL, @@ -4366,14 +4369,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Spores cling to the foe,\n" "sharply reducing Speed."), .effect = EFFECT_SPEED_DOWN_2, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 85, - .target = B_UPDATED_MOVE_DATA >= GEN_6 ? MOVE_TARGET_BOTH : MOVE_TARGET_SELECTED, .pp = 40, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = B_UPDATED_MOVE_DATA >= GEN_6 ? MOVE_TARGET_BOTH : MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .magicCoatAffected = TRUE, .powderMove = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, @@ -4389,13 +4392,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts more damage when\n" "the user's HP is down."), .effect = EFFECT_FLAIL, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_COOL, @@ -4410,14 +4413,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Spitefully cuts the PP\n" "of the foe's last move."), .effect = EFFECT_SPITE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, @@ -4433,13 +4436,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Blasts the foe with a snowy\n" "gust. May cause freezing."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 25, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE, .chance = 10, @@ -4457,14 +4460,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Evades attack, but may fail\n" "if used in succession."), .effect = EFFECT_PROTECT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = B_UPDATED_MOVE_DATA >= GEN_5 ? 4 : 3, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .metronomeBanned = TRUE, .copycatBanned = TRUE, .assistBanned = TRUE, @@ -4481,13 +4484,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A punch is thrown at wicked\n" "speed to strike first."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, @@ -4503,14 +4506,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Frightens with a scary face\n" "to sharply reduce Speed."), .effect = EFFECT_SPEED_DOWN_2, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -4523,13 +4526,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Feint Attack"), .description = sFeintDescription, .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = B_UPDATED_MOVE_DATA >= GEN_4, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_SMART, @@ -4544,14 +4547,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Demands a kiss with a cute\n" "look. May cause confusion."), .effect = EFFECT_CONFUSE, - .type = B_UPDATED_MOVE_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = B_UPDATED_MOVE_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -4566,16 +4569,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Maximizes Attack while\n" "sacrificing HP."), .effect = EFFECT_BELLY_DRUM, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -4590,13 +4593,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sludge is hurled to inflict\n" "damage. May also poison."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, @@ -4615,13 +4618,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hurls mud in the foe's face\n" "to reduce its accuracy."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 20, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ACC_MINUS_1, .chance = 100, @@ -4639,13 +4642,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fires a lump of ink to\n" "damage and cut accuracy."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_WATER, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ACC_MINUS_1, @@ -4664,18 +4667,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sets spikes that hurt a \n" "foe switching in."), .effect = EFFECT_SPIKES, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GROUND, .accuracy = 0, - .target = MOVE_TARGET_OPPONENTS_FIELD, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_OPPONENTS_FIELD, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, - .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .forcePressure = TRUE, .mirrorMoveBanned = TRUE, + .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -4690,13 +4693,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Powerful and sure to cause\n" "paralysis, but inaccurate."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_4 ? 120 : 100, + .type = TYPE_ELECTRIC, .accuracy = 50, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -4715,14 +4718,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Negates the foe's efforts\n" "to heighten evasiveness."), .effect = EFFECT_FORESIGHT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 0 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 40, - .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, @@ -4738,14 +4741,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "If the user faints, the foe\n" "is also made to faint."), .effect = EFFECT_DESTINY_BOND, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GHOST, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 5, - .zMove = { .effect = Z_EFFECT_FOLLOW_ME }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_FOLLOW_ME }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -4765,18 +4768,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Any Pokémon hearing this\n" "song faints in 3 turns."), .effect = EFFECT_PERISH_SONG, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 5, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, - .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .mirrorMoveBanned = TRUE, + .soundMove = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -4790,13 +4793,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A chilling attack that\n" "lowers the foe's Speed."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 55, + .type = TYPE_ICE, .accuracy = 95, - .target = MOVE_TARGET_BOTH, .pp = 15, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, @@ -4815,14 +4818,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Evades attack, but may fail\n" "if used in succession."), .effect = EFFECT_PROTECT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 5, - .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, + .target = MOVE_TARGET_USER, .priority = B_UPDATED_MOVE_DATA >= GEN_5 ? 4 : 3, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -4841,13 +4844,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes the foe with a bone\n" "in hand 2 to 5 times."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 25, + .type = TYPE_GROUND, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 80, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = COMBO_STARTER_BONE_RUSH, @@ -4861,14 +4864,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Locks on to the foe to\n" "ensure the next move hits."), .effect = EFFECT_LOCK_ON, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = COMBO_STARTER_LOCK_ON, @@ -4882,13 +4885,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A rampage of 2 to 3 turns\n" "that confuses the user."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_4 ? 120 : 90, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_RANDOM, .pp = B_UPDATED_MOVE_DATA >= GEN_5 ? 10 : 15, + .target = MOVE_TARGET_RANDOM, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .instructBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -4908,17 +4911,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Causes a sandstorm that\n" "rages for several turns."), .effect = EFFECT_SANDSTORM, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ROCK, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, - .windMove = TRUE, .mirrorMoveBanned = TRUE, + .windMove = TRUE, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = COMBO_STARTER_SANDSTORM, @@ -4932,13 +4935,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that steals half\n" "the damage inflicted."), .effect = EFFECT_ABSORB, + .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 75 : 60, .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, - .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 75 : 60, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_4 ? 10 : 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), .healingMove = B_HEAL_BLOCKING >= GEN_6, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, @@ -4954,14 +4957,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Endures any attack for\n" "1 turn, leaving at least 1HP."), .effect = EFFECT_ENDURE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = B_UPDATED_MOVE_DATA >= GEN_5 ? 4 : 3, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -4980,14 +4983,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Charms the foe and sharply\n" "reduces its Attack."), .effect = EFFECT_ATTACK_DOWN_2, - .type = B_UPDATED_MOVE_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = B_UPDATED_MOVE_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -5002,13 +5005,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack lasting 5 turns\n" "with rising intensity."), .effect = EFFECT_ROLLOUT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 30, + .type = TYPE_ROCK, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .instructBanned = TRUE, .parentalBondBanned = TRUE, @@ -5023,13 +5026,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("False Swipe"), .description = sFalseSwipeDescription, .effect = EFFECT_FALSE_SWIPE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 40, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -5044,14 +5047,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Confuses the foe, but also\n" "sharply raises Attack."), .effect = EFFECT_SWAGGER, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_7 ? 85 : 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -5066,17 +5069,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Recovers up to half the\n" "user's maximum HP."), .effect = EFFECT_SOFTBOILED, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .healingMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -5091,13 +5094,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An electrified tackle that\n" "may paralyze the foe."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -5115,9 +5118,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "An attack that intensifies\n" "on each successive hit."), - .effect = EFFECT_FURY_CUTTER, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, #if B_UPDATED_MOVE_DATA >= GEN_6 .power = 40, #elif B_UPDATED_MOVE_DATA >= GEN_5 @@ -5125,10 +5125,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .power = 10, #endif + .effect = EFFECT_FURY_CUTTER, + .type = TYPE_BUG, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, @@ -5144,13 +5147,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes the foe with hard\n" "wings spread wide."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_STEEL, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_PLUS_1, @@ -5170,14 +5173,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fixes the foe with a mean\n" "look that prevents escape."), .effect = EFFECT_MEAN_LOOK, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 5, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .ignoresProtect = (B_UPDATED_MOVE_FLAGS >= GEN_6) || (B_UPDATED_MOVE_FLAGS <= GEN_3), .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, @@ -5193,14 +5196,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the opposite gender\n" "less likely to attack."), .effect = EFFECT_ATTRACT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .magicCoatAffected = TRUE, .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, @@ -5216,23 +5219,23 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Uses an available move\n" "randomly while asleep."), .effect = EFFECT_SLEEP_TALK, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_DEPENDS, .pp = 10, - .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, + .target = MOVE_TARGET_DEPENDS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, - .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .mimicBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -5246,19 +5249,19 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Chimes soothingly to heal\n" "all status abnormalities."), .effect = EFFECT_HEAL_BELL, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER | MOVE_TARGET_ALLY, .pp = 5, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_USER | MOVE_TARGET_ALLY, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .snatchAffected = TRUE, - .soundMove = B_UPDATED_MOVE_FLAGS != GEN_5, + .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, + .soundMove = B_UPDATED_MOVE_FLAGS != GEN_5, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = COMBO_STARTER_HEAL_BELL, @@ -5272,13 +5275,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that increases\n" "in power with friendship."), .effect = EFFECT_RETURN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_EXCITE_AUDIENCE_IN_ANY_CONTEST, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -5293,13 +5296,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A gift in the form of a\n" "bomb. May restore HP."), .effect = EFFECT_PRESENT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -5314,13 +5317,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that is stronger\n" "if the Trainer is disliked."), .effect = EFFECT_FRUSTRATION, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_EXCITE_AUDIENCE_IN_ANY_CONTEST, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -5335,16 +5338,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A mystical force prevents\n" "all status problems."), .effect = EFFECT_SAFEGUARD, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 25, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -5359,14 +5362,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Adds the user and foe's HP,\n" "then shares them equally."), .effect = EFFECT_PAIN_SPLIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -5380,13 +5383,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A mystical fire attack that\n" "may inflict a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_FIRE, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .thawsUser = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -5405,13 +5408,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A ground-shaking attack\n" "of random intensity."), .effect = EFFECT_MAGNITUDE, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 30, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .damagesUnderground = TRUE, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED, @@ -5427,13 +5430,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Powerful and sure to cause\n" "confusion, but inaccurate."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_FIGHTING, .accuracy = 50, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -5453,13 +5456,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A brutal ramming attack\n" "using out-thrust horns."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_BUG, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_COOL, @@ -5474,13 +5477,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes the foe with an\n" "incredible blast of breath."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresKingsRock = B_UPDATED_MOVE_FLAGS < GEN_3, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -5499,14 +5502,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Switches out the user while\n" "keeping effects in play."), .effect = EFFECT_BATON_PASS, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 40, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, @@ -5522,17 +5525,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the foe repeat its\n" "last move over 2 to 6 turns."), .effect = EFFECT_ENCORE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, - .ignoresSubstitute = TRUE, .encoreBanned = TRUE, + .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -5546,13 +5549,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts bad damage if used\n" "on a foe switching out."), .effect = EFFECT_PURSUIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresKingsRock = (B_UPDATED_MOVE_FLAGS == GEN_3 || B_UPDATED_MOVE_FLAGS == GEN_4), .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, @@ -5568,13 +5571,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Spins the body at high\n" "speed to strike the foe."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 50 : 20, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 40, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RAPIDSPIN, @@ -5601,14 +5604,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Allures the foe to reduce\n" "evasiveness."), .effect = B_UPDATED_MOVE_DATA >= GEN_6 ? EFFECT_EVASION_DOWN_2 : EFFECT_EVASION_DOWN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 20, - .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -5623,13 +5626,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a rock-hard\n" "tail. May lower Defense."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_STEEL, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_MINUS_1, @@ -5648,13 +5651,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A claw attack that may\n" "raise the user's Attack."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_STEEL, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 35, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ATK_PLUS_1, @@ -5674,13 +5677,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the user's move last,\n" "but it never misses."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = -1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER, .contestCategory = CONTEST_CATEGORY_COOL, @@ -5695,17 +5698,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Restores HP. The amount\n" "varies with the weather."), .effect = EFFECT_MORNING_SUN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 5, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .healingMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -5720,17 +5723,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Restores HP. The amount\n" "varies with the weather."), .effect = EFFECT_SYNTHESIS, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 5, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, - .healingMove = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .healingMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING, .contestCategory = CONTEST_CATEGORY_SMART, @@ -5745,17 +5748,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Restores HP. The amount\n" "varies with the weather."), .effect = EFFECT_MOONLIGHT, - .type = B_UPDATED_MOVE_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = B_UPDATED_MOVE_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 5, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .healingMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -5769,14 +5772,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "The effectiveness varies\n" "with the user."), + .power = B_HIDDEN_POWER_DMG >= GEN_6 ? 60 : 1, .effect = EFFECT_HIDDEN_POWER, .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, - .power = B_HIDDEN_POWER_DMG >= GEN_6 ? 60 : 1, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -5790,14 +5793,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A double-chopping attack.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_FIGHTING, .accuracy = 80, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_COOL, @@ -5812,15 +5815,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Whips up a vicious twister\n" "to tear at the foe."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 20, + .target = MOVE_TARGET_BOTH, .priority = 0, - .windMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .damagesAirborneDoubleDamage = TRUE, + .windMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, .chance = 20, @@ -5838,14 +5841,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Boosts the power of Water-\n" "type moves for 5 turns."), .effect = EFFECT_RAIN_DANCE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 5, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED, @@ -5861,14 +5864,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Boosts the power of Fire-\n" "type moves for 5 turns."), .effect = EFFECT_SUNNY_DAY, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIRE, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 5, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED, @@ -5888,16 +5891,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "May lower Sp. Def."), #endif .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, - .additionalEffects = ADDITIONAL_EFFECTS({ + .additionalEffects = ADDITIONAL_EFFECTS({ #if B_UPDATED_MOVE_DATA >= GEN_4 .moveEffect = MOVE_EFFECT_DEF_MINUS_1, #else @@ -5918,13 +5921,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Counters the foe's special\n" "attack at double the power."), .effect = EFFECT_MIRROR_COAT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_DEPENDS, .pp = 20, + .target = MOVE_TARGET_DEPENDS, .priority = -5, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS >= GEN_4, .meFirstBanned = TRUE, .metronomeBanned = TRUE, @@ -5942,18 +5945,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Copies the foe's effect(s)\n" "and gives to the user."), .effect = EFFECT_PSYCH_UP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .ignoresProtect = TRUE, - .snatchAffected = B_UPDATED_MOVE_FLAGS < GEN_5, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, + .snatchAffected = B_UPDATED_MOVE_FLAGS < GEN_5, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -5967,13 +5970,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An extremely fast and\n" "powerful attack."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = B_UPDATED_MOVE_DATA >= GEN_5 ? 2 : 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_COOL, @@ -5988,13 +5991,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that may raise\n" "all stats."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_ROCK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .makesContact = B_UPDATED_MOVE_DATA < GEN_4, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ALL_STATS_UP, @@ -6014,13 +6017,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hurls a black blob that may\n" "lower the foe's Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1, @@ -6038,9 +6041,6 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Heightens inner power to\n" "strike 2 turns later."), - .effect = EFFECT_FUTURE_SIGHT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, #if B_UPDATED_MOVE_DATA >= GEN_6 .power = 120, #elif B_UPDATED_MOVE_DATA >= GEN_5 @@ -6048,10 +6048,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else .power = 80, #endif + .effect = EFFECT_FUTURE_SIGHT, + .type = TYPE_PSYCHIC, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 90, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_5 ? 10 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, @@ -6067,13 +6070,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A rock-crushing attack\n" "that may lower Defense."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_4 ? 40 : 20, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_MINUS_1, @@ -6092,13 +6095,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Traps and hurts the foe in\n" "a whirlpool for "BINDING_TURNS" turns."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 35 : 15, + .type = TYPE_WATER, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 70, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .damagesUnderwater = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_WRAP, @@ -6116,13 +6119,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Summons party Pokémon to\n" "join in the attack."), .effect = EFFECT_BEAT_UP, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 1 : 10, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -6135,15 +6138,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "A 1st-turn, 1st-strike move\n" "that causes flinching."), + .priority = B_UPDATED_MOVE_DATA >= GEN_5 ? 3 : 1, + .makesContact = B_UPDATED_MOVE_DATA >= GEN_4, .effect = EFFECT_FIRST_TURN_ONLY, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .priority = B_UPDATED_MOVE_DATA >= GEN_5 ? 3 : 1, - .makesContact = B_UPDATED_MOVE_DATA >= GEN_4, + .target = MOVE_TARGET_SELECTED, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, .chance = 100, @@ -6165,15 +6168,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #endif "turns and prevents sleep."), .effect = EFFECT_UPROAR, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 50, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_RANDOM, .pp = 10, + .target = MOVE_TARGET_RANDOM, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -6193,16 +6196,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Charges up power for up to\n" "3 turns."), .effect = EFFECT_STOCKPILE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_4 ? 20 : 10, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -6217,13 +6220,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Releases stockpiled power\n" "(the more the better)."), .effect = EFFECT_SPIT_UP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_4 ? 1 : 100, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -6238,17 +6241,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Absorbs stockpiled power\n" "and restores HP."), .effect = EFFECT_SWALLOW, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .healingMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -6263,13 +6266,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Exhales a hot breath on the\n" "foe. May inflict a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 95 : 100, + .type = TYPE_FIRE, .accuracy = 90, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -6288,14 +6291,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Summons a hailstorm that\n" "strikes every turn."), .effect = EFFECT_HAIL, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ICE, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, @@ -6311,14 +6314,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Torments the foe and stops\n" "successive use of a move."), .effect = EFFECT_TORMENT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -6333,14 +6336,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Confuses the foe, but\n" "raises its Sp. Atk."), .effect = EFFECT_FLATTER, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -6355,14 +6358,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts a burn on the foe\n" "with intense fire."), .effect = EFFECT_WILL_O_WISP, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIRE, .accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 85 : 75, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -6377,14 +6380,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user faints and lowers\n" "the foe's abilities."), .effect = EFFECT_MEMENTO, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESTORE_REPLACEMENT_HP }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESTORE_REPLACEMENT_HP }, .contestEffect = CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -6398,13 +6401,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Boosts Attack when burned,\n" "paralyzed, or poisoned."), .effect = EFFECT_FACADE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -6419,22 +6422,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A powerful loyalty attack.\n" "The user flinches if hit."), .effect = EFFECT_FOCUS_PUNCH, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 150, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = -3, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .punchingMove = TRUE, .mirrorMoveBanned = TRUE, + .punchingMove = TRUE, .meFirstBanned = TRUE, + .sleepTalkBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, - .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -6448,15 +6451,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Powerful against paralyzed\n" "foes, but also heals them."), .effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 70 : 60, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .makesContact = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = STATUS1_PARALYSIS, + .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_REMOVE_STATUS, }), @@ -6473,14 +6476,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Draws attention to make\n" "foes attack only the user."), .effect = EFFECT_FOLLOW_ME, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = B_UPDATED_MOVE_DATA >= GEN_6 ? 2 : 3, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -6499,20 +6502,20 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The type of attack varies\n" "depending on the location."), .effect = EFFECT_NATURE_POWER, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 1, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_DEPENDS, .pp = 20, + .target = MOVE_TARGET_DEPENDS, .priority = 0, - .mimicBanned = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_4, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, + .mimicBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -6526,16 +6529,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Charges power to boost the\n" "electric move used next."), .effect = EFFECT_CHARGE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -6550,16 +6553,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Taunts the foe into only\n" "using attack moves."), .effect = EFFECT_TAUNT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .ignoresSubstitute = TRUE, + .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = COMBO_STARTER_TAUNT, @@ -6573,14 +6576,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Boosts the power of the\n" "recipient's moves."), .effect = EFFECT_HELPING_HAND, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = B_UPDATED_MOVE_DATA >= GEN_4 ? MOVE_TARGET_ALLY : MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = B_UPDATED_MOVE_DATA >= GEN_4 ? MOVE_TARGET_ALLY : MOVE_TARGET_USER, .priority = 5, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -6600,14 +6603,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Tricks the foe into trading\n" "held items."), .effect = EFFECT_TRICK, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, .metronomeBanned = TRUE, .copycatBanned = TRUE, .assistBanned = TRUE, @@ -6624,14 +6627,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Mimics the target and\n" "copies its special ability."), .effect = EFFECT_ROLE_PLAY, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -6648,17 +6651,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A wish that restores HP.\n" "It takes time to work."), .effect = EFFECT_WISH, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .healingMove = TRUE, + .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -6673,22 +6676,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks randomly with one\n" "of the partner's moves."), .effect = EFFECT_ASSIST, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_DEPENDS, .pp = 20, + .target = MOVE_TARGET_DEPENDS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, - .mimicBanned = TRUE, .metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_4, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, + .mimicBanned = TRUE, .contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -6702,16 +6705,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lays roots that restore HP.\n" "The user can't switch out."), .effect = EFFECT_INGRAIN, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, @@ -6727,13 +6730,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Boosts strength sharply,\n" "but lowers abilities."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ATK_DEF_DOWN, @@ -6752,14 +6755,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Reflects special effects\n" "back to the attacker."), .effect = EFFECT_MAGIC_COAT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_DEPENDS, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, + .target = MOVE_TARGET_DEPENDS, .priority = 4, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, @@ -6775,16 +6778,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Recycles a used item for\n" "one more use."), .effect = EFFECT_RECYCLE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_SMART, @@ -6797,13 +6800,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Revenge"), .description = sRevengeDescription, .effect = EFFECT_REVENGE, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = -4, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -6818,13 +6821,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Destroys barriers such as\n" "REFLECT and causes damage."), .effect = EFFECT_BRICK_BREAK, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, .contestCategory = CONTEST_CATEGORY_COOL, @@ -6839,14 +6842,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lulls the foe into yawning,\n" "then sleeping next turn."), .effect = EFFECT_YAWN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -6861,13 +6864,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Knocks down the foe's held\n" "item to prevent its use."), .effect = EFFECT_KNOCK_OFF, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 65 : 20, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_KNOCK_OFF, @@ -6885,13 +6888,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Gains power if the user's HP\n" "is lower than the foe's HP."), .effect = EFFECT_ENDEAVOR, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .parentalBondBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, @@ -6907,13 +6910,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The higher the user's HP,\n" "the more damage caused."), .effect = EFFECT_ERUPTION, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -6927,14 +6930,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user swaps special\n" "abilities with the target."), .effect = EFFECT_SKILL_SWAP, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES, .contestCategory = CONTEST_CATEGORY_SMART, @@ -6949,16 +6952,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Prevents foes from using\n" "moves known by the user."), .effect = EFFECT_IMPRISON, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .forcePressure = TRUE, .mirrorMoveBanned = TRUE, @@ -6975,16 +6978,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Heals poisoning, paralysis,\n" "or a burn."), .effect = EFFECT_REFRESH, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -6999,14 +7002,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "If the user faints, deletes\n" "all PP of foe's last move."), .effect = EFFECT_GRUDGE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 5, - .zMove = { .effect = Z_EFFECT_FOLLOW_ME }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_FOLLOW_ME }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -7023,14 +7026,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Steals the effects of the\n" "move the target uses next."), .effect = EFFECT_SNATCH, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_DEPENDS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, + .target = MOVE_TARGET_DEPENDS, .priority = 4, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, .ignoresSubstitute = TRUE, .forcePressure = TRUE, .metronomeBanned = TRUE, @@ -7049,13 +7052,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack with effects\n" "that vary by location."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SECRET_POWER, .chance = 30, @@ -7073,17 +7076,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Dives underwater the first\n" "turn and strikes next turn."), .effect = EFFECT_SEMI_INVULNERABLE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_4 ? 80 : 60, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .skyBattleBanned = TRUE, .argument = TWO_TURN_ARG(STRINGID_PKMNHIDUNDERWATER, COMPRESS_BITS(STATUS3_UNDERWATER)), .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, @@ -7099,13 +7102,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Straight-arm punches that\n" "strike the foe 2 to 5 times."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 15, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -7120,16 +7123,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Alters the Pokémon's type\n" "depending on the location."), .effect = EFFECT_CAMOUFLAGE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_SMART, @@ -7144,16 +7147,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Flashes a light that sharply\n" "raises Sp. Atk."), .effect = B_UPDATED_MOVE_DATA >= GEN_5 ? EFFECT_SPECIAL_ATTACK_UP_3 : EFFECT_SPECIAL_ATTACK_UP_2, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -7168,13 +7171,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a burst of\n" "light. May lower Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = (B_UPDATED_MOVE_DATA >= GEN_9) ? 95 : 70, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1, .chance = 50, @@ -7192,13 +7195,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a flurry of\n" "down. May lower Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = (B_UPDATED_MOVE_DATA >= GEN_9) ? 95 : 70, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1, @@ -7217,14 +7220,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Envelops the foe with down\n" "to sharply reduce Attack."), .effect = EFFECT_ATTACK_DOWN_2, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .danceMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, @@ -7240,14 +7243,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Confuses all Pokémon on\n" "the scene."), .effect = EFFECT_TEETER_DANCE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .danceMove = TRUE, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_4, .contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN, @@ -7263,14 +7266,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A kick with a high critical-\n" "hit ratio. May cause a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_FIRE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -7289,14 +7292,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Covers the user in mud to\n" "raise electrical resistance."), .effect = EFFECT_MUD_SPORT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .skyBattleBanned = TRUE, @@ -7313,13 +7316,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A 5-turn attack that gains\n" "power on successive hits."), .effect = EFFECT_ROLLOUT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 30, + .type = TYPE_ICE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ballisticMove = TRUE, .instructBanned = TRUE, @@ -7337,13 +7340,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with thorny arms.\n" "May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS < GEN_4, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -7363,17 +7366,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slacks off and restores\n" "half the maximum HP."), .effect = EFFECT_RESTORE_HP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .healingMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -7388,13 +7391,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A loud attack that uses\n" "sound waves to injure."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, @@ -7410,13 +7413,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A sharp-fanged attack.\n" "May badly poison the foe."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -7436,13 +7439,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Tears at the foe with sharp\n" "claws. May lower Defense."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_NORMAL, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_MINUS_1, @@ -7461,13 +7464,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Powerful, but leaves the\n" "user immobile the next turn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_FIRE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RECHARGE, .self = TRUE, @@ -7485,13 +7488,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Powerful, but leaves the\n" "user immobile the next turn."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_WATER, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RECHARGE, .self = TRUE, @@ -7509,13 +7512,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fires a meteor-like punch.\n" "May raise Attack."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 100, + .type = TYPE_STEEL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -7536,13 +7539,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that may shock\n" "the foe into flinching."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 30, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS < GEN_4, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -7562,13 +7565,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The move's type and power\n" "change with the weather."), .effect = EFFECT_WEATHER_BALL, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 50, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_SMART, @@ -7583,16 +7586,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Heals all status problems\n" "with a soothing scent."), .effect = EFFECT_HEAL_BELL, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_USER | MOVE_TARGET_ALLY, .pp = 5, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_USER | MOVE_TARGET_ALLY, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_SMART, @@ -7607,14 +7610,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Feigns crying to sharply\n" "lower the foe's Sp. Def."), .effect = EFFECT_SPECIAL_DEFENSE_DOWN_2, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_SMART, @@ -7629,14 +7632,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hacks with razorlike wind.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 55, + .type = TYPE_FLYING, .accuracy = 95, - .target = MOVE_TARGET_BOTH, + .criticalHitStage = 1, .pp = 25, + .target = MOVE_TARGET_BOTH, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, @@ -7652,13 +7655,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Allows a full-power attack,\n" "but sharply lowers Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 130 : 140, + .type = TYPE_FIRE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .makesContact = B_UPDATED_MOVE_DATA < GEN_4, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_TWO_DOWN, @@ -7677,16 +7680,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Negates the foe's efforts\n" "to heighten evasiveness."), .effect = EFFECT_FORESIGHT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 40, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .ignoresSubstitute = TRUE, + .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -7700,13 +7703,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stops the foe from moving\n" "with rocks and cuts Speed."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 50, + .type = TYPE_ROCK, .accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 95 : 80, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 15 : 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, .chance = 100, @@ -7724,13 +7727,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A powdery attack that may\n" "raise abilities."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = B_EXTRAPOLATED_MOVE_FLAGS, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ALL_STATS_UP, @@ -7750,17 +7753,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Emits a horrible screech\n" "that sharply lowers Sp. Def."), .effect = EFFECT_SPECIAL_DEFENSE_DOWN_2, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_STEEL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 40, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .magicCoatAffected = TRUE, .soundMove = TRUE, - .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = COMBO_STARTER_METAL_SOUND, @@ -7774,17 +7777,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lulls the foe into sleep\n" "with a pleasant melody."), .effect = EFFECT_SLEEP, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 55, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .magicCoatAffected = TRUE, .soundMove = TRUE, - .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -7798,14 +7801,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the foe laugh to\n" "lower Attack and Defense."), .effect = EFFECT_TICKLE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -7820,16 +7823,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises Defense and Sp. Def\n" "with a mystic power."), .effect = EFFECT_COSMIC_POWER, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -7844,13 +7847,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Inflicts more damage if the\n" "user's HP is high."), .effect = EFFECT_ERUPTION, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -7864,13 +7867,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A strange beam attack that\n" "may confuse the foe."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 75, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CONFUSION, .chance = 10, @@ -7888,13 +7891,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An unavoidable punch that\n" "is thrown from shadows."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_GHOST, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, @@ -7910,13 +7913,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a peculiar\n" "power. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 30, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS < GEN_4, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -7935,13 +7938,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An uppercut thrown as if\n" "leaping into the sky."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_FIGHTING, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .damagesAirborne = TRUE, @@ -7958,13 +7961,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Traps and hurts the foe in\n" "quicksand for "BINDING_TURNS" turns."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 35 : 15, + .type = TYPE_GROUND, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 70, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_WRAP, }), @@ -7981,13 +7984,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A chilling attack that\n" "causes fainting if it hits."), .effect = EFFECT_OHKO, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_ICE, .accuracy = 30, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -8001,13 +8004,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with muddy water.\n" "May lower accuracy."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95, + .type = TYPE_WATER, .accuracy = 85, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .skyBattleBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ACC_MINUS_1, @@ -8026,13 +8029,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Shoots 2 to 5 seeds in a row\n" "to strike the foe."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 25 : 10, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -8047,13 +8050,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An extremely speedy and\n" "unavoidable attack."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_FLYING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, @@ -8069,13 +8072,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks the foe by firing\n" "2 to 5 icicles in a row."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 25 : 10, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -8089,16 +8092,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hardens the body's surface\n" "to sharply raise Defense."), .effect = EFFECT_DEFENSE_UP_2, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 15, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -8113,14 +8116,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Blocks the foe's way to\n" "prevent escape."), .effect = EFFECT_MEAN_LOOK, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 5, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = (B_UPDATED_MOVE_FLAGS >= GEN_6) || (B_UPDATED_MOVE_FLAGS <= GEN_3), .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, @@ -8135,19 +8138,19 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Howls to raise the spirit\n" "and boosts Attack."), + .power = 0, .effect = B_UPDATED_MOVE_DATA >= GEN_8 ? EFFECT_ATTACK_UP_USER_ALLY : EFFECT_ATTACK_UP, .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, - .power = 0, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 40, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .snatchAffected = TRUE, - .soundMove = B_UPDATED_MOVE_FLAGS >= GEN_8, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, + .soundMove = B_UPDATED_MOVE_FLAGS >= GEN_8, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -8161,13 +8164,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slashes the foe with sharp\n" "claws."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_COOL, @@ -8182,13 +8185,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Powerful, but leaves the\n" "user immobile the next turn."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_GRASS, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .skyBattleBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RECHARGE, @@ -8207,16 +8210,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Bulks up the body to boost\n" "both Attack and Defense."), .effect = EFFECT_BULK_UP, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -8231,18 +8234,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Bounces up, then down the\n" "next turn. May paralyze."), .effect = EFFECT_SEMI_INVULNERABLE, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_FLYING, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .gravityBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .argument = TWO_TURN_ARG(STRINGID_PKMNSPRANGUP, COMPRESS_BITS(STATUS3_ON_AIR)), .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -8261,13 +8264,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hurls mud at the foe and\n" "reduces Speed."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 55, + .type = TYPE_GROUND, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, .chance = 100, @@ -8285,14 +8288,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Has a high critical-hit\n" "ratio. May also poison."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, @@ -8311,13 +8314,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Cutely begs to obtain an\n" "item held by the foe."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 60 : 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 25 : 40, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = B_UPDATED_MOVE_DATA >= GEN_4, .meFirstBanned = TRUE, .metronomeBanned = TRUE, @@ -8339,14 +8342,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A life-risking tackle that\n" "slightly hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .recoil = 33, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 33, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, #if B_UPDATED_MOVE_DATA >= GEN_4 .additionalEffects = ADDITIONAL_EFFECTS({ @@ -8367,13 +8370,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a strange leaf\n" "that cannot be evaded."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -8387,14 +8390,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user becomes soaked to\n" "raise resistance to fire."), .effect = EFFECT_WATER_SPORT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .skyBattleBanned = TRUE, @@ -8411,16 +8414,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises Sp. Atk and Sp. Def\n" "by focusing the mind."), .effect = EFFECT_CALM_MIND, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -8435,14 +8438,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slashes with a sharp leaf.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_4 ? 90 : 70, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, @@ -8458,17 +8461,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A mystical dance that ups\n" "Attack and Speed."), .effect = EFFECT_DRAGON_DANCE, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DRAGON, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .danceMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -8483,13 +8486,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hurls boulders at the foe\n" "2 to 5 times in a row."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 25, + .type = TYPE_ROCK, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 80, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ballisticMove = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -8504,13 +8507,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A fast and unavoidable\n" "electric attack."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -8524,13 +8527,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with ultrasonic\n" "waves. May confuse the foe."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .pulseMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CONFUSION, @@ -8549,13 +8552,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Summons strong sunlight to\n" "attack 2 turns later."), .effect = EFFECT_FUTURE_SIGHT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 140 : 120, + .type = TYPE_STEEL, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 85, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, @@ -8571,13 +8574,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Allows a full-power attack,\n" "but sharply lowers Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 140, + .type = TYPE_PSYCHIC, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_TWO_DOWN, .self = TRUE, @@ -8595,17 +8598,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Restores the user's HP by\n" "half of its max HP."), .effect = EFFECT_ROOST, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FLYING, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .healingMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, @@ -8620,14 +8623,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Gravity is intensified\n" "negating levitation."), .effect = EFFECT_GRAVITY, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 5, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .skyBattleBanned = TRUE, @@ -8644,16 +8647,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Negate evasiveness and\n" "Dark-type's immunities."), .effect = EFFECT_MIRACLE_EYE, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 40, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .ignoresSubstitute = TRUE, + .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -8667,15 +8670,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Powerful against sleeping\n" "foes, but also heals them."), .effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 70 : 60, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .makesContact = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = STATUS1_SLEEP, + .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_REMOVE_STATUS, }), @@ -8692,13 +8695,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A swinging fist attack\n" "that also lowers Speed."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_FIGHTING, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -8718,13 +8721,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A high-speed spin that does\n" "more damage to faster foes."), .effect = EFFECT_GYRO_BALL, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, @@ -8738,16 +8741,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Healing Wish"), .description = sHealingWishDescription, .effect = EFFECT_HEALING_WISH, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .category = DAMAGE_CATEGORY_STATUS, .healingMove = TRUE, + .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -8762,13 +8765,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Does double damage to foes\n" "with half HP."), .effect = EFFECT_BRINE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -8782,13 +8785,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The effectiveness varies\n" "with the held Berry."), .effect = EFFECT_NATURAL_GIFT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -8802,13 +8805,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that hits foes\n" "using moves like Protect."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 30 : 50, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 2, + .category = DAMAGE_CATEGORY_PHYSICAL, .ignoresProtect = TRUE, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_6, .metronomeBanned = TRUE, @@ -8828,13 +8831,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Pluck"), .description = sPluckDescription, .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BUG_BITE, @@ -8852,17 +8855,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Whips up a turbulent breeze\n" "that raises Speed."), .effect = EFFECT_TAILWIND, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FLYING, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 15 : 30, - .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, .snatchAffected = TRUE, .windMove = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_SMART, @@ -8877,17 +8880,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user sharply raises\n" "one of its stats."), .effect = EFFECT_ACUPRESSURE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER | MOVE_TARGET_ALLY, .pp = 30, - .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, + .target = MOVE_TARGET_USER | MOVE_TARGET_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, .ignoresProtect = TRUE, - .snatchAffected = B_UPDATED_MOVE_FLAGS < GEN_5, .mirrorMoveBanned = TRUE, + .snatchAffected = B_UPDATED_MOVE_FLAGS < GEN_5, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -8901,13 +8904,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Retaliates any hit with\n" "greater power."), .effect = EFFECT_METAL_BURST, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_DEPENDS, .pp = 10, + .target = MOVE_TARGET_DEPENDS, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .meFirstBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -8920,13 +8923,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("U-turn"), .description = sUTurnDescription, .effect = EFFECT_HIT_ESCAPE, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -8939,13 +8942,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Close Combat"), .description = sCloseCombatDescription, .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_SPDEF_DOWN, @@ -8964,13 +8967,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that gains power\n" "if the user moves last."), .effect = EFFECT_PAYBACK, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -8985,13 +8988,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that gains power\n" "if the foe has been hurt."), .effect = EFFECT_ASSURANCE, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 50, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -9006,14 +9009,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Prevents the foe from\n" "using any items."), .effect = EFFECT_EMBARGO, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -9028,13 +9031,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The effectiveness varies\n" "with the held item."), .effect = EFFECT_FLING, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .parentalBondBanned = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -9049,14 +9052,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Transfers status problems\n" "to the foe."), .effect = EFFECT_PSYCHO_SHIFT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 100 : 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPATK_UP_2 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_2 }, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -9070,13 +9073,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The less PP the move has\n" "the more damage it does."), .effect = EFFECT_TRUMP_CARD, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_COOL, @@ -9091,14 +9094,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Prevents the foe from\n" "recovering any HP."), .effect = EFFECT_HEAL_BLOCK, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPATK_UP_2 }, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_2 }, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -9111,13 +9114,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Wring Out"), .description = sWringOutDescription, .effect = EFFECT_WRING_OUT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON, .contestCategory = CONTEST_CATEGORY_SMART, @@ -9132,16 +9135,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user swaps its Attack\n" "and Defense stats."), .effect = EFFECT_POWER_TRICK, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, .contestCategory = CONTEST_CATEGORY_COOL, @@ -9156,14 +9159,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stomach acid suppresses\n" "the foe's ability."), .effect = EFFECT_GASTRO_ACID, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -9178,16 +9181,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Prevents the foe from\n" "landing critical hits."), .effect = EFFECT_LUCKY_CHANT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -9202,24 +9205,24 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Executes the foe's attack\n" "with greater power."), .effect = EFFECT_ME_FIRST, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, .ignoresSubstitute = TRUE, + .metronomeBanned = TRUE, .mirrorMoveBanned = TRUE, .meFirstBanned = TRUE, - .mimicBanned = TRUE, - .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, + .mimicBanned = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -9233,23 +9236,23 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user mimics the last\n" "move used by a foe."), .effect = EFFECT_COPYCAT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_DEPENDS, .pp = 20, - .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, + .target = MOVE_TARGET_DEPENDS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, - .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, + .mimicBanned = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONE, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -9263,14 +9266,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swaps changes to Attack\n" "and Sp. Atk with the foe."), .effect = EFFECT_POWER_SWAP, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -9285,14 +9288,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swaps changes to Defense\n" "and Sp. Def with the foe."), .effect = EFFECT_GUARD_SWAP, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -9307,13 +9310,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Does more damage if the\n" "foe has powered up."), .effect = EFFECT_PUNISHMENT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_SMART, @@ -9328,13 +9331,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Can only be used if every\n" "other move has been used."), .effect = EFFECT_LAST_RESORT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 140 : 130, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -9349,14 +9352,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Plants a seed on the foe\n" "giving it Insomnia."), .effect = EFFECT_WORRY_SEED, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -9369,13 +9372,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Sucker Punch"), .description = sSuckerPunchDescription, .effect = EFFECT_SUCKER_PUNCH, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_7 ? 70 : 80, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_SMART, @@ -9390,18 +9393,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sets spikes that poison a\n" "foe switching in."), .effect = EFFECT_TOXIC_SPIKES, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 0, - .target = MOVE_TARGET_OPPONENTS_FIELD, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_OPPONENTS_FIELD, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, - .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .forcePressure = TRUE, .mirrorMoveBanned = TRUE, + .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -9416,14 +9419,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swaps any stat changes\n" "with the foe."), .effect = EFFECT_HEART_SWAP, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_BOOST_CRITS }, .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES, .contestCategory = CONTEST_CATEGORY_COOL, @@ -9438,16 +9441,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Forms a veil of water\n" "that restores HP."), .effect = EFFECT_AQUA_RING, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -9462,18 +9465,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user levitates with\n" "electromagnetism."), .effect = EFFECT_MAGNET_RISE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_EVSN_UP_1 }, .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, - .gravityBanned = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, + .gravityBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -9487,14 +9490,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A charge that may burn the\n" "foe. Also hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .recoil = 33, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 33, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .thawsUser = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -9514,13 +9517,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A shock wave attack that\n" "may paralyze the foe."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -9539,13 +9542,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with an aura blast\n" "that cannot be evaded."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 90, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .pulseMove = TRUE, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, @@ -9561,16 +9564,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Polishes the body to\n" "sharply raise Speed."), .effect = EFFECT_SPEED_UP_2, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ROCK, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -9585,13 +9588,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A stabbing attack that\n" "may poison the foe."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, @@ -9610,13 +9613,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a horrible\n" "aura. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .pulseMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -9635,14 +9638,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits as soon as possible.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, @@ -9658,13 +9661,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user swings its tail\n" "like a wave to attack."), .effect = EFFECT_HIT, + .power = 90, .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, - .power = 90, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -9679,13 +9682,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A barrage of hard seeds\n" "is fired at the foe."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_SMART, @@ -9700,13 +9703,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a blade of\n" "air. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 75, + .type = TYPE_FLYING, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 15 : 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .slicingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -9725,13 +9728,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slashes the foe with crossed\n" "scythes, claws, etc."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, @@ -9747,13 +9750,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A damaging sound wave that\n" "may lower Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -9773,13 +9776,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Generates a shock wave to\n" "damage the foe."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 85 : 90, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .pulseMove = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -9794,13 +9797,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Tackles the foe with menace.\n" "May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_DRAGON, .accuracy = 75, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS >= GEN_6, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -9820,13 +9823,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with rays of light\n" "that sparkle like diamonds."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 70, + .type = TYPE_ROCK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -9838,13 +9841,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Drain Punch"), .description = sMegaDrainDescription, .effect = EFFECT_ABSORB, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_5 ? 75 : 60, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_5 ? 10 : 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .healingMove = B_HEAL_BLOCKING >= GEN_6, @@ -9861,13 +9864,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Whirls its fists to send\n" "a wave that strikes first."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -9881,13 +9884,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks at full power.\n" "May lower Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 120, + .type = TYPE_FIGHTING, .accuracy = 70, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1, @@ -9906,13 +9909,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Draws power from nature to\n" "attack. May lower Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 80, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1, @@ -9931,14 +9934,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A low altitude charge that\n" "also hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .recoil = 33, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 33, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -9953,13 +9956,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the ground erupt with\n" "power. May lower Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .skyBattleBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1, @@ -9978,14 +9981,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swaps items with the foe\n" "faster than the eye can see."), .effect = EFFECT_TRICK, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, .metronomeBanned = TRUE, .copycatBanned = TRUE, .assistBanned = TRUE, @@ -10000,13 +10003,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Giga Impact"), .description = sHyperBeamDescription, .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 150, + .type = TYPE_NORMAL, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RECHARGE, @@ -10025,16 +10028,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Thinks bad thoughts to\n" "sharply boost Sp. Atk."), .effect = EFFECT_SPECIAL_ATTACK_UP_2, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -10049,13 +10052,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Punches as fast as a bul-\n" "let. It always hits first."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, @@ -10069,13 +10072,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Avalanche"), .description = sRevengeDescription, .effect = EFFECT_REVENGE, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = -4, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER, .contestCategory = CONTEST_CATEGORY_COOL, @@ -10090,13 +10093,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hurls a chunk of ice that\n" "always strike first."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -10110,14 +10113,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes with a shadow claw.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -10132,13 +10135,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "May cause flinching or\n" "leave the foe paralyzed."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_ELECTRIC, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -10162,13 +10165,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "May cause flinching or\n" "leave the foe frozen."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_ICE, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -10192,13 +10195,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "May cause flinching or\n" "leave the foe with a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_FIRE, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -10222,13 +10225,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Extends the user's shadow\n" "to strike first."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_SMART, @@ -10243,13 +10246,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Throws a blob of mud to\n" "damage and cut accuracy."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_GROUND, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ACC_MINUS_1, @@ -10268,14 +10271,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Tears with psychic blades.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_COOL, @@ -10290,13 +10293,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with a strong head-\n" "butt. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_PSYCHIC, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -10315,13 +10318,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Emits a flash of energy to\n" "damage and cut accuracy."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_STEEL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ACC_MINUS_1, .chance = 30, @@ -10339,13 +10342,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Releases a blast of light\n" "that may lower Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1, .chance = 10, @@ -10363,13 +10366,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A charging attack that may\n" "confuse the foe."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_NORMAL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CONFUSION, @@ -10388,14 +10391,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Removes obstacles and\n" "lowers evasion."), .effect = EFFECT_DEFOG, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FLYING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, //.ignoresSubstitute = TRUE, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, @@ -10411,14 +10414,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slower Pokémon get to move\n" "first for 5 turns."), .effect = EFFECT_TRICK_ROOM, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 5, - .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = -7, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ACC_UP_1 }, .ignoresProtect = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -10433,13 +10436,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Casts comets onto the foe.\n" "Harshly lowers the Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 130 : 140, + .type = TYPE_DRAGON, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_TWO_DOWN, .self = TRUE, @@ -10457,13 +10460,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Zaps the foes with electri-\n" "city. May paralyze them."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 15, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, .chance = 30, @@ -10479,13 +10482,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Lava Plume"), .description = sLavaPlumeDescription, .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 15, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, .chance = 30, @@ -10503,13 +10506,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Whips up a storm of leaves.\n" "Harshly lowers the Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 130 : 140, + .type = TYPE_GRASS, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_TWO_DOWN, .self = TRUE, @@ -10527,13 +10530,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Violently lashes the foe\n" "with vines or tentacles."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_GRASS, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -10546,13 +10549,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Rock Wrecker"), .description = sHyperBeamDescription, .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 150, + .type = TYPE_ROCK, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RECHARGE, @@ -10571,14 +10574,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A slash that may poison a\n" "foe and do critical damage."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -10598,13 +10601,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Shoots filthy garbage at\n" "the foe. May also poison."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_POISON, .accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 70, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, .chance = 30, @@ -10622,13 +10625,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slams the foe with a hard\n" "head. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -10647,13 +10650,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Launches a magnet that\n" "strikes without fail."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_COOL, @@ -10668,14 +10671,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stabs the foe with stones.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_ROCK, .accuracy = 80, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -10689,14 +10692,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the opposite gender\n" "sharply reduce its Sp. Atk."), .effect = EFFECT_CAPTIVATE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -10711,17 +10714,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sets floating stones that\n" "hurt a foe switching in."), .effect = EFFECT_STEALTH_ROCK, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ROCK, .accuracy = 0, - .target = MOVE_TARGET_OPPONENTS_FIELD, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_OPPONENTS_FIELD, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, .forcePressure = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -10736,13 +10739,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A snare attack that does\n" "more damage to heavier foes."), .effect = EFFECT_LOW_KICK, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .makesContact = TRUE, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, @@ -10758,22 +10761,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a sound wave\n" "that causes confusion."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 65 : 60, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_6, .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CONFUSION, #if B_UPDATED_MOVE_DATA >= GEN_6 @@ -10797,13 +10800,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The type varies with the\n" "kind of Plate held."), .effect = EFFECT_CHANGE_TYPE_ON_ITEM, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = HOLD_EFFECT_PLATE, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, .contestCategory = CONTEST_CATEGORY_SMART, @@ -10816,13 +10819,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Bug Bite"), .description = sPluckDescription, .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BUG_BITE, @@ -10840,13 +10843,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fires a beam of electricity.\n" "May raise Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 50, + .type = TYPE_ELECTRIC, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_PLUS_1, .self = TRUE, @@ -10865,14 +10868,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slams the body into a foe.\n" "The user gets hurt too."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .recoil = 33, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 33, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -10887,13 +10890,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes first by dashing\n" "at the foe at a high speed."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -10908,14 +10911,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Underlings pummel the foe.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = COMBO_STARTER_ATTACK_ORDER, @@ -10929,16 +10932,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises Defense and Sp. Def\n" "with a living shield."), .effect = EFFECT_COSMIC_POWER, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -10953,17 +10956,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user's underlings show\n" "up to heal half its max HP."), .effect = EFFECT_RESTORE_HP, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .healingMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_SMART, @@ -10978,14 +10981,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A life-risking headbutt that\n" "seriously hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 150, + .type = TYPE_ROCK, .accuracy = 80, - .target = MOVE_TARGET_SELECTED, + .recoil = 50, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 50, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -11000,15 +11003,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slams the foe with a tail\n" "etc. Strikes twice."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 35, + .type = TYPE_NORMAL, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 2, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .strikeCount = 2, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -11022,13 +11025,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Powerful, but leaves the\n" "user immobile the next turn."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_DRAGON, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RECHARGE, .self = TRUE, @@ -11046,14 +11049,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Tears the foe, and space.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_DRAGON, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -11065,18 +11068,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Lunar Dance"), .description = sHealingWishDescription, .effect = EFFECT_HEALING_WISH, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5, - .danceMove = TRUE, - .healingMove = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, + .healingMove = TRUE, + .danceMove = TRUE, .contestEffect = CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -11088,13 +11091,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Crush Grip"), .description = sWringOutDescription, .effect = EFFECT_WRING_OUT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -11109,13 +11112,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Traps the foe in a vortex\n" "of fire for "BINDING_TURNS" turns."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 100 : 120, + .type = TYPE_FIRE, .accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 75 : 70, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_WRAP, }), @@ -11132,14 +11135,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Drags the foe into total\n" "darkness, inducing Sleep."), .effect = EFFECT_DARK_VOID, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = B_UPDATED_MOVE_DATA >= GEN_7 ? 50 : 80, - .target = MOVE_TARGET_BOTH, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .magicCoatAffected = TRUE, .sketchBanned = (B_SKETCH_BANS >= GEN_9), .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, @@ -11155,13 +11158,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Generates a shock wave that\n" "sharply reduces Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 120, + .type = TYPE_GRASS, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_2, .chance = 40, @@ -11179,13 +11182,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A repulsive attack that may\n" "raise all stats."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = B_EXTRAPOLATED_MOVE_FLAGS, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ALL_STATS_UP, @@ -11203,19 +11206,19 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Shadow Force"), .description = sShadowForceDescription, .effect = EFFECT_SEMI_INVULNERABLE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresProtect = TRUE, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS == GEN_6, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .argument = TWO_TURN_ARG(STRINGID_VANISHEDINSTANTLY, COMPRESS_BITS(STATUS3_PHANTOM_FORCE)), .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FEINT, @@ -11233,16 +11236,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sharpens its claws to raise\n" "Attack and Accuracy."), .effect = EFFECT_ATTACK_ACCURACY_UP, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 15, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -11257,19 +11260,19 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Evades wide-ranging attacks\n" "for one turn."), .effect = EFFECT_PROTECT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ROCK, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 3, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .argument = TRUE, // Protects the whole side. + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, - .argument = TRUE, // Protects the whole side. .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -11283,14 +11286,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Averages changes to Defense\n" "and Sp. Def with the foe."), .effect = EFFECT_GUARD_SPLIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -11305,14 +11308,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Averages changes to Attack\n" "and Sp. Atk with the foe."), .effect = EFFECT_POWER_SPLIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES, .contestCategory = CONTEST_CATEGORY_SMART, @@ -11327,14 +11330,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Defense and Sp. Def stats\n" "are swapped for 5 turns."), .effect = EFFECT_WONDER_ROOM, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = B_UPDATED_MOVE_DATA >= GEN_6 ? 0 : -7, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .ignoresProtect = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -11347,13 +11350,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Psyshock"), .description = sPsyshockDescription, .effect = EFFECT_PSYSHOCK, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -11367,13 +11370,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Does double damage if the\n" "foe is poisoned."), .effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = STATUS1_PSN_ANY, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -11388,16 +11391,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sheds additional weight to\n" "sharply boost Speed."), .effect = EFFECT_AUTOTOMIZE, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 15, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_SMART, @@ -11412,16 +11415,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Scatters powder to make\n" "foes attack only the user."), .effect = EFFECT_FOLLOW_ME, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = B_UPDATED_MOVE_DATA >= GEN_6 ? 2 : 3, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .powderMove = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, @@ -11439,14 +11442,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the foe float. It is\n" "easier to hit for 3 turns."), .effect = EFFECT_TELEKINESIS, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .magicCoatAffected = TRUE, .gravityBanned = TRUE, .contestEffect = CONTEST_EFFECT_SHIFT_JUDGE_ATTENTION, @@ -11462,14 +11465,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hold items lose their\n" "effects for 5 turns."), .effect = EFFECT_MAGIC_ROOM, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = B_UPDATED_MOVE_DATA >= GEN_6 ? 0 : -7, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .ignoresProtect = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -11484,13 +11487,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Throws a rock to knock the\n" "foe down to the ground."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_ROCK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .damagesAirborne = TRUE, .skyBattleBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -11507,15 +11510,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Storm Throw"), .description = sStormThrowDescription, .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 40, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .alwaysCriticalHit = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .alwaysCriticalHit = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -11529,13 +11532,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A bursting flame that does\n" "damage to all foes."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 70, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLAME_BURST, .self = TRUE, @@ -11553,13 +11556,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swamps the foe with a wave\n" "of sludge. May also poison."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 95, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 10, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, .chance = 10, @@ -11577,17 +11580,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Dances to raise Sp. Atk\n" "Sp. Def and Speed."), .effect = EFFECT_QUIVER_DANCE, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .danceMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -11600,13 +11603,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Heavy Slam"), .description = sHeavySlamDescription, .effect = EFFECT_HEAT_CRASH, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS >= GEN_7, .skyBattleBanned = TRUE, @@ -11623,13 +11626,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An odd shock wave that only\n" "damages same-type foes."), .effect = EFFECT_SYNCHRONOISE, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 120 : 70, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 10 : 15, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -11643,13 +11646,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hurls an orb that does more\n" "damage to slower foes."), .effect = EFFECT_ELECTRO_BALL, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, .contestCategory = CONTEST_CATEGORY_COOL, @@ -11664,14 +11667,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sprays water at the foe\n" "making it Water-type."), .effect = EFFECT_SOAK, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -11686,13 +11689,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks in a cloak of\n" "flames. Raises Speed."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_PLUS_1, @@ -11712,16 +11715,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Coils up to raise Attack\n" "Defense and Accuracy."), .effect = EFFECT_COIL, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -11736,13 +11739,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks the foe's legs\n" "lowering its Speed."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 65 : 60, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, @@ -11761,13 +11764,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sprays a hide-melting acid.\n" "Sharply reduces Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_2, @@ -11786,13 +11789,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The higher the foe's Attack\n" "the more damage caused."), .effect = EFFECT_FOUL_PLAY, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 95, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, .contestCategory = CONTEST_CATEGORY_COOL, @@ -11807,14 +11810,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A beam that changes the\n" "foe's ability to Simple."), .effect = EFFECT_SIMPLE_BEAM, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -11829,14 +11832,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the foe mimic the\n" "user, gaining its ability."), .effect = EFFECT_ENTRAINMENT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -11851,14 +11854,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Helps out the foe, letting\n" "it move next."), .effect = EFFECT_AFTER_YOU, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -11876,15 +11879,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A song that inflicts damage.\n" "Others can join in too."), .effect = EFFECT_ROUND, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ROUND, }), @@ -11901,15 +11904,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Does more damage every turn\n" "it is used."), .effect = EFFECT_ECHOED_VOICE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -11921,13 +11924,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Chip Away"), .description = sChipAwayDescription, .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresTargetDefenseEvasionStages = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, @@ -11943,13 +11946,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with white haze that\n" "eliminates all stat changes."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 50, + .type = TYPE_POISON, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CLEAR_SMOG, }), @@ -11966,13 +11969,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The higher the user's stats\n" "the more damage caused."), .effect = EFFECT_STORED_POWER, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 20, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -11986,19 +11989,19 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Evades priority attacks\n" "for one turn."), .effect = EFFECT_PROTECT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 15, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 3, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .argument = TRUE, // Protects the whole side. + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, - .argument = TRUE, // Protects the whole side. .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -12012,14 +12015,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user switches places\n" "with its partner."), .effect = EFFECT_ALLY_SWITCH, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, + .target = MOVE_TARGET_USER, .priority = B_UPDATED_MOVE_DATA >= GEN_7 ? 2 : 1, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, @@ -12035,13 +12038,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Shoots boiling water at the\n" "foe. May inflict a burn."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .thawsUser = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -12060,16 +12063,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises offensive stats, but\n" "lowers defensive stats."), .effect = EFFECT_SHELL_SMASH, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 15, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -12084,18 +12087,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Recovers up to half the\n" "target's maximum HP."), .effect = EFFECT_HEAL_PULSE, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .magicCoatAffected = TRUE, - .pulseMove = TRUE, - .healingMove = TRUE, .mirrorMoveBanned = TRUE, + .healingMove = TRUE, + .pulseMove = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -12109,13 +12112,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Does double damage if the\n" "foe has a status problem."), .effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 65 : 50, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = STATUS1_ANY, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -12130,18 +12133,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Takes the foe into the sky\n" "then drops it the next turn."), .effect = EFFECT_SKY_DROP, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .gravityBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .argument = TWO_TURN_ARG(STRINGID_PKMNTOOKTARGETHIGH, COMPRESS_BITS(STATUS3_ON_AIR)), .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -12156,16 +12159,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Rotates its gears to raise\n" "Attack and Speed."), .effect = EFFECT_SHIFT_GEAR, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -12178,13 +12181,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Circle Throw"), .description = sCircleThrowDescription, .effect = EFFECT_HIT_SWITCH_TARGET, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_FIGHTING, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = -6, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .copycatBanned = TRUE, .assistBanned = TRUE, @@ -12201,13 +12204,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Burns up Berries and Gems\n" "preventing their use."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 30, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 15, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_INCINERATE, }), @@ -12224,14 +12227,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Suppresses the foe, making\n" "it move last."), .effect = EFFECT_QUASH, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER, .contestCategory = CONTEST_CATEGORY_COOL, @@ -12246,13 +12249,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Does double damage if the\n" "user has no item."), .effect = EFFECT_ACROBATICS, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 55, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_COOL, @@ -12267,14 +12270,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user reflects the foe's\n" "type, copying it."), .effect = EFFECT_REFLECT_TYPE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, @@ -12290,13 +12293,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that does more\n" "damage if an ally fainted."), .effect = EFFECT_RETALIATE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -12311,13 +12314,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user faints to damage\n" "the foe equal to its HP."), .effect = EFFECT_FINAL_GAMBIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = TRUE, .parentalBondBanned = TRUE, .contestEffect = CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES, @@ -12333,14 +12336,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user gives its held\n" "item to the foe."), .effect = EFFECT_BESTOW, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_2 }, .ignoresProtect = B_UPDATED_MOVE_FLAGS >= GEN_6, .ignoresSubstitute = TRUE, .metronomeBanned = TRUE, @@ -12359,13 +12362,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Powerful and sure to inflict\n" "a burn, but inaccurate."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_FIRE, .accuracy = 50, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, .chance = 100, @@ -12383,13 +12386,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a column of\n" "water. May make a rainbow."), .effect = EFFECT_PLEDGE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 50, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -12404,13 +12407,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a column of\n" "fire. May burn the grass."), .effect = EFFECT_PLEDGE, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 50, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -12425,13 +12428,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a column of\n" "grass. May create a swamp."), .effect = EFFECT_PLEDGE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 50, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_SMART, @@ -12444,13 +12447,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Volt Switch"), .description = sUTurnDescription, .effect = EFFECT_HIT_ESCAPE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 70, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -12464,13 +12467,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Resisting, the user attacks\n" "the foe. Lowers Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 50 : 30, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 20, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1, .chance = 100, @@ -12488,13 +12491,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stomps down on the ground.\n" "Lowers Speed."), .effect = EFFECT_BULLDOZE, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 20, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .skyBattleBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, @@ -12511,13 +12514,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Frost Breath"), .description = sStormThrowDescription, .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 40, + .type = TYPE_ICE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .alwaysCriticalHit = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -12530,13 +12533,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Dragon Tail"), .description = sCircleThrowDescription, .effect = EFFECT_HIT_SWITCH_TARGET, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_DRAGON, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = -6, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .copycatBanned = TRUE, .assistBanned = TRUE, @@ -12553,16 +12556,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user is roused.\n" "Ups Attack and Sp. Atk."), .effect = EFFECT_ATTACK_SPATK_UP, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -12577,13 +12580,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Snares the foe with an\n" "electric net. Lowers Speed."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 55, + .type = TYPE_ELECTRIC, .accuracy = 95, - .target = MOVE_TARGET_BOTH, .pp = 15, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, .chance = 100, @@ -12601,14 +12604,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An electrical tackle that\n" "also hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .recoil = 25, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 25, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_COOL, @@ -12623,14 +12626,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Spins its body like a drill.\n" "High critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_GROUND, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -12645,15 +12648,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with brutal hits\n" "that strike twice."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_DRAGON, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 2, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .strikeCount = 2, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -12667,13 +12670,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A sudden blow after a cute\n" "act. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -12690,13 +12693,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Horn Leech"), .description = sMegaDrainDescription, .effect = EFFECT_ABSORB, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .healingMove = B_HEAL_BLOCKING >= GEN_6, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, @@ -12710,16 +12713,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Sacred Sword"), .description = sChipAwayDescription, .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 15 : 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .slicingMove = TRUE, .ignoresTargetDefenseEvasionStages = TRUE, + .slicingMove = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -12733,13 +12736,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Tears at the foe with sharp\n" "shells. May lower Defense."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_WATER, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -12757,13 +12760,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Heat Crash"), .description = sHeavySlamDescription, .effect = EFFECT_HEAT_CRASH, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON, @@ -12779,13 +12782,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Circles the foe with leaves\n" "to damage and cut accuracy."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_GRASS, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, //.windMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ACC_MINUS_1, @@ -12804,13 +12807,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Crushes the foe with its\n" "body. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .minimizeDoubleDamage = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -12830,16 +12833,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Wraps its body in cotton.\n" "Drastically raises Defense."), .effect = EFFECT_DEFENSE_UP_3, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_SMART, @@ -12854,13 +12857,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Looses a pitch-black shock\n" "wave. May lower accuracy."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 85, + .type = TYPE_DARK, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ACC_MINUS_1, .chance = 40, @@ -12876,13 +12879,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Psystrike"), .description = sPsyshockDescription, .effect = EFFECT_PSYSHOCK, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -12896,13 +12899,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes the foe with its\n" "tail 2 to 5 times."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 25, + .type = TYPE_NORMAL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -12917,13 +12920,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Traps the foe in a fierce\n" "wind. May cause confusion."), .effect = EFFECT_THUNDER, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120, + .type = TYPE_FLYING, .accuracy = 70, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .damagesAirborne = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -12943,14 +12946,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A charge using guard hair.\n" "It hurts the user a little."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .recoil = 25, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 25, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -12965,15 +12968,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Throws two steel gears\n" "that strike twice."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_STEEL, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 2, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .strikeCount = 2, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -12985,13 +12988,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Searing Shot"), .description = sLavaPlumeDescription, .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 5, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -13010,15 +13013,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The type varies with the\n" "kind of Drive held."), .effect = EFFECT_CHANGE_TYPE_ON_ITEM, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_6 ? 120 : 85, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .metronomeBanned = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = HOLD_EFFECT_DRIVE, + .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_EXCITE_AUDIENCE_IN_ANY_CONTEST, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -13032,17 +13035,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with an ancient\n" "song. May induce sleep."), .effect = EFFECT_RELIC_SONG, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 75, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, + .argument = STATUS1_SLEEP, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .metronomeBanned = TRUE, - .argument = STATUS1_SLEEP, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SLEEP, .chance = 10, @@ -13060,13 +13063,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Cuts with a long horn that\n" "does physical damage."), .effect = EFFECT_PSYSHOCK, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 85, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .slicingMove = TRUE, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, @@ -13082,13 +13085,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Blows very cold air at the\n" "foe. It lowers their Speed."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 65, + .type = TYPE_ICE, .accuracy = 95, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, .chance = 100, @@ -13106,13 +13109,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes with a great amount\n" "of lightning. May paralyze."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 130, + .type = TYPE_ELECTRIC, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -13131,13 +13134,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Engulfs the foe in a blue\n" "flame. May inflict a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 130, + .type = TYPE_FIRE, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, .chance = 20, @@ -13155,13 +13158,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Dances cloaked in flames.\n" "May raise Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .danceMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_PLUS_1, @@ -13181,13 +13184,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A powerful 2-turn move that\n" "may paralyze the foe."), .effect = EFFECT_TWO_TURNS_ATTACK, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 140, + .type = TYPE_ICE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, @@ -13209,13 +13212,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A powerful 2-turn move that\n" "may inflict a burn."), .effect = EFFECT_TWO_TURNS_ATTACK, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 140, + .type = TYPE_ICE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, @@ -13237,15 +13240,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Yells and rants at the foe\n" "lowering its Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 55, + .type = TYPE_DARK, .accuracy = 95, - .target = MOVE_TARGET_BOTH, .pp = 15, + .target = MOVE_TARGET_BOTH, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1, @@ -13264,13 +13267,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Drops large icicles on the\n" "foe. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_ICE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, .chance = 30, @@ -13288,13 +13291,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Very powerful, but lowers\n" "Defense, Sp. Def and Speed."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 180, + .type = TYPE_FIRE, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -13314,13 +13317,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Summons a fireball. Works\n" "well with a thunderbolt."), .effect = EFFECT_FUSION_COMBO, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .thawsUser = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -13335,13 +13338,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Summons a thunderbolt.\n" "Works well with a fireball."), .effect = EFFECT_FUSION_COMBO, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -13355,18 +13358,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "This attack does Fighting\n" "and Flying-type damage."), .effect = EFFECT_TWO_TYPED_MOVE, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_7 ? 100 : 80, + .type = TYPE_FIGHTING, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, + .argument = TYPE_FLYING, .makesContact = TRUE, .minimizeDoubleDamage = TRUE, .gravityBanned = TRUE, .skyBattleBanned = TRUE, - .argument = TYPE_FLYING, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -13380,22 +13383,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Evades damaging moves\n" "for one turn."), .effect = EFFECT_MAT_BLOCK, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 15, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .argument = TRUE, // Protects the whole side. + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, .assistBanned = TRUE, .skyBattleBanned = TRUE, - .argument = TRUE, // Protects the whole side. .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -13409,21 +13412,21 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lets out a loud belch.\n" "Must eat a Berry to use it."), .effect = EFFECT_BELCH, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 120, + .type = TYPE_POISON, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = TRUE, .meFirstBanned = TRUE, - .mimicBanned = TRUE, .metronomeBanned = TRUE, + .mimicBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -13437,14 +13440,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Ups the Attack and Sp. Atk\n" "of Grass-type Pokémon."), .effect = EFFECT_ROTOTILLER, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GROUND, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .skyBattleBanned = TRUE, @@ -13461,17 +13464,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Weaves a sticky net that\n" "slows foes switching in."), .effect = EFFECT_STICKY_WEB, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_OPPONENTS_FIELD, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_OPPONENTS_FIELD, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, - .magicCoatAffected = TRUE, .mirrorMoveBanned = TRUE, + .magicCoatAffected = TRUE, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -13486,13 +13489,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "If it knocks out a foe\n" "the Attack stat is raised."), .effect = EFFECT_FELL_STINGER, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_7 ? 50 : 30, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 25, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -13505,19 +13508,19 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("PhantomForce", "Phantom Force"), .description = sShadowForceDescription, .effect = EFFECT_SEMI_INVULNERABLE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .makesContact = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .ignoresProtect = TRUE, + .makesContact = TRUE, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS == GEN_6, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .argument = TWO_TURN_ARG(STRINGID_VANISHEDINSTANTLY, COMPRESS_BITS(STATUS3_PHANTOM_FORCE)), .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FEINT, @@ -13535,16 +13538,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Goes trick-or-treating\n" "making the foe Ghost-type."), .effect = EFFECT_THIRD_TYPE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .magicCoatAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .argument = TYPE_GHOST, + .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -13558,17 +13561,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Intimidates the foe, to cut\n" "Attack and Sp. Atk."), .effect = EFFECT_NOBLE_ROAR, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .magicCoatAffected = TRUE, .soundMove = TRUE, - .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -13582,14 +13585,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Electrifies Normal-type\n" "moves with charged atoms."), .effect = EFFECT_ION_DELUGE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 25, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 1, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, @@ -13605,13 +13608,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Damages adjacent Pokémon and\n" "heals up by half of it."), .effect = EFFECT_ABSORB, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_7 ? 65 : 50, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 20, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .healingMove = B_HEAL_BLOCKING >= GEN_6, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -13626,16 +13629,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Puts a curse on the foe\n" "making the foe Grass-type."), .effect = EFFECT_THIRD_TYPE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .magicCoatAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .argument = TYPE_GRASS, + .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -13649,13 +13652,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stirs up a violent storm\n" "of petals to attack."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 15, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .windMove = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -13670,13 +13673,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Super effective on Water-\n" "types. May cause freezing."), .effect = EFFECT_FREEZE_DRY, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 70, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE, .chance = 10, @@ -13694,15 +13697,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lets out a charming cry\n" "that cannot be evaded."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_BOTH, .pp = 15, + .target = MOVE_TARGET_BOTH, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -13716,17 +13719,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lowers the foe's Attack and\n" "Sp. Atk, then switches out."), .effect = EFFECT_PARTING_SHOT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_RESTORE_REPLACEMENT_HP }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESTORE_REPLACEMENT_HP }, .magicCoatAffected = TRUE, - .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -13740,14 +13743,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swaps all stat changes that\n" "affect the target."), .effect = EFFECT_TOPSY_TURVY, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DARK, .accuracy = B_UPDATED_MOVE_DATA >= GEN_7 ? 0 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -13760,16 +13763,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("DrainingKiss", "Draining Kiss"), .description = sDrainingKissDescription, .effect = EFFECT_ABSORB, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 50, + .type = TYPE_FAIRY, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, + .argument = 75, // restores 75% HP instead of 50% HP .makesContact = TRUE, .healingMove = B_HEAL_BLOCKING >= GEN_6, - .argument = 75, // restores 75% HP instead of 50% HP .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -13783,18 +13786,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Evades status moves for\n" "one turn."), .effect = EFFECT_PROTECT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 3, + .category = DAMAGE_CATEGORY_STATUS, + .argument = TRUE, // Protects the whole side. + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, - .argument = TRUE, // Protects the whole side. .contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -13808,14 +13811,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises the Defense of\n" "Grass-type Pokémon."), .effect = EFFECT_FLOWER_SHIELD, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, @@ -13831,14 +13834,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The ground turns to grass\n" "for 5 turns. Restores HP."), .effect = EFFECT_GRASSY_TERRAIN, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .skyBattleBanned = TRUE, @@ -13855,14 +13858,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Covers the ground with mist\n" "for 5 turns. Blocks status."), .effect = EFFECT_MISTY_TERRAIN, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .skyBattleBanned = TRUE, @@ -13879,14 +13882,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Electrifies the foe, making\n" "its next move Electric-type."), .effect = EFFECT_ELECTRIFY, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -13900,13 +13903,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Plays rough with the foe.\n" "May lower Attack."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_FAIRY, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ATK_MINUS_1, @@ -13925,13 +13928,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stirs up a fairy wind to\n" "strike the foe."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_FAIRY, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -13946,13 +13949,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with the power of\n" "the moon. May lower Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 95, + .type = TYPE_FAIRY, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1, .chance = 30, @@ -13970,15 +13973,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks everything with a\n" "destructive sound wave."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 140, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 10, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -13992,14 +13995,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Locks down the battlefield\n" "preventing escape next turn."), .effect = EFFECT_FAIRY_LOCK, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, @@ -14015,20 +14018,20 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Evades damage, and sharply\n" "reduces Attack if struck."), .effect = EFFECT_PROTECT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 4, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -14042,17 +14045,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Befriend the foe, lowering\n" "its Attack without fail."), .effect = EFFECT_ATTACK_DOWN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, - .magicCoatAffected = TRUE, .ignoresSubstitute = TRUE, + .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -14066,18 +14069,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Shares a secret with the\n" "foe, lowering Sp. Atk."), .effect = EFFECT_SPECIAL_ATTACK_DOWN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .ignoresProtect = TRUE, .magicCoatAffected = TRUE, - .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -14090,13 +14093,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "Whips up a storm of\n" "diamonds. May up Defense."), - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_ROCK, .accuracy = 95, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = B_UPDATED_MOVE_DATA >= GEN_7 ? MOVE_EFFECT_DEF_PLUS_2: MOVE_EFFECT_DEF_PLUS_1, @@ -14115,13 +14118,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Immerses the foe in heated\n" "steam. May inflict a burn."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 110, + .type = TYPE_WATER, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .thawsUser = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -14139,13 +14142,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("HyprspceHole", "Hyprspace Hole"), .description = sHyperspaceHoleDescription, .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .metronomeBanned = TRUE, @@ -14165,13 +14168,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Throws 2 to 5 stars that\n" "are sure to strike first."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_WATER, - .category = B_UPDATED_MOVE_DATA >= GEN_7 ? DAMAGE_CATEGORY_SPECIAL : DAMAGE_CATEGORY_PHYSICAL, .power = 15, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = B_UPDATED_MOVE_DATA >= GEN_7 ? DAMAGE_CATEGORY_SPECIAL : DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -14185,13 +14188,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Breathes a special, hot\n" "fire. Lowers Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_7 ? 75 : 65, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1, .chance = 100, @@ -14209,14 +14212,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Evades attack, and damages\n" "the foe if struck."), .effect = EFFECT_PROTECT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 4, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -14235,14 +14238,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises the Sp. Def of a\n" "partner Pokémon."), .effect = EFFECT_AROMATIC_MIST, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_ALLY, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, + .target = MOVE_TARGET_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -14259,14 +14262,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Exposes the foe to a pulse\n" "that sharply cuts Sp. Atk."), .effect = EFFECT_SPECIAL_ATTACK_DOWN_2, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_COOL, @@ -14281,14 +14284,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lowers the Attack, Sp. Atk\n" "and Speed of a poisoned foe."), .effect = EFFECT_VENOM_DRENCH, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, @@ -14303,16 +14306,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Damages the foe if it uses\n" "a Fire-type move."), .effect = EFFECT_POWDER, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, + .target = MOVE_TARGET_SELECTED, .priority = 1, - .magicCoatAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_2 }, .powderMove = TRUE, + .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -14326,14 +14329,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises Sp. Atk, Sp. Def and\n" "Speed on the 2nd turn."), .effect = EFFECT_GEOMANCY, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .skyBattleBanned = TRUE, @@ -14351,16 +14354,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Boosts the defenses of\n" "those with Plus or Minus."), .effect = EFFECT_MAGNETIC_FLUX, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, @@ -14376,14 +14379,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Doubles the amount of\n" "Prize Money received."), .effect = EFFECT_DO_NOTHING, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED, @@ -14399,14 +14402,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Electrifies the ground for\n" "5 turns. Prevents sleep."), .effect = EFFECT_ELECTRIC_TERRAIN, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .skyBattleBanned = TRUE, @@ -14423,13 +14426,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Damages foes by emitting\n" "a bright flash."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_FAIRY, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -14443,22 +14446,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Congratulates you on your\n" "special day."), .effect = EFFECT_DO_NOTHING, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 40, - .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, - .mimicBanned = TRUE, .metronomeBanned = TRUE, + .mimicBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -14472,22 +14475,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user and ally hold hands\n" "making them happy."), .effect = EFFECT_DO_NOTHING, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_ALLY, .pp = 40, - .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .target = MOVE_TARGET_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, - .mimicBanned = TRUE, .metronomeBanned = TRUE, + .mimicBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -14501,14 +14504,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lowers the foe's Attack\n" "before it can move."), .effect = EFFECT_ATTACK_DOWN, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FAIRY, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 30, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -14523,13 +14526,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Rubs its cheecks against\n" "the foe, paralyzing it."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 20, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -14546,13 +14549,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Hold Back"), .description = sFalseSwipeDescription, .effect = EFFECT_FALSE_SWIPE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 40, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -14567,13 +14570,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The foe is infested and\n" "attacked for "BINDING_TURNS" turns."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 20, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_WRAP, @@ -14591,13 +14594,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A hard punch that raises\n" "the user's Attack."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -14616,15 +14619,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("OblivionWing", "Oblivion Wing"), .description = sDrainingKissDescription, .effect = EFFECT_ABSORB, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .healingMove = B_HEAL_BLOCKING >= GEN_6, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = 75, // restores 75% HP instead of 50% HP + .healingMove = B_HEAL_BLOCKING >= GEN_6, .contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -14638,13 +14641,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Can hit Flying foes, then\n" "knocks them to the ground."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .damagesAirborne = TRUE, .ignoreTypeIfFlyingAndUngrounded = TRUE, .metronomeBanned = TRUE, @@ -14665,13 +14668,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Those hit by the wave can\n" "no longer escape."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .skyBattleBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -14690,13 +14693,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Gathers the energy of the\n" "land to attack every foe."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -14711,14 +14714,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fires a great beam of light\n" "that also hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 140, + .type = TYPE_FAIRY, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, + .recoil = 50, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 50, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, }, @@ -14729,13 +14732,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Beams of glowing blue light\n" "blast both foes."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 110, + .type = TYPE_WATER, .accuracy = 85, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .pulseMove = TRUE, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, @@ -14751,13 +14754,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fearsome blades of stone\n" "attack both foes."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_GROUND, .accuracy = 85, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -14770,13 +14773,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("DragonAscent", "Dragon Ascent"), .description = sCloseCombatDescription, .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -14794,13 +14797,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("HyprspceFury", "Hyperspace Fury"), .description = sHyperspaceHoleDescription, .effect = EFFECT_HYPERSPACE_FURY, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .metronomeBanned = TRUE, @@ -14823,17 +14826,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Restores the user's HP.\n" "More HP in a sandstorm."), .effect = EFFECT_SHORE_UP, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GROUND, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .healingMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -14848,13 +14851,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits hard and first.\n" "Only works first turn."), .effect = EFFECT_FIRST_TURN_ONLY, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 2, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_COOL, @@ -14869,14 +14872,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Protects user and poisons\n" "foes on contact."), .effect = EFFECT_PROTECT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 4, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -14895,13 +14898,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "After being hit, foes can\n" "no longer escape."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PREVENT_ESCAPE, .chance = 100, @@ -14919,13 +14922,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swings the arms to strike\n" "It ignores stat changes."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresTargetDefenseEvasionStages = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, @@ -14941,16 +14944,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sings with bubbles. Cures\n" "burns on contact."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 10, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, - .soundMove = TRUE, - .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = STATUS1_BURN, + .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_REMOVE_STATUS, .chance = 100, @@ -14968,13 +14971,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swings the fist to strike.\n" "Lowers the user's Speed."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_ICE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -14994,18 +14997,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Restores an ally's HP.\n" "Heals more on grass."), .effect = EFFECT_HEAL_PULSE, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .magicCoatAffected = TRUE, - .healingMove = TRUE, - .mirrorMoveBanned = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .argument = MOVE_EFFECT_FLORAL_HEALING, + .mirrorMoveBanned = TRUE, + .healingMove = TRUE, + .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -15019,13 +15022,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slams hard into the foe with\n" "its entire body."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 95, + .type = TYPE_GROUND, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -15040,14 +15043,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Saps the foe's Attack to\n" "heal HP, then drops Attack."), .effect = EFFECT_STRENGTH_SAP, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .magicCoatAffected = TRUE, .healingMove = B_HEAL_BLOCKING >= GEN_6, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES, @@ -15063,13 +15066,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Charges first turn, then\n" "chops with a blade of light."), .effect = EFFECT_SOLAR_BEAM, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 125, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .sleepTalkBanned = TRUE, @@ -15088,13 +15091,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a flurry of\n" "small leaves."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 40, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -15108,14 +15111,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes the foe attack the\n" "spotlighted Pokémon."), .effect = EFFECT_FOLLOW_ME, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 3, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPDEF_UP_1 }, .magicCoatAffected = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -15134,14 +15137,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a thread that\n" "poisons and drops Speed."), .effect = EFFECT_TOXIC_THREAD, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_SHIFT_JUDGE_ATTENTION, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -15156,16 +15159,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Guarantees the next move\n" "will be a critical hit."), .effect = EFFECT_LASER_FOCUS, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 30, - .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ATK_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -15180,16 +15183,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Boosts the attacks of\n" "those with Plus or Minus."), .effect = EFFECT_GEAR_UP, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, @@ -15205,13 +15208,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Chops the throat to disable\n" "sound moves for a while."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_THROAT_CHOP, @@ -15230,13 +15233,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Explodes on foes, but\n" "restores ally's HP."), .effect = EFFECT_HIT_ENEMY_HEAL_ALLY, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -15251,13 +15254,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strangles the foe with a\n" "chain. The foe can't escape."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PREVENT_ESCAPE, @@ -15276,14 +15279,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The ground turns weird for\n" "5 turns. Blocks priority."), .effect = EFFECT_PSYCHIC_TERRAIN, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED, @@ -15299,13 +15302,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lunges at the foe to lower\n" "its Attack stat."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ATK_MINUS_1, @@ -15324,13 +15327,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Whips the foe with fire\n" "lowering its Defense."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_MINUS_1, @@ -15349,13 +15352,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "It hits harder the more\n" "stat boosts the user has."), .effect = EFFECT_STORED_POWER, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 20, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -15370,13 +15373,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Burns out the user fully\n" "removing the Fire type."), .effect = EFFECT_FAIL_IF_NOT_ARG_TYPE, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 130, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .thawsUser = TRUE, .argument = TYPE_FIRE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -15396,14 +15399,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swaps user's Speed with\n" "the target's."), .effect = EFFECT_SPEED_SWAP, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresSubstitute = TRUE, .contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES, .contestCategory = CONTEST_CATEGORY_SMART, @@ -15418,13 +15421,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with an accurate\n" "horn that never misses."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_SMART, @@ -15439,17 +15442,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Cures the foe's status\n" "to restore HP."), .effect = EFFECT_PURIFY, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .magicCoatAffected = TRUE, - .healingMove = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 }, .mirrorMoveBanned = TRUE, + .healingMove = TRUE, + .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -15463,13 +15466,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Dances with mystical power.\n" "Matches user's first type."), .effect = EFFECT_REVELATION_DANCE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .danceMove = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -15484,14 +15487,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with a ray that\n" "nullifies the foe's ability."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .zMove = { .powerOverride = 140 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, + .zMove = { .powerOverride = 140 }, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CORE_ENFORCER, }), @@ -15508,13 +15511,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An intense kick from the\n" "tropics. Lowers Attack."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ATK_MINUS_1, @@ -15533,14 +15536,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Orders the target to use\n" "its last move again."), .effect = EFFECT_INSTRUCT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, - .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPATK_UP_1 }, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -15558,21 +15561,21 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Heats up beak to attack.\n" "Burns foe on contact."), .effect = EFFECT_BEAK_BLAST, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_FLYING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = -3, - .ballisticMove = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .mirrorMoveBanned = TRUE, + .ballisticMove = TRUE, .meFirstBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -15586,15 +15589,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Makes a big noise with\n" "its scales. Drops Defense."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 110, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, - .soundMove = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, + .soundMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_MINUS_1, .self = TRUE, @@ -15612,13 +15615,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swings its whole body\n" "like a hammer to damage."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_COOL, @@ -15633,13 +15636,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Violently swings around\n" "to hurt everyone nearby."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 20, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -15654,16 +15657,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Weakens all attacks, but\n" "only usable with hail."), .effect = EFFECT_AURORA_VEIL, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ICE, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -15678,20 +15681,20 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sets a shell trap that\n" "damages on contact."), .effect = EFFECT_SHELL_TRAP, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = -3, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = TRUE, .meFirstBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .assistBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -15705,13 +15708,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A strong ray that harshly\n" "lowers Sp. Attack."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 130, + .type = TYPE_FAIRY, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_TWO_DOWN, @@ -15730,13 +15733,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Chomps with psychic fangs.\n" "Destroys any barriers."), .effect = EFFECT_BRICK_BREAK, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, @@ -15752,13 +15755,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Stomps around angrily.\n" "Stronger after a failure."), .effect = EFFECT_STOMPING_TANTRUM, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, @@ -15774,13 +15777,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes with a haunted\n" "bone. Might drop Defense."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_MINUS_1, .chance = 20, @@ -15798,13 +15801,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with a high-speed\n" "rock that always goes first."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_ROCK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -15819,13 +15822,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Slams the foe with water.\n" "Can lower Defense."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_MINUS_1, @@ -15844,13 +15847,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A high power laser that\n" "forces recharge next turn."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 160, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RECHARGE, .self = TRUE, @@ -15868,15 +15871,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Steals the target's stat\n" "boosts, then attacks."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .makesContact = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .ignoresSubstitute = TRUE, + .makesContact = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPECTRAL_THIEF, @@ -15894,13 +15897,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A sun-fueled strike that\n" "ignores abilities."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresTargetAbility = TRUE, .metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_8, @@ -15917,13 +15920,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A moon-powered beam that\n" "ignores abilities."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresTargetAbility = TRUE, .metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_8, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, @@ -15939,14 +15942,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user tears up, dropping\n" "Attack and Sp. Attack."), .effect = EFFECT_NOBLE_ROAR, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, - .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_DEF_UP_1 }, .ignoresProtect = TRUE, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, @@ -15962,13 +15965,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An electrified impact that\n" "can cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -15987,13 +15990,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Halves the foe's HP with\n" "the power of nature."), .effect = EFFECT_SUPER_FANG, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_FAIRY, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_8, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -16008,15 +16011,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that changes\n" "with Memories."), .effect = EFFECT_CHANGE_TYPE_ON_ITEM, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 120 : 90, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .makesContact = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = HOLD_EFFECT_MEMORY, + .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -16030,13 +16033,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "It explodes the user's head\n" "to damage everything around."), .effect = EFFECT_MIND_BLOWN, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 5, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -16051,13 +16054,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with electrical fists.\n" "Normal moves become Electric."), .effect = EFFECT_PLASMA_FISTS, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .metronomeBanned = TRUE, @@ -16074,13 +16077,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "User's highest attack stat\n" "determines its category."), .effect = EFFECT_PHOTON_GEYSER, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ignoresTargetAbility = TRUE, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, @@ -16096,16 +16099,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Electric bursts always go\n" "first and land a critical hit."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 80 : 50, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 10 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 2, - .alwaysCriticalHit = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, + .alwaysCriticalHit = TRUE, .metronomeBanned = TRUE, #if B_UPDATED_MOVE_DATA >= GEN_8 .additionalEffects = ADDITIONAL_EFFECTS({ @@ -16122,13 +16125,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A huge electrified wave that\n" "may paralyze the foe."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 15, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -16144,16 +16147,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Floats in air and dives at\n" "angle. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_FLYING, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .gravityBanned = TRUE, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, + .gravityBanned = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -16168,13 +16171,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Pikachu's love increases its\n" "power. It never misses."), .effect = EFFECT_RETURN, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, }, @@ -16190,17 +16193,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "half the damage inflicted."), #endif .effect = EFFECT_ABSORB, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 60 : 90, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 20 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .healingMove = B_HEAL_BLOCKING >= GEN_6, + .category = DAMAGE_CATEGORY_SPECIAL, + .argument = B_UPDATED_MOVE_DATA >= GEN_8 ? 100 : 50, // restores 100% HP instead of 50% HP .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, - .argument = B_UPDATED_MOVE_DATA >= GEN_8 ? 100 : 50, // restores 100% HP instead of 50% HP + .healingMove = B_HEAL_BLOCKING >= GEN_6, }, [MOVE_BUZZY_BUZZ] = @@ -16210,13 +16213,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Shoots a jolt of electricity\n" "that always paralyzes."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 60 : 90, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 20 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -16232,16 +16235,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "User cloaked in fire charges.\n" "Leaves the foe with a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 60 : 90, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 20 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .thawsUser = TRUE, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, + .thawsUser = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -16256,13 +16259,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Telekinetic force that sets\n" "wall, lowering Sp. Atk damage."), .effect = EFFECT_GLITZY_GLOW, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 80 : 90, + .type = TYPE_PSYCHIC, .accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 95 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, }, @@ -16274,13 +16277,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Acting badly, attacks. Sets\n" "wall, lowering Attack damage."), .effect = EFFECT_BADDY_BAD, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 80 : 90, + .type = TYPE_DARK, .accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 95 : 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, }, @@ -16292,15 +16295,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Giant stalk scatters seeds\n" "that drain HP every turn."), .effect = EFFECT_SAPPY_SEED, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 100 : 90, + .type = TYPE_GRASS, .accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 90 : 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 10 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .magicCoatAffected = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, + .magicCoatAffected = TRUE, .metronomeBanned = TRUE, }, @@ -16311,13 +16314,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Crystal from cold haze hits.\n" "Eliminates all stat changes."), .effect = EFFECT_FREEZY_FROST, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 100 : 90, + .type = TYPE_ICE, .accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 90 : 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 10 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, }, @@ -16329,13 +16332,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Wrap foe with whirlwind of\n" "scent. Heals party's status."), .effect = EFFECT_SPARKLY_SWIRL, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_8 ? 120 : 90, + .type = TYPE_FAIRY, .accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 85 : 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 5 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, }, @@ -16347,13 +16350,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Eevee's love increases its\n" "power. It never misses."), .effect = EFFECT_RETURN, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, @@ -16366,16 +16369,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user spins and hits with\n" "its arms. May cause flinch."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 2, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, + .strikeCount = 2, .minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS < GEN_8, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -16395,21 +16398,21 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fires a strong beam. Deals\n" "2x damage to Dynamaxed foes."), .effect = EFFECT_DYNAMAX_DOUBLE_DMG, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .mirrorMoveBanned = TRUE, - .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = B_EXTRAPOLATED_MOVE_FLAGS, .sleepTalkBanned = TRUE, .instructBanned = TRUE, + .mimicBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = B_EXTRAPOLATED_MOVE_FLAGS, .parentalBondBanned = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_SMART, @@ -16424,14 +16427,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user ignores effects\n" "that draw in moves."), .effect = EFFECT_SNIPE_SHOT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -16445,13 +16448,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Prevents the user and\n" "the target from escaping."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -16470,15 +16473,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Consumes the user's Berry,\n" "then sharply raises Def."), .effect = EFFECT_STUFF_CHEEKS, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -16493,15 +16496,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises all of the user's\n" "stats but prevents escape."), .effect = EFFECT_NO_RETREAT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 5, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -16516,13 +16519,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lowers the foe's Speed and\n" "makes it weak to Fire."), .effect = EFFECT_TAR_SHOT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ROCK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -16537,16 +16540,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Magic powder changes the\n" "target into a Psychic-type."), .effect = EFFECT_SOAK, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .argument = TYPE_PSYCHIC, .magicCoatAffected = TRUE, .powderMove = TRUE, - .argument = TYPE_PSYCHIC, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -16560,13 +16563,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user attacks twice. Two\n" "targets are hit once each."), .effect = EFFECT_HIT, // TODO: EFFECT_DRAGON_DARTS - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .strikeCount = 2, .parentalBondBanned = TRUE, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, @@ -16582,13 +16585,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "All Pokémon have teatime\n" "and eat their Berries."), .effect = EFFECT_TEATIME, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -16605,13 +16608,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Traps the foe to lower Def\n" "and Sp. Def fall each turn."), .effect = EFFECT_OCTOLOCK, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -16625,13 +16628,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Double power if the user\n" "moves before the target."), .effect = EFFECT_BOLT_BEAK, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -16646,13 +16649,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Double power if the user\n" "moves before the target."), .effect = EFFECT_BOLT_BEAK, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .bitingMove = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, @@ -16668,13 +16671,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user swaps effects on\n" "either side of the field."), .effect = EFFECT_COURT_CHANGE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -16689,18 +16692,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user uses some of its\n" "HP to raise all its stats."), .effect = EFFECT_CLANGOROUS_SOUL, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 5, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .snatchAffected = TRUE, + .ignoresProtect = TRUE, + .mirrorMoveBanned = TRUE, .soundMove = TRUE, .danceMove = TRUE, - .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -16715,13 +16718,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Does more damage the\n" "higher the user's Def."), .effect = EFFECT_BODY_PRESS, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, @@ -16738,13 +16741,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user sharply raises\n" "the target's Atk and Sp.Atk"), .effect = EFFECT_DECORATE, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -16761,13 +16764,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Plays a drum to attack.\n" "The foe's Speed is lowered."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, @@ -16786,13 +16789,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Snares the target in a snap\n" "trap for four to five turns."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 35, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, @@ -16812,15 +16815,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Launches a fiery ball at the\n" "target. It may cause a burn."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_FIRE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .ballisticMove = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .thawsUser = TRUE, + .ballisticMove = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -16839,18 +16842,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes as a sword. Deals 2x\n" "damage to Dynamaxed foes."), .effect = EFFECT_DYNAMAX_DOUBLE_DMG, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, - .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, + .mimicBanned = TRUE, .assistBanned = B_EXTRAPOLATED_MOVE_FLAGS, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -16865,17 +16868,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks as a shield. Deals 2x\n" "damage to Dynamaxed foes."), .effect = EFFECT_DYNAMAX_DOUBLE_DMG, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, + .mimicBanned = TRUE, .assistBanned = B_EXTRAPOLATED_MOVE_FLAGS, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -16890,13 +16893,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Raises Speed to attack. The\n" "Type is based on its form."), .effect = EFFECT_AURA_WHEEL, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 110, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_PLUS_1, @@ -16916,13 +16919,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swings its tail to attack.\n" "Lowers the Atk of those hit."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 15, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -16942,13 +16945,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user pokes the target\n" "with a pointed branch."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 40, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, @@ -16964,13 +16967,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user twangs its guitar,\n" "causing strong vibrations."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .metronomeBanned = TRUE, @@ -16987,13 +16990,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with tart apple acid\n" "to lower the foe's Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1, @@ -17012,13 +17015,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Drops an apple from above.\n" "Lowers the foe's Defense."), .effect = EFFECT_GRAV_APPLE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_MINUS_1, @@ -17037,13 +17040,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with spirit-breaking\n" "force. Lowers Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_FAIRY, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -17063,13 +17066,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Emits a strange steam to\n" "potentially confuse the foe."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_FAIRY, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CONFUSION, @@ -17088,18 +17091,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Scatters water to restore\n" "the HP of itself and allies."), .effect = EFFECT_JUNGLE_HEALING, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .snatchAffected = TRUE, - .healingMove = TRUE, + .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, + .healingMove = TRUE, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -17114,13 +17117,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Protects itself, harshly\n" "lowering Def on contact."), .effect = EFFECT_PROTECT, + .power = 0, .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_STATUS, - .power = 0, .accuracy = 100, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 4, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -17138,13 +17141,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Bows to stab the foe\n" "with hair. It never misses."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, @@ -17160,13 +17163,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with a thick leek.\n" "The user must then rest."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 150, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .instructBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -17186,13 +17189,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Eternatus' strongest move.\n" "The user rests next turn."), .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 160, + .type = TYPE_DRAGON, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RECHARGE, @@ -17211,13 +17214,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Fires a beam of steel from\n" "its body. It hurts the user."), .effect = EFFECT_MAX_HP_50_RECOIL, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 140, + .type = TYPE_STEEL, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -17232,13 +17235,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Power goes up and damages\n" "all foes on Psychic Terrain."), .effect = EFFECT_EXPANDING_FORCE, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -17252,16 +17255,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Destroys terrain. Fails if\n" "ground isn't terrain."), .effect = EFFECT_HIT_SET_REMOVE_TERRAIN, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 130, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .skyBattleBanned = TRUE, .argument = ARG_TRY_REMOVE_TERRAIN_FAIL, // Remove a field terrain if there is one and hit, otherwise fail. + .skyBattleBanned = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_TOUGH, .contestComboStarterId = 0, @@ -17275,13 +17278,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Shoots scales 2 to 5 times.\n" "Ups Speed, lowers defense."), .effect = EFFECT_MULTI_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 25, + .type = TYPE_DRAGON, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MOVE_EFFECT_SCALE_SHOT, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, .contestCategory = CONTEST_CATEGORY_COOL, @@ -17296,13 +17299,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A 2-turn move that raises\n" "Sp. Attack before attacking."), .effect = EFFECT_TWO_TURNS_ATTACK, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 120, + .type = TYPE_ROCK, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .instructBanned = TRUE, .argument = TWO_TURN_ARG(STRINGID_METEORBEAMCHARGING), .additionalEffects = ADDITIONAL_EFFECTS({ @@ -17323,13 +17326,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Deals better of physical and\n" "special damage. May poison."), .effect = EFFECT_SHELL_SIDE_ARM, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, .chance = 20, @@ -17347,13 +17350,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hit everything and faint.\n" "Powers up on Misty Terrain."), .effect = EFFECT_EXPLOSION, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_FAIRY, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 5, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES, .contestCategory = CONTEST_CATEGORY_CUTE, .contestComboStarterId = 0, @@ -17367,13 +17370,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Gliding on ground, hits. Goes\n" "first on Grassy Terrain."), .effect = EFFECT_GRASSY_GLIDE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 55 : 70, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, .contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER, @@ -17389,13 +17392,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "This move's power doubles\n" "when on Electric Terrain."), .effect = EFFECT_RISING_VOLTAGE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 70, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -17409,13 +17412,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Type and power changes\n" "depending on the terrain."), .effect = EFFECT_TERRAIN_PULSE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 50, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .pulseMove = TRUE, .contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING, .contestCategory = CONTEST_CATEGORY_CUTE, @@ -17430,13 +17433,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "User skitters behind foe to\n" "attack. Lowers foe's Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_BUG, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1, @@ -17455,13 +17458,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Foes that have stats upped\n" "during the turn get burned."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 70, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, .onlyIfTargetRaisedStats = TRUE, @@ -17480,13 +17483,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "If stats lowered during this\n" "turn, power is doubled."), .effect = EFFECT_LASH_OUT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON, .contestCategory = CONTEST_CATEGORY_COOL, @@ -17501,13 +17504,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Control foe's item to attack.\n" "Fails if foe has no item."), .effect = EFFECT_POLTERGEIST, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 110, + .type = TYPE_GHOST, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_SMART, .contestComboStarterId = 0, @@ -17521,13 +17524,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Highly acidic gas melts items\n" "held by surrounding Pokémon."), .effect = EFFECT_CORROSIVE_GAS, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_FOES_AND_ALLY, .pp = 40, + .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .magicCoatAffected = TRUE, .contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS, .contestCategory = CONTEST_CATEGORY_COOL, @@ -17542,13 +17545,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Properly coaches allies to\n" "up their Attack and Defense."), .effect = EFFECT_COACHING, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_ALLY, .pp = 10, + .target = MOVE_TARGET_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, @@ -17565,13 +17568,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks and rushes back to\n" "switch with a party Pokémon."), .effect = EFFECT_HIT_ESCAPE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .contestEffect = CONTEST_EFFECT_AVOID_STARTLE, .contestCategory = CONTEST_CATEGORY_COOL, @@ -17586,15 +17589,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A 3-kick attack that gets\n" "more powerful with each hit."), .effect = EFFECT_TRIPLE_KICK, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 20, + .type = TYPE_ICE, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 3, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .strikeCount = 3, .contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE, .contestCategory = CONTEST_CATEGORY_BEAUTY, .contestComboStarterId = 0, @@ -17608,15 +17611,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "User slams the target with\n" "wings and hits twice in a row."), .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_FLYING, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 2, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .strikeCount = 2, .contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING, .contestCategory = CONTEST_CATEGORY_COOL, .contestComboStarterId = 0, @@ -17630,13 +17633,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Throws scorching sand at\n" "the target. May leave a burn."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 70, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .thawsUser = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -17655,17 +17658,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Heals HP and status of\n" "itself and allies in battle."), .effect = EFFECT_JUNGLE_HEALING, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, - .healingMove = TRUE, .ignoresSubstitute = TRUE, .mirrorMoveBanned = TRUE, + .healingMove = TRUE, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING, .contestCategory = CONTEST_CATEGORY_SMART, @@ -17680,15 +17683,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Mastering the Dark style,\n" "strikes with a critical hit."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 75 : 80, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .alwaysCriticalHit = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .alwaysCriticalHit = TRUE, .punchingMove = TRUE, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN, @@ -17704,17 +17707,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Mastering the Water style,\n" "strikes with 3 critical hits."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 25, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 3, - .alwaysCriticalHit = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .alwaysCriticalHit = TRUE, .punchingMove = TRUE, + .strikeCount = 3, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL, .contestCategory = CONTEST_CATEGORY_TOUGH, @@ -17729,13 +17732,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Traps the foe in a cage of\n" "electricity for "BINDING_TURNS" turns."), .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_ELECTRIC, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_WRAP, @@ -17753,13 +17756,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The higher the user's HP\n" "the more damage caused."), .effect = EFFECT_ERUPTION, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 150, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, .contestCategory = CONTEST_CATEGORY_COOL, @@ -17777,14 +17780,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = #else "the eyes. May freeze the foe."), #endif + .power = 90, .effect = EFFECT_HIT, .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, - .power = 90, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE, @@ -17803,13 +17806,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack fueled by your\n" "wrath. May cause flinching."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 90, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 10, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -17828,13 +17831,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Uses a lightning-like kick\n" "to hit. Lowers foe's Defense."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -17854,13 +17857,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes by hurling a blizzard-\n" "cloaked icicle lance at foes."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 120 : 130, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_LAST, .contestCategory = CONTEST_CATEGORY_BEAUTY, @@ -17875,13 +17878,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Strikes by sending a frightful\n" "amount of ghosts at foes."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 120, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST, .contestCategory = CONTEST_CATEGORY_SMART, @@ -17896,13 +17899,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Attacks with psychic power.\n" "Foe's last move has 3 PP cut."), .effect = EFFECT_EERIE_SPELL, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER, @@ -17918,13 +17921,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "High critical hit chance. May\n" "paralyze, poison or drowse."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 80 : 60, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DIRE_CLAW, @@ -17939,13 +17942,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits a foe with psychic\n" "energy. May raise Defense."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_PSYCHIC, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_PLUS_1, @@ -17961,15 +17964,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user swaps its Attack\n" "and Defense stats."), .effect = EFFECT_POWER_TRICK, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, }, @@ -17981,13 +17984,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "High critical hit ratio. Sets\n" "Splinters that hurt the foe."), .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_ROCK, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -18003,13 +18006,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Wraps a foe in fierce winds.\n" "Varies with the user's form."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 95, + .type = TYPE_FAIRY, .accuracy = 80, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -18025,13 +18028,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A mysterious power strikes,\n" "raising the user's Sp. Atk."), .effect = EFFECT_HIT, + .power = 70, .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, - .power = 70, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_PLUS_1, .self = TRUE, @@ -18046,13 +18049,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A rampage of 2 to 3 turns\n" "that confuses the user."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 120 : 90, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_RANDOM, .pp = 10, + .target = MOVE_TARGET_RANDOM, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_THRASH, @@ -18067,14 +18070,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A slam shrouded in water.\n" "It also hurts the user."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 120 : 75, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .recoil = 33, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .recoil = 33, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, }, @@ -18086,13 +18089,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A user-hurting blast of\n" "amassed chlorophyll."), .effect = EFFECT_MAX_HP_50_RECOIL, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 150 : 120, + .type = TYPE_GRASS, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, }, [MOVE_MOUNTAIN_GALE] = @@ -18102,13 +18105,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Giant chunks of ice damage\n" "the foe. It may flinch."), .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_ICE, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, .chance = 30, @@ -18122,16 +18125,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Dances to raise Attack,\n" "Defense and Speed."), .effect = EFFECT_VICTORY_DANCE, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 20, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, - .snatchAffected = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .danceMove = TRUE, + .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, }, @@ -18142,13 +18145,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with a full-body tackle.\n" "Lowers the users's defenses."), .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 120 : 100, + .type = TYPE_GROUND, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -18164,13 +18167,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Can poison on impact. Powers\n" "up against poisoned foes."), .effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 10 : 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = STATUS1_PSN_ANY, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, @@ -18185,14 +18188,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "High critical hit ratio.\n" "Ups the user's Speed."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 80 : 75, + .type = TYPE_PSYCHIC, .accuracy = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 90, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_PLUS_1, .self = TRUE, @@ -18207,13 +18210,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A spine-chilling resentment.\n" "May lower the foe's Attack."), .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 75 : 60, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ATK_MINUS_1, .chance = 100, @@ -18227,15 +18230,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user hardens their skin,\n" "sharply raising its Defense."), .effect = EFFECT_DEFENSE_UP_2, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, }, @@ -18246,14 +18249,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "High critical hit ratio.\n" "May lower Defense or flinch."), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 90 : 50, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 10 : 15, - .priority = 0, .criticalHitStage = 1, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_MINUS_1, .chance = 50, @@ -18271,13 +18274,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hurts a foe harder if it has\n" "an ailment. May leave a burn."), .effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = STATUS1_ANY, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -18292,13 +18295,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "High critical hit ratio. Sets\n" "Splinters that hurt the foe."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_DARK, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -18314,13 +18317,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with brutal, cold winds.\n" "May lower the foe's Speed."), .effect = EFFECT_RAIN_ALWAYS_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 95, + .type = TYPE_FLYING, .accuracy = 80, - .target = MOVE_TARGET_BOTH, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 10 : 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SPD_MINUS_1, @@ -18335,13 +18338,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with a brutal tempest.\n" "May inflict paralysis."), .effect = EFFECT_RAIN_ALWAYS_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 95, + .type = TYPE_ELECTRIC, .accuracy = 80, - .target = MOVE_TARGET_BOTH, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 10 : 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -18356,13 +18359,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with brutally hot sand.\n" "May inflict a burn."), .effect = EFFECT_RAIN_ALWAYS_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_SPECIAL, .power = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 95, + .type = TYPE_GROUND, .accuracy = 80, - .target = MOVE_TARGET_BOTH, .pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 10 : 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .windMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -18377,17 +18380,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user heals and cures\n" "itself and its ally."), .effect = EFFECT_JUNGLE_HEALING, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .snatchAffected = TRUE, - .healingMove = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, + .healingMove = TRUE, }, [MOVE_TAKE_HEART] = @@ -18397,15 +18400,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user lifts its spirits to\n" "heal and strengthen itself."), .effect = EFFECT_TAKE_HEART, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, }, @@ -18416,14 +18419,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "If the user's Terastallized,\n" "it hits with its Tera-type."), .effect = EFFECT_PLACEHOLDER, // EFFECT_TERA_BLAST, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, .forcePressure = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, // Only since it isn't implemented yet }, @@ -18434,13 +18437,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Protects itself, lowering\n" "Speed on contact."), .effect = EFFECT_PROTECT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 4, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -18453,13 +18456,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "May miss and hurt the kicker.\n" "May cause confusion."), .effect = EFFECT_RECOIL_IF_MISS, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_FIGHTING, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CONFUSION, @@ -18474,13 +18477,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "This move deals more damage\n" "for each defeated ally."), .effect = EFFECT_LAST_RESPECTS, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, // Only since it isn't implemented yet }, @@ -18491,13 +18494,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A mind-affecting light\n" "harshly lowers Sp. Def."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_DEF_MINUS_2, .chance = 100, @@ -18511,13 +18514,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Boosts a user's stats\n" "depending on Tatsugiri."), .effect = EFFECT_PLACEHOLDER, // EFFECT_ORDER_UP - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, }, @@ -18529,13 +18532,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A punch is thrown at blinding\n" "speed to strike first."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 60, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .metronomeBanned = TRUE, @@ -18548,13 +18551,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sharply ups target's Attack,\n" "harshly lowers its Defense."), .effect = EFFECT_PLACEHOLDER, // EFFECT_SPICY_EXTRACT - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .magicCoatAffected = TRUE, .metronomeBanned = TRUE, }, @@ -18566,13 +18569,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Furiously strains its legs.\n" "Harshly lowers user's Speed."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -18588,17 +18591,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user's fellows hit one\n" "to ten times in a row."), .effect = EFFECT_POPULATION_BOMB, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 20, + .type = TYPE_NORMAL, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 10, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .metronomeBanned = TRUE, + .strikeCount = 10, }, [MOVE_ICE_SPINNER] = @@ -18608,16 +18611,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Ice-covered feet hit a foe\n" "and destroy the terrain."), .effect = EFFECT_HIT_SET_REMOVE_TERRAIN, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_ICE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, - .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, .argument = ARG_TRY_REMOVE_TERRAIN_HIT, // Remove the active field terrain if there is one. + .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, }, [MOVE_GLAIVE_RUSH] = @@ -18627,13 +18630,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Foe attacks next turn can't\n" "miss and do double damage."), .effect = EFFECT_GLAIVE_RUSH, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, }, @@ -18644,17 +18647,17 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Revives a fainted party {PKMN}\n" "and restores half of its HP."), .effect = EFFECT_REVIVAL_BLESSING, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 1, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, - .healingMove = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, + .healingMove = TRUE, .sketchBanned = (B_SKETCH_BANS >= GEN_9), }, @@ -18665,13 +18668,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hurts foe every turn. Double\n" "damage to Steel and Water."), .effect = EFFECT_SALT_CURE, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 40, + .type = TYPE_ROCK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, }, @@ -18682,15 +18685,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits target with splashes\n" "of water 3 times in a row."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 30, + .type = TYPE_WATER, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .strikeCount = 3, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, + .strikeCount = 3, }, [MOVE_MORTAL_SPIN] = @@ -18700,13 +18703,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Erases trap moves and Leech\n" "Seed. Poisons adjecent foes."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 30, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 15, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_RAPIDSPIN, @@ -18725,13 +18728,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Changes user's and ally's\n" "Ability into the target's."), .effect = EFFECT_DOODLE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -18744,16 +18747,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Sharply boosts offenses and\n" "Speed by using its own HP."), .effect = EFFECT_FILLET_AWAY, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RECOVER_HP }, + .target = MOVE_TARGET_USER, .priority = 0, - .ignoresProtect = TRUE, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RECOVER_HP }, .snatchAffected = TRUE, + .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, }, @@ -18765,13 +18768,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "User slashes the foe after\n" "kowtowing. It never misses."), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 85, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, }, @@ -18783,13 +18786,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Rigged bouquet. Always gets\n" "a critical hit, never missing."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .alwaysCriticalHit = TRUE, }, @@ -18800,13 +18803,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Flames scorch the target.\n" "Boosts the user's Sp. Atk."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -18823,13 +18826,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Hits with light, fluid dance\n" "steps. Ups the user's Speed."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .danceMove = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -18846,13 +18849,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Tackle that breaks barriers.\n" "User's form determines type."), .effect = EFFECT_RAGING_BULL, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, }, @@ -18864,13 +18867,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lowers the user's Sp. Atk.\n" "Money is recovered after."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 120, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_BOTH, .pp = 5, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PAYDAY, @@ -18888,13 +18891,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Summons a ruinous disaster\n" "and cuts half the foe's HP."), .effect = EFFECT_SUPER_FANG, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_DARK, .accuracy = 90, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, }, @@ -18905,13 +18908,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Prehistoric explosion that's\n" "stronger if supereffective."), .effect = EFFECT_COLLISION_COURSE, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, }, @@ -18923,13 +18926,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Futuristic electricity. It's\n" "stronger if supereffective."), .effect = EFFECT_COLLISION_COURSE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .makesContact = TRUE, .metronomeBanned = TRUE, }, @@ -18941,14 +18944,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Creates a Substitute for\n" "itself before switching out."), .effect = EFFECT_SHED_TAIL, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -18961,14 +18964,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Bad joke summons snowstorm.\n" "The user also switches out."), .effect = EFFECT_CHILLY_RECEPTION, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ICE, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -18981,13 +18984,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "User tidies up hazards and\n" "raises its Attack and Speed."), .effect = EFFECT_PLACEHOLDER, // EFFECT_TIDY_UP - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -19000,14 +19003,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Summons a snowstorm that\n" "lasts for five turns."), .effect = EFFECT_SNOWSCAPE, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_ICE, .accuracy = 0, - .target = MOVE_TARGET_ALL_BATTLERS, .pp = 10, - .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, + .target = MOVE_TARGET_ALL_BATTLERS, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_SPD_UP_1 }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -19020,13 +19023,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user pounces on the foe,\n" "lowering its Speed."), .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_BUG, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -19042,13 +19045,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The user attacks suddenly,\n" "raising its Speed."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -19065,13 +19068,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A shower with ice-cold water\n" "lowers the target's Attack."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 50, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_ATK_MINUS_1, @@ -19086,13 +19089,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A spinning pointed part\n" "bypasses a foe's Protect."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresProtect = TRUE, .metronomeBanned = TRUE, @@ -19105,13 +19108,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Mystical eye-beams that hit\n" "the target twice in a row."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 40, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .strikeCount = 2, .metronomeBanned = TRUE, }, @@ -19123,13 +19126,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "The more the user has been\n" "hit, the stronger the move."), .effect = EFFECT_RAGE_FIST, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 50, + .type = TYPE_GHOST, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .punchingMove = TRUE, .metronomeBanned = TRUE, @@ -19142,13 +19145,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A strong attack but lowers\n" "the defensive stats."), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 120, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_DEF_SPDEF_DOWN, @@ -19163,13 +19166,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An attack that absorbs\n" "half the damage inflicted."), .effect = EFFECT_ABSORB, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 90, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, .healingMove = TRUE, @@ -19182,13 +19185,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Discharges all electricity,\n" "losing the Electric type."), .effect = EFFECT_FAIL_IF_NOT_ARG_TYPE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 120, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .metronomeBanned = TRUE, .argument = TYPE_ELECTRIC, @@ -19205,13 +19208,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Swings a huge hammer. Can't\n" "be used twice in a row."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 160, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .cantUseTwice = TRUE, }, @@ -19222,13 +19225,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Retaliates strongly against\n" "who last hurt the user."), .effect = EFFECT_METAL_BURST, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_DEPENDS, .pp = 10, + .target = MOVE_TARGET_DEPENDS, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .meFirstBanned = TRUE, .metronomeBanned = TRUE, @@ -19241,14 +19244,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Pressurized water cut with a\n" "high critical-hit ratio."), .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 70, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 1, .pp = 20, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 1, + .category = DAMAGE_CATEGORY_PHYSICAL, .slicingMove = TRUE, }, @@ -19257,22 +19260,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("BlazngTorque", "Blazing Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .mirrorMoveBanned = TRUE, .meFirstBanned = TRUE, .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .sketchBanned = (B_SKETCH_BANS >= GEN_9), .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, @@ -19285,22 +19288,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("WickedTorque", "Wicked Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_DARK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .mirrorMoveBanned = TRUE, .meFirstBanned = TRUE, .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .sketchBanned = (B_SKETCH_BANS >= GEN_9), .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SLEEP, @@ -19313,22 +19316,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("NoxiusTorque", "Noxious Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .mirrorMoveBanned = TRUE, .meFirstBanned = TRUE, .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .sketchBanned = (B_SKETCH_BANS >= GEN_9), .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_POISON, @@ -19341,22 +19344,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("CombatTorque", "Combat Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .mirrorMoveBanned = TRUE, .meFirstBanned = TRUE, .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .sketchBanned = (B_SKETCH_BANS >= GEN_9), .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, @@ -19369,22 +19372,22 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("MagiclTorque", "Magical Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_FAIRY, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .mirrorMoveBanned = TRUE, .meFirstBanned = TRUE, .mimicBanned = TRUE, .metronomeBanned = TRUE, .copycatBanned = TRUE, - .assistBanned = TRUE, .sleepTalkBanned = TRUE, .instructBanned = TRUE, .encoreBanned = TRUE, + .assistBanned = TRUE, .sketchBanned = (B_SKETCH_BANS >= GEN_9), .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_CONFUSION, @@ -19399,13 +19402,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "This move's power increases\n" "when on Electric Terrain."), .effect = EFFECT_PSYBLADE, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 80, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .slicingMove = TRUE, }, @@ -19417,13 +19420,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "This move's power increases\n" "under harsh sunlight."), .effect = EFFECT_HYDRO_STEAM, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_WATER, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .thawsUser = TRUE, }, @@ -19434,13 +19437,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Unleashes the blood moon.\n" "Can't be used twice in a row."), .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 140, + .type = TYPE_NORMAL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .cantUseTwice = TRUE, }, @@ -19451,16 +19454,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Absorbs half the damage\n" "inflicted. May cause a burn."), .effect = EFFECT_ABSORB, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_GRASS, .accuracy = 90, - .target = MOVE_TARGET_BOTH, .pp = 15, + .target = MOVE_TARGET_BOTH, .priority = 0, - .healingMove = B_EXTRAPOLATED_MOVE_FLAGS, + .category = DAMAGE_CATEGORY_SPECIAL, .thawsUser = TRUE, .metronomeBanned = TRUE, + .healingMove = B_EXTRAPOLATED_MOVE_FLAGS, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_BURN, .chance = 20, @@ -19474,13 +19477,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Lowers the foe's speed\n" "each turn for 3 turns."), .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 60, + .type = TYPE_GRASS, .accuracy = 85, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .ballisticMove = TRUE, .metronomeBanned = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -19496,14 +19499,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Type changes with held mask.\n" "High critical-hit ratio."), .effect = EFFECT_IVY_CUDGEL, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_GRASS, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, - .priority = 0, .criticalHitStage = 1, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .metronomeBanned = TRUE, }, @@ -19514,13 +19517,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Absorbs electricity in one turn,\n" "then attacks next turn."), .effect = EFFECT_TWO_TURNS_ATTACK, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 130, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = TWO_TURN_ARG(STRINGID_ELECTROSHOTCHARGING, B_WEATHER_RAIN), .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_SP_ATK_PLUS_1, @@ -19536,16 +19539,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Damages all opponents if user is\n" "Stellar form Terapagos."), .effect = EFFECT_PLACEHOLDER, //EFFECT_TERA_STARSTORM - .type = TYPE_NORMAL, // Stellar type if used by Terapagos-Stellar - .category = DAMAGE_CATEGORY_SPECIAL, .power = 120, + .type = TYPE_NORMAL, // Stellar type if used by Terapagos-Stellar .accuracy = 100, - .target = MOVE_TARGET_SELECTED, // MOVE_TARGET_BOTH if used by Terapagos-Stellar .pp = 5, + .target = MOVE_TARGET_SELECTED, // MOVE_TARGET_BOTH if used by Terapagos-Stellar .priority = 0, - .mimicBanned = TRUE, - .copycatBanned = TRUE, + .category = DAMAGE_CATEGORY_SPECIAL, .assistBanned = TRUE, + .copycatBanned = TRUE, + .mimicBanned = TRUE, .sketchBanned = (B_SKETCH_BANS >= GEN_9), }, @@ -19556,13 +19559,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Shoots a beam of light. Sometimes\n" "twice as strong."), .effect = EFFECT_FICKLE_BEAM, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_DRAGON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, }, [MOVE_BURNING_BULWARK] = @@ -19572,14 +19575,14 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Evades attack, and burns\n" "the foe if struck."), .effect = EFFECT_PROTECT, + .power = 0, .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_STATUS, - .power = 0, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, - .zMove = { .effect = Z_EFFECT_RESET_STATS }, + .target = MOVE_TARGET_USER, .priority = 4, + .category = DAMAGE_CATEGORY_STATUS, + .zMove = { .effect = Z_EFFECT_RESET_STATS }, .ignoresProtect = TRUE, .mirrorMoveBanned = TRUE, .metronomeBanned = TRUE, @@ -19592,13 +19595,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Thunderclap"), .description = sSuckerPunchDescription, .effect = EFFECT_SUCKER_PUNCH, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 70, + .type = TYPE_ELECTRIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 1, + .category = DAMAGE_CATEGORY_SPECIAL, }, [MOVE_MIGHTY_CLEAVE] = @@ -19606,13 +19609,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = HANDLE_EXPANDED_MOVE_NAME("MightyCleave", "Mighty Cleave"), .description = sFeintDescription, .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 95, + .type = TYPE_ROCK, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .ignoresProtect = TRUE, .slicingMove = TRUE, @@ -19625,13 +19628,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Launches particle blades at\n" "the target. Strikes twice."), .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 50, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .strikeCount = 2, .slicingMove = TRUE, }, @@ -19641,13 +19644,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Hard Press"), .description = sWringOutDescription, .effect = EFFECT_WRING_OUT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_STEEL, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, }, @@ -19658,13 +19661,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Increases allies' critical hit\n" "ratio, especially if Dragons."), .effect = EFFECT_DRAGON_CHEER, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_DRAGON, .accuracy = 0, - .target = MOVE_TARGET_ALLY, .pp = 15, + .target = MOVE_TARGET_ALLY, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, .ignoresSubstitute = TRUE, }, @@ -19675,13 +19678,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Confuses the target if their\n" "stats were boosted this turn."), .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 80, + .type = TYPE_FAIRY, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .soundMove = TRUE, .ignoresSubstitute = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -19698,13 +19701,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A desperation attack. Power\n" "doubles if last move failed."), .effect = EFFECT_STOMPING_TANTRUM, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 75, + .type = TYPE_FIRE, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, }, @@ -19715,13 +19718,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "An electrified slam. If it\n" "misses, the user is hurt."), .effect = EFFECT_RECOIL_IF_MISS, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 100, + .type = TYPE_ELECTRIC, .accuracy = 95, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, }, @@ -19732,13 +19735,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "Unpleasant sound waves that\n" "damage and prevent healing."), .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 75, + .type = TYPE_PSYCHIC, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .soundMove = TRUE, .ignoresSubstitute = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -19749,18 +19752,18 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_UPPER_HAND] = { + .effect = EFFECT_UPPER_HAND, .name = COMPOUND_STRING("Upper Hand"), .description = COMPOUND_STRING( "Makes the target flinch if\n" "readying a priority move."), - .effect = EFFECT_UPPER_HAND, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 65, + .type = TYPE_FIGHTING, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 15, + .target = MOVE_TARGET_SELECTED, .priority = 3, + .category = DAMAGE_CATEGORY_PHYSICAL, .makesContact = TRUE, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_FLINCH, @@ -19775,13 +19778,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = "A corrosive chain attack\n" "that may badly poison."), .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 100, + .type = TYPE_POISON, .accuracy = 100, - .target = MOVE_TARGET_SELECTED, .pp = 5, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_TOXIC, .chance = 50, @@ -19794,65 +19797,65 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Breakneck Blitz"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, //determined from move type .power = 1, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, //determined from move type }, [MOVE_ALL_OUT_PUMMELING] = { .name = COMPOUND_STRING("All Out Pummeling"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_SUPERSONIC_SKYSTRIKE] = { .name = COMPOUND_STRING("Supersonic Skystrike"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FLYING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_ACID_DOWNPOUR] = { .name = COMPOUND_STRING("Acid Downpour"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_POISON, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_TECTONIC_RAGE] = { .name = COMPOUND_STRING("Tectonic Rage"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_GROUND, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, }, [MOVE_CONTINENTAL_CRUSH] = @@ -19860,209 +19863,209 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Continental Crush"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_ROCK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_SAVAGE_SPIN_OUT] = { .name = COMPOUND_STRING("Savage Spin Out"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_NEVER_ENDING_NIGHTMARE] = { .name = COMPOUND_STRING("Never Ending Nightmare"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_GHOST, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_CORKSCREW_CRASH] = { .name = COMPOUND_STRING("Corkscrew Crash"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_INFERNO_OVERDRIVE] = { .name = COMPOUND_STRING("Inferno Overdrive"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FIRE, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_HYDRO_VORTEX] = { .name = COMPOUND_STRING("Hydro Vortex"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_BLOOM_DOOM] = { .name = COMPOUND_STRING("Bloom Doom"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_GIGAVOLT_HAVOC] = { .name = COMPOUND_STRING("Gigavolt Havoc"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_SHATTERED_PSYCHE] = { .name = COMPOUND_STRING("Shattered Psyche"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_SUBZERO_SLAMMER] = { .name = COMPOUND_STRING("Subzero Slammer"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_ICE, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_DEVASTATING_DRAKE] = { .name = COMPOUND_STRING("Devastating Drake"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_DRAGON, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_BLACK_HOLE_ECLIPSE] = { .name = COMPOUND_STRING("Black Hole Eclipse"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_TWINKLE_TACKLE] = { .name = COMPOUND_STRING("Twinkle Tackle"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_CATASTROPIKA] = { .name = COMPOUND_STRING("Catastropika"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 210, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_10000000_VOLT_THUNDERBOLT] = { .name = COMPOUND_STRING("10000000 Volt Thunderbolt"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 195, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, + .criticalHitStage = 2, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .criticalHitStage = 2, + .category = DAMAGE_CATEGORY_SPECIAL, }, [MOVE_STOKED_SPARKSURFER] = { .name = COMPOUND_STRING("Stoked Sparksurfer"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 175, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .additionalEffects = ADDITIONAL_EFFECTS({ .moveEffect = MOVE_EFFECT_PARALYSIS, .chance = 100, @@ -20073,39 +20076,39 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Extreme Evoboost"), .description = sNullDescription, .effect = EFFECT_EXTREME_EVOBOOST, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 1, + .target = MOVE_TARGET_USER, .priority = 0, + .category = DAMAGE_CATEGORY_STATUS, }, [MOVE_PULVERIZING_PANCAKE] = { .name = COMPOUND_STRING("Pulverizing Pancake"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 210, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_GENESIS_SUPERNOVA] = { .name = COMPOUND_STRING("Genesis Supernova"), .description = sNullDescription, .effect = EFFECT_HIT_SET_REMOVE_TERRAIN, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 185, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .argument = ARG_SET_PSYCHIC_TERRAIN, // Set Psychic Terrain. If there's a different field terrain active, overwrite it. }, [MOVE_SINISTER_ARROW_RAID] = @@ -20113,52 +20116,52 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Sinister Arrow Raid"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 180, + .type = TYPE_GHOST, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_MALICIOUS_MOONSAULT] = { .name = COMPOUND_STRING("Malicious Moonsault"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 180, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_OCEANIC_OPERETTA] = { .name = COMPOUND_STRING("Oceaning Operetta"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 195, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, }, [MOVE_SPLINTERED_STORMSHARDS] = { .name = COMPOUND_STRING("Splintered Stormshards"), .description = sNullDescription, .effect = EFFECT_HIT_SET_REMOVE_TERRAIN, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 190, + .type = TYPE_ROCK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = ARG_TRY_REMOVE_TERRAIN_HIT, // Remove the active field terrain if there is one. }, [MOVE_LETS_SNUGGLE_FOREVER] = @@ -20166,26 +20169,26 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Let's Snuggle Forever"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 190, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_CLANGOROUS_SOULBLAZE] = { .name = COMPOUND_STRING("Clangorous Soulblaze"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 185, + .type = TYPE_DRAGON, .accuracy = 0, - .target = MOVE_TARGET_BOTH, .pp = 1, + .target = MOVE_TARGET_BOTH, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, .soundMove = TRUE, .ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6, .additionalEffects = ADDITIONAL_EFFECTS({ @@ -20199,65 +20202,65 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Guardian Of Alola"), .description = sNullDescription, .effect = EFFECT_SUPER_FANG, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 1, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, }, [MOVE_SEARING_SUNRAZE_SMASH] = { .name = COMPOUND_STRING("Searing Sunraze Smash"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 200, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_MENACING_MOONRAZE_MAELSTROM] = { .name = COMPOUND_STRING("Menacing Moonraze Maelstrom"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 200, + .type = TYPE_GHOST, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, }, [MOVE_LIGHT_THAT_BURNS_THE_SKY] = { .name = COMPOUND_STRING("Light That Burns The Sky"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_SPECIAL, .power = 200, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_SPECIAL, }, [MOVE_SOUL_STEALING_7_STAR_STRIKE] = { .name = COMPOUND_STRING("Soul Stealing 7 Star Strike"), .description = sNullDescription, .effect = EFFECT_HIT, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 195, + .type = TYPE_GHOST, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 1, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, }, [MOVE_MAX_GUARD] = @@ -20265,13 +20268,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Guard"), .description = sNullDescription, .effect = EFFECT_PROTECT, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_STATUS, .power = 0, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_USER, .pp = 10, + .target = MOVE_TARGET_USER, .priority = 4, + .category = DAMAGE_CATEGORY_STATUS, }, [MOVE_MAX_FLARE] = @@ -20279,13 +20282,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Flare"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FIRE, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_SUN, }, @@ -20294,13 +20297,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Flutterby"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_LOWER_SP_ATK, }, @@ -20309,13 +20312,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Lightning"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_ELECTRIC_TERRAIN, }, @@ -20324,13 +20327,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Strike"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_LOWER_SPEED, }, @@ -20339,13 +20342,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Knuckle"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_RAISE_TEAM_ATTACK, }, @@ -20354,13 +20357,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Phantasm"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_GHOST, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_LOWER_DEFENSE, }, @@ -20369,13 +20372,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Hailstorm"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_ICE, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_HAIL, }, @@ -20384,13 +20387,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Ooze"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_POISON, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_RAISE_TEAM_SP_ATK, }, @@ -20399,13 +20402,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Geyser"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_RAIN, }, @@ -20414,13 +20417,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Airstream"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FLYING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_RAISE_TEAM_SPEED, }, @@ -20429,13 +20432,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Starfall"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_MISTY_TERRAIN, }, @@ -20444,13 +20447,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Wyrmwind"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_DRAGON, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_LOWER_ATTACK, }, @@ -20459,13 +20462,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Mindstorm"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_PSYCHIC_TERRAIN, }, @@ -20474,13 +20477,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Rockfall"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_ROCK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_SANDSTORM, }, @@ -20489,15 +20492,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Quake"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_GROUND, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_RAISE_TEAM_SP_DEF, + .skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS, }, [MOVE_MAX_DARKNESS] = @@ -20505,13 +20508,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Darkness"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 1, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_LOWER_SP_DEF, }, @@ -20520,13 +20523,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Overgrowth"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_GRASSY_TERRAIN, }, @@ -20535,13 +20538,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("Max Steelspike"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_RAISE_TEAM_DEFENSE, }, @@ -20550,13 +20553,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Vine Lash"), .description = sNullDescription, //ANIM TODO .effect = EFFECT_MAX_MOVE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_VINE_LASH, }, @@ -20565,13 +20568,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Wildfire"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_FIRE, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_WILDFIRE, }, @@ -20580,13 +20583,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Canonade"), .description = sNullDescription, //ANIM TODO .effect = EFFECT_MAX_MOVE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_CANNONADE, }, @@ -20595,13 +20598,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Befuddle"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_BUG, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_BUG, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_EFFECT_SPORE_FOES, }, @@ -20610,13 +20613,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Volt Crash"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_PARALYZE_FOES, }, @@ -20625,13 +20628,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Gold Rush"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_CONFUSE_FOES_PAY_DAY, }, @@ -20640,13 +20643,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Chi Strike"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FIGHTING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_FIGHTING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_CRIT_PLUS, }, @@ -20655,13 +20658,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Terror"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_GHOST, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_GHOST, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_MEAN_LOOK, }, @@ -20670,13 +20673,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Foam Burst"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_LOWER_SPEED_2_FOES, }, @@ -20685,13 +20688,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Resonance"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_ICE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_ICE, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_AURORA_VEIL, }, @@ -20700,13 +20703,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Cuddle"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_INFATUATE_FOES, }, @@ -20715,13 +20718,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Replenish"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_NORMAL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_NORMAL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_RECYCLE_BERRIES, }, @@ -20730,13 +20733,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Malodor"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_POISON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_POISON, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_POISON_FOES, }, @@ -20745,13 +20748,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Meltdown"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_TORMENT_FOES, }, @@ -20760,15 +20763,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Drum Solo"), .description = sNullDescription, //ANIM TODO .effect = EFFECT_MAX_MOVE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .ignoresTargetAbility = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_FIXED_POWER, //EFFECT TODO + .ignoresTargetAbility = TRUE, }, [MOVE_G_MAX_FIREBALL] = @@ -20776,15 +20779,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Fireball"), .description = sNullDescription, //ANIM TODO .effect = EFFECT_MAX_MOVE, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_FIRE, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .ignoresTargetAbility = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_FIXED_POWER, //EFFECT TODO + .ignoresTargetAbility = TRUE, }, [MOVE_G_MAX_HYDROSNIPE] = @@ -20792,15 +20795,15 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Hydrosnipe"), .description = sNullDescription, //ANIM TODO .effect = EFFECT_MAX_MOVE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, - .ignoresTargetAbility = TRUE, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_FIXED_POWER, //EFFECT TODO + .ignoresTargetAbility = TRUE, }, [MOVE_G_MAX_WIND_RAGE] = @@ -20808,13 +20811,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Wind Rage"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FLYING, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_FLYING, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_DEFOG, }, @@ -20823,13 +20826,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Gravitas"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_PSYCHIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_PSYCHIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_GRAVITY, }, @@ -20838,13 +20841,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Stonesurge"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_STEALTH_ROCK, }, @@ -20853,13 +20856,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Volcalith"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_ROCK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_ROCK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_VOLCALITH, }, @@ -20868,13 +20871,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Tartness"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_LOWER_EVASIVENESS_FOES, }, @@ -20883,13 +20886,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Sweetness"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_GRASS, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_GRASS, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_AROMATHERAPY, }, @@ -20898,13 +20901,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Sandblast"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_GROUND, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_GROUND, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_SANDBLAST_FOES, }, @@ -20913,13 +20916,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Stun Shock"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_ELECTRIC, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_ELECTRIC, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_POISON_PARALYZE_FOES, }, @@ -20928,13 +20931,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Centiferno"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FIRE, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_FIRE, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_FIRE_SPIN_FOES, }, @@ -20943,13 +20946,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Smite"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_CONFUSE_FOES, }, @@ -20959,13 +20962,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Snooze"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_YAWN_FOE, }, @@ -20974,13 +20977,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Finale"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_FAIRY, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_FAIRY, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_HEAL_TEAM, }, @@ -20989,13 +20992,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Steelsurge"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_STEEL, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_STEEL, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_STEELSURGE, }, @@ -21004,13 +21007,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Depletion"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_DRAGON, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_DRAGON, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_SPITE, }, @@ -21019,13 +21022,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max One Blow"), .description = sNullDescription, .effect = EFFECT_MAX_MOVE, - .type = TYPE_DARK, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_DARK, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_BYPASS_PROTECT, //EFFECT TODO }, @@ -21034,13 +21037,13 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .name = COMPOUND_STRING("G-Max Rapid Flow"), .description = sNullDescription, //ANIM TODO .effect = EFFECT_MAX_MOVE, - .type = TYPE_WATER, - .category = DAMAGE_CATEGORY_PHYSICAL, .power = 10, + .type = TYPE_WATER, .accuracy = 0, - .target = MOVE_TARGET_SELECTED, .pp = 10, + .target = MOVE_TARGET_SELECTED, .priority = 0, + .category = DAMAGE_CATEGORY_PHYSICAL, .argument = MAX_EFFECT_BYPASS_PROTECT, //EFFECT TODO },