* Change Frostbite abbreviation from FSB to FRB * Melted the ice is actually the one used * Update moves_info.h * Update moves_info.h * Update items.h
21075 lines
668 KiB
C
21075 lines
668 KiB
C
#include "battle_dynamax.h"
|
|
#include "constants/battle.h"
|
|
#include "constants/battle_move_effects.h"
|
|
#include "constants/battle_script_commands.h"
|
|
#include "constants/battle_string_ids.h"
|
|
#include "constants/battle_z_move_effects.h"
|
|
#include "constants/hold_effects.h"
|
|
#include "constants/moves.h"
|
|
#include "constants/contest.h"
|
|
|
|
// The Gen. 4+ contest data comes from urpg's contest movedex.
|
|
|
|
#if B_EXPANDED_MOVE_NAMES == TRUE
|
|
#define HANDLE_EXPANDED_MOVE_NAME(_name, ...) COMPOUND_STRING(DEFAULT(_name, __VA_ARGS__))
|
|
#else
|
|
#define HANDLE_EXPANDED_MOVE_NAME(_name, ...) COMPOUND_STRING(_name)
|
|
#endif
|
|
|
|
#if B_BINDING_TURNS >= GEN_5
|
|
#define BINDING_TURNS "4 or 5"
|
|
#else
|
|
#define BINDING_TURNS "2 to 5"
|
|
#endif
|
|
|
|
/* First arg is the charge turn string id, second arg depends on effect
|
|
EFFECT_SEMI_INVULNERABLE/EFFECT_SKY_DROP: semi-invulnerable STATUS3 to apply to battler
|
|
EFFECT_TWO_TURNS_ATTACK/EFFECT_SOLAR_BEAM: weather in which to skip charge turn */
|
|
#define TWO_TURN_ARG(stringid, ...) (stringid) __VA_OPT__(| ((__VA_ARGS__) << 16))
|
|
|
|
// Shared Move Description entries
|
|
|
|
const u8 gNotDoneYetDescription[] = _(
|
|
"This move can't be used. Its\n"
|
|
"effect is in development.");
|
|
|
|
static const u8 sNullDescription[] = _("");
|
|
|
|
static const u8 sMegaDrainDescription[] = _(
|
|
"An attack that absorbs\n"
|
|
"half the damage inflicted.");
|
|
|
|
static const u8 sHyperBeamDescription[] = _(
|
|
"Powerful, but leaves the\n"
|
|
"user immobile the next turn.");
|
|
|
|
static const u8 sRevengeDescription[] = _(
|
|
"An attack that gains power\n"
|
|
"if injured by the foe.");
|
|
|
|
static const u8 sPluckDescription[] = _(
|
|
"Eats the foe's held Berry\n"
|
|
"gaining its effect.");
|
|
|
|
static const u8 sHealingWishDescription[] = _(
|
|
"The user faints to heal up\n"
|
|
"the recipient.");
|
|
|
|
static const u8 sWringOutDescription[] = _(
|
|
"The higher the foe's HP\n"
|
|
"the more damage caused.");
|
|
|
|
static const u8 sUTurnDescription[] = _(
|
|
"Does damage then switches\n"
|
|
"out the user.");
|
|
|
|
static const u8 sStormThrowDescription[] = _(
|
|
"This attack always results\n"
|
|
"in a critical hit.");
|
|
|
|
static const u8 sCircleThrowDescription[] = _(
|
|
"Knocks the foe away to end\n"
|
|
"the battle.");
|
|
|
|
static const u8 sChipAwayDescription[] = _(
|
|
"Strikes through the foe's\n"
|
|
"stat changes.");
|
|
|
|
static const u8 sHeavySlamDescription[] = _(
|
|
"Does more damage if the\n"
|
|
"user outweighs the foe.");
|
|
|
|
static const u8 sPsyshockDescription[] = _(
|
|
"Attacks with a psychic wave\n"
|
|
"that does physical damage.");
|
|
|
|
static const u8 sLavaPlumeDescription[] = _(
|
|
"Scarlet flames torch\n"
|
|
"everything around the user.");
|
|
|
|
static const u8 sShadowForceDescription[] = _(
|
|
"Vanishes on the first turn\n"
|
|
"then strikes the next turn.");
|
|
|
|
static const u8 sFalseSwipeDescription[] = _(
|
|
"An attack that leaves the\n"
|
|
"foe with at least 1 HP.");
|
|
|
|
static const u8 sDrainingKissDescription[] = _(
|
|
"An attack that absorbs over\n"
|
|
"half the damage inflicted.");
|
|
|
|
static const u8 sCloseCombatDescription[] = _(
|
|
"A strong attack but lowers\n"
|
|
"the defensive stats.");
|
|
|
|
static const u8 sHyperspaceHoleDescription[] = _(
|
|
"Uses a warp hole to attack.\n"
|
|
"Can't be evaded.");
|
|
|
|
static const u8 sSuckerPunchDescription[] = _(
|
|
"Strikes first if the foe\n"
|
|
"is preparing an attack.");
|
|
|
|
static const u8 sFeintDescription[] = _(
|
|
"An attack that hits foes\n"
|
|
"using moves like Protect.");
|
|
|
|
const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] =
|
|
{
|
|
[MOVE_NONE] =
|
|
{
|
|
.name = COMPOUND_STRING("-"),
|
|
.description = COMPOUND_STRING(""),
|
|
.effect = EFFECT_HIT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 0,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.sketchBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_POUND] =
|
|
{
|
|
.name = COMPOUND_STRING("Pound"),
|
|
.description = COMPOUND_STRING(
|
|
"Pounds the foe with\n"
|
|
"forelegs or tail."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_POUND,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_KARATE_CHOP] =
|
|
{
|
|
.name = COMPOUND_STRING("Karate Chop"),
|
|
.description = COMPOUND_STRING(
|
|
"A chopping attack with a\n"
|
|
"high critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_DOUBLE_SLAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Double Slap"),
|
|
.description = COMPOUND_STRING(
|
|
"Repeatedly slaps the foe\n"
|
|
"2 to 5 times."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 15,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 85,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_POUND},
|
|
},
|
|
|
|
[MOVE_COMET_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Comet Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"Repeatedly punches the foe\n"
|
|
"2 to 5 times."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 18,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 85,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MEGA_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Mega Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"A strong punch thrown with\n"
|
|
"incredible power."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 85,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY, COMBO_STARTER_MIND_READER},
|
|
},
|
|
|
|
[MOVE_PAY_DAY] =
|
|
{
|
|
.name = COMPOUND_STRING("Pay Day"),
|
|
.description = COMPOUND_STRING(
|
|
"Throws coins at the foe.\n"
|
|
"Money is recovered after."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PAYDAY,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FIRE_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Fire Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"A fiery punch that may burn\n"
|
|
"the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_FIRE_PUNCH,
|
|
.contestComboMoves = {COMBO_STARTER_ICE_PUNCH, COMBO_STARTER_SUNNY_DAY, COMBO_STARTER_THUNDER_PUNCH},
|
|
},
|
|
|
|
[MOVE_ICE_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Ice Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"An icy punch that may\n"
|
|
#if B_USE_FROSTBITE == TRUE
|
|
"leave the foe with frostbite."),
|
|
#else
|
|
"freeze the foe."),
|
|
#endif
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_ICE_PUNCH,
|
|
.contestComboMoves = {COMBO_STARTER_FIRE_PUNCH, COMBO_STARTER_THUNDER_PUNCH},
|
|
},
|
|
|
|
[MOVE_THUNDER_PUNCH] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ThunderPunch", "Thunder Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"An electrified punch that\n"
|
|
"may paralyze the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_THUNDER_PUNCH,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE, COMBO_STARTER_FIRE_PUNCH, COMBO_STARTER_ICE_PUNCH},
|
|
},
|
|
|
|
[MOVE_SCRATCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Scratch"),
|
|
.description = COMPOUND_STRING(
|
|
"Scratches the foe with\n"
|
|
"sharp claws."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 35,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_SCRATCH,
|
|
.contestComboMoves = {COMBO_STARTER_LEER},
|
|
},
|
|
|
|
[MOVE_VISE_GRIP] =
|
|
{
|
|
.name = COMPOUND_STRING("Vise Grip"),
|
|
.description = COMPOUND_STRING(
|
|
"Grips the foe with large and\n"
|
|
"powerful pincers."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 55,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_VICE_GRIP,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GUILLOTINE] =
|
|
{
|
|
.name = COMPOUND_STRING("Guillotine"),
|
|
.description = COMPOUND_STRING(
|
|
"A powerful pincer attack\n"
|
|
"that may cause fainting."),
|
|
.effect = EFFECT_OHKO,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 30,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_VICE_GRIP},
|
|
},
|
|
|
|
[MOVE_RAZOR_WIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Razor Wind"),
|
|
.description = COMPOUND_STRING(
|
|
"A 2-turn move that strikes\n"
|
|
"the foe on the 2nd turn."),
|
|
.effect = EFFECT_TWO_TURNS_ATTACK,
|
|
.power = 80,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SWORDS_DANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Swords Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"A fighting dance that\n"
|
|
"sharply raises Attack."),
|
|
.effect = EFFECT_ATTACK_UP_2,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CUT] =
|
|
{
|
|
.name = COMPOUND_STRING("Cut"),
|
|
.description = COMPOUND_STRING(
|
|
"Cuts the foe with sharp\n"
|
|
"scythes, claws, etc."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 95,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SWORDS_DANCE},
|
|
},
|
|
|
|
[MOVE_GUST] =
|
|
{
|
|
.name = COMPOUND_STRING("Gust"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes the foe with a gust\n"
|
|
"of wind whipped up by wings."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.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),
|
|
.damagesAirborneDoubleDamage = TRUE,
|
|
.windMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WING_ATTACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Wing Attack"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes the foe with wings\n"
|
|
"spread wide."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WHIRLWIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Whirlwind"),
|
|
.description = COMPOUND_STRING(
|
|
"Blows away the foe with\n"
|
|
"wind and ends the battle."),
|
|
.effect = EFFECT_ROAR,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 0 : 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = -6,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLY] =
|
|
{
|
|
.name = COMPOUND_STRING("Fly"),
|
|
.description = COMPOUND_STRING(
|
|
"Flies up on the first turn,\n"
|
|
"then strikes the next turn."),
|
|
.effect = EFFECT_SEMI_INVULNERABLE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_4 ? 90 : 70,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.gravityBanned = 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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Bind"),
|
|
.description = COMPOUND_STRING(
|
|
"Binds and squeezes the foe\n"
|
|
"for "BINDING_TURNS" turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 15,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 75,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ignoresKingsRock = B_UPDATED_MOVE_FLAGS < GEN_3,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_WRAP,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_VICE_GRIP},
|
|
},
|
|
|
|
[MOVE_SLAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Slam"),
|
|
.description = COMPOUND_STRING(
|
|
"Slams the foe with a long\n"
|
|
"tail, vine, etc."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 75,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_POUND},
|
|
},
|
|
|
|
[MOVE_VINE_WHIP] =
|
|
{
|
|
.name = COMPOUND_STRING("Vine Whip"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes the foe with\n"
|
|
"slender, whiplike vines."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_6
|
|
.pp = 25,
|
|
#elif B_UPDATED_MOVE_DATA >= GEN_4
|
|
.pp = 15,
|
|
#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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_STOMP] =
|
|
{
|
|
.name = COMPOUND_STRING("Stomp"),
|
|
.description = COMPOUND_STRING(
|
|
"Stomps the enemy with a big\n"
|
|
"foot. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.minimizeDoubleDamage = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_LEER},
|
|
},
|
|
|
|
[MOVE_DOUBLE_KICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Double Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"A double-kicking attack\n"
|
|
"that strikes the foe twice."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 30,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.strikeCount = 2,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MEGA_KICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Mega Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"An extremely powerful kick\n"
|
|
"with intense force."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 75,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY, COMBO_STARTER_MIND_READER},
|
|
},
|
|
|
|
[MOVE_JUMP_KICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Jump Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"A strong jumping kick. May\n"
|
|
"miss and hurt the kicker."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_5
|
|
.power = 100,
|
|
#elif B_UPDATED_MOVE_DATA >= GEN_4
|
|
.power = 85,
|
|
#else
|
|
.power = 70,
|
|
#endif
|
|
.effect = EFFECT_RECOIL_IF_MISS,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 95,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_MIND_READER},
|
|
},
|
|
|
|
[MOVE_ROLLING_KICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Rolling Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"A fast kick delivered from\n"
|
|
"a rapid spin."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 85,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ignoresKingsRock = B_UPDATED_MOVE_FLAGS < GEN_3,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SAND_ATTACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Sand Attack"),
|
|
.description = COMPOUND_STRING(
|
|
"Reduces the foe's accuracy\n"
|
|
"by hurling sand in its face."),
|
|
.effect = EFFECT_ACCURACY_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_SAND_ATTACK,
|
|
.contestComboMoves = {COMBO_STARTER_MUD_SLAP, COMBO_STARTER_SANDSTORM},
|
|
},
|
|
|
|
[MOVE_HEADBUTT] =
|
|
{
|
|
.name = COMPOUND_STRING("Headbutt"),
|
|
.description = COMPOUND_STRING(
|
|
"A ramming attack that may\n"
|
|
"cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_HORN_ATTACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Horn Attack"),
|
|
.description = COMPOUND_STRING(
|
|
"Jabs the foe with sharp\n"
|
|
"horns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_HORN_ATTACK,
|
|
.contestComboMoves = {COMBO_STARTER_LEER},
|
|
},
|
|
|
|
[MOVE_FURY_ATTACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Fury Attack"),
|
|
.description = COMPOUND_STRING(
|
|
"Jabs the foe 2 to 5 times\n"
|
|
"with sharp horns, etc."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 15,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 85,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HORN_ATTACK, COMBO_STARTER_PECK},
|
|
},
|
|
|
|
[MOVE_HORN_DRILL] =
|
|
{
|
|
.name = COMPOUND_STRING("Horn Drill"),
|
|
.description = COMPOUND_STRING(
|
|
"A one-hit KO attack that\n"
|
|
"uses a horn like a drill."),
|
|
.effect = EFFECT_OHKO,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 30,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HORN_ATTACK},
|
|
},
|
|
|
|
[MOVE_TACKLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Tackle"),
|
|
.description = COMPOUND_STRING(
|
|
"Charges the foe with a full-\n"
|
|
"body tackle."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_7
|
|
.power = 40,
|
|
#elif B_UPDATED_MOVE_DATA >= GEN_5
|
|
.power = 50,
|
|
#else
|
|
.power = 35,
|
|
#endif
|
|
.effect = EFFECT_HIT,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 95,
|
|
.pp = 35,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_DEFENSE_CURL, COMBO_STARTER_HARDEN, COMBO_STARTER_LEER},
|
|
},
|
|
|
|
[MOVE_BODY_SLAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Body Slam"),
|
|
.description = COMPOUND_STRING(
|
|
"A full-body slam that may\n"
|
|
"cause paralysis."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 85,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.skyBattleBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WRAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Wrap"),
|
|
.description = COMPOUND_STRING(
|
|
"Wraps and squeezes the foe\n"
|
|
BINDING_TURNS" times with vines, etc."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 15,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 85,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_WRAP,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TAKE_DOWN] =
|
|
{
|
|
.name = COMPOUND_STRING("Take Down"),
|
|
.description = COMPOUND_STRING(
|
|
"A reckless charge attack\n"
|
|
"that also hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 85,
|
|
.recoil = 25,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY, COMBO_STARTER_HARDEN},
|
|
},
|
|
|
|
[MOVE_THRASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Thrash"),
|
|
.description = COMPOUND_STRING(
|
|
"A rampage of 2 to 3 turns\n"
|
|
"that confuses the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 120 : 90,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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({
|
|
.moveEffect = MOVE_EFFECT_THRASH,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAGE},
|
|
},
|
|
|
|
[MOVE_DOUBLE_EDGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Double-Edge"),
|
|
.description = COMPOUND_STRING(
|
|
"A life-risking tackle that\n"
|
|
"also hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.recoil = 33,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY, COMBO_STARTER_HARDEN},
|
|
},
|
|
|
|
[MOVE_TAIL_WHIP] =
|
|
{
|
|
.name = COMPOUND_STRING("Tail Whip"),
|
|
.description = COMPOUND_STRING(
|
|
"Wags the tail to lower the\n"
|
|
"foe's Defense."),
|
|
.effect = EFFECT_DEFENSE_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARM},
|
|
},
|
|
|
|
[MOVE_POISON_STING] =
|
|
{
|
|
.name = COMPOUND_STRING("Poison Sting"),
|
|
.description = COMPOUND_STRING(
|
|
"A toxic attack with barbs,\n"
|
|
"etc., that may poison."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 15,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 35,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TWINEEDLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Twineedle"),
|
|
.description = COMPOUND_STRING(
|
|
"Stingers on the forelegs\n"
|
|
"jab the foe twice."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 25,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PIN_MISSILE] =
|
|
{
|
|
.name = COMPOUND_STRING("Pin Missile"),
|
|
.description = COMPOUND_STRING(
|
|
"Sharp pins are fired to\n"
|
|
"strike 2 to 5 times."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 25 : 14,
|
|
.type = TYPE_BUG,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 95 : 85,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LEER] =
|
|
{
|
|
.name = COMPOUND_STRING("Leer"),
|
|
.description = COMPOUND_STRING(
|
|
"Frightens the foe with a\n"
|
|
"leer to lower Defense."),
|
|
.effect = EFFECT_DEFENSE_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_LEER,
|
|
.contestComboMoves = {COMBO_STARTER_RAGE, COMBO_STARTER_SCARY_FACE},
|
|
},
|
|
|
|
[MOVE_BITE] =
|
|
{
|
|
.name = COMPOUND_STRING("Bite"),
|
|
.description = COMPOUND_STRING(
|
|
"Bites with vicious fangs.\n"
|
|
"May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_LEER, COMBO_STARTER_SCARY_FACE},
|
|
},
|
|
|
|
[MOVE_GROWL] =
|
|
{
|
|
.name = COMPOUND_STRING("Growl"),
|
|
.description = COMPOUND_STRING(
|
|
"Growls cutely to reduce the\n"
|
|
"foe's Attack."),
|
|
.effect = EFFECT_ATTACK_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 40,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARM},
|
|
},
|
|
|
|
[MOVE_ROAR] =
|
|
{
|
|
.name = COMPOUND_STRING("Roar"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the foe flee to end\n"
|
|
"the battle."),
|
|
.effect = EFFECT_ROAR,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 0 : 100,
|
|
.pp = 20,
|
|
.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,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SING] =
|
|
{
|
|
.name = COMPOUND_STRING("Sing"),
|
|
.description = COMPOUND_STRING(
|
|
"A soothing song lulls the\n"
|
|
"foe into a deep slumber."),
|
|
.effect = EFFECT_SLEEP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 55,
|
|
.pp = 15,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = COMBO_STARTER_SING,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SUPERSONIC] =
|
|
{
|
|
.name = COMPOUND_STRING("Supersonic"),
|
|
.description = COMPOUND_STRING(
|
|
"Emits bizarre sound waves\n"
|
|
"that may confuse the foe."),
|
|
.effect = EFFECT_CONFUSE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 55,
|
|
.pp = 20,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SONIC_BOOM] =
|
|
{
|
|
.name = COMPOUND_STRING("Sonic Boom"),
|
|
.description = COMPOUND_STRING(
|
|
"Launches shock waves that\n"
|
|
"always inflict 20 HP damage."),
|
|
.effect = EFFECT_FIXED_DAMAGE_ARG,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 90,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DISABLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Disable"),
|
|
.description = COMPOUND_STRING(
|
|
"Psychically disables one of\n"
|
|
"the foe's moves."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_5
|
|
.accuracy = 100,
|
|
#elif B_UPDATED_MOVE_DATA == GEN_4
|
|
.accuracy = 80,
|
|
#else
|
|
.accuracy = 55,
|
|
#endif
|
|
.effect = EFFECT_DISABLE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ACID] =
|
|
{
|
|
.name = COMPOUND_STRING("Acid"),
|
|
.description = COMPOUND_STRING(
|
|
"Sprays a hide-melting acid.\n"
|
|
#if B_UPDATED_MOVE_DATA >= GEN_4
|
|
"May lower Sp. Def."),
|
|
#else
|
|
"May lower Defense."),
|
|
#endif
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.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,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_EMBER] =
|
|
{
|
|
.name = COMPOUND_STRING("Ember"),
|
|
.description = COMPOUND_STRING(
|
|
"A weak fire attack that may\n"
|
|
"inflict a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_FLAMETHROWER] =
|
|
{
|
|
.name = COMPOUND_STRING("Flamethrower"),
|
|
.description = COMPOUND_STRING(
|
|
"A powerful fire attack that\n"
|
|
"may inflict a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_MIST] =
|
|
{
|
|
.name = COMPOUND_STRING("Mist"),
|
|
.description = COMPOUND_STRING(
|
|
"Creates a mist that stops\n"
|
|
"reduction of abilities."),
|
|
.effect = EFFECT_MIST,
|
|
.power = 0,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RECOVER_HP },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WATER_GUN] =
|
|
{
|
|
.name = COMPOUND_STRING("Water Gun"),
|
|
.description = COMPOUND_STRING(
|
|
"Squirts water to attack\n"
|
|
"the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_MUD_SPORT, COMBO_STARTER_RAIN_DANCE, COMBO_STARTER_WATER_SPORT},
|
|
},
|
|
|
|
[MOVE_HYDRO_PUMP] =
|
|
{
|
|
.name = COMPOUND_STRING("Hydro Pump"),
|
|
.description = COMPOUND_STRING(
|
|
"Blasts water at high power\n"
|
|
"to strike the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 80,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_SURF] =
|
|
{
|
|
.name = COMPOUND_STRING("Surf"),
|
|
.description = COMPOUND_STRING(
|
|
"Creates a huge wave, then\n"
|
|
"crashes it down on the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_SURF,
|
|
.contestComboMoves = {COMBO_STARTER_DIVE, COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_ICE_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Ice Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"Blasts the foe with an icy\n"
|
|
#if B_USE_FROSTBITE == TRUE
|
|
"beam. May cause frostbite."),
|
|
#else
|
|
"beam that may freeze it."),
|
|
#endif
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.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
|
|
.moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL},
|
|
},
|
|
|
|
[MOVE_BLIZZARD] =
|
|
{
|
|
.name = COMPOUND_STRING("Blizzard"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits the foe with an icy\n"
|
|
#if B_USE_FROSTBITE == TRUE
|
|
"storm. May cause frostbite."),
|
|
#else
|
|
"storm that may freeze it."),
|
|
#endif
|
|
.effect = B_BLIZZARD_HAIL >= GEN_4 ? EFFECT_BLIZZARD : EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 70,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.windMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL, COMBO_STARTER_POWDER_SNOW},
|
|
},
|
|
|
|
[MOVE_PSYBEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Psybeam"),
|
|
.description = COMPOUND_STRING(
|
|
"Fires a peculiar ray that\n"
|
|
"may confuse the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND},
|
|
},
|
|
|
|
[MOVE_BUBBLE_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Bubble Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"Forcefully sprays bubbles\n"
|
|
"that may lower Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_AURORA_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Aurora Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"Fires a rainbow-colored\n"
|
|
"beam that may lower Attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL},
|
|
},
|
|
|
|
[MOVE_HYPER_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Hyper Beam"),
|
|
.description = sHyperBeamDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 150,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 90,
|
|
.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,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PECK] =
|
|
{
|
|
.name = COMPOUND_STRING("Peck"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks the foe with a\n"
|
|
"jabbing beak, etc."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 35,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.pp = 35,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_PECK,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRILL_PECK] =
|
|
{
|
|
.name = COMPOUND_STRING("Drill Peck"),
|
|
.description = COMPOUND_STRING(
|
|
"A corkscrewing attack with\n"
|
|
"the beak acting as a drill."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_PECK},
|
|
},
|
|
|
|
[MOVE_SUBMISSION] =
|
|
{
|
|
.name = COMPOUND_STRING("Submission"),
|
|
.description = COMPOUND_STRING(
|
|
"A reckless body slam that\n"
|
|
"also hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 80,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 25,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_MIND_READER},
|
|
},
|
|
|
|
[MOVE_LOW_KICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Low Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"A kick that inflicts more\n"
|
|
"damage on heavier foes."),
|
|
.effect = EFFECT_LOW_KICK,
|
|
.power = 1,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_COUNTER] =
|
|
{
|
|
.name = COMPOUND_STRING("Counter"),
|
|
.description = COMPOUND_STRING(
|
|
"Retaliates any physical hit\n"
|
|
"with double the power."),
|
|
.effect = EFFECT_COUNTER,
|
|
.power = 1,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.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,
|
|
.metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_2,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_TAUNT},
|
|
},
|
|
|
|
[MOVE_SEISMIC_TOSS] =
|
|
{
|
|
.name = COMPOUND_STRING("Seismic Toss"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts damage identical\n"
|
|
"to the user's level."),
|
|
.effect = EFFECT_LEVEL_DAMAGE,
|
|
.power = 1,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FAKE_OUT},
|
|
},
|
|
|
|
[MOVE_STRENGTH] =
|
|
{
|
|
.name = COMPOUND_STRING("Strength"),
|
|
.description = COMPOUND_STRING(
|
|
"Builds enormous power,\n"
|
|
"then slams the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ABSORB] =
|
|
{
|
|
.name = COMPOUND_STRING("Absorb"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that absorbs\n"
|
|
"half the damage inflicted."),
|
|
.effect = EFFECT_ABSORB,
|
|
.power = 20,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_MEGA_DRAIN] =
|
|
{
|
|
.name = COMPOUND_STRING("Mega Drain"),
|
|
.description = sMegaDrainDescription,
|
|
.effect = EFFECT_ABSORB,
|
|
.power = 40,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_4 ? 15 : 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.zMove = { .powerOverride = 120 },
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_LEECH_SEED] =
|
|
{
|
|
.name = COMPOUND_STRING("Leech Seed"),
|
|
.description = COMPOUND_STRING(
|
|
"Plants a seed on the foe to\n"
|
|
"steal HP on every turn."),
|
|
.effect = EFFECT_LEECH_SEED,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_LEECH_SEED,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH, COMBO_STARTER_WORRY_SEED},
|
|
},
|
|
|
|
[MOVE_GROWTH] =
|
|
{
|
|
.name = COMPOUND_STRING("Growth"),
|
|
.description = COMPOUND_STRING(
|
|
"Forces the body to grow\n"
|
|
"and heightens Sp. Atk."),
|
|
.effect = B_GROWTH_STAT_RAISE >= GEN_5 ? EFFECT_GROWTH : EFFECT_SPECIAL_ATTACK_UP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 40,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPATK_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_GROWTH,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_RAZOR_LEAF] =
|
|
{
|
|
.name = COMPOUND_STRING("Razor Leaf"),
|
|
.description = COMPOUND_STRING(
|
|
"Cuts the enemy with leaves.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 55,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 95,
|
|
.criticalHitStage = 1,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_SOLAR_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Solar Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"Absorbs light in one turn,\n"
|
|
"then attacks next turn."),
|
|
.effect = EFFECT_SOLAR_BEAM,
|
|
.power = 120,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.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),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH, COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_POISON_POWDER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PoisonPowder", "Poison Powder"),
|
|
.description = COMPOUND_STRING(
|
|
"Scatters a toxic powder\n"
|
|
"that may poison the foe."),
|
|
.effect = EFFECT_POISON,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 75,
|
|
.pp = 35,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SWEET_SCENT},
|
|
},
|
|
|
|
[MOVE_STUN_SPORE] =
|
|
{
|
|
.name = COMPOUND_STRING("Stun Spore"),
|
|
.description = COMPOUND_STRING(
|
|
"Scatters a powder that may\n"
|
|
"paralyze the foe."),
|
|
.effect = EFFECT_PARALYZE,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 75,
|
|
.pp = 30,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SWEET_SCENT},
|
|
},
|
|
|
|
[MOVE_SLEEP_POWDER] =
|
|
{
|
|
.name = COMPOUND_STRING("Sleep Powder"),
|
|
.description = COMPOUND_STRING(
|
|
"Scatters a powder that may\n"
|
|
"cause the foe to sleep."),
|
|
.effect = EFFECT_SLEEP,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 75,
|
|
.pp = 15,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SWEET_SCENT},
|
|
},
|
|
|
|
[MOVE_PETAL_DANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Petal Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"A rampage of 2 to 3 turns\n"
|
|
"that confuses the user."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_5
|
|
.power = 120,
|
|
#elif B_UPDATED_MOVE_DATA == GEN_4
|
|
.power = 90,
|
|
#else
|
|
.power = 70,
|
|
#endif
|
|
.effect = EFFECT_HIT,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.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,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_THRASH,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_STRING_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("String Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"Binds the foe with string\n"
|
|
"to reduce its Speed."),
|
|
.effect = B_UPDATED_MOVE_DATA >= GEN_6 ? EFFECT_SPEED_DOWN_2 : EFFECT_SPEED_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 95,
|
|
.pp = 40,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_STRING_SHOT,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_RAGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Dragon Rage"),
|
|
.description = COMPOUND_STRING(
|
|
"Launches shock waves that\n"
|
|
"always inflict 40 HP damage."),
|
|
.effect = EFFECT_FIXED_DAMAGE_ARG,
|
|
.power = 1,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_DRAGON_RAGE,
|
|
.contestComboMoves = {COMBO_STARTER_DRAGON_BREATH, COMBO_STARTER_DRAGON_DANCE, COMBO_STARTER_DRAGON_RUSH, COMBO_STARTER_DRAGON_TAIL},
|
|
},
|
|
|
|
[MOVE_FIRE_SPIN] =
|
|
{
|
|
.name = COMPOUND_STRING("Fire Spin"),
|
|
.description = COMPOUND_STRING(
|
|
"Traps the foe in a ring of\n"
|
|
"fire for "BINDING_TURNS" turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 35 : 15,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 70,
|
|
.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,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_THUNDER_SHOCK] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ThunderShock", "Thunder Shock"),
|
|
.description = COMPOUND_STRING(
|
|
"An electrical attack that\n"
|
|
"may paralyze the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE},
|
|
},
|
|
|
|
[MOVE_THUNDERBOLT] =
|
|
{
|
|
.name = COMPOUND_STRING("Thunderbolt"),
|
|
.description = COMPOUND_STRING(
|
|
"A strong electrical attack\n"
|
|
"that may paralyze the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE},
|
|
},
|
|
|
|
[MOVE_THUNDER_WAVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Thunder Wave"),
|
|
.description = COMPOUND_STRING(
|
|
"A weak jolt of electricity\n"
|
|
"that paralyzes the foe."),
|
|
.effect = EFFECT_PARALYZE,
|
|
.power = 0,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_7 ? 90 : 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE},
|
|
},
|
|
|
|
[MOVE_THUNDER] =
|
|
{
|
|
.name = COMPOUND_STRING("Thunder"),
|
|
.description = COMPOUND_STRING(
|
|
"A lightning attack that may\n"
|
|
"cause paralysis."),
|
|
.effect = EFFECT_THUNDER,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 70,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.damagesAirborne = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE, COMBO_STARTER_LOCK_ON, COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_ROCK_THROW] =
|
|
{
|
|
.name = COMPOUND_STRING("Rock Throw"),
|
|
.description = COMPOUND_STRING(
|
|
"Throws small rocks to\n"
|
|
"strike the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 90,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_EARTHQUAKE] =
|
|
{
|
|
.name = COMPOUND_STRING("Earthquake"),
|
|
.description = COMPOUND_STRING(
|
|
"A powerful quake, but has\n"
|
|
"no effect on flying foes."),
|
|
.effect = EFFECT_EARTHQUAKE,
|
|
.power = 100,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_EARTHQUAKE,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FISSURE] =
|
|
{
|
|
.name = COMPOUND_STRING("Fissure"),
|
|
.description = COMPOUND_STRING(
|
|
"A one-hit KO move that\n"
|
|
"drops the foe in a fissure."),
|
|
.effect = EFFECT_OHKO,
|
|
.power = 1,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 30,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_EARTHQUAKE},
|
|
},
|
|
|
|
[MOVE_DIG] =
|
|
{
|
|
.name = COMPOUND_STRING("Dig"),
|
|
.description = COMPOUND_STRING(
|
|
"Digs underground the first\n"
|
|
"turn and strikes next turn."),
|
|
.effect = EFFECT_SEMI_INVULNERABLE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_4 ? 80 : 60,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.argument = TWO_TURN_ARG(STRINGID_PKMNDUGHOLE, COMPRESS_BITS(STATUS3_UNDERGROUND)),
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TOXIC] =
|
|
{
|
|
.name = COMPOUND_STRING("Toxic"),
|
|
.description = COMPOUND_STRING(
|
|
"Poisons the foe with an\n"
|
|
"intensifying toxin."),
|
|
.effect = EFFECT_TOXIC,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 85,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_TOXIC,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CONFUSION] =
|
|
{
|
|
.name = COMPOUND_STRING("Confusion"),
|
|
.description = COMPOUND_STRING(
|
|
"A psychic attack that may\n"
|
|
"cause confusion."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = COMBO_STARTER_CONFUSION,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND, COMBO_STARTER_KINESIS, COMBO_STARTER_PSYCHIC},
|
|
},
|
|
|
|
[MOVE_PSYCHIC] =
|
|
{
|
|
.name = COMPOUND_STRING("Psychic"),
|
|
.description = COMPOUND_STRING(
|
|
"A powerful psychic attack\n"
|
|
"that may lower Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = COMBO_STARTER_PSYCHIC,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND, COMBO_STARTER_CONFUSION, COMBO_STARTER_KINESIS},
|
|
},
|
|
|
|
[MOVE_HYPNOSIS] =
|
|
{
|
|
.name = COMPOUND_STRING("Hypnosis"),
|
|
.description = COMPOUND_STRING(
|
|
"A hypnotizing move that\n"
|
|
"may induce sleep."),
|
|
.effect = EFFECT_SLEEP,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 60,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_HYPNOSIS,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MEDITATE] =
|
|
{
|
|
.name = COMPOUND_STRING("Meditate"),
|
|
.description = COMPOUND_STRING(
|
|
"Meditates in a peaceful\n"
|
|
"fashion to raise Attack."),
|
|
.effect = EFFECT_ATTACK_UP,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ATK_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND},
|
|
},
|
|
|
|
[MOVE_AGILITY] =
|
|
{
|
|
.name = COMPOUND_STRING("Agility"),
|
|
.description = COMPOUND_STRING(
|
|
"Relaxes the body to sharply\n"
|
|
"boost Speed."),
|
|
.effect = EFFECT_SPEED_UP_2,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_DOUBLE_TEAM},
|
|
},
|
|
|
|
[MOVE_QUICK_ATTACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Quick Attack"),
|
|
.description = COMPOUND_STRING(
|
|
"An extremely fast attack\n"
|
|
"that always strikes first."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_DOUBLE_TEAM},
|
|
},
|
|
|
|
[MOVE_RAGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Rage"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises the user's Attack\n"
|
|
"every time it is hit."),
|
|
.effect = EFFECT_RAGE,
|
|
.power = 20,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_RAGE,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TELEPORT] =
|
|
{
|
|
.name = COMPOUND_STRING("Teleport"),
|
|
.description = COMPOUND_STRING(
|
|
"A psychic move for fleeing\n"
|
|
"from battle instantly."),
|
|
.effect = EFFECT_TELEPORT,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CONFUSION, COMBO_STARTER_DOUBLE_TEAM, COMBO_STARTER_KINESIS, COMBO_STARTER_PSYCHIC},
|
|
},
|
|
|
|
[MOVE_NIGHT_SHADE] =
|
|
{
|
|
.name = COMPOUND_STRING("Night Shade"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts damage identical\n"
|
|
"to the user's level."),
|
|
.effect = EFFECT_LEVEL_DAMAGE,
|
|
.power = 1,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MIMIC] =
|
|
{
|
|
.name = COMPOUND_STRING("Mimic"),
|
|
.description = COMPOUND_STRING(
|
|
"Copies a move used by the\n"
|
|
"foe during one battle."),
|
|
.effect = EFFECT_MIMIC,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SCREECH] =
|
|
{
|
|
.name = COMPOUND_STRING("Screech"),
|
|
.description = COMPOUND_STRING(
|
|
"Emits a screech to sharply\n"
|
|
"reduce the foe's Defense."),
|
|
.effect = EFFECT_DEFENSE_DOWN_2,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 85,
|
|
.pp = 40,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DOUBLE_TEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Double Team"),
|
|
.description = COMPOUND_STRING(
|
|
"Creates illusory copies to\n"
|
|
"raise evasiveness."),
|
|
.effect = EFFECT_EVASION_UP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_DOUBLE_TEAM,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_RECOVER] =
|
|
{
|
|
.name = COMPOUND_STRING("Recover"),
|
|
.description = COMPOUND_STRING(
|
|
"Recovers up to half the\n"
|
|
"user's maximum HP."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_9
|
|
.pp = 5,
|
|
#elif B_UPDATED_MOVE_DATA >= GEN_4
|
|
.pp = 10,
|
|
#else
|
|
.pp = 20,
|
|
#endif
|
|
.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,
|
|
.mirrorMoveBanned = TRUE,
|
|
.healingMove = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HARDEN] =
|
|
{
|
|
.name = COMPOUND_STRING("Harden"),
|
|
.description = COMPOUND_STRING(
|
|
"Stiffens the body's \n"
|
|
"muscles to raise Defense."),
|
|
.effect = EFFECT_DEFENSE_UP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_HARDEN,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MINIMIZE] =
|
|
{
|
|
.name = COMPOUND_STRING("Minimize"),
|
|
.description = COMPOUND_STRING(
|
|
"Minimizes the user's size\n"
|
|
"to raise evasiveness."),
|
|
.effect = EFFECT_MINIMIZE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 10 : 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SMOKESCREEN] =
|
|
{
|
|
.name = COMPOUND_STRING("Smokescreen"),
|
|
.description = COMPOUND_STRING(
|
|
"Lowers the foe's accuracy\n"
|
|
"using smoke, ink, etc."),
|
|
.effect = EFFECT_ACCURACY_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SMOG},
|
|
},
|
|
|
|
[MOVE_CONFUSE_RAY] =
|
|
{
|
|
.name = COMPOUND_STRING("Confuse Ray"),
|
|
.description = COMPOUND_STRING(
|
|
"A sinister ray that\n"
|
|
"confuses the foe."),
|
|
.effect = EFFECT_CONFUSE,
|
|
.power = 0,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WITHDRAW] =
|
|
{
|
|
.name = COMPOUND_STRING("Withdraw"),
|
|
.description = COMPOUND_STRING(
|
|
"Withdraws the body into its\n"
|
|
"hard shell to raise Defense."),
|
|
.effect = EFFECT_DEFENSE_UP,
|
|
.power = 0,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_DEFENSE_CURL] =
|
|
{
|
|
.name = COMPOUND_STRING("Defense Curl"),
|
|
.description = COMPOUND_STRING(
|
|
"Curls up to conceal weak\n"
|
|
"spots and raise Defense."),
|
|
.effect = EFFECT_DEFENSE_CURL,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ACC_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = COMBO_STARTER_DEFENSE_CURL,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BARRIER] =
|
|
{
|
|
.name = COMPOUND_STRING("Barrier"),
|
|
.description = COMPOUND_STRING(
|
|
"Creates a barrier that\n"
|
|
"sharply raises Defense."),
|
|
.effect = EFFECT_DEFENSE_UP_2,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LIGHT_SCREEN] =
|
|
{
|
|
.name = COMPOUND_STRING("Light Screen"),
|
|
.description = COMPOUND_STRING(
|
|
"Creates a wall of light that\n"
|
|
"lowers Sp. Atk damage."),
|
|
.effect = EFFECT_LIGHT_SCREEN,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND},
|
|
},
|
|
|
|
[MOVE_HAZE] =
|
|
{
|
|
.name = COMPOUND_STRING("Haze"),
|
|
.description = COMPOUND_STRING(
|
|
"Creates a black haze that\n"
|
|
"eliminates all stat changes."),
|
|
.effect = EFFECT_HAZE,
|
|
.power = 0,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RECOVER_HP },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL},
|
|
},
|
|
|
|
[MOVE_REFLECT] =
|
|
{
|
|
.name = COMPOUND_STRING("Reflect"),
|
|
.description = COMPOUND_STRING(
|
|
"Creates a wall of light that\n"
|
|
"weakens physical attacks."),
|
|
.effect = EFFECT_REFLECT,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND},
|
|
},
|
|
|
|
[MOVE_FOCUS_ENERGY] =
|
|
{
|
|
.name = COMPOUND_STRING("Focus Energy"),
|
|
.description = COMPOUND_STRING(
|
|
"Focuses power to raise the\n"
|
|
"critical-hit ratio."),
|
|
.effect = EFFECT_FOCUS_ENERGY,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ACC_UP_1 },
|
|
.argument = STATUS2_FOCUS_ENERGY,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_FOCUS_ENERGY,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BIDE] =
|
|
{
|
|
.name = COMPOUND_STRING("Bide"),
|
|
.description = COMPOUND_STRING(
|
|
"Endures attack for 2\n"
|
|
"turns to retaliate double."),
|
|
.effect = EFFECT_BIDE,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = B_UPDATED_MOVE_DATA >= GEN_4 ? 1 : 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_METRONOME] =
|
|
{
|
|
.name = COMPOUND_STRING("Metronome"),
|
|
.description = COMPOUND_STRING(
|
|
"Waggles a finger to use any\n"
|
|
"Pokémon move at random."),
|
|
.effect = EFFECT_METRONOME,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_DEPENDS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = 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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MIRROR_MOVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Mirror Move"),
|
|
.description = COMPOUND_STRING(
|
|
"Counters the foe's attack\n"
|
|
"with the same move."),
|
|
.effect = EFFECT_MIRROR_MOVE,
|
|
.power = 0,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.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,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SELF_DESTRUCT] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SelfDestruct", "Self-Destruct"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts severe damage but\n"
|
|
"makes the user faint."),
|
|
.effect = EFFECT_EXPLOSION,
|
|
.power = 200,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_EGG_BOMB] =
|
|
{
|
|
.name = COMPOUND_STRING("Egg Bomb"),
|
|
.description = COMPOUND_STRING(
|
|
"An egg is forcibly hurled at\n"
|
|
"the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 75,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.ballisticMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SOFT_BOILED},
|
|
},
|
|
|
|
[MOVE_LICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Lick"),
|
|
.description = COMPOUND_STRING(
|
|
"Licks with a long tongue to\n"
|
|
"injure. May also paralyze."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 30 : 20,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SMOG] =
|
|
{
|
|
.name = COMPOUND_STRING("Smog"),
|
|
.description = COMPOUND_STRING(
|
|
"An exhaust-gas attack\n"
|
|
"that may also poison."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 30 : 20,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 70,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 40,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_SMOG,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SLUDGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Sludge"),
|
|
.description = COMPOUND_STRING(
|
|
"Sludge is hurled to inflict\n"
|
|
"damage. May also poison."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_SLUDGE,
|
|
.contestComboMoves = {COMBO_STARTER_SLUDGE_BOMB},
|
|
},
|
|
|
|
[MOVE_BONE_CLUB] =
|
|
{
|
|
.name = COMPOUND_STRING("Bone Club"),
|
|
.description = COMPOUND_STRING(
|
|
"Clubs the foe with a bone.\n"
|
|
"May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 85,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_BONE_CLUB,
|
|
.contestComboMoves = {COMBO_STARTER_BONEMERANG, COMBO_STARTER_BONE_RUSH, COMBO_STARTER_SHADOW_BONE},
|
|
},
|
|
|
|
[MOVE_FIRE_BLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("Fire Blast"),
|
|
.description = COMPOUND_STRING(
|
|
"Incinerates everything it\n"
|
|
"strikes. May cause a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 85,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_WATERFALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Waterfall"),
|
|
.description = COMPOUND_STRING(
|
|
"Charges the foe with speed\n"
|
|
"to climb waterfalls."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
#if B_UPDATED_MOVE_DATA >= GEN_4
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 20,
|
|
}),
|
|
#endif
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_CLAMP] =
|
|
{
|
|
.name = COMPOUND_STRING("Clamp"),
|
|
.description = COMPOUND_STRING(
|
|
"Traps and squeezes the\n"
|
|
"foe for "BINDING_TURNS" turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 35,
|
|
.type = TYPE_WATER,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 75,
|
|
.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({
|
|
.moveEffect = MOVE_EFFECT_WRAP,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_SWIFT] =
|
|
{
|
|
.name = COMPOUND_STRING("Swift"),
|
|
.description = COMPOUND_STRING(
|
|
"Sprays star-shaped rays\n"
|
|
"that never miss."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SKULL_BASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Skull Bash"),
|
|
.description = COMPOUND_STRING(
|
|
"Tucks in the head, then\n"
|
|
"attacks on the next turn."),
|
|
.effect = EFFECT_TWO_TURNS_ATTACK,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 130 : 100,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.argument = TWO_TURN_ARG(STRINGID_PKMNLOWEREDHEAD),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_PLUS_1,
|
|
.self = TRUE,
|
|
.onChargeTurnOnly = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPIKE_CANNON] =
|
|
{
|
|
.name = COMPOUND_STRING("Spike Cannon"),
|
|
.description = COMPOUND_STRING(
|
|
"Launches sharp spikes that\n"
|
|
"strike 2 to 5 times."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 20,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CONSTRICT] =
|
|
{
|
|
.name = COMPOUND_STRING("Constrict"),
|
|
.description = COMPOUND_STRING(
|
|
"Constricts to inflict pain.\n"
|
|
"May lower Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 10,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 35,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AMNESIA] =
|
|
{
|
|
.name = COMPOUND_STRING("Amnesia"),
|
|
.description = COMPOUND_STRING(
|
|
"Forgets about something\n"
|
|
"and sharply raises Sp. Def."),
|
|
.effect = EFFECT_SPECIAL_DEFENSE_UP_2,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_KINESIS] =
|
|
{
|
|
.name = COMPOUND_STRING("Kinesis"),
|
|
.description = COMPOUND_STRING(
|
|
"Distracts the foe.\n"
|
|
"May lower accuracy."),
|
|
.effect = EFFECT_ACCURACY_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 80,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_KINESIS,
|
|
.contestComboMoves = {COMBO_STARTER_CONFUSION, COMBO_STARTER_PSYCHIC},
|
|
},
|
|
|
|
[MOVE_SOFT_BOILED] =
|
|
{
|
|
.name = COMPOUND_STRING("Soft-Boiled"),
|
|
.description = COMPOUND_STRING(
|
|
"Recovers up to half the\n"
|
|
"user's maximum HP."),
|
|
.effect = EFFECT_SOFTBOILED,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HIGH_JUMP_KICK] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("HighJumpKick", "High Jump Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"A jumping knee kick. If it\n"
|
|
"misses, the user is hurt."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_5
|
|
.power = 130,
|
|
#elif B_UPDATED_MOVE_DATA == GEN_4
|
|
.power = 100,
|
|
#else
|
|
.power = 85,
|
|
#endif
|
|
.effect = EFFECT_RECOIL_IF_MISS,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 90,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_MIND_READER},
|
|
},
|
|
|
|
[MOVE_GLARE] =
|
|
{
|
|
.name = COMPOUND_STRING("Glare"),
|
|
.description = COMPOUND_STRING(
|
|
"Intimidates and frightens\n"
|
|
"the foe into paralysis."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_6
|
|
.accuracy = 100,
|
|
#elif B_UPDATED_MOVE_DATA == GEN_5
|
|
.accuracy = 90,
|
|
#else
|
|
.accuracy = 75,
|
|
#endif
|
|
.effect = EFFECT_PARALYZE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.pp = 30,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_LEER},
|
|
},
|
|
|
|
[MOVE_DREAM_EATER] =
|
|
{
|
|
.name = COMPOUND_STRING("Dream Eater"),
|
|
.description = COMPOUND_STRING(
|
|
"Takes one half the damage\n"
|
|
"inflicted on a sleeping foe."),
|
|
.effect = EFFECT_DREAM_EATER,
|
|
.power = 100,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND, COMBO_STARTER_HYPNOSIS},
|
|
},
|
|
|
|
[MOVE_POISON_GAS] =
|
|
{
|
|
.name = COMPOUND_STRING("Poison Gas"),
|
|
.description = COMPOUND_STRING(
|
|
"Envelops the foe in a toxic\n"
|
|
"gas that may poison."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_6
|
|
.accuracy = 90,
|
|
#elif B_UPDATED_MOVE_DATA >= GEN_5
|
|
.accuracy = 80,
|
|
#else
|
|
.accuracy = 55,
|
|
#endif
|
|
.effect = EFFECT_POISON,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.pp = 40,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BARRAGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Barrage"),
|
|
.description = COMPOUND_STRING(
|
|
"Hurls round objects at the\n"
|
|
"foe 2 to 5 times."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 15,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 85,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LEECH_LIFE] =
|
|
{
|
|
.name = COMPOUND_STRING("Leech Life"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that steals half\n"
|
|
"the damage inflicted."),
|
|
.effect = EFFECT_ABSORB,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_7 ? 80 : 20,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LOVELY_KISS] =
|
|
{
|
|
.name = COMPOUND_STRING("Lovely Kiss"),
|
|
.description = COMPOUND_STRING(
|
|
"Demands a kiss with a scary\n"
|
|
"face that induces sleep."),
|
|
.effect = EFFECT_SLEEP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 75,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SKY_ATTACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Sky Attack"),
|
|
.description = COMPOUND_STRING(
|
|
"Searches out weak spots,\n"
|
|
"then strikes the next turn."),
|
|
.effect = EFFECT_TWO_TURNS_ATTACK,
|
|
.power = 140,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.criticalHitStage = B_UPDATED_MOVE_DATA >= GEN_3,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.argument = TWO_TURN_ARG(B_UPDATED_MOVE_DATA >= GEN_4 ? STRINGID_CLOAKEDINAHARSHLIGHT : STRINGID_PKMNISGLOWING),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_3
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
#endif
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TRANSFORM] =
|
|
{
|
|
.name = COMPOUND_STRING("Transform"),
|
|
.description = COMPOUND_STRING(
|
|
"Alters the user's cells to\n"
|
|
"become a copy of the foe."),
|
|
.effect = EFFECT_TRANSFORM,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BUBBLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Bubble"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack using bubbles.\n"
|
|
"May lower the foe's Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 40 : 20,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_DIZZY_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Dizzy Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"A rhythmic punch that may\n"
|
|
"confuse the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPORE] =
|
|
{
|
|
.name = COMPOUND_STRING("Spore"),
|
|
.description = COMPOUND_STRING(
|
|
"Scatters a cloud of spores\n"
|
|
"that always induce sleep."),
|
|
.effect = EFFECT_SLEEP,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Flash"),
|
|
.description = COMPOUND_STRING(
|
|
"Looses a powerful blast of\n"
|
|
"light that cuts accuracy."),
|
|
.effect = EFFECT_ACCURACY_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 100 : 70,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PSYWAVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Psywave"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a psychic\n"
|
|
"wave of varying intensity."),
|
|
.effect = EFFECT_PSYWAVE,
|
|
.power = 1,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 100 : 80,
|
|
.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,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND},
|
|
},
|
|
|
|
[MOVE_SPLASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Splash"),
|
|
.description = COMPOUND_STRING(
|
|
"It's just a splash...\n"
|
|
"Has no effect whatsoever."),
|
|
.effect = EFFECT_DO_NOTHING,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ATK_UP_3 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.gravityBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ACID_ARMOR] =
|
|
{
|
|
.name = COMPOUND_STRING("Acid Armor"),
|
|
.description = COMPOUND_STRING(
|
|
"Liquifies the user's body\n"
|
|
"to sharply raise Defense."),
|
|
.effect = EFFECT_DEFENSE_UP_2,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 20 : 40,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CRABHAMMER] =
|
|
{
|
|
.name = COMPOUND_STRING("Crabhammer"),
|
|
.description = COMPOUND_STRING(
|
|
"Hammers with a pincer. Has a\n"
|
|
"high critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 100 : 90,
|
|
.type = TYPE_WATER,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 85,
|
|
.criticalHitStage = 1,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE, COMBO_STARTER_SWORDS_DANCE},
|
|
},
|
|
|
|
[MOVE_EXPLOSION] =
|
|
{
|
|
.name = COMPOUND_STRING("Explosion"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts severe damage but\n"
|
|
"makes the user faint."),
|
|
.effect = EFFECT_EXPLOSION,
|
|
.power = 250,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FURY_SWIPES] =
|
|
{
|
|
.name = COMPOUND_STRING("Fury Swipes"),
|
|
.description = COMPOUND_STRING(
|
|
"Rakes the foe with sharp\n"
|
|
"claws, etc., 2 to 5 times."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 18,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 80,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SCRATCH},
|
|
},
|
|
|
|
[MOVE_BONEMERANG] =
|
|
{
|
|
.name = COMPOUND_STRING("Bonemerang"),
|
|
.description = COMPOUND_STRING(
|
|
"Throws a bone boomerang\n"
|
|
"that strikes twice."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.strikeCount = 2,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_BONEMERANG,
|
|
.contestComboMoves = {COMBO_STARTER_BONE_CLUB, COMBO_STARTER_BONE_RUSH, COMBO_STARTER_SHADOW_BONE},
|
|
},
|
|
|
|
[MOVE_REST] =
|
|
{
|
|
.name = COMPOUND_STRING("Rest"),
|
|
.description = COMPOUND_STRING(
|
|
"The user sleeps for 2 turns,\n"
|
|
"restoring HP and status."),
|
|
.effect = EFFECT_REST,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.healingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = COMBO_STARTER_REST,
|
|
.contestComboMoves = {COMBO_STARTER_BELLY_DRUM, COMBO_STARTER_CHARM, COMBO_STARTER_YAWN},
|
|
},
|
|
|
|
[MOVE_ROCK_SLIDE] =
|
|
{
|
|
.name = COMPOUND_STRING("Rock Slide"),
|
|
.description = COMPOUND_STRING(
|
|
"Large boulders are hurled.\n"
|
|
"May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_ROCK_THROW},
|
|
},
|
|
|
|
[MOVE_HYPER_FANG] =
|
|
{
|
|
.name = COMPOUND_STRING("Hyper Fang"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with sharp fangs.\n"
|
|
"May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 90,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SHARPEN] =
|
|
{
|
|
.name = COMPOUND_STRING("Sharpen"),
|
|
.description = COMPOUND_STRING(
|
|
"Reduces the polygon count\n"
|
|
"and raises Attack."),
|
|
.effect = EFFECT_ATTACK_UP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CONVERSION] =
|
|
{
|
|
.name = COMPOUND_STRING("Conversion"),
|
|
.description = COMPOUND_STRING(
|
|
"Changes the user's type\n"
|
|
"into a known move's type."),
|
|
.effect = EFFECT_CONVERSION,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TRI_ATTACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Tri Attack"),
|
|
.description = COMPOUND_STRING(
|
|
"Fires three types of beams\n"
|
|
"at the same time."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_TRI_ATTACK,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_LOCK_ON},
|
|
},
|
|
|
|
[MOVE_SUPER_FANG] =
|
|
{
|
|
.name = COMPOUND_STRING("Super Fang"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with sharp fangs\n"
|
|
"and cuts half the foe's HP."),
|
|
.effect = EFFECT_SUPER_FANG,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 90,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SCARY_FACE},
|
|
},
|
|
|
|
[MOVE_SLASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Slash"),
|
|
.description = COMPOUND_STRING(
|
|
"Slashes with claws, etc. Has\n"
|
|
"a high critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SCRATCH, COMBO_STARTER_SWORDS_DANCE},
|
|
},
|
|
|
|
[MOVE_SUBSTITUTE] =
|
|
{
|
|
.name = COMPOUND_STRING("Substitute"),
|
|
.description = COMPOUND_STRING(
|
|
"Creates a decoy using 1/4\n"
|
|
"of the user's maximum HP."),
|
|
.effect = EFFECT_SUBSTITUTE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STRUGGLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Struggle"),
|
|
.description = COMPOUND_STRING(
|
|
"Used only if all PP are gone.\n"
|
|
"Also hurts the user a little."),
|
|
#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,
|
|
.type = TYPE_NORMAL,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.sketchBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_SKETCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Sketch"),
|
|
.description = COMPOUND_STRING(
|
|
"Copies the foe's last move\n"
|
|
"permanently."),
|
|
.effect = EFFECT_SKETCH,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 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,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TRIPLE_KICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Triple Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"Kicks the foe 3 times in a\n"
|
|
"row with rising intensity."),
|
|
.effect = EFFECT_TRIPLE_KICK,
|
|
.power = 10,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.strikeCount = 3,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_THIEF] =
|
|
{
|
|
.name = COMPOUND_STRING("Thief"),
|
|
.description = COMPOUND_STRING(
|
|
"While attacking, it may\n"
|
|
"steal the foe's held item."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 40,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_STEAL_ITEM,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPIDER_WEB] =
|
|
{
|
|
.name = COMPOUND_STRING("Spider Web"),
|
|
.description = COMPOUND_STRING(
|
|
"Ensnares the foe to stop it\n"
|
|
"from fleeing or switching."),
|
|
.effect = EFFECT_MEAN_LOOK,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_STRING_SHOT},
|
|
},
|
|
|
|
[MOVE_MIND_READER] =
|
|
{
|
|
.name = COMPOUND_STRING("Mind Reader"),
|
|
.description = COMPOUND_STRING(
|
|
"Senses the foe's action to\n"
|
|
"ensure the next move's hit."),
|
|
.effect = EFFECT_LOCK_ON,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 100,
|
|
.pp = 5,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_NIGHTMARE] =
|
|
{
|
|
.name = COMPOUND_STRING("Nightmare"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts 1/4 damage on a\n"
|
|
"sleeping foe every turn."),
|
|
.effect = EFFECT_NIGHTMARE,
|
|
.power = 0,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 100 : 0,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLAME_WHEEL] =
|
|
{
|
|
.name = COMPOUND_STRING("Flame Wheel"),
|
|
.description = COMPOUND_STRING(
|
|
"A fiery charge attack that\n"
|
|
"may inflict a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.thawsUser = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_SNORE] =
|
|
{
|
|
.name = COMPOUND_STRING("Snore"),
|
|
.description = COMPOUND_STRING(
|
|
"A loud attack that can be\n"
|
|
"used only while asleep."),
|
|
.effect = EFFECT_SNORE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 50 : 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_REST},
|
|
},
|
|
|
|
[MOVE_CURSE] =
|
|
{
|
|
.name = COMPOUND_STRING("Curse"),
|
|
.description = COMPOUND_STRING(
|
|
"A move that functions\n"
|
|
"differently for GHOSTS."),
|
|
.effect = EFFECT_CURSE,
|
|
.power = 0,
|
|
.type = B_UPDATED_MOVE_TYPES >= GEN_5 ? TYPE_GHOST : TYPE_MYSTERY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_CURSE },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_CURSE,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLAIL] =
|
|
{
|
|
.name = COMPOUND_STRING("Flail"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts more damage when\n"
|
|
"the user's HP is down."),
|
|
.effect = EFFECT_FLAIL,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_ENDURE},
|
|
},
|
|
|
|
[MOVE_CONVERSION_2] =
|
|
{
|
|
.name = COMPOUND_STRING("Conversion 2"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the user resistant\n"
|
|
"to the last attack's type."),
|
|
.effect = EFFECT_CONVERSION_2,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AEROBLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("Aeroblast"),
|
|
.description = COMPOUND_STRING(
|
|
"Launches a vacuumed blast.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 95,
|
|
.criticalHitStage = 1,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.windMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_COTTON_SPORE] =
|
|
{
|
|
.name = COMPOUND_STRING("Cotton Spore"),
|
|
.description = COMPOUND_STRING(
|
|
"Spores cling to the foe,\n"
|
|
"sharply reducing Speed."),
|
|
.effect = EFFECT_SPEED_DOWN_2,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 85,
|
|
.pp = 40,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_REVERSAL] =
|
|
{
|
|
.name = COMPOUND_STRING("Reversal"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts more damage when\n"
|
|
"the user's HP is down."),
|
|
.effect = EFFECT_FLAIL,
|
|
.power = 1,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_ENDURE},
|
|
},
|
|
|
|
[MOVE_SPITE] =
|
|
{
|
|
.name = COMPOUND_STRING("Spite"),
|
|
.description = COMPOUND_STRING(
|
|
"Spitefully cuts the PP\n"
|
|
"of the foe's last move."),
|
|
.effect = EFFECT_SPITE,
|
|
.power = 0,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CURSE},
|
|
},
|
|
|
|
[MOVE_POWDER_SNOW] =
|
|
{
|
|
.name = COMPOUND_STRING("Powder Snow"),
|
|
.description = COMPOUND_STRING(
|
|
"Blasts the foe with a snowy\n"
|
|
#if B_USE_FROSTBITE == TRUE
|
|
"gust. May cause frostbite."),
|
|
#else
|
|
"gust. May cause freezing."),
|
|
#endif
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_POWDER_SNOW,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL},
|
|
},
|
|
|
|
[MOVE_PROTECT] =
|
|
{
|
|
.name = COMPOUND_STRING("Protect"),
|
|
.description = COMPOUND_STRING(
|
|
"Evades attack, but may fail\n"
|
|
"if used in succession."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HARDEN},
|
|
},
|
|
|
|
[MOVE_MACH_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Mach Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"A punch is thrown at wicked\n"
|
|
"speed to strike first."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SCARY_FACE] =
|
|
{
|
|
.name = COMPOUND_STRING("Scary Face"),
|
|
.description = COMPOUND_STRING(
|
|
"Frightens with a scary face\n"
|
|
"to sharply reduce Speed."),
|
|
.effect = EFFECT_SPEED_DOWN_2,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 90,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_SCARY_FACE,
|
|
.contestComboMoves = {COMBO_STARTER_LEER, COMBO_STARTER_RAGE},
|
|
},
|
|
|
|
[MOVE_FEINT_ATTACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Feint Attack"),
|
|
.description = sFeintDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FAKE_OUT, COMBO_STARTER_LEER, COMBO_STARTER_POUND},
|
|
},
|
|
|
|
[MOVE_SWEET_KISS] =
|
|
{
|
|
.name = COMPOUND_STRING("Sweet Kiss"),
|
|
.description = COMPOUND_STRING(
|
|
"Demands a kiss with a cute\n"
|
|
"look. May cause confusion."),
|
|
.effect = EFFECT_CONFUSE,
|
|
.power = 0,
|
|
.type = B_UPDATED_MOVE_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL,
|
|
.accuracy = 75,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARM},
|
|
},
|
|
|
|
[MOVE_BELLY_DRUM] =
|
|
{
|
|
.name = COMPOUND_STRING("Belly Drum"),
|
|
.description = COMPOUND_STRING(
|
|
"Maximizes Attack while\n"
|
|
"sacrificing HP."),
|
|
.effect = EFFECT_BELLY_DRUM,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_BELLY_DRUM,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SLUDGE_BOMB] =
|
|
{
|
|
.name = COMPOUND_STRING("Sludge Bomb"),
|
|
.description = COMPOUND_STRING(
|
|
"Sludge is hurled to inflict\n"
|
|
"damage. May also poison."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_SLUDGE_BOMB,
|
|
.contestComboMoves = {COMBO_STARTER_SLUDGE},
|
|
},
|
|
|
|
[MOVE_MUD_SLAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Mud-Slap"),
|
|
.description = COMPOUND_STRING(
|
|
"Hurls mud in the foe's face\n"
|
|
"to reduce its accuracy."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 20,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ACC_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = COMBO_STARTER_MUD_SLAP,
|
|
.contestComboMoves = {COMBO_STARTER_MUD_SPORT, COMBO_STARTER_SAND_ATTACK, COMBO_STARTER_SANDSTORM},
|
|
},
|
|
|
|
[MOVE_OCTAZOOKA] =
|
|
{
|
|
.name = COMPOUND_STRING("Octazooka"),
|
|
.description = COMPOUND_STRING(
|
|
"Fires a lump of ink to\n"
|
|
"damage and cut accuracy."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 85,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ACC_MINUS_1,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_LOCK_ON, COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_SPIKES] =
|
|
{
|
|
.name = COMPOUND_STRING("Spikes"),
|
|
.description = COMPOUND_STRING(
|
|
"Sets spikes that hurt a \n"
|
|
"foe switching in."),
|
|
.effect = EFFECT_SPIKES,
|
|
.power = 0,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_OPPONENTS_FIELD,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5,
|
|
.forcePressure = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ZAP_CANNON] =
|
|
{
|
|
.name = COMPOUND_STRING("Zap Cannon"),
|
|
.description = COMPOUND_STRING(
|
|
"Powerful and sure to cause\n"
|
|
"paralysis, but inaccurate."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_4 ? 120 : 100,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 50,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE, COMBO_STARTER_LOCK_ON},
|
|
},
|
|
|
|
[MOVE_FORESIGHT] =
|
|
{
|
|
.name = COMPOUND_STRING("Foresight"),
|
|
.description = COMPOUND_STRING(
|
|
"Negates the foe's efforts\n"
|
|
"to heighten evasiveness."),
|
|
.effect = EFFECT_FORESIGHT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 0 : 100,
|
|
.pp = 40,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DESTINY_BOND] =
|
|
{
|
|
.name = COMPOUND_STRING("Destiny Bond"),
|
|
.description = COMPOUND_STRING(
|
|
"If the user faints, the foe\n"
|
|
"is also made to faint."),
|
|
.effect = EFFECT_DESTINY_BOND,
|
|
.power = 0,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_FOLLOW_ME },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CURSE, COMBO_STARTER_ENDURE, COMBO_STARTER_MEAN_LOOK},
|
|
},
|
|
|
|
[MOVE_PERISH_SONG] =
|
|
{
|
|
.name = COMPOUND_STRING("Perish Song"),
|
|
.description = COMPOUND_STRING(
|
|
"Any Pokémon hearing this\n"
|
|
"song faints in 3 turns."),
|
|
.effect = EFFECT_PERISH_SONG,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.ignoresProtect = 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,
|
|
.contestComboMoves = {COMBO_STARTER_MEAN_LOOK, COMBO_STARTER_SING},
|
|
},
|
|
|
|
[MOVE_ICY_WIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Icy Wind"),
|
|
.description = COMPOUND_STRING(
|
|
"A chilling attack that\n"
|
|
"lowers the foe's Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 55,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.windMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL},
|
|
},
|
|
|
|
[MOVE_DETECT] =
|
|
{
|
|
.name = COMPOUND_STRING("Detect"),
|
|
.description = COMPOUND_STRING(
|
|
"Evades attack, but may fail\n"
|
|
"if used in succession."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.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,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_TAUNT},
|
|
},
|
|
|
|
[MOVE_BONE_RUSH] =
|
|
{
|
|
.name = COMPOUND_STRING("Bone Rush"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes the foe with a bone\n"
|
|
"in hand 2 to 5 times."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 25,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 80,
|
|
.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,
|
|
.contestComboMoves = {COMBO_STARTER_BONE_CLUB, COMBO_STARTER_BONEMERANG, COMBO_STARTER_FOCUS_ENERGY, COMBO_STARTER_SHADOW_BONE},
|
|
},
|
|
|
|
[MOVE_LOCK_ON] =
|
|
{
|
|
.name = COMPOUND_STRING("Lock-On"),
|
|
.description = COMPOUND_STRING(
|
|
"Locks on to the foe to\n"
|
|
"ensure the next move hits."),
|
|
.effect = EFFECT_LOCK_ON,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 100,
|
|
.pp = 5,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_OUTRAGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Outrage"),
|
|
.description = COMPOUND_STRING(
|
|
"A rampage of 2 to 3 turns\n"
|
|
"that confuses the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_4 ? 120 : 90,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.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({
|
|
.moveEffect = MOVE_EFFECT_THRASH,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SANDSTORM] =
|
|
{
|
|
.name = COMPOUND_STRING("Sandstorm"),
|
|
.description = COMPOUND_STRING(
|
|
"Causes a sandstorm that\n"
|
|
"rages for several turns."),
|
|
.effect = EFFECT_SANDSTORM,
|
|
.power = 0,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.windMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_SANDSTORM,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GIGA_DRAIN] =
|
|
{
|
|
.name = COMPOUND_STRING("Giga Drain"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that steals half\n"
|
|
"the damage inflicted."),
|
|
.effect = EFFECT_ABSORB,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 75 : 60,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_ENDURE] =
|
|
{
|
|
.name = COMPOUND_STRING("Endure"),
|
|
.description = COMPOUND_STRING(
|
|
"Endures any attack for\n"
|
|
"1 turn, leaving at least 1HP."),
|
|
.effect = EFFECT_ENDURE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_ENDURE,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CHARM] =
|
|
{
|
|
.name = COMPOUND_STRING("Charm"),
|
|
.description = COMPOUND_STRING(
|
|
"Charms the foe and sharply\n"
|
|
"reduces its Attack."),
|
|
.effect = EFFECT_ATTACK_DOWN_2,
|
|
.power = 0,
|
|
.type = B_UPDATED_MOVE_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_CHARM,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ROLLOUT] =
|
|
{
|
|
.name = COMPOUND_STRING("Rollout"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack lasting 5 turns\n"
|
|
"with rising intensity."),
|
|
.effect = EFFECT_ROLLOUT,
|
|
.power = 30,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 90,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.instructBanned = TRUE,
|
|
.parentalBondBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_DEFENSE_CURL, COMBO_STARTER_HARDEN},
|
|
},
|
|
|
|
[MOVE_FALSE_SWIPE] =
|
|
{
|
|
.name = COMPOUND_STRING("False Swipe"),
|
|
.description = sFalseSwipeDescription,
|
|
.effect = EFFECT_FALSE_SWIPE,
|
|
.power = 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SWORDS_DANCE},
|
|
},
|
|
|
|
[MOVE_SWAGGER] =
|
|
{
|
|
.name = COMPOUND_STRING("Swagger"),
|
|
.description = COMPOUND_STRING(
|
|
"Confuses the foe, but also\n"
|
|
"sharply raises Attack."),
|
|
.effect = EFFECT_SWAGGER,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_7 ? 85 : 90,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MILK_DRINK] =
|
|
{
|
|
.name = COMPOUND_STRING("Milk Drink"),
|
|
.description = COMPOUND_STRING(
|
|
"Recovers up to half the\n"
|
|
"user's maximum HP."),
|
|
.effect = EFFECT_SOFTBOILED,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPARK] =
|
|
{
|
|
.name = COMPOUND_STRING("Spark"),
|
|
.description = COMPOUND_STRING(
|
|
"An electrified tackle that\n"
|
|
"may paralyze the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE},
|
|
},
|
|
|
|
[MOVE_FURY_CUTTER] =
|
|
{
|
|
.name = COMPOUND_STRING("Fury Cutter"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that intensifies\n"
|
|
"on each successive hit."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_6
|
|
.power = 40,
|
|
#elif B_UPDATED_MOVE_DATA >= GEN_5
|
|
.power = 20,
|
|
#else
|
|
.power = 10,
|
|
#endif
|
|
.effect = EFFECT_FURY_CUTTER,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 95,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SWORDS_DANCE},
|
|
},
|
|
|
|
[MOVE_STEEL_WING] =
|
|
{
|
|
.name = COMPOUND_STRING("Steel Wing"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes the foe with hard\n"
|
|
"wings spread wide."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 90,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MEAN_LOOK] =
|
|
{
|
|
.name = COMPOUND_STRING("Mean Look"),
|
|
.description = COMPOUND_STRING(
|
|
"Fixes the foe with a mean\n"
|
|
"look that prevents escape."),
|
|
.effect = EFFECT_MEAN_LOOK,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_MEAN_LOOK,
|
|
.contestComboMoves = {COMBO_STARTER_CURSE},
|
|
},
|
|
|
|
[MOVE_ATTRACT] =
|
|
{
|
|
.name = COMPOUND_STRING("Attract"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the opposite gender\n"
|
|
"less likely to attack."),
|
|
.effect = EFFECT_ATTRACT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SLEEP_TALK] =
|
|
{
|
|
.name = COMPOUND_STRING("Sleep Talk"),
|
|
.description = COMPOUND_STRING(
|
|
"Uses an available move\n"
|
|
"randomly while asleep."),
|
|
.effect = EFFECT_SLEEP_TALK,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_DEPENDS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_BOOST_CRITS },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_REST},
|
|
},
|
|
|
|
[MOVE_HEAL_BELL] =
|
|
{
|
|
.name = COMPOUND_STRING("Heal Bell"),
|
|
.description = COMPOUND_STRING(
|
|
"Chimes soothingly to heal\n"
|
|
"all status abnormalities."),
|
|
.effect = EFFECT_HEAL_BELL,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_USER | MOVE_TARGET_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RECOVER_HP },
|
|
.snatchAffected = TRUE,
|
|
.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,
|
|
.contestComboMoves = {COMBO_STARTER_LUCKY_CHANT},
|
|
},
|
|
|
|
[MOVE_RETURN] =
|
|
{
|
|
.name = COMPOUND_STRING("Return"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that increases\n"
|
|
"in power with friendship."),
|
|
.effect = EFFECT_RETURN,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PRESENT] =
|
|
{
|
|
.name = COMPOUND_STRING("Present"),
|
|
.description = COMPOUND_STRING(
|
|
"A gift in the form of a\n"
|
|
"bomb. May restore HP."),
|
|
.effect = EFFECT_PRESENT,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 90,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FRUSTRATION] =
|
|
{
|
|
.name = COMPOUND_STRING("Frustration"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that is stronger\n"
|
|
"if the Trainer is disliked."),
|
|
.effect = EFFECT_FRUSTRATION,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SAFEGUARD] =
|
|
{
|
|
.name = COMPOUND_STRING("Safeguard"),
|
|
.description = COMPOUND_STRING(
|
|
"A mystical force prevents\n"
|
|
"all status problems."),
|
|
.effect = EFFECT_SAFEGUARD,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PAIN_SPLIT] =
|
|
{
|
|
.name = COMPOUND_STRING("Pain Split"),
|
|
.description = COMPOUND_STRING(
|
|
"Adds the user and foe's HP,\n"
|
|
"then shares them equally."),
|
|
.effect = EFFECT_PAIN_SPLIT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboMoves = {COMBO_STARTER_ENDURE},
|
|
},
|
|
|
|
[MOVE_SACRED_FIRE] =
|
|
{
|
|
.name = COMPOUND_STRING("Sacred Fire"),
|
|
.description = COMPOUND_STRING(
|
|
"A mystical fire attack that\n"
|
|
"may inflict a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 95,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.thawsUser = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_MAGNITUDE] =
|
|
{
|
|
.name = COMPOUND_STRING("Magnitude"),
|
|
.description = COMPOUND_STRING(
|
|
"A ground-shaking attack\n"
|
|
"of random intensity."),
|
|
.effect = EFFECT_MAGNITUDE,
|
|
.power = 1,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DYNAMIC_PUNCH] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DynamicPunch", "Dynamic Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"Powerful and sure to cause\n"
|
|
"confusion, but inaccurate."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 50,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY, COMBO_STARTER_MIND_READER},
|
|
},
|
|
|
|
[MOVE_MEGAHORN] =
|
|
{
|
|
.name = COMPOUND_STRING("Megahorn"),
|
|
.description = COMPOUND_STRING(
|
|
"A brutal ramming attack\n"
|
|
"using out-thrust horns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 85,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_BREATH] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DragonBreath", "Dragon Breath"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes the foe with an\n"
|
|
"incredible blast of breath."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.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,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_DRAGON_BREATH,
|
|
.contestComboMoves = {COMBO_STARTER_DRAGON_DANCE, COMBO_STARTER_DRAGON_RAGE, COMBO_STARTER_DRAGON_RUSH, COMBO_STARTER_DRAGON_TAIL},
|
|
},
|
|
|
|
[MOVE_BATON_PASS] =
|
|
{
|
|
.name = COMPOUND_STRING("Baton Pass"),
|
|
.description = COMPOUND_STRING(
|
|
"Switches out the user while\n"
|
|
"keeping effects in play."),
|
|
.effect = EFFECT_BATON_PASS,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 40,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ENCORE] =
|
|
{
|
|
.name = COMPOUND_STRING("Encore"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the foe repeat its\n"
|
|
"last move over 2 to 6 turns."),
|
|
.effect = EFFECT_ENCORE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_1 },
|
|
.magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5,
|
|
.encoreBanned = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PURSUIT] =
|
|
{
|
|
.name = COMPOUND_STRING("Pursuit"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts bad damage if used\n"
|
|
"on a foe switching out."),
|
|
.effect = EFFECT_PURSUIT,
|
|
.power = 40,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_RAPID_SPIN] =
|
|
{
|
|
.name = COMPOUND_STRING("Rapid Spin"),
|
|
.description = COMPOUND_STRING(
|
|
"Spins the body at high\n"
|
|
"speed to strike the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 50 : 20,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RAPID_SPIN,
|
|
.self = TRUE,
|
|
}
|
|
#if B_SPEED_BUFFING_RAPID_SPIN >= GEN_8
|
|
,{
|
|
.moveEffect = MOVE_EFFECT_SPD_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}
|
|
#endif
|
|
),
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SWEET_SCENT] =
|
|
{
|
|
.name = COMPOUND_STRING("Sweet Scent"),
|
|
.description = COMPOUND_STRING(
|
|
"Allures the foe to reduce\n"
|
|
"evasiveness."),
|
|
.effect = B_UPDATED_MOVE_DATA >= GEN_6 ? EFFECT_EVASION_DOWN_2 : EFFECT_EVASION_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_SWEET_SCENT,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_IRON_TAIL] =
|
|
{
|
|
.name = COMPOUND_STRING("Iron Tail"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a rock-hard\n"
|
|
"tail. May lower Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 75,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_METAL_CLAW] =
|
|
{
|
|
.name = COMPOUND_STRING("Metal Claw"),
|
|
.description = COMPOUND_STRING(
|
|
"A claw attack that may\n"
|
|
"raise the user's Attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 95,
|
|
.pp = 35,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_METAL_SOUND},
|
|
},
|
|
|
|
[MOVE_VITAL_THROW] =
|
|
{
|
|
.name = COMPOUND_STRING("Vital Throw"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the user's move last,\n"
|
|
"but it never misses."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = -1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FAKE_OUT},
|
|
},
|
|
|
|
[MOVE_MORNING_SUN] =
|
|
{
|
|
.name = COMPOUND_STRING("Morning Sun"),
|
|
.description = COMPOUND_STRING(
|
|
"Restores HP. The amount\n"
|
|
"varies with the weather."),
|
|
.effect = EFFECT_MORNING_SUN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_SYNTHESIS] =
|
|
{
|
|
.name = COMPOUND_STRING("Synthesis"),
|
|
.description = COMPOUND_STRING(
|
|
"Restores HP. The amount\n"
|
|
"varies with the weather."),
|
|
.effect = EFFECT_SYNTHESIS,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_MOONLIGHT] =
|
|
{
|
|
.name = COMPOUND_STRING("Moonlight"),
|
|
.description = COMPOUND_STRING(
|
|
"Restores HP. The amount\n"
|
|
"varies with the weather."),
|
|
.effect = EFFECT_MOONLIGHT,
|
|
.power = 0,
|
|
.type = B_UPDATED_MOVE_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_HIDDEN_POWER] =
|
|
{
|
|
.name = COMPOUND_STRING("Hidden Power"),
|
|
.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,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CROSS_CHOP] =
|
|
{
|
|
.name = COMPOUND_STRING("Cross Chop"),
|
|
.description = COMPOUND_STRING(
|
|
"A double-chopping attack.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 80,
|
|
.criticalHitStage = 1,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_TWISTER] =
|
|
{
|
|
.name = COMPOUND_STRING("Twister"),
|
|
.description = COMPOUND_STRING(
|
|
"Whips up a vicious twister\n"
|
|
"to tear at the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.damagesAirborneDoubleDamage = TRUE,
|
|
.windMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_RAIN_DANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Rain Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"Boosts the power of Water-\n"
|
|
"type moves for 5 turns."),
|
|
.effect = EFFECT_RAIN_DANCE,
|
|
.power = 0,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_RAIN_DANCE,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SUNNY_DAY] =
|
|
{
|
|
.name = COMPOUND_STRING("Sunny Day"),
|
|
.description = COMPOUND_STRING(
|
|
"Boosts the power of Fire-\n"
|
|
"type moves for 5 turns."),
|
|
.effect = EFFECT_SUNNY_DAY,
|
|
.power = 0,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_SUNNY_DAY,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CRUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Crunch"),
|
|
.description = COMPOUND_STRING(
|
|
"Crunches with sharp fangs.\n"
|
|
#if B_UPDATED_MOVE_DATA >= GEN_4
|
|
"May lower Defense."),
|
|
#else
|
|
"May lower Sp. Def."),
|
|
#endif
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
#if B_UPDATED_MOVE_DATA >= GEN_4
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
#else
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
#endif
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SCARY_FACE},
|
|
},
|
|
|
|
[MOVE_MIRROR_COAT] =
|
|
{
|
|
.name = COMPOUND_STRING("Mirror Coat"),
|
|
.description = COMPOUND_STRING(
|
|
"Counters the foe's special\n"
|
|
"attack at double the power."),
|
|
.effect = EFFECT_MIRROR_COAT,
|
|
.power = 1,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_DEPENDS,
|
|
.priority = -5,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS >= GEN_4,
|
|
.meFirstBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_TAUNT},
|
|
},
|
|
|
|
[MOVE_PSYCH_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Psych Up"),
|
|
.description = COMPOUND_STRING(
|
|
"Copies the foe's effect(s)\n"
|
|
"and gives to the user."),
|
|
.effect = EFFECT_PSYCH_UP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RECOVER_HP },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = B_UPDATED_MOVE_FLAGS < GEN_5,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_EXTREME_SPEED] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ExtremeSpeed", "Extreme Speed"),
|
|
.description = COMPOUND_STRING(
|
|
"An extremely fast and\n"
|
|
"powerful attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ANCIENT_POWER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("AncientPower", "Ancient Power"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that may raise\n"
|
|
"all stats."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.self = TRUE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SHADOW_BALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Shadow Ball"),
|
|
.description = COMPOUND_STRING(
|
|
"Hurls a black blob that may\n"
|
|
"lower the foe's Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SHIFT_JUDGE_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FUTURE_SIGHT] =
|
|
{
|
|
.name = COMPOUND_STRING("Future Sight"),
|
|
.description = COMPOUND_STRING(
|
|
"Heightens inner power to\n"
|
|
"strike 2 turns later."),
|
|
#if B_UPDATED_MOVE_DATA >= GEN_6
|
|
.power = 120,
|
|
#elif B_UPDATED_MOVE_DATA >= GEN_5
|
|
.power = 100,
|
|
#else
|
|
.power = 80,
|
|
#endif
|
|
.effect = EFFECT_FUTURE_SIGHT,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 90,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND, COMBO_STARTER_CONFUSION, COMBO_STARTER_KINESIS, COMBO_STARTER_PSYCHIC},
|
|
},
|
|
|
|
[MOVE_ROCK_SMASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Rock Smash"),
|
|
.description = COMPOUND_STRING(
|
|
"A rock-crushing attack\n"
|
|
"that may lower Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_4 ? 40 : 20,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WITH_GOOD_CONDITION,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WHIRLPOOL] =
|
|
{
|
|
.name = COMPOUND_STRING("Whirlpool"),
|
|
.description = COMPOUND_STRING(
|
|
"Traps and hurts the foe in\n"
|
|
"a whirlpool for "BINDING_TURNS" turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 35 : 15,
|
|
.type = TYPE_WATER,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 70,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.damagesUnderwater = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_WRAP,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_BEAT_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Beat Up"),
|
|
.description = COMPOUND_STRING(
|
|
"Summons party Pokémon to\n"
|
|
"join in the attack."),
|
|
.effect = EFFECT_BEAT_UP,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 1 : 10,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FAKE_OUT] =
|
|
{
|
|
.name = COMPOUND_STRING("Fake Out"),
|
|
.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,
|
|
.power = 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = COMBO_STARTER_FAKE_OUT,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_UPROAR] =
|
|
{
|
|
.name = COMPOUND_STRING("Uproar"),
|
|
.description = COMPOUND_STRING(
|
|
#if B_UPROAR_TURNS >= GEN_5
|
|
"Causes an uproar for 2 to 5\n"
|
|
#else
|
|
"Causes an uproar for 3\n"
|
|
#endif
|
|
"turns and prevents sleep."),
|
|
.effect = EFFECT_UPROAR,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 50,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_RANDOM,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.soundMove = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_UPROAR,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STOCKPILE] =
|
|
{
|
|
.name = COMPOUND_STRING("Stockpile"),
|
|
.description = COMPOUND_STRING(
|
|
"Charges up power for up to\n"
|
|
"3 turns."),
|
|
.effect = EFFECT_STOCKPILE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_4 ? 20 : 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_STOCKPILE,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPIT_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Spit Up"),
|
|
.description = COMPOUND_STRING(
|
|
"Releases stockpiled power\n"
|
|
"(the more the better)."),
|
|
.effect = EFFECT_SPIT_UP,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_4 ? 1 : 100,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_STOCKPILE},
|
|
},
|
|
|
|
[MOVE_SWALLOW] =
|
|
{
|
|
.name = COMPOUND_STRING("Swallow"),
|
|
.description = COMPOUND_STRING(
|
|
"Absorbs stockpiled power\n"
|
|
"and restores HP."),
|
|
.effect = EFFECT_SWALLOW,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_STOCKPILE},
|
|
},
|
|
|
|
[MOVE_HEAT_WAVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Heat Wave"),
|
|
.description = COMPOUND_STRING(
|
|
"Exhales a hot breath on the\n"
|
|
"foe. May inflict a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 95 : 100,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.windMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_HAIL] =
|
|
{
|
|
.name = COMPOUND_STRING("Hail"),
|
|
.description = COMPOUND_STRING(
|
|
"Summons a hailstorm that\n"
|
|
"strikes every turn."),
|
|
.effect = EFFECT_HAIL,
|
|
.power = 0,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_HAIL,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TORMENT] =
|
|
{
|
|
.name = COMPOUND_STRING("Torment"),
|
|
.description = COMPOUND_STRING(
|
|
"Torments the foe and stops\n"
|
|
"successive use of a move."),
|
|
.effect = EFFECT_TORMENT,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLATTER] =
|
|
{
|
|
.name = COMPOUND_STRING("Flatter"),
|
|
.description = COMPOUND_STRING(
|
|
"Confuses the foe, but\n"
|
|
"raises its Sp. Atk."),
|
|
.effect = EFFECT_FLATTER,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARM},
|
|
},
|
|
|
|
[MOVE_WILL_O_WISP] =
|
|
{
|
|
.name = COMPOUND_STRING("Will-o-Wisp"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts a burn on the foe\n"
|
|
"with intense fire."),
|
|
.effect = EFFECT_WILL_O_WISP,
|
|
.power = 0,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 85 : 75,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_MEMENTO] =
|
|
{
|
|
.name = COMPOUND_STRING("Memento"),
|
|
.description = COMPOUND_STRING(
|
|
"The user faints and lowers\n"
|
|
"the foe's abilities."),
|
|
.effect = EFFECT_MEMENTO,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FACADE] =
|
|
{
|
|
.name = COMPOUND_STRING("Facade"),
|
|
.description = COMPOUND_STRING(
|
|
"Boosts Attack when burned,\n"
|
|
"paralyzed, or poisoned."),
|
|
.effect = EFFECT_FACADE,
|
|
.power = 70,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_FOCUS_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Focus Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"A powerful loyalty attack.\n"
|
|
"The user flinches if hit."),
|
|
.effect = EFFECT_FOCUS_PUNCH,
|
|
.power = 150,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = -3,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.punchingMove = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_SMELLING_SALTS] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SmellngSalts", "Smelling Salts"),
|
|
.description = COMPOUND_STRING(
|
|
"Powerful against paralyzed\n"
|
|
"foes, but also heals them."),
|
|
.effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 70 : 60,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = STATUS1_PARALYSIS,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_REMOVE_STATUS,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FOLLOW_ME] =
|
|
{
|
|
.name = COMPOUND_STRING("Follow Me"),
|
|
.description = COMPOUND_STRING(
|
|
"Draws attention to make\n"
|
|
"foes attack only the user."),
|
|
.effect = EFFECT_FOLLOW_ME,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_NATURE_POWER] =
|
|
{
|
|
.name = COMPOUND_STRING("Nature Power"),
|
|
.description = COMPOUND_STRING(
|
|
"The type of attack varies\n"
|
|
"depending on the location."),
|
|
.effect = EFFECT_NATURE_POWER,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_DEPENDS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_4,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CHARGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Charge"),
|
|
.description = COMPOUND_STRING(
|
|
"Charges power to boost the\n"
|
|
"electric move used next."),
|
|
.effect = EFFECT_CHARGE,
|
|
.power = 0,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_CHARGE,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TAUNT] =
|
|
{
|
|
.name = COMPOUND_STRING("Taunt"),
|
|
.description = COMPOUND_STRING(
|
|
"Taunts the foe into only\n"
|
|
"using attack moves."),
|
|
.effect = EFFECT_TAUNT,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HELPING_HAND] =
|
|
{
|
|
.name = COMPOUND_STRING("Helping Hand"),
|
|
.description = COMPOUND_STRING(
|
|
"Boosts the power of the\n"
|
|
"recipient's moves."),
|
|
.effect = EFFECT_HELPING_HAND,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TRICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Trick"),
|
|
.description = COMPOUND_STRING(
|
|
"Tricks the foe into trading\n"
|
|
"held items."),
|
|
.effect = EFFECT_TRICK,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_2 },
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ROLE_PLAY] =
|
|
{
|
|
.name = COMPOUND_STRING("Role Play"),
|
|
.description = COMPOUND_STRING(
|
|
"Mimics the target and\n"
|
|
"copies its special ability."),
|
|
.effect = EFFECT_ROLE_PLAY,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WISH] =
|
|
{
|
|
.name = COMPOUND_STRING("Wish"),
|
|
.description = COMPOUND_STRING(
|
|
"A wish that restores HP.\n"
|
|
"It takes time to work."),
|
|
.effect = EFFECT_WISH,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ASSIST] =
|
|
{
|
|
.name = COMPOUND_STRING("Assist"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks randomly with one\n"
|
|
"of the partner's moves."),
|
|
.effect = EFFECT_ASSIST,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_DEPENDS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_4,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_INGRAIN] =
|
|
{
|
|
.name = COMPOUND_STRING("Ingrain"),
|
|
.description = COMPOUND_STRING(
|
|
"Lays roots that restore HP.\n"
|
|
"The user can't switch out."),
|
|
.effect = EFFECT_INGRAIN,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_1 },
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SUPERPOWER] =
|
|
{
|
|
.name = COMPOUND_STRING("Superpower"),
|
|
.description = COMPOUND_STRING(
|
|
"Boosts strength sharply,\n"
|
|
"but lowers abilities."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_DEF_DOWN,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_LOCK_ON, COMBO_STARTER_MIND_READER},
|
|
},
|
|
|
|
[MOVE_MAGIC_COAT] =
|
|
{
|
|
.name = COMPOUND_STRING("Magic Coat"),
|
|
.description = COMPOUND_STRING(
|
|
"Reflects special effects\n"
|
|
"back to the attacker."),
|
|
.effect = EFFECT_MAGIC_COAT,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_RECYCLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Recycle"),
|
|
.description = COMPOUND_STRING(
|
|
"Recycles a used item for\n"
|
|
"one more use."),
|
|
.effect = EFFECT_RECYCLE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_REVENGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Revenge"),
|
|
.description = sRevengeDescription,
|
|
.effect = EFFECT_REVENGE,
|
|
.power = 60,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = -4,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_REVENGE,
|
|
.contestComboMoves = {COMBO_STARTER_PAYBACK},
|
|
},
|
|
|
|
[MOVE_BRICK_BREAK] =
|
|
{
|
|
.name = COMPOUND_STRING("Brick Break"),
|
|
.description = COMPOUND_STRING(
|
|
"Destroys barriers such as\n"
|
|
"REFLECT and causes damage."),
|
|
.effect = EFFECT_BRICK_BREAK,
|
|
.power = 75,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_YAWN] =
|
|
{
|
|
.name = COMPOUND_STRING("Yawn"),
|
|
.description = COMPOUND_STRING(
|
|
"Lulls the foe into yawning,\n"
|
|
"then sleeping next turn."),
|
|
.effect = EFFECT_YAWN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_YAWN,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_KNOCK_OFF] =
|
|
{
|
|
.name = COMPOUND_STRING("Knock Off"),
|
|
.description = COMPOUND_STRING(
|
|
"Knocks down the foe's held\n"
|
|
"item to prevent its use."),
|
|
.effect = EFFECT_KNOCK_OFF,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 65 : 20,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_KNOCK_OFF,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FAKE_OUT},
|
|
},
|
|
|
|
[MOVE_ENDEAVOR] =
|
|
{
|
|
.name = COMPOUND_STRING("Endeavor"),
|
|
.description = COMPOUND_STRING(
|
|
"Gains power if the user's HP\n"
|
|
"is lower than the foe's HP."),
|
|
.effect = EFFECT_ENDEAVOR,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.parentalBondBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_ENDURE},
|
|
},
|
|
|
|
[MOVE_ERUPTION] =
|
|
{
|
|
.name = COMPOUND_STRING("Eruption"),
|
|
.description = COMPOUND_STRING(
|
|
"The higher the user's HP,\n"
|
|
"the more damage caused."),
|
|
.effect = EFFECT_ERUPTION,
|
|
.power = 150,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_EARTHQUAKE, COMBO_STARTER_ENDURE, COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_SKILL_SWAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Skill Swap"),
|
|
.description = COMPOUND_STRING(
|
|
"The user swaps special\n"
|
|
"abilities with the target."),
|
|
.effect = EFFECT_SKILL_SWAP,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_IMPRISON] =
|
|
{
|
|
.name = COMPOUND_STRING("Imprison"),
|
|
.description = COMPOUND_STRING(
|
|
"Prevents foes from using\n"
|
|
"moves known by the user."),
|
|
.effect = EFFECT_IMPRISON,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_2 },
|
|
.snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5,
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.forcePressure = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_REFRESH] =
|
|
{
|
|
.name = COMPOUND_STRING("Refresh"),
|
|
.description = COMPOUND_STRING(
|
|
"Heals poisoning, paralysis,\n"
|
|
"or a burn."),
|
|
.effect = EFFECT_REFRESH,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SING, COMBO_STARTER_WATER_SPORT},
|
|
},
|
|
|
|
[MOVE_GRUDGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Grudge"),
|
|
.description = COMPOUND_STRING(
|
|
"If the user faints, deletes\n"
|
|
"all PP of foe's last move."),
|
|
.effect = EFFECT_GRUDGE,
|
|
.power = 0,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_FOLLOW_ME },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CURSE},
|
|
},
|
|
|
|
[MOVE_SNATCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Snatch"),
|
|
.description = COMPOUND_STRING(
|
|
"Steals the effects of the\n"
|
|
"move the target uses next."),
|
|
.effect = EFFECT_SNATCH,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_DEPENDS,
|
|
.priority = 4,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_2 },
|
|
.ignoresSubstitute = TRUE,
|
|
.forcePressure = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SECRET_POWER] =
|
|
{
|
|
.name = COMPOUND_STRING("Secret Power"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack with effects\n"
|
|
"that vary by location."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SECRET_POWER,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WITH_GOOD_CONDITION,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DIVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Dive"),
|
|
.description = COMPOUND_STRING(
|
|
"Dives underwater the first\n"
|
|
"turn and strikes next turn."),
|
|
.effect = EFFECT_SEMI_INVULNERABLE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_4 ? 80 : 60,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = 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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_DIVE,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE, COMBO_STARTER_SURF},
|
|
},
|
|
|
|
[MOVE_ARM_THRUST] =
|
|
{
|
|
.name = COMPOUND_STRING("Arm Thrust"),
|
|
.description = COMPOUND_STRING(
|
|
"Straight-arm punches that\n"
|
|
"strike the foe 2 to 5 times."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 15,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FAKE_OUT, COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_CAMOUFLAGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Camouflage"),
|
|
.description = COMPOUND_STRING(
|
|
"Alters the Pokémon's type\n"
|
|
"depending on the location."),
|
|
.effect = EFFECT_CAMOUFLAGE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TAIL_GLOW] =
|
|
{
|
|
.name = COMPOUND_STRING("Tail Glow"),
|
|
.description = COMPOUND_STRING(
|
|
"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,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LUSTER_PURGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Luster Purge"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a burst of\n"
|
|
"light. May lower Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = (B_UPDATED_MOVE_DATA >= GEN_9) ? 95 : 70,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND},
|
|
},
|
|
|
|
[MOVE_MIST_BALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Mist Ball"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a flurry of\n"
|
|
"down. May lower Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = (B_UPDATED_MOVE_DATA >= GEN_9) ? 95 : 70,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND},
|
|
},
|
|
|
|
[MOVE_FEATHER_DANCE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("FeatherDance", "Feather Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"Envelops the foe with down\n"
|
|
"to sharply reduce Attack."),
|
|
.effect = EFFECT_ATTACK_DOWN_2,
|
|
.power = 0,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TEETER_DANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Teeter Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"Confuses all Pokémon on\n"
|
|
"the scene."),
|
|
.effect = EFFECT_CONFUSE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BLAZE_KICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Blaze Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"A kick with a high critical-\n"
|
|
"hit ratio. May cause a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 85,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 90,
|
|
.criticalHitStage = 1,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_MUD_SPORT] =
|
|
{
|
|
.name = COMPOUND_STRING("Mud Sport"),
|
|
.description = COMPOUND_STRING(
|
|
"Covers the user in mud to\n"
|
|
"raise electrical resistance."),
|
|
.effect = EFFECT_MUD_SPORT,
|
|
.power = 0,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = COMBO_STARTER_MUD_SPORT,
|
|
.contestComboMoves = {COMBO_STARTER_MUD_SLAP, COMBO_STARTER_SANDSTORM, COMBO_STARTER_WATER_SPORT},
|
|
},
|
|
|
|
[MOVE_ICE_BALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Ice Ball"),
|
|
.description = COMPOUND_STRING(
|
|
"A 5-turn attack that gains\n"
|
|
"power on successive hits."),
|
|
.effect = EFFECT_ROLLOUT,
|
|
.power = 30,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 90,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ballisticMove = TRUE,
|
|
.instructBanned = TRUE,
|
|
.parentalBondBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL},
|
|
},
|
|
|
|
[MOVE_NEEDLE_ARM] =
|
|
{
|
|
.name = COMPOUND_STRING("Needle Arm"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with thorny arms.\n"
|
|
"May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS < GEN_4,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SLACK_OFF] =
|
|
{
|
|
.name = COMPOUND_STRING("Slack Off"),
|
|
.description = COMPOUND_STRING(
|
|
"Slacks off and restores\n"
|
|
"half the maximum HP."),
|
|
.effect = EFFECT_RESTORE_HP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HYPER_VOICE] =
|
|
{
|
|
.name = COMPOUND_STRING("Hyper Voice"),
|
|
.description = COMPOUND_STRING(
|
|
"A loud attack that uses\n"
|
|
"sound waves to injure."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_POISON_FANG] =
|
|
{
|
|
.name = COMPOUND_STRING("Poison Fang"),
|
|
.description = COMPOUND_STRING(
|
|
"A sharp-fanged attack.\n"
|
|
"May badly poison the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_TOXIC,
|
|
.chance = B_UPDATED_MOVE_DATA >= GEN_6 ? 50 : 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CRUSH_CLAW] =
|
|
{
|
|
.name = COMPOUND_STRING("Crush Claw"),
|
|
.description = COMPOUND_STRING(
|
|
"Tears at the foe with sharp\n"
|
|
"claws. May lower Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 95,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SWORDS_DANCE},
|
|
},
|
|
|
|
[MOVE_BLAST_BURN] =
|
|
{
|
|
.name = COMPOUND_STRING("Blast Burn"),
|
|
.description = COMPOUND_STRING(
|
|
"Powerful, but leaves the\n"
|
|
"user immobile the next turn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 150,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RECHARGE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_HYDRO_CANNON] =
|
|
{
|
|
.name = COMPOUND_STRING("Hydro Cannon"),
|
|
.description = COMPOUND_STRING(
|
|
"Powerful, but leaves the\n"
|
|
"user immobile the next turn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 150,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RECHARGE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_METEOR_MASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Meteor Mash"),
|
|
.description = COMPOUND_STRING(
|
|
"Fires a meteor-like punch.\n"
|
|
"May raise Attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 100,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 85,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ASTONISH] =
|
|
{
|
|
.name = COMPOUND_STRING("Astonish"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that may shock\n"
|
|
"the foe into flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 30,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS < GEN_4,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WEATHER_BALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Weather Ball"),
|
|
.description = COMPOUND_STRING(
|
|
"The move's type and power\n"
|
|
"change with the weather."),
|
|
.effect = EFFECT_WEATHER_BALL,
|
|
.power = 50,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.zMove = { .powerOverride = 160 },
|
|
.ballisticMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL, COMBO_STARTER_RAIN_DANCE, COMBO_STARTER_SANDSTORM, COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_AROMATHERAPY] =
|
|
{
|
|
.name = COMPOUND_STRING("Aromatherapy"),
|
|
.description = COMPOUND_STRING(
|
|
"Heals all status problems\n"
|
|
"with a soothing scent."),
|
|
.effect = EFFECT_HEAL_BELL,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_USER | MOVE_TARGET_ALLY,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FAKE_TEARS] =
|
|
{
|
|
.name = COMPOUND_STRING("Fake Tears"),
|
|
.description = COMPOUND_STRING(
|
|
"Feigns crying to sharply\n"
|
|
"lower the foe's Sp. Def."),
|
|
.effect = EFFECT_SPECIAL_DEFENSE_DOWN_2,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AIR_CUTTER] =
|
|
{
|
|
.name = COMPOUND_STRING("Air Cutter"),
|
|
.description = COMPOUND_STRING(
|
|
"Hacks with razorlike wind.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 55,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 95,
|
|
.criticalHitStage = 1,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.windMove = TRUE,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_OVERHEAT] =
|
|
{
|
|
.name = COMPOUND_STRING("Overheat"),
|
|
.description = COMPOUND_STRING(
|
|
"Allows a full-power attack,\n"
|
|
"but sharply lowers Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 130 : 140,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 90,
|
|
.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,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_ODOR_SLEUTH] =
|
|
{
|
|
.name = COMPOUND_STRING("Odor Sleuth"),
|
|
.description = COMPOUND_STRING(
|
|
"Negates the foe's efforts\n"
|
|
"to heighten evasiveness."),
|
|
.effect = EFFECT_FORESIGHT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_4 ? 0 : 100,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ROCK_TOMB] =
|
|
{
|
|
.name = COMPOUND_STRING("Rock Tomb"),
|
|
.description = COMPOUND_STRING(
|
|
"Stops the foe from moving\n"
|
|
"with rocks and cuts Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 50,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 95 : 80,
|
|
.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,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_ROCK_THROW},
|
|
},
|
|
|
|
[MOVE_SILVER_WIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Silver Wind"),
|
|
.description = COMPOUND_STRING(
|
|
"A powdery attack that may\n"
|
|
"raise abilities."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.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,
|
|
.self = TRUE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_METAL_SOUND] =
|
|
{
|
|
.name = COMPOUND_STRING("Metal Sound"),
|
|
.description = COMPOUND_STRING(
|
|
"Emits a horrible screech\n"
|
|
"that sharply lowers Sp. Def."),
|
|
.effect = EFFECT_SPECIAL_DEFENSE_DOWN_2,
|
|
.power = 0,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 85,
|
|
.pp = 40,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = COMBO_STARTER_METAL_SOUND,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GRASS_WHISTLE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("GrassWhistle", "Grass Whistle"),
|
|
.description = COMPOUND_STRING(
|
|
"Lulls the foe into sleep\n"
|
|
"with a pleasant melody."),
|
|
.effect = EFFECT_SLEEP,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 55,
|
|
.pp = 15,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TICKLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Tickle"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the foe laugh to\n"
|
|
"lower Attack and Defense."),
|
|
.effect = EFFECT_TICKLE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_COSMIC_POWER] =
|
|
{
|
|
.name = COMPOUND_STRING("Cosmic Power"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises Defense and Sp. Def\n"
|
|
"with a mystic power."),
|
|
.effect = EFFECT_COSMIC_POWER,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WATER_SPOUT] =
|
|
{
|
|
.name = COMPOUND_STRING("Water Spout"),
|
|
.description = COMPOUND_STRING(
|
|
"Inflicts more damage if the\n"
|
|
"user's HP is high."),
|
|
.effect = EFFECT_ERUPTION,
|
|
.power = 150,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_SIGNAL_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Signal Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"A strange beam attack that\n"
|
|
"may confuse the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SHADOW_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Shadow Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"An unavoidable punch that\n"
|
|
"is thrown from shadows."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_EXTRASENSORY] =
|
|
{
|
|
.name = COMPOUND_STRING("Extrasensory"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a peculiar\n"
|
|
"power. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SKY_UPPERCUT] =
|
|
{
|
|
.name = COMPOUND_STRING("Sky Uppercut"),
|
|
.description = COMPOUND_STRING(
|
|
"An uppercut thrown as if\n"
|
|
"leaping into the sky."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 85,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 90,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.damagesAirborne = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_SAND_TOMB] =
|
|
{
|
|
.name = COMPOUND_STRING("Sand Tomb"),
|
|
.description = COMPOUND_STRING(
|
|
"Traps and hurts the foe in\n"
|
|
"quicksand for "BINDING_TURNS" turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 35 : 15,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 85 : 70,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_WRAP,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SANDSTORM},
|
|
},
|
|
|
|
[MOVE_SHEER_COLD] =
|
|
{
|
|
.name = COMPOUND_STRING("Sheer Cold"),
|
|
.description = COMPOUND_STRING(
|
|
"A chilling attack that\n"
|
|
"causes fainting if it hits."),
|
|
.effect = EFFECT_OHKO,
|
|
.power = 1,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 30,
|
|
.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,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL, COMBO_STARTER_MIND_READER},
|
|
},
|
|
|
|
[MOVE_MUDDY_WATER] =
|
|
{
|
|
.name = COMPOUND_STRING("Muddy Water"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with muddy water.\n"
|
|
"May lower accuracy."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 95,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 85,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.skyBattleBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ACC_MINUS_1,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_BULLET_SEED] =
|
|
{
|
|
.name = COMPOUND_STRING("Bullet Seed"),
|
|
.description = COMPOUND_STRING(
|
|
"Shoots 2 to 5 seeds in a row\n"
|
|
"to strike the foe."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 25 : 10,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_AERIAL_ACE] =
|
|
{
|
|
.name = COMPOUND_STRING("Aerial Ace"),
|
|
.description = COMPOUND_STRING(
|
|
"An extremely speedy and\n"
|
|
"unavoidable attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ICICLE_SPEAR] =
|
|
{
|
|
.name = COMPOUND_STRING("Icicle Spear"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks the foe by firing\n"
|
|
"2 to 5 icicles in a row."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 25 : 10,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_IRON_DEFENSE] =
|
|
{
|
|
.name = COMPOUND_STRING("Iron Defense"),
|
|
.description = COMPOUND_STRING(
|
|
"Hardens the body's surface\n"
|
|
"to sharply raise Defense."),
|
|
.effect = EFFECT_DEFENSE_UP_2,
|
|
.power = 0,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BLOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Block"),
|
|
.description = COMPOUND_STRING(
|
|
"Blocks the foe's way to\n"
|
|
"prevent escape."),
|
|
.effect = EFFECT_MEAN_LOOK,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HOWL] =
|
|
{
|
|
.name = COMPOUND_STRING("Howl"),
|
|
.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,
|
|
.accuracy = 0,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ATK_UP_1 },
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.soundMove = B_UPDATED_MOVE_FLAGS >= GEN_8,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_CLAW] =
|
|
{
|
|
.name = COMPOUND_STRING("Dragon Claw"),
|
|
.description = COMPOUND_STRING(
|
|
"Slashes the foe with sharp\n"
|
|
"claws."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_DRAGON_BREATH, COMBO_STARTER_DRAGON_DANCE, COMBO_STARTER_DRAGON_RAGE, COMBO_STARTER_DRAGON_RUSH, COMBO_STARTER_DRAGON_TAIL},
|
|
},
|
|
|
|
[MOVE_FRENZY_PLANT] =
|
|
{
|
|
.name = COMPOUND_STRING("Frenzy Plant"),
|
|
.description = COMPOUND_STRING(
|
|
"Powerful, but leaves the\n"
|
|
"user immobile the next turn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 150,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.skyBattleBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RECHARGE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_BULK_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Bulk Up"),
|
|
.description = COMPOUND_STRING(
|
|
"Bulks up the body to boost\n"
|
|
"both Attack and Defense."),
|
|
.effect = EFFECT_BULK_UP,
|
|
.power = 0,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BOUNCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Bounce"),
|
|
.description = COMPOUND_STRING(
|
|
"Bounces up, then down the\n"
|
|
"next turn. May paralyze."),
|
|
.effect = EFFECT_SEMI_INVULNERABLE,
|
|
.power = 85,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 85,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.gravityBanned = 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,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MUD_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Mud Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"Hurls mud at the foe and\n"
|
|
"reduces Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 55,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SANDSTORM},
|
|
},
|
|
|
|
[MOVE_POISON_TAIL] =
|
|
{
|
|
.name = COMPOUND_STRING("Poison Tail"),
|
|
.description = COMPOUND_STRING(
|
|
"Has a high critical-hit\n"
|
|
"ratio. May also poison."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_COVET] =
|
|
{
|
|
.name = COMPOUND_STRING("Covet"),
|
|
.description = COMPOUND_STRING(
|
|
"Cutely begs to obtain an\n"
|
|
"item held by the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 60 : 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_STEAL_ITEM,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_VOLT_TACKLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Volt Tackle"),
|
|
.description = COMPOUND_STRING(
|
|
"A life-risking tackle that\n"
|
|
"slightly hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.recoil = 33,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
#if B_UPDATED_MOVE_DATA >= GEN_4
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 10,
|
|
}),
|
|
#endif
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MAGICAL_LEAF] =
|
|
{
|
|
.name = COMPOUND_STRING("Magical Leaf"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a strange leaf\n"
|
|
"that cannot be evaded."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_WATER_SPORT] =
|
|
{
|
|
.name = COMPOUND_STRING("Water Sport"),
|
|
.description = COMPOUND_STRING(
|
|
"The user becomes soaked to\n"
|
|
"raise resistance to fire."),
|
|
.effect = EFFECT_WATER_SPORT,
|
|
.power = 0,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = COMBO_STARTER_WATER_SPORT,
|
|
.contestComboMoves = {COMBO_STARTER_MUD_SPORT, COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_CALM_MIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Calm Mind"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises Sp. Atk and Sp. Def\n"
|
|
"by focusing the mind."),
|
|
.effect = EFFECT_CALM_MIND,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_CALM_MIND,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LEAF_BLADE] =
|
|
{
|
|
.name = COMPOUND_STRING("Leaf Blade"),
|
|
.description = COMPOUND_STRING(
|
|
"Slashes with a sharp leaf.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_4 ? 90 : 70,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_DANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Dragon Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"A mystical dance that ups\n"
|
|
"Attack and Speed."),
|
|
.effect = EFFECT_DRAGON_DANCE,
|
|
.power = 0,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_DRAGON_DANCE,
|
|
.contestComboMoves = {COMBO_STARTER_DRAGON_BREATH, COMBO_STARTER_DRAGON_RAGE, COMBO_STARTER_DRAGON_RUSH, COMBO_STARTER_DRAGON_TAIL},
|
|
},
|
|
|
|
[MOVE_ROCK_BLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("Rock Blast"),
|
|
.description = COMPOUND_STRING(
|
|
"Hurls boulders at the foe\n"
|
|
"2 to 5 times in a row."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 25,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 90 : 80,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SHOCK_WAVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Shock Wave"),
|
|
.description = COMPOUND_STRING(
|
|
"A fast and unavoidable\n"
|
|
"electric attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE},
|
|
},
|
|
|
|
[MOVE_WATER_PULSE] =
|
|
{
|
|
.name = COMPOUND_STRING("Water Pulse"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with ultrasonic\n"
|
|
"waves. May confuse the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.pulseMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_DOOM_DESIRE] =
|
|
{
|
|
.name = COMPOUND_STRING("Doom Desire"),
|
|
.description = COMPOUND_STRING(
|
|
"Summons strong sunlight to\n"
|
|
"attack 2 turns later."),
|
|
.effect = EFFECT_FUTURE_SIGHT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 140 : 120,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 100 : 85,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PSYCHO_BOOST] =
|
|
{
|
|
.name = COMPOUND_STRING("Psycho Boost"),
|
|
.description = COMPOUND_STRING(
|
|
"Allows a full-power attack,\n"
|
|
"but sharply lowers Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 140,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_TWO_DOWN,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CALM_MIND},
|
|
},
|
|
|
|
[MOVE_ROOST] =
|
|
{
|
|
.name = COMPOUND_STRING("Roost"),
|
|
.description = COMPOUND_STRING(
|
|
"Restores the user's HP by\n"
|
|
"half of its max HP."),
|
|
.effect = EFFECT_ROOST,
|
|
.power = 0,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_BRAVE_BIRD},
|
|
},
|
|
|
|
[MOVE_GRAVITY] =
|
|
{
|
|
.name = COMPOUND_STRING("Gravity"),
|
|
.description = COMPOUND_STRING(
|
|
"Gravity is intensified\n"
|
|
"negating levitation."),
|
|
.effect = EFFECT_GRAVITY,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPATK_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MIRACLE_EYE] =
|
|
{
|
|
.name = COMPOUND_STRING("Miracle Eye"),
|
|
.description = COMPOUND_STRING(
|
|
"Negate evasiveness and\n"
|
|
"Dark-type's immunities."),
|
|
.effect = EFFECT_MIRACLE_EYE,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WAKE_UP_SLAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Wake-Up Slap"),
|
|
.description = COMPOUND_STRING(
|
|
"Powerful against sleeping\n"
|
|
"foes, but also heals them."),
|
|
.effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 70 : 60,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = STATUS1_SLEEP,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_REMOVE_STATUS,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HAMMER_ARM] =
|
|
{
|
|
.name = COMPOUND_STRING("Hammer Arm"),
|
|
.description = COMPOUND_STRING(
|
|
"A swinging fist attack\n"
|
|
"that also lowers Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_GYRO_BALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Gyro Ball"),
|
|
.description = COMPOUND_STRING(
|
|
"A high-speed spin that does\n"
|
|
"more damage to faster foes."),
|
|
.effect = EFFECT_GYRO_BALL,
|
|
.power = 1,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ballisticMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HEALING_WISH] =
|
|
{
|
|
.name = COMPOUND_STRING("Healing Wish"),
|
|
.description = sHealingWishDescription,
|
|
.effect = EFFECT_HEALING_WISH,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BRINE] =
|
|
{
|
|
.name = COMPOUND_STRING("Brine"),
|
|
.description = COMPOUND_STRING(
|
|
"Does double damage to foes\n"
|
|
"with half HP."),
|
|
.effect = EFFECT_BRINE,
|
|
.power = 65,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_NATURAL_GIFT] =
|
|
{
|
|
.name = COMPOUND_STRING("Natural Gift"),
|
|
.description = COMPOUND_STRING(
|
|
"The effectiveness varies\n"
|
|
"with the held Berry."),
|
|
.effect = EFFECT_NATURAL_GIFT,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FEINT] =
|
|
{
|
|
.name = COMPOUND_STRING("Feint"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that hits foes\n"
|
|
"using moves like Protect."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 30 : 50,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 2,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_6,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FEINT,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PLUCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Pluck"),
|
|
.description = sPluckDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BUG_BITE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TAILWIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Tailwind"),
|
|
.description = COMPOUND_STRING(
|
|
"Whips up a turbulent breeze\n"
|
|
"that raises Speed."),
|
|
.effect = EFFECT_TAILWIND,
|
|
.power = 0,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 15 : 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ACUPRESSURE] =
|
|
{
|
|
.name = COMPOUND_STRING("Acupressure"),
|
|
.description = COMPOUND_STRING(
|
|
"The user sharply raises\n"
|
|
"one of its stats."),
|
|
.effect = EFFECT_ACUPRESSURE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER | MOVE_TARGET_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_BOOST_CRITS },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.snatchAffected = B_UPDATED_MOVE_FLAGS < GEN_5,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_METAL_BURST] =
|
|
{
|
|
.name = COMPOUND_STRING("Metal Burst"),
|
|
.description = COMPOUND_STRING(
|
|
"Retaliates any hit with\n"
|
|
"greater power."),
|
|
.effect = EFFECT_METAL_BURST,
|
|
.power = 1,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_DEPENDS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.meFirstBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_METAL_SOUND},
|
|
},
|
|
|
|
[MOVE_U_TURN] =
|
|
{
|
|
.name = COMPOUND_STRING("U-turn"),
|
|
.description = sUTurnDescription,
|
|
.effect = EFFECT_HIT_ESCAPE,
|
|
.power = 70,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CLOSE_COMBAT] =
|
|
{
|
|
.name = COMPOUND_STRING("Close Combat"),
|
|
.description = sCloseCombatDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_SPDEF_DOWN,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY, COMBO_STARTER_MIND_READER},
|
|
},
|
|
|
|
[MOVE_PAYBACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Payback"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that gains power\n"
|
|
"if the user moves last."),
|
|
.effect = EFFECT_PAYBACK,
|
|
.power = 50,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_PAYBACK,
|
|
.contestComboMoves = {COMBO_STARTER_REVENGE},
|
|
},
|
|
|
|
[MOVE_ASSURANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Assurance"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that gains power\n"
|
|
"if the foe has been hurt."),
|
|
.effect = EFFECT_ASSURANCE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 50,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_PAYBACK, COMBO_STARTER_REVENGE},
|
|
},
|
|
|
|
[MOVE_EMBARGO] =
|
|
{
|
|
.name = COMPOUND_STRING("Embargo"),
|
|
.description = COMPOUND_STRING(
|
|
"Prevents the foe from\n"
|
|
"using any items."),
|
|
.effect = EFFECT_EMBARGO,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLING] =
|
|
{
|
|
.name = COMPOUND_STRING("Fling"),
|
|
.description = COMPOUND_STRING(
|
|
"The effectiveness varies\n"
|
|
"with the held item."),
|
|
.effect = EFFECT_FLING,
|
|
.power = 1,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PSYCHO_SHIFT] =
|
|
{
|
|
.name = COMPOUND_STRING("Psycho Shift"),
|
|
.description = COMPOUND_STRING(
|
|
"Transfers status problems\n"
|
|
"to the foe."),
|
|
.effect = EFFECT_PSYCHO_SHIFT,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 100 : 90,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TRUMP_CARD] =
|
|
{
|
|
.name = COMPOUND_STRING("Trump Card"),
|
|
.description = COMPOUND_STRING(
|
|
"The less PP the move has\n"
|
|
"the more damage it does."),
|
|
.effect = EFFECT_TRUMP_CARD,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HEAL_BLOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Heal Block"),
|
|
.description = COMPOUND_STRING(
|
|
"Prevents the foe from\n"
|
|
"recovering any HP."),
|
|
.effect = EFFECT_HEAL_BLOCK,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WRING_OUT] =
|
|
{
|
|
.name = COMPOUND_STRING("Wring Out"),
|
|
.description = sWringOutDescription,
|
|
.effect = EFFECT_VARY_POWER_BASED_ON_HP,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.argument = 120,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_POWER_TRICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Power Trick"),
|
|
.description = COMPOUND_STRING(
|
|
"The user swaps its Attack\n"
|
|
"and Defense stats."),
|
|
.effect = EFFECT_POWER_TRICK,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GASTRO_ACID] =
|
|
{
|
|
.name = COMPOUND_STRING("Gastro Acid"),
|
|
.description = COMPOUND_STRING(
|
|
"Stomach acid suppresses\n"
|
|
"the foe's ability."),
|
|
.effect = EFFECT_GASTRO_ACID,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LUCKY_CHANT] =
|
|
{
|
|
.name = COMPOUND_STRING("Lucky Chant"),
|
|
.description = COMPOUND_STRING(
|
|
"Prevents the foe from\n"
|
|
"landing critical hits."),
|
|
.effect = EFFECT_LUCKY_CHANT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_LUCKY_CHANT,
|
|
.contestComboMoves = {COMBO_STARTER_HEAL_BELL},
|
|
},
|
|
|
|
[MOVE_ME_FIRST] =
|
|
{
|
|
.name = COMPOUND_STRING("Me First"),
|
|
.description = COMPOUND_STRING(
|
|
"Executes the foe's attack\n"
|
|
"with greater power."),
|
|
.effect = EFFECT_ME_FIRST,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.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,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_COPYCAT] =
|
|
{
|
|
.name = COMPOUND_STRING("Copycat"),
|
|
.description = COMPOUND_STRING(
|
|
"The user mimics the last\n"
|
|
"move used by a foe."),
|
|
.effect = EFFECT_COPYCAT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_DEPENDS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ACC_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = 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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_POWER_SWAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Power Swap"),
|
|
.description = COMPOUND_STRING(
|
|
"Swaps changes to Attack\n"
|
|
"and Sp. Atk with the foe."),
|
|
.effect = EFFECT_POWER_SWAP,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GUARD_SWAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Guard Swap"),
|
|
.description = COMPOUND_STRING(
|
|
"Swaps changes to Defense\n"
|
|
"and Sp. Def with the foe."),
|
|
.effect = EFFECT_GUARD_SWAP,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PUNISHMENT] =
|
|
{
|
|
.name = COMPOUND_STRING("Punishment"),
|
|
.description = COMPOUND_STRING(
|
|
"Does more damage if the\n"
|
|
"foe has powered up."),
|
|
.effect = EFFECT_PUNISHMENT,
|
|
.power = 60,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LAST_RESORT] =
|
|
{
|
|
.name = COMPOUND_STRING("Last Resort"),
|
|
.description = COMPOUND_STRING(
|
|
"Can only be used if every\n"
|
|
"other move has been used."),
|
|
.effect = EFFECT_LAST_RESORT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 140 : 130,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WORRY_SEED] =
|
|
{
|
|
.name = COMPOUND_STRING("Worry Seed"),
|
|
.description = COMPOUND_STRING(
|
|
"Plants a seed on the foe\n"
|
|
"giving it Insomnia."),
|
|
.effect = EFFECT_WORRY_SEED,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_WORRY_SEED,
|
|
.contestComboMoves = {COMBO_STARTER_LEECH_SEED},
|
|
},
|
|
|
|
[MOVE_SUCKER_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Sucker Punch"),
|
|
.description = sSuckerPunchDescription,
|
|
.effect = EFFECT_SUCKER_PUNCH,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_7 ? 70 : 80,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TOXIC_SPIKES] =
|
|
{
|
|
.name = COMPOUND_STRING("Toxic Spikes"),
|
|
.description = COMPOUND_STRING(
|
|
"Sets spikes that poison a\n"
|
|
"foe switching in."),
|
|
.effect = EFFECT_TOXIC_SPIKES,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_OPPONENTS_FIELD,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5,
|
|
.forcePressure = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HEART_SWAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Heart Swap"),
|
|
.description = COMPOUND_STRING(
|
|
"Swaps any stat changes\n"
|
|
"with the foe."),
|
|
.effect = EFFECT_HEART_SWAP,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AQUA_RING] =
|
|
{
|
|
.name = COMPOUND_STRING("Aqua Ring"),
|
|
.description = COMPOUND_STRING(
|
|
"Forms a veil of water\n"
|
|
"that restores HP."),
|
|
.effect = EFFECT_AQUA_RING,
|
|
.power = 0,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MAGNET_RISE] =
|
|
{
|
|
.name = COMPOUND_STRING("Magnet Rise"),
|
|
.description = COMPOUND_STRING(
|
|
"The user levitates with\n"
|
|
"electromagnetism."),
|
|
.effect = EFFECT_MAGNET_RISE,
|
|
.power = 0,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_EVSN_UP_1 },
|
|
.snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.gravityBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLARE_BLITZ] =
|
|
{
|
|
.name = COMPOUND_STRING("Flare Blitz"),
|
|
.description = COMPOUND_STRING(
|
|
"A charge that may burn the\n"
|
|
"foe. Also hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.recoil = 33,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.thawsUser = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_FORCE_PALM] =
|
|
{
|
|
.name = COMPOUND_STRING("Force Palm"),
|
|
.description = COMPOUND_STRING(
|
|
"A shock wave attack that\n"
|
|
"may paralyze the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AURA_SPHERE] =
|
|
{
|
|
.name = COMPOUND_STRING("Aura Sphere"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with an aura blast\n"
|
|
"that cannot be evaded."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 90,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.pulseMove = TRUE,
|
|
.ballisticMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ROCK_POLISH] =
|
|
{
|
|
.name = COMPOUND_STRING("Rock Polish"),
|
|
.description = COMPOUND_STRING(
|
|
"Polishes the body to\n"
|
|
"sharply raise Speed."),
|
|
.effect = EFFECT_SPEED_UP_2,
|
|
.power = 0,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_POISON_JAB] =
|
|
{
|
|
.name = COMPOUND_STRING("Poison Jab"),
|
|
.description = COMPOUND_STRING(
|
|
"A stabbing attack that\n"
|
|
"may poison the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DARK_PULSE] =
|
|
{
|
|
.name = COMPOUND_STRING("Dark Pulse"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a horrible\n"
|
|
"aura. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.pulseMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_NIGHT_SLASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Night Slash"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits as soon as possible.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AQUA_TAIL] =
|
|
{
|
|
.name = COMPOUND_STRING("Aqua Tail"),
|
|
.description = COMPOUND_STRING(
|
|
"The user swings its tail\n"
|
|
"like a wave to attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_SEED_BOMB] =
|
|
{
|
|
.name = COMPOUND_STRING("Seed Bomb"),
|
|
.description = COMPOUND_STRING(
|
|
"A barrage of hard seeds\n"
|
|
"is fired at the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.ballisticMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AIR_SLASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Air Slash"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a blade of\n"
|
|
"air. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 95,
|
|
.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,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_X_SCISSOR] =
|
|
{
|
|
.name = COMPOUND_STRING("X-Scissor"),
|
|
.description = COMPOUND_STRING(
|
|
"Slashes the foe with crossed\n"
|
|
"scythes, claws, etc."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SWORDS_DANCE},
|
|
},
|
|
|
|
[MOVE_BUG_BUZZ] =
|
|
{
|
|
.name = COMPOUND_STRING("Bug Buzz"),
|
|
.description = COMPOUND_STRING(
|
|
"A damaging sound wave that\n"
|
|
"may lower Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.soundMove = TRUE,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_PULSE] =
|
|
{
|
|
.name = COMPOUND_STRING("Dragon Pulse"),
|
|
.description = COMPOUND_STRING(
|
|
"Generates a shock wave to\n"
|
|
"damage the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 85 : 90,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.pulseMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_RUSH] =
|
|
{
|
|
.name = COMPOUND_STRING("Dragon Rush"),
|
|
.description = COMPOUND_STRING(
|
|
"Tackles the foe with menace.\n"
|
|
"May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 75,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_DRAGON_RUSH,
|
|
.contestComboMoves = {COMBO_STARTER_DRAGON_BREATH, COMBO_STARTER_DRAGON_DANCE, COMBO_STARTER_DRAGON_RAGE, COMBO_STARTER_DRAGON_TAIL},
|
|
},
|
|
|
|
[MOVE_POWER_GEM] =
|
|
{
|
|
.name = COMPOUND_STRING("Power Gem"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with rays of light\n"
|
|
"that sparkle like diamonds."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 70,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAIN_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Drain Punch"),
|
|
.description = sMegaDrainDescription,
|
|
.effect = EFFECT_ABSORB,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_5 ? 75 : 60,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_VACUUM_WAVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Vacuum Wave"),
|
|
.description = COMPOUND_STRING(
|
|
"Whirls its fists to send\n"
|
|
"a wave that strikes first."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FOCUS_BLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("Focus Blast"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks at full power.\n"
|
|
"May lower Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 70,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_FOCUS_ENERGY},
|
|
},
|
|
|
|
[MOVE_ENERGY_BALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Energy Ball"),
|
|
.description = COMPOUND_STRING(
|
|
"Draws power from nature to\n"
|
|
"attack. May lower Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 90 : 80,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_BRAVE_BIRD] =
|
|
{
|
|
.name = COMPOUND_STRING("Brave Bird"),
|
|
.description = COMPOUND_STRING(
|
|
"A low altitude charge that\n"
|
|
"also hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.recoil = 33,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = COMBO_STARTER_BRAVE_BIRD,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_EARTH_POWER] =
|
|
{
|
|
.name = COMPOUND_STRING("Earth Power"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the ground erupt with\n"
|
|
"power. May lower Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.skyBattleBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SWITCHEROO] =
|
|
{
|
|
.name = COMPOUND_STRING("Switcheroo"),
|
|
.description = COMPOUND_STRING(
|
|
"Swaps items with the foe\n"
|
|
"faster than the eye can see."),
|
|
.effect = EFFECT_TRICK,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_2 },
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GIGA_IMPACT] =
|
|
{
|
|
.name = COMPOUND_STRING("Giga Impact"),
|
|
.description = sHyperBeamDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 150,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RECHARGE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_NASTY_PLOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Nasty Plot"),
|
|
.description = COMPOUND_STRING(
|
|
"Thinks bad thoughts to\n"
|
|
"sharply boost Sp. Atk."),
|
|
.effect = EFFECT_SPECIAL_ATTACK_UP_2,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BULLET_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Bullet Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"Punches as fast as a bul-\n"
|
|
"let. It always hits first."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AVALANCHE] =
|
|
{
|
|
.name = COMPOUND_STRING("Avalanche"),
|
|
.description = sRevengeDescription,
|
|
.effect = EFFECT_REVENGE,
|
|
.power = 60,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = -4,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ICE_SHARD] =
|
|
{
|
|
.name = COMPOUND_STRING("Ice Shard"),
|
|
.description = COMPOUND_STRING(
|
|
"Hurls a chunk of ice that\n"
|
|
"always strike first."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SHADOW_CLAW] =
|
|
{
|
|
.name = COMPOUND_STRING("Shadow Claw"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes with a shadow claw.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_THUNDER_FANG] =
|
|
{
|
|
.name = COMPOUND_STRING("Thunder Fang"),
|
|
.description = COMPOUND_STRING(
|
|
"May cause flinching or\n"
|
|
"leave the foe paralyzed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 10,
|
|
},
|
|
{
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = COMBO_STARTER_THUNDER_FANG,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE, COMBO_STARTER_FIRE_FANG, COMBO_STARTER_ICE_FANG},
|
|
},
|
|
|
|
[MOVE_ICE_FANG] =
|
|
{
|
|
.name = COMPOUND_STRING("Ice Fang"),
|
|
.description = COMPOUND_STRING(
|
|
"May cause flinching or\n"
|
|
#if B_USE_FROSTBITE == TRUE
|
|
"leave the foe frozen."),
|
|
#else
|
|
"leave the foe with frostbite."),
|
|
#endif
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE,
|
|
.chance = 10,
|
|
},
|
|
{
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_ICE_FANG,
|
|
.contestComboMoves = {COMBO_STARTER_FIRE_FANG, COMBO_STARTER_THUNDER_FANG},
|
|
},
|
|
|
|
[MOVE_FIRE_FANG] =
|
|
{
|
|
.name = COMPOUND_STRING("Fire Fang"),
|
|
.description = COMPOUND_STRING(
|
|
"May cause flinching or\n"
|
|
"leave the foe with a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
},
|
|
{
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_FIRE_FANG,
|
|
.contestComboMoves = {COMBO_STARTER_ICE_FANG, COMBO_STARTER_THUNDER_FANG},
|
|
},
|
|
|
|
[MOVE_SHADOW_SNEAK] =
|
|
{
|
|
.name = COMPOUND_STRING("Shadow Sneak"),
|
|
.description = COMPOUND_STRING(
|
|
"Extends the user's shadow\n"
|
|
"to strike first."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MUD_BOMB] =
|
|
{
|
|
.name = COMPOUND_STRING("Mud Bomb"),
|
|
.description = COMPOUND_STRING(
|
|
"Throws a blob of mud to\n"
|
|
"damage and cut accuracy."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 85,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ACC_MINUS_1,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PSYCHO_CUT] =
|
|
{
|
|
.name = COMPOUND_STRING("Psycho Cut"),
|
|
.description = COMPOUND_STRING(
|
|
"Tears with psychic blades.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ZEN_HEADBUTT] =
|
|
{
|
|
.name = COMPOUND_STRING("Zen Headbutt"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with a strong head-\n"
|
|
"butt. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 90,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MIRROR_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Mirror Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"Emits a flash of energy to\n"
|
|
"damage and cut accuracy."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 85,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ACC_MINUS_1,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLASH_CANNON] =
|
|
{
|
|
.name = COMPOUND_STRING("Flash Cannon"),
|
|
.description = COMPOUND_STRING(
|
|
"Releases a blast of light\n"
|
|
"that may lower Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ROCK_CLIMB] =
|
|
{
|
|
.name = COMPOUND_STRING("Rock Climb"),
|
|
.description = COMPOUND_STRING(
|
|
"A charging attack that may\n"
|
|
"confuse the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 85,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WITH_GOOD_CONDITION,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DEFOG] =
|
|
{
|
|
.name = COMPOUND_STRING("Defog"),
|
|
.description = COMPOUND_STRING(
|
|
"Removes obstacles and\n"
|
|
"lowers evasion."),
|
|
.effect = EFFECT_DEFOG,
|
|
.power = 0,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TRICK_ROOM] =
|
|
{
|
|
.name = COMPOUND_STRING("Trick Room"),
|
|
.description = COMPOUND_STRING(
|
|
"Slower Pokémon get to move\n"
|
|
"first for 5 turns."),
|
|
.effect = EFFECT_TRICK_ROOM,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRACO_METEOR] =
|
|
{
|
|
.name = COMPOUND_STRING("Draco Meteor"),
|
|
.description = COMPOUND_STRING(
|
|
"Casts comets onto the foe.\n"
|
|
"Harshly lowers the Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 130 : 140,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_TWO_DOWN,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DISCHARGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Discharge"),
|
|
.description = COMPOUND_STRING(
|
|
"Zaps the foes with electri-\n"
|
|
"city. May paralyze them."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_FOES_AND_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE},
|
|
},
|
|
|
|
[MOVE_LAVA_PLUME] =
|
|
{
|
|
.name = COMPOUND_STRING("Lava Plume"),
|
|
.description = sLavaPlumeDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_FOES_AND_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_LEAF_STORM] =
|
|
{
|
|
.name = COMPOUND_STRING("Leaf Storm"),
|
|
.description = COMPOUND_STRING(
|
|
"Whips up a storm of leaves.\n"
|
|
"Harshly lowers the Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 130 : 140,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_TWO_DOWN,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_POWER_WHIP] =
|
|
{
|
|
.name = COMPOUND_STRING("Power Whip"),
|
|
.description = COMPOUND_STRING(
|
|
"Violently lashes the foe\n"
|
|
"with vines or tentacles."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 85,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_ROCK_WRECKER] =
|
|
{
|
|
.name = COMPOUND_STRING("Rock Wrecker"),
|
|
.description = sHyperBeamDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 150,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RECHARGE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CROSS_POISON] =
|
|
{
|
|
.name = COMPOUND_STRING("Cross Poison"),
|
|
.description = COMPOUND_STRING(
|
|
"A slash that may poison a\n"
|
|
"foe and do critical damage."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GUNK_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Gunk Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"Shoots filthy garbage at\n"
|
|
"the foe. May also poison."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_POISON,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 70,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_IRON_HEAD] =
|
|
{
|
|
.name = COMPOUND_STRING("Iron Head"),
|
|
.description = COMPOUND_STRING(
|
|
"Slams the foe with a hard\n"
|
|
"head. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MAGNET_BOMB] =
|
|
{
|
|
.name = COMPOUND_STRING("Magnet Bomb"),
|
|
.description = COMPOUND_STRING(
|
|
"Launches a magnet that\n"
|
|
"strikes without fail."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.ballisticMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STONE_EDGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Stone Edge"),
|
|
.description = COMPOUND_STRING(
|
|
"Stabs the foe with stones.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 80,
|
|
.criticalHitStage = 1,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CAPTIVATE] =
|
|
{
|
|
.name = COMPOUND_STRING("Captivate"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the opposite gender\n"
|
|
"sharply reduce its Sp. Atk."),
|
|
.effect = EFFECT_CAPTIVATE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARM},
|
|
},
|
|
|
|
[MOVE_STEALTH_ROCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Stealth Rock"),
|
|
.description = COMPOUND_STRING(
|
|
"Sets floating stones that\n"
|
|
"hurt a foe switching in."),
|
|
.effect = EFFECT_STEALTH_ROCK,
|
|
.power = 0,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_OPPONENTS_FIELD,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.magicCoatAffected = B_UPDATED_MOVE_FLAGS >= GEN_5,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.forcePressure = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GRASS_KNOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Grass Knot"),
|
|
.description = COMPOUND_STRING(
|
|
"A snare attack that does\n"
|
|
"more damage to heavier foes."),
|
|
.effect = EFFECT_LOW_KICK,
|
|
.power = 1,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.makesContact = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CHATTER] =
|
|
{
|
|
.name = COMPOUND_STRING("Chatter"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a sound wave\n"
|
|
"that causes confusion."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 65 : 60,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
#if B_UPDATED_MOVE_DATA >= GEN_6
|
|
.chance = 100,
|
|
#elif B_UPDATED_MOVE_DATA >= GEN_5
|
|
.chance = 10,
|
|
#else
|
|
.chance = 31,
|
|
#endif
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_JUDGMENT] =
|
|
{
|
|
.name = COMPOUND_STRING("Judgment"),
|
|
.description = COMPOUND_STRING(
|
|
"The type varies with the\n"
|
|
"kind of Plate held."),
|
|
.effect = EFFECT_CHANGE_TYPE_ON_ITEM,
|
|
.power = 100,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BUG_BITE] =
|
|
{
|
|
.name = COMPOUND_STRING("Bug Bite"),
|
|
.description = sPluckDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BUG_BITE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CHARGE_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Charge Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"Fires a beam of electricity.\n"
|
|
"May raise Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 70,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE},
|
|
},
|
|
|
|
[MOVE_WOOD_HAMMER] =
|
|
{
|
|
.name = COMPOUND_STRING("Wood Hammer"),
|
|
.description = COMPOUND_STRING(
|
|
"Slams the body into a foe.\n"
|
|
"The user gets hurt too."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.recoil = 33,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AQUA_JET] =
|
|
{
|
|
.name = COMPOUND_STRING("Aqua Jet"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes first by dashing\n"
|
|
"at the foe at a high speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_ATTACK_ORDER] =
|
|
{
|
|
.name = COMPOUND_STRING("Attack Order"),
|
|
.description = COMPOUND_STRING(
|
|
"Underlings pummel the foe.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = COMBO_STARTER_ATTACK_ORDER,
|
|
.contestComboMoves = {COMBO_STARTER_DEFEND_ORDER, COMBO_STARTER_HEAL_ORDER},
|
|
},
|
|
|
|
[MOVE_DEFEND_ORDER] =
|
|
{
|
|
.name = COMPOUND_STRING("Defend Order"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises Defense and Sp. Def\n"
|
|
"with a living shield."),
|
|
.effect = EFFECT_COSMIC_POWER,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_DEFEND_ORDER,
|
|
.contestComboMoves = {COMBO_STARTER_ATTACK_ORDER, COMBO_STARTER_HEAL_ORDER},
|
|
},
|
|
|
|
[MOVE_HEAL_ORDER] =
|
|
{
|
|
.name = COMPOUND_STRING("Heal Order"),
|
|
.description = COMPOUND_STRING(
|
|
"The user's underlings show\n"
|
|
"up to heal half its max HP."),
|
|
.effect = EFFECT_RESTORE_HP,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = COMBO_STARTER_HEAL_ORDER,
|
|
.contestComboMoves = {COMBO_STARTER_ATTACK_ORDER, COMBO_STARTER_DEFEND_ORDER},
|
|
},
|
|
|
|
[MOVE_HEAD_SMASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Head Smash"),
|
|
.description = COMPOUND_STRING(
|
|
"A life-risking headbutt that\n"
|
|
"seriously hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 150,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 80,
|
|
.recoil = 50,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DOUBLE_HIT] =
|
|
{
|
|
.name = COMPOUND_STRING("Double Hit"),
|
|
.description = COMPOUND_STRING(
|
|
"Slams the foe with a tail\n"
|
|
"etc. Strikes twice."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 35,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.strikeCount = 2,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ROAR_OF_TIME] =
|
|
{
|
|
.name = COMPOUND_STRING("Roar of Time"),
|
|
.description = COMPOUND_STRING(
|
|
"Powerful, but leaves the\n"
|
|
"user immobile the next turn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 150,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RECHARGE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPACIAL_REND] =
|
|
{
|
|
.name = COMPOUND_STRING("Spacial Rend"),
|
|
.description = COMPOUND_STRING(
|
|
"Tears the foe, and space.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 95,
|
|
.criticalHitStage = 1,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LUNAR_DANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Lunar Dance"),
|
|
.description = sHealingWishDescription,
|
|
.effect = EFFECT_HEALING_WISH,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.snatchAffected = B_UPDATED_MOVE_FLAGS >= GEN_5,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.healingMove = TRUE,
|
|
.danceMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CRUSH_GRIP] =
|
|
{
|
|
.name = COMPOUND_STRING("Crush Grip"),
|
|
.description = sWringOutDescription,
|
|
.effect = EFFECT_VARY_POWER_BASED_ON_HP,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = 120,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MAGMA_STORM] =
|
|
{
|
|
.name = COMPOUND_STRING("Magma Storm"),
|
|
.description = COMPOUND_STRING(
|
|
"Traps the foe in a vortex\n"
|
|
"of fire for "BINDING_TURNS" turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 100 : 120,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_5 ? 75 : 70,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_WRAP,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_DARK_VOID] =
|
|
{
|
|
.name = COMPOUND_STRING("Dark Void"),
|
|
.description = COMPOUND_STRING(
|
|
"Drags the foe into total\n"
|
|
"darkness, inducing Sleep."),
|
|
.effect = EFFECT_DARK_VOID,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_7 ? 50 : 80,
|
|
.pp = 10,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SEED_FLARE] =
|
|
{
|
|
.name = COMPOUND_STRING("Seed Flare"),
|
|
.description = COMPOUND_STRING(
|
|
"Generates a shock wave that\n"
|
|
"sharply reduces Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 85,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_2,
|
|
.chance = 40,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_OMINOUS_WIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Ominous Wind"),
|
|
.description = COMPOUND_STRING(
|
|
"A repulsive attack that may\n"
|
|
"raise all stats."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.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,
|
|
.self = TRUE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SHADOW_FORCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Shadow Force"),
|
|
.description = sShadowForceDescription,
|
|
.effect = EFFECT_SEMI_INVULNERABLE,
|
|
.power = 120,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS == GEN_6,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.argument = TWO_TURN_ARG(STRINGID_VANISHEDINSTANTLY, COMPRESS_BITS(STATUS3_PHANTOM_FORCE)),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FEINT,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HONE_CLAWS] =
|
|
{
|
|
.name = COMPOUND_STRING("Hone Claws"),
|
|
.description = COMPOUND_STRING(
|
|
"Sharpens its claws to raise\n"
|
|
"Attack and Accuracy."),
|
|
.effect = EFFECT_ATTACK_ACCURACY_UP,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WIDE_GUARD] =
|
|
{
|
|
.name = COMPOUND_STRING("Wide Guard"),
|
|
.description = COMPOUND_STRING(
|
|
"Evades wide-ranging attacks\n"
|
|
"for one turn."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 3,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GUARD_SPLIT] =
|
|
{
|
|
.name = COMPOUND_STRING("Guard Split"),
|
|
.description = COMPOUND_STRING(
|
|
"Averages changes to Defense\n"
|
|
"and Sp. Def with the foe."),
|
|
.effect = EFFECT_GUARD_SPLIT,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_POWER_SPLIT] =
|
|
{
|
|
.name = COMPOUND_STRING("Power Split"),
|
|
.description = COMPOUND_STRING(
|
|
"Averages changes to Attack\n"
|
|
"and Sp. Atk with the foe."),
|
|
.effect = EFFECT_POWER_SPLIT,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WONDER_ROOM] =
|
|
{
|
|
.name = COMPOUND_STRING("Wonder Room"),
|
|
.description = COMPOUND_STRING(
|
|
"Defense and Sp. Def stats\n"
|
|
"are swapped for 5 turns."),
|
|
.effect = EFFECT_WONDER_ROOM,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PSYSHOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Psyshock"),
|
|
.description = sPsyshockDescription,
|
|
.effect = EFFECT_PSYSHOCK,
|
|
.power = 80,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_VENOSHOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Venoshock"),
|
|
.description = COMPOUND_STRING(
|
|
"Does double damage if the\n"
|
|
"foe is poisoned."),
|
|
.effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS,
|
|
.power = 65,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_TOXIC},
|
|
},
|
|
|
|
[MOVE_AUTOTOMIZE] =
|
|
{
|
|
.name = COMPOUND_STRING("Autotomize"),
|
|
.description = COMPOUND_STRING(
|
|
"Sheds additional weight to\n"
|
|
"sharply boost Speed."),
|
|
.effect = EFFECT_AUTOTOMIZE,
|
|
.power = 0,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_RAGE_POWDER] =
|
|
{
|
|
.name = COMPOUND_STRING("Rage Powder"),
|
|
.description = COMPOUND_STRING(
|
|
"Scatters powder to make\n"
|
|
"foes attack only the user."),
|
|
.effect = EFFECT_FOLLOW_ME,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = B_UPDATED_MOVE_DATA >= GEN_6 ? 2 : 3,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.powderMove = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TELEKINESIS] =
|
|
{
|
|
.name = COMPOUND_STRING("Telekinesis"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the foe float. It is\n"
|
|
"easier to hit for 3 turns."),
|
|
.effect = EFFECT_TELEKINESIS,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MAGIC_ROOM] =
|
|
{
|
|
.name = COMPOUND_STRING("Magic Room"),
|
|
.description = COMPOUND_STRING(
|
|
"Hold items lose their\n"
|
|
"effects for 5 turns."),
|
|
.effect = EFFECT_MAGIC_ROOM,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SMACK_DOWN] =
|
|
{
|
|
.name = COMPOUND_STRING("Smack Down"),
|
|
.description = COMPOUND_STRING(
|
|
"Throws a rock to knock the\n"
|
|
"foe down to the ground."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.damagesAirborne = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SMACK_DOWN,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STORM_THROW] =
|
|
{
|
|
.name = COMPOUND_STRING("Storm Throw"),
|
|
.description = sStormThrowDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 40,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.alwaysCriticalHit = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLAME_BURST] =
|
|
{
|
|
.name = COMPOUND_STRING("Flame Burst"),
|
|
.description = COMPOUND_STRING(
|
|
"A bursting flame that does\n"
|
|
"damage to all foes."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLAME_BURST,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SLUDGE_WAVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Sludge Wave"),
|
|
.description = COMPOUND_STRING(
|
|
"Swamps the foe with a wave\n"
|
|
"of sludge. May also poison."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 95,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_FOES_AND_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_QUIVER_DANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Quiver Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"Dances to raise Sp. Atk\n"
|
|
"Sp. Def and Speed."),
|
|
.effect = EFFECT_QUIVER_DANCE,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HEAVY_SLAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Heavy Slam"),
|
|
.description = sHeavySlamDescription,
|
|
.effect = EFFECT_HEAT_CRASH,
|
|
.power = 1,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS >= GEN_7,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SYNCHRONOISE] =
|
|
{
|
|
.name = COMPOUND_STRING("Synchronoise"),
|
|
.description = COMPOUND_STRING(
|
|
"An odd shock wave that only\n"
|
|
"damages same-type foes."),
|
|
.effect = EFFECT_SYNCHRONOISE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 120 : 70,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ELECTRO_BALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Electro Ball"),
|
|
.description = COMPOUND_STRING(
|
|
"Hurls an orb that does more\n"
|
|
"damage to slower foes."),
|
|
.effect = EFFECT_ELECTRO_BALL,
|
|
.power = 1,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SOAK] =
|
|
{
|
|
.name = COMPOUND_STRING("Soak"),
|
|
.description = COMPOUND_STRING(
|
|
"Sprays water at the foe\n"
|
|
"making it Water-type."),
|
|
.effect = EFFECT_SOAK,
|
|
.power = 0,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLAME_CHARGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Flame Charge"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks in a cloak of\n"
|
|
"flames. Raises Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_COIL] =
|
|
{
|
|
.name = COMPOUND_STRING("Coil"),
|
|
.description = COMPOUND_STRING(
|
|
"Coils up to raise Attack\n"
|
|
"Defense and Accuracy."),
|
|
.effect = EFFECT_COIL,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LOW_SWEEP] =
|
|
{
|
|
.name = COMPOUND_STRING("Low Sweep"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks the foe's legs\n"
|
|
"lowering its Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 65 : 60,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ACID_SPRAY] =
|
|
{
|
|
.name = COMPOUND_STRING("Acid Spray"),
|
|
.description = COMPOUND_STRING(
|
|
"Sprays a hide-melting acid.\n"
|
|
"Sharply reduces Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_2,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FOUL_PLAY] =
|
|
{
|
|
.name = COMPOUND_STRING("Foul Play"),
|
|
.description = COMPOUND_STRING(
|
|
"The higher the foe's Attack\n"
|
|
"the more damage caused."),
|
|
.effect = EFFECT_FOUL_PLAY,
|
|
.power = 95,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SIMPLE_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Simple Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"A beam that changes the\n"
|
|
"foe's ability to Simple."),
|
|
.effect = EFFECT_SIMPLE_BEAM,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ENTRAINMENT] =
|
|
{
|
|
.name = COMPOUND_STRING("Entrainment"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the foe mimic the\n"
|
|
"user, gaining its ability."),
|
|
.effect = EFFECT_ENTRAINMENT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AFTER_YOU] =
|
|
{
|
|
.name = COMPOUND_STRING("After You"),
|
|
.description = COMPOUND_STRING(
|
|
"Helps out the foe, letting\n"
|
|
"it move next."),
|
|
.effect = EFFECT_AFTER_YOU,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ROUND] =
|
|
{
|
|
.name = COMPOUND_STRING("Round"),
|
|
.description = COMPOUND_STRING(
|
|
"A song that inflicts damage.\n"
|
|
"Others can join in too."),
|
|
.effect = EFFECT_ROUND,
|
|
.power = 60,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.soundMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ROUND,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ECHOED_VOICE] =
|
|
{
|
|
.name = COMPOUND_STRING("Echoed Voice"),
|
|
.description = COMPOUND_STRING(
|
|
"Does more damage every turn\n"
|
|
"it is used."),
|
|
.effect = EFFECT_ECHOED_VOICE,
|
|
.power = 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CHIP_AWAY] =
|
|
{
|
|
.name = COMPOUND_STRING("Chip Away"),
|
|
.description = sChipAwayDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ignoresTargetDefenseEvasionStages = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CLEAR_SMOG] =
|
|
{
|
|
.name = COMPOUND_STRING("Clear Smog"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with white haze that\n"
|
|
"eliminates all stat changes."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CLEAR_SMOG,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STORED_POWER] =
|
|
{
|
|
.name = COMPOUND_STRING("Stored Power"),
|
|
.description = COMPOUND_STRING(
|
|
"The higher the user's stats\n"
|
|
"the more damage caused."),
|
|
.effect = EFFECT_STORED_POWER,
|
|
.power = 20,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_QUICK_GUARD] =
|
|
{
|
|
.name = COMPOUND_STRING("Quick Guard"),
|
|
.description = COMPOUND_STRING(
|
|
"Evades priority attacks\n"
|
|
"for one turn."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 3,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ALLY_SWITCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Ally Switch"),
|
|
.description = COMPOUND_STRING(
|
|
"The user switches places\n"
|
|
"with its partner."),
|
|
.effect = EFFECT_ALLY_SWITCH,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SCALD] =
|
|
{
|
|
.name = COMPOUND_STRING("Scald"),
|
|
.description = COMPOUND_STRING(
|
|
"Shoots boiling water at the\n"
|
|
"foe. May inflict a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.thawsUser = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_SCALD,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SHELL_SMASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Shell Smash"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises offensive stats, but\n"
|
|
"lowers defensive stats."),
|
|
.effect = EFFECT_SHELL_SMASH,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HEAL_PULSE] =
|
|
{
|
|
.name = COMPOUND_STRING("Heal Pulse"),
|
|
.description = COMPOUND_STRING(
|
|
"Recovers up to half the\n"
|
|
"target's maximum HP."),
|
|
.effect = EFFECT_HEAL_PULSE,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.magicCoatAffected = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.healingMove = TRUE,
|
|
.pulseMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HEX] =
|
|
{
|
|
.name = COMPOUND_STRING("Hex"),
|
|
.description = COMPOUND_STRING(
|
|
"Does double damage if the\n"
|
|
"foe has a status problem."),
|
|
.effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 65 : 50,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.zMove = { .powerOverride = 160 },
|
|
.argument = STATUS1_ANY,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_TOXIC},
|
|
},
|
|
|
|
[MOVE_SKY_DROP] =
|
|
{
|
|
.name = COMPOUND_STRING("Sky Drop"),
|
|
.description = COMPOUND_STRING(
|
|
"Takes the foe into the sky\n"
|
|
"then drops it the next turn."),
|
|
.effect = EFFECT_SKY_DROP,
|
|
.power = 60,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.gravityBanned = 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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SHIFT_GEAR] =
|
|
{
|
|
.name = COMPOUND_STRING("Shift Gear"),
|
|
.description = COMPOUND_STRING(
|
|
"Rotates its gears to raise\n"
|
|
"Attack and Speed."),
|
|
.effect = EFFECT_SHIFT_GEAR,
|
|
.power = 0,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CIRCLE_THROW] =
|
|
{
|
|
.name = COMPOUND_STRING("Circle Throw"),
|
|
.description = sCircleThrowDescription,
|
|
.effect = EFFECT_HIT_SWITCH_TARGET,
|
|
.power = 60,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = -6,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_INCINERATE] =
|
|
{
|
|
.name = COMPOUND_STRING("Incinerate"),
|
|
.description = COMPOUND_STRING(
|
|
"Burns up Berries and Gems\n"
|
|
"preventing their use."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 30,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_INCINERATE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_QUASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Quash"),
|
|
.description = COMPOUND_STRING(
|
|
"Suppresses the foe, making\n"
|
|
"it move last."),
|
|
.effect = EFFECT_QUASH,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ACROBATICS] =
|
|
{
|
|
.name = COMPOUND_STRING("Acrobatics"),
|
|
.description = COMPOUND_STRING(
|
|
"Does double damage if the\n"
|
|
"user has no item."),
|
|
.effect = EFFECT_ACROBATICS,
|
|
.power = 55,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_REFLECT_TYPE] =
|
|
{
|
|
.name = COMPOUND_STRING("Reflect Type"),
|
|
.description = COMPOUND_STRING(
|
|
"The user reflects the foe's\n"
|
|
"type, copying it."),
|
|
.effect = EFFECT_REFLECT_TYPE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_RETALIATE] =
|
|
{
|
|
.name = COMPOUND_STRING("Retaliate"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that does more\n"
|
|
"damage if an ally fainted."),
|
|
.effect = EFFECT_RETALIATE,
|
|
.power = 70,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FINAL_GAMBIT] =
|
|
{
|
|
.name = COMPOUND_STRING("Final Gambit"),
|
|
.description = COMPOUND_STRING(
|
|
"The user faints to damage\n"
|
|
"the foe equal to its HP."),
|
|
.effect = EFFECT_FINAL_GAMBIT,
|
|
.power = 1,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BESTOW] =
|
|
{
|
|
.name = COMPOUND_STRING("Bestow"),
|
|
.description = COMPOUND_STRING(
|
|
"The user gives its held\n"
|
|
"item to the foe."),
|
|
.effect = EFFECT_BESTOW,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.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,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_INFERNO] =
|
|
{
|
|
.name = COMPOUND_STRING("Inferno"),
|
|
.description = COMPOUND_STRING(
|
|
"Powerful and sure to inflict\n"
|
|
"a burn, but inaccurate."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 50,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WATER_PLEDGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Water Pledge"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a column of\n"
|
|
"water. May make a rainbow."),
|
|
.effect = EFFECT_PLEDGE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 50,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FIRE_PLEDGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Fire Pledge"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a column of\n"
|
|
"fire. May burn the grass."),
|
|
.effect = EFFECT_PLEDGE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 50,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GRASS_PLEDGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Grass Pledge"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a column of\n"
|
|
"grass. May create a swamp."),
|
|
.effect = EFFECT_PLEDGE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 80 : 50,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_VOLT_SWITCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Volt Switch"),
|
|
.description = sUTurnDescription,
|
|
.effect = EFFECT_HIT_ESCAPE,
|
|
.power = 70,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STRUGGLE_BUG] =
|
|
{
|
|
.name = COMPOUND_STRING("Struggle Bug"),
|
|
.description = COMPOUND_STRING(
|
|
"Resisting, the user attacks\n"
|
|
"the foe. Lowers Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 50 : 30,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BULLDOZE] =
|
|
{
|
|
.name = COMPOUND_STRING("Bulldoze"),
|
|
.description = COMPOUND_STRING(
|
|
"Stomps down on the ground.\n"
|
|
"Lowers Speed."),
|
|
.effect = EFFECT_BULLDOZE,
|
|
.power = 60,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.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,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FROST_BREATH] =
|
|
{
|
|
.name = COMPOUND_STRING("Frost Breath"),
|
|
.description = sStormThrowDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 60 : 40,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 90,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_TAIL] =
|
|
{
|
|
.name = COMPOUND_STRING("Dragon Tail"),
|
|
.description = sCircleThrowDescription,
|
|
.effect = EFFECT_HIT_SWITCH_TARGET,
|
|
.power = 60,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = -6,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = COMBO_STARTER_DRAGON_TAIL,
|
|
.contestComboMoves = {COMBO_STARTER_DRAGON_BREATH, COMBO_STARTER_DRAGON_DANCE, COMBO_STARTER_DRAGON_RAGE, COMBO_STARTER_DRAGON_RUSH},
|
|
},
|
|
|
|
[MOVE_WORK_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Work Up"),
|
|
.description = COMPOUND_STRING(
|
|
"The user is roused.\n"
|
|
"Ups Attack and Sp. Atk."),
|
|
.effect = EFFECT_ATTACK_SPATK_UP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ELECTROWEB] =
|
|
{
|
|
.name = COMPOUND_STRING("Electroweb"),
|
|
.description = COMPOUND_STRING(
|
|
"Snares the foe with an\n"
|
|
"electric net. Lowers Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 55,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_WILD_CHARGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Wild Charge"),
|
|
.description = COMPOUND_STRING(
|
|
"An electrical tackle that\n"
|
|
"also hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.recoil = 25,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRILL_RUN] =
|
|
{
|
|
.name = COMPOUND_STRING("Drill Run"),
|
|
.description = COMPOUND_STRING(
|
|
"Spins its body like a drill.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 95,
|
|
.criticalHitStage = 1,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DUAL_CHOP] =
|
|
{
|
|
.name = COMPOUND_STRING("Dual Chop"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with brutal hits\n"
|
|
"that strike twice."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 90,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.strikeCount = 2,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HEART_STAMP] =
|
|
{
|
|
.name = COMPOUND_STRING("Heart Stamp"),
|
|
.description = COMPOUND_STRING(
|
|
"A sudden blow after a cute\n"
|
|
"act. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HORN_LEECH] =
|
|
{
|
|
.name = COMPOUND_STRING("Horn Leech"),
|
|
.description = sMegaDrainDescription,
|
|
.effect = EFFECT_ABSORB,
|
|
.power = 75,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SACRED_SWORD] =
|
|
{
|
|
.name = COMPOUND_STRING("Sacred Sword"),
|
|
.description = sChipAwayDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_6 ? 15 : 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ignoresTargetDefenseEvasionStages = TRUE,
|
|
.slicingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_RAZOR_SHELL] =
|
|
{
|
|
.name = COMPOUND_STRING("Razor Shell"),
|
|
.description = COMPOUND_STRING(
|
|
"Tears at the foe with sharp\n"
|
|
"shells. May lower Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 95,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HEAT_CRASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Heat Crash"),
|
|
.description = sHeavySlamDescription,
|
|
.effect = EFFECT_HEAT_CRASH,
|
|
.power = 1,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LEAF_TORNADO] =
|
|
{
|
|
.name = COMPOUND_STRING("Leaf Tornado"),
|
|
.description = COMPOUND_STRING(
|
|
"Circles the foe with leaves\n"
|
|
"to damage and cut accuracy."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
//.windMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ACC_MINUS_1,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STEAMROLLER] =
|
|
{
|
|
.name = COMPOUND_STRING("Steamroller"),
|
|
.description = COMPOUND_STRING(
|
|
"Crushes the foe with its\n"
|
|
"body. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.minimizeDoubleDamage = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_COTTON_GUARD] =
|
|
{
|
|
.name = COMPOUND_STRING("Cotton Guard"),
|
|
.description = COMPOUND_STRING(
|
|
"Wraps its body in cotton.\n"
|
|
"Drastically raises Defense."),
|
|
.effect = EFFECT_DEFENSE_UP_3,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_NIGHT_DAZE] =
|
|
{
|
|
.name = COMPOUND_STRING("Night Daze"),
|
|
.description = COMPOUND_STRING(
|
|
"Looses a pitch-black shock\n"
|
|
"wave. May lower accuracy."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 85,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 95,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ACC_MINUS_1,
|
|
.chance = 40,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PSYSTRIKE] =
|
|
{
|
|
.name = COMPOUND_STRING("Psystrike"),
|
|
.description = sPsyshockDescription,
|
|
.effect = EFFECT_PSYSHOCK,
|
|
.power = 100,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TAIL_SLAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Tail Slap"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes the foe with its\n"
|
|
"tail 2 to 5 times."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 25,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 85,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HURRICANE] =
|
|
{
|
|
.name = COMPOUND_STRING("Hurricane"),
|
|
.description = COMPOUND_STRING(
|
|
"Traps the foe in a fierce\n"
|
|
"wind. May cause confusion."),
|
|
.effect = EFFECT_THUNDER,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 110 : 120,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 70,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.windMove = TRUE,
|
|
.damagesAirborne = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HEAD_CHARGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Head Charge"),
|
|
.description = COMPOUND_STRING(
|
|
"A charge using guard hair.\n"
|
|
"It hurts the user a little."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.recoil = 25,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GEAR_GRIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Gear Grind"),
|
|
.description = COMPOUND_STRING(
|
|
"Throws two steel gears\n"
|
|
"that strike twice."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 85,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.zMove = { .powerOverride = 180 },
|
|
.makesContact = TRUE,
|
|
.strikeCount = 2,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SEARING_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Searing Shot"),
|
|
.description = sLavaPlumeDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_FOES_AND_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TECHNO_BLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("Techno Blast"),
|
|
.description = COMPOUND_STRING(
|
|
"The type varies with the\n"
|
|
"kind of Drive held."),
|
|
.effect = EFFECT_CHANGE_TYPE_ON_ITEM,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_6 ? 120 : 85,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.argument = HOLD_EFFECT_DRIVE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_EXCITE_AUDIENCE_IN_ANY_CONTEST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_RELIC_SONG] =
|
|
{
|
|
.name = COMPOUND_STRING("Relic Song"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with an ancient\n"
|
|
"song. May induce sleep."),
|
|
.effect = EFFECT_RELIC_SONG,
|
|
.power = 75,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.argument = STATUS1_SLEEP,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.soundMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SLEEP,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SECRET_SWORD] =
|
|
{
|
|
.name = COMPOUND_STRING("Secret Sword"),
|
|
.description = COMPOUND_STRING(
|
|
"Cuts with a long horn that\n"
|
|
"does physical damage."),
|
|
.effect = EFFECT_PSYSHOCK,
|
|
.power = 85,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.slicingMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GLACIATE] =
|
|
{
|
|
.name = COMPOUND_STRING("Glaciate"),
|
|
.description = COMPOUND_STRING(
|
|
"Blows very cold air at the\n"
|
|
"foe. It lowers their Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 95,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BOLT_STRIKE] =
|
|
{
|
|
.name = COMPOUND_STRING("Bolt Strike"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes with a great amount\n"
|
|
"of lightning. May paralyze."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 130,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 85,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BLUE_FLARE] =
|
|
{
|
|
.name = COMPOUND_STRING("Blue Flare"),
|
|
.description = COMPOUND_STRING(
|
|
"Engulfs the foe in a blue\n"
|
|
"flame. May inflict a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 130,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 85,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FIERY_DANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Fiery Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"Dances cloaked in flames.\n"
|
|
"May raise Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.danceMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FREEZE_SHOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Freeze Shock"),
|
|
.description = COMPOUND_STRING(
|
|
"A powerful 2-turn move that\n"
|
|
"may paralyze the foe."),
|
|
.effect = EFFECT_TWO_TURNS_ATTACK,
|
|
.power = 140,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.argument = TWO_TURN_ARG(STRINGID_CLOAKEDINAFREEZINGLIGHT),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ICE_BURN] =
|
|
{
|
|
.name = COMPOUND_STRING("Ice Burn"),
|
|
.description = COMPOUND_STRING(
|
|
"A powerful 2-turn move that\n"
|
|
"may inflict a burn."),
|
|
.effect = EFFECT_TWO_TURNS_ATTACK,
|
|
.power = 140,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.argument = TWO_TURN_ARG(STRINGID_CLOAKEDINAFREEZINGLIGHT),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SNARL] =
|
|
{
|
|
.name = COMPOUND_STRING("Snarl"),
|
|
.description = COMPOUND_STRING(
|
|
"Yells and rants at the foe\n"
|
|
"lowering its Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 55,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.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,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ICICLE_CRASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Icicle Crash"),
|
|
.description = COMPOUND_STRING(
|
|
"Drops large icicles on the\n"
|
|
"foe. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 85,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_V_CREATE] =
|
|
{
|
|
.name = COMPOUND_STRING("V-create"),
|
|
.description = COMPOUND_STRING(
|
|
"Very powerful, but lowers\n"
|
|
"Defense, Sp. Def and Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 180,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 95,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.zMove = { .powerOverride = 220 },
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_V_CREATE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FUSION_FLARE] =
|
|
{
|
|
.name = COMPOUND_STRING("Fusion Flare"),
|
|
.description = COMPOUND_STRING(
|
|
"Summons a fireball. Works\n"
|
|
"well with a thunderbolt."),
|
|
.effect = EFFECT_FUSION_COMBO,
|
|
.power = 100,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FUSION_BOLT] =
|
|
{
|
|
.name = COMPOUND_STRING("Fusion Bolt"),
|
|
.description = COMPOUND_STRING(
|
|
"Summons a thunderbolt.\n"
|
|
"Works well with a fireball."),
|
|
.effect = EFFECT_FUSION_COMBO,
|
|
.power = 100,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLYING_PRESS] =
|
|
{
|
|
.name = COMPOUND_STRING("Flying Press"),
|
|
.description = COMPOUND_STRING(
|
|
"This attack does Fighting\n"
|
|
"and Flying-type damage."),
|
|
.effect = EFFECT_TWO_TYPED_MOVE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_7 ? 100 : 80,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 95,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.zMove = { .powerOverride = 170 },
|
|
.argument = TYPE_FLYING,
|
|
.makesContact = TRUE,
|
|
.minimizeDoubleDamage = TRUE,
|
|
.gravityBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MAT_BLOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Mat Block"),
|
|
.description = COMPOUND_STRING(
|
|
"Evades damaging moves\n"
|
|
"for one turn."),
|
|
.effect = EFFECT_MAT_BLOCK,
|
|
.power = 0,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BELCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Belch"),
|
|
.description = COMPOUND_STRING(
|
|
"Lets out a loud belch.\n"
|
|
"Must eat a Berry to use it."),
|
|
.effect = EFFECT_BELCH,
|
|
.power = 120,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ROTOTILLER] =
|
|
{
|
|
.name = COMPOUND_STRING("Rototiller"),
|
|
.description = COMPOUND_STRING(
|
|
"Ups the Attack and Sp. Atk\n"
|
|
"of Grass-type Pokémon."),
|
|
.effect = EFFECT_ROTOTILLER,
|
|
.power = 0,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ATK_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STICKY_WEB] =
|
|
{
|
|
.name = COMPOUND_STRING("Sticky Web"),
|
|
.description = COMPOUND_STRING(
|
|
"Weaves a sticky net that\n"
|
|
"slows foes switching in."),
|
|
.effect = EFFECT_STICKY_WEB,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_OPPONENTS_FIELD,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.magicCoatAffected = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FELL_STINGER] =
|
|
{
|
|
.name = COMPOUND_STRING("Fell Stinger"),
|
|
.description = COMPOUND_STRING(
|
|
"If it knocks out a foe\n"
|
|
"the Attack stat is raised."),
|
|
.effect = EFFECT_FELL_STINGER,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_7 ? 50 : 30,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 25,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PHANTOM_FORCE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PhantomForce", "Phantom Force"),
|
|
.description = sShadowForceDescription,
|
|
.effect = EFFECT_SEMI_INVULNERABLE,
|
|
.power = 90,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.ignoresProtect = TRUE,
|
|
.makesContact = TRUE,
|
|
.minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS == GEN_6,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.argument = TWO_TURN_ARG(STRINGID_VANISHEDINSTANTLY, COMPRESS_BITS(STATUS3_PHANTOM_FORCE)),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FEINT,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TRICK_OR_TREAT] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("TrickOrTreat", "Trick-or-Treat"),
|
|
.description = COMPOUND_STRING(
|
|
"Goes trick-or-treating\n"
|
|
"making the foe Ghost-type."),
|
|
.effect = EFFECT_THIRD_TYPE,
|
|
.power = 0,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_NOBLE_ROAR] =
|
|
{
|
|
.name = COMPOUND_STRING("Noble Roar"),
|
|
.description = COMPOUND_STRING(
|
|
"Intimidates the foe, to cut\n"
|
|
"Attack and Sp. Atk."),
|
|
.effect = EFFECT_NOBLE_ROAR,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ION_DELUGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Ion Deluge"),
|
|
.description = COMPOUND_STRING(
|
|
"Electrifies Normal-type\n"
|
|
"moves with charged atoms."),
|
|
.effect = EFFECT_ION_DELUGE,
|
|
.power = 0,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 25,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PARABOLIC_CHARGE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ParabolcChrg", "Parabolic Charge"),
|
|
.description = COMPOUND_STRING(
|
|
"Damages adjacent Pokémon and\n"
|
|
"heals up by half of it."),
|
|
.effect = EFFECT_ABSORB,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_7 ? 65 : 50,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FORESTS_CURSE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("Forest'sCurs", "Forest's Curse"),
|
|
.description = COMPOUND_STRING(
|
|
"Puts a curse on the foe\n"
|
|
"making the foe Grass-type."),
|
|
.effect = EFFECT_THIRD_TYPE,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PETAL_BLIZZARD] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PetalBlizzrd", "Petal Blizzard"),
|
|
.description = COMPOUND_STRING(
|
|
"Stirs up a violent storm\n"
|
|
"of petals to attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FREEZE_DRY] =
|
|
{
|
|
.name = COMPOUND_STRING("Freeze-Dry"),
|
|
.description = COMPOUND_STRING(
|
|
"Super effective on Water-\n"
|
|
#if B_USE_FROSTBITE == TRUE
|
|
"types. May cause frostbite."),
|
|
#else
|
|
"types. May cause freezing."),
|
|
#endif
|
|
.effect = EFFECT_FREEZE_DRY,
|
|
.power = 70,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DISARMING_VOICE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DisrmngVoice", "Disarming Voice"),
|
|
.description = COMPOUND_STRING(
|
|
"Lets out a charming cry\n"
|
|
"that cannot be evaded."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PARTING_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Parting Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"Lowers the foe's Attack and\n"
|
|
"Sp. Atk, then switches out."),
|
|
.effect = EFFECT_PARTING_SHOT,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESTORE_REPLACEMENT_HP },
|
|
.magicCoatAffected = TRUE,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.soundMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TOPSY_TURVY] =
|
|
{
|
|
.name = COMPOUND_STRING("Topsy-Turvy"),
|
|
.description = COMPOUND_STRING(
|
|
"Swaps all stat changes that\n"
|
|
"affect the target."),
|
|
.effect = EFFECT_TOPSY_TURVY,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_7 ? 0 : 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAINING_KISS] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DrainingKiss", "Draining Kiss"),
|
|
.description = sDrainingKissDescription,
|
|
.effect = EFFECT_ABSORB,
|
|
.power = 50,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CRAFTY_SHIELD] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("CraftyShield", "Crafty Shield"),
|
|
.description = COMPOUND_STRING(
|
|
"Evades status moves for\n"
|
|
"one turn."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE_ONCE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLOWER_SHIELD] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("FlowerShield", "Flower Shield"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises the Defense of\n"
|
|
"Grass-type Pokémon."),
|
|
.effect = EFFECT_FLOWER_SHIELD,
|
|
.power = 0,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GRASSY_TERRAIN] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("GrssyTerrain", "Grassy Terrain"),
|
|
.description = COMPOUND_STRING(
|
|
"The ground turns to grass\n"
|
|
"for 5 turns. Restores HP."),
|
|
.effect = EFFECT_GRASSY_TERRAIN,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = COMBO_STARTER_GRASSY_TERRAIN,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MISTY_TERRAIN] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MistyTerrain", "Misty Terrain"),
|
|
.description = COMPOUND_STRING(
|
|
"Covers the ground with mist\n"
|
|
"for 5 turns. Blocks status."),
|
|
.effect = EFFECT_MISTY_TERRAIN,
|
|
.power = 0,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = COMBO_STARTER_MISTY_TERRAIN,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ELECTRIFY] =
|
|
{
|
|
.name = COMPOUND_STRING("Electrify"),
|
|
.description = COMPOUND_STRING(
|
|
"Electrifies the foe, making\n"
|
|
"its next move Electric-type."),
|
|
.effect = EFFECT_ELECTRIFY,
|
|
.power = 0,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PLAY_ROUGH] =
|
|
{
|
|
.name = COMPOUND_STRING("Play Rough"),
|
|
.description = COMPOUND_STRING(
|
|
"Plays rough with the foe.\n"
|
|
"May lower Attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_MINUS_1,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FAIRY_WIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Fairy Wind"),
|
|
.description = COMPOUND_STRING(
|
|
"Stirs up a fairy wind to\n"
|
|
"strike the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.windMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MOONBLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("Moonblast"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with the power of\n"
|
|
"the moon. May lower Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 95,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BOOMBURST] =
|
|
{
|
|
.name = COMPOUND_STRING("Boomburst"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks everything with a\n"
|
|
"destructive sound wave."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 140,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_FOES_AND_ALLY,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FAIRY_LOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Fairy Lock"),
|
|
.description = COMPOUND_STRING(
|
|
"Locks down the battlefield\n"
|
|
"preventing escape next turn."),
|
|
.effect = EFFECT_FAIRY_LOCK,
|
|
.power = 0,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_KINGS_SHIELD] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("King'sShield", "King's Shield"),
|
|
.description = COMPOUND_STRING(
|
|
"Evades damage, and sharply\n"
|
|
"reduces Attack if struck."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 4,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PLAY_NICE] =
|
|
{
|
|
.name = COMPOUND_STRING("Play Nice"),
|
|
.description = COMPOUND_STRING(
|
|
"Befriend the foe, lowering\n"
|
|
"its Attack without fail."),
|
|
.effect = EFFECT_ATTACK_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.magicCoatAffected = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CONFIDE] =
|
|
{
|
|
.name = COMPOUND_STRING("Confide"),
|
|
.description = COMPOUND_STRING(
|
|
"Shares a secret with the\n"
|
|
"foe, lowering Sp. Atk."),
|
|
.effect = EFFECT_SPECIAL_ATTACK_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.magicCoatAffected = TRUE,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.soundMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DIAMOND_STORM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DiamondStorm", "Diamond Storm"),
|
|
.description = COMPOUND_STRING(
|
|
"Whips up a storm of\n"
|
|
"diamonds. May up Defense."),
|
|
.power = 100,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 95,
|
|
.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,
|
|
.chance = 50,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STEAM_ERUPTION] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SteamErption", "Steam Eruption"),
|
|
.description = COMPOUND_STRING(
|
|
"Immerses the foe in heated\n"
|
|
"steam. May inflict a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 110,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 95,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.thawsUser = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SCALD},
|
|
},
|
|
|
|
[MOVE_HYPERSPACE_HOLE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("HyprspceHole", "Hyprspace Hole"),
|
|
.description = sHyperspaceHoleDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FEINT,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = COMBO_STARTER_HYPERSPACE_HOLE,
|
|
.contestComboMoves = {COMBO_STARTER_HYPERSPACE_FURY},
|
|
},
|
|
|
|
[MOVE_WATER_SHURIKEN] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("WatrShuriken", "Water Shuriken"),
|
|
.description = COMPOUND_STRING(
|
|
"Throws 2 to 5 stars that\n"
|
|
"are sure to strike first."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 15,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MYSTICAL_FIRE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MysticalFire", "Mystical Fire"),
|
|
.description = COMPOUND_STRING(
|
|
"Breathes a special, hot\n"
|
|
"fire. Lowers Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_7 ? 75 : 65,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPIKY_SHIELD] =
|
|
{
|
|
.name = COMPOUND_STRING("Spiky Shield"),
|
|
.description = COMPOUND_STRING(
|
|
"Evades attack, and damages\n"
|
|
"the foe if struck."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 4,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AROMATIC_MIST] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("AromaticMist", "Aromatic Mist"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises the Sp. Def of a\n"
|
|
"partner Pokémon."),
|
|
.effect = EFFECT_AROMATIC_MIST,
|
|
.power = 0,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_2 },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_EERIE_IMPULSE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("EerieImpulse", "Eerie Impulse"),
|
|
.description = COMPOUND_STRING(
|
|
"Exposes the foe to a pulse\n"
|
|
"that sharply cuts Sp. Atk."),
|
|
.effect = EFFECT_SPECIAL_ATTACK_DOWN_2,
|
|
.power = 0,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_VENOM_DRENCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Venom Drench"),
|
|
.description = COMPOUND_STRING(
|
|
"Lowers the Attack, Sp. Atk\n"
|
|
"and Speed of a poisoned foe."),
|
|
.effect = EFFECT_VENOM_DRENCH,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_TOXIC},
|
|
},
|
|
|
|
[MOVE_POWDER] =
|
|
{
|
|
.name = COMPOUND_STRING("Powder"),
|
|
.description = COMPOUND_STRING(
|
|
"Damages the foe if it uses\n"
|
|
"a Fire-type move."),
|
|
.effect = EFFECT_POWDER,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GEOMANCY] =
|
|
{
|
|
.name = COMPOUND_STRING("Geomancy"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises Sp. Atk, Sp. Def and\n"
|
|
"Speed on the 2nd turn."),
|
|
.effect = EFFECT_GEOMANCY,
|
|
.power = 0,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 },
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.argument = TWO_TURN_ARG(STRINGID_PKNMABSORBINGPOWER),
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MAGNETIC_FLUX] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MagneticFlux", "Magnetic Flux"),
|
|
.description = COMPOUND_STRING(
|
|
"Boosts the defenses of\n"
|
|
"those with Plus or Minus."),
|
|
.effect = EFFECT_MAGNETIC_FLUX,
|
|
.power = 0,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_1 },
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HAPPY_HOUR] =
|
|
{
|
|
.name = COMPOUND_STRING("Happy Hour"),
|
|
.description = COMPOUND_STRING(
|
|
"Doubles the amount of\n"
|
|
"Prize Money received."),
|
|
.effect = EFFECT_DO_NOTHING,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ELECTRIC_TERRAIN] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ElctrcTrrain", "Electric Terrain"),
|
|
.description = COMPOUND_STRING(
|
|
"Electrifies the ground for\n"
|
|
"5 turns. Prevents sleep."),
|
|
.effect = EFFECT_ELECTRIC_TERRAIN,
|
|
.power = 0,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = COMBO_STARTER_ELECTRIC_TERRAIN,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DAZZLING_GLEAM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DazzlngGleam", "Dazzling Gleam"),
|
|
.description = COMPOUND_STRING(
|
|
"Damages foes by emitting\n"
|
|
"a bright flash."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CELEBRATE] =
|
|
{
|
|
.name = COMPOUND_STRING("Celebrate"),
|
|
.description = COMPOUND_STRING(
|
|
"Congratulates you on your\n"
|
|
"special day."),
|
|
.effect = EFFECT_DO_NOTHING,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HOLD_HANDS] =
|
|
{
|
|
.name = COMPOUND_STRING("Hold Hands"),
|
|
.description = COMPOUND_STRING(
|
|
"The user and ally hold hands\n"
|
|
"making them happy."),
|
|
.effect = EFFECT_DO_NOTHING,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_ALL_STATS_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BABY_DOLL_EYES] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BabyDollEyes", "Baby-Doll Eyes"),
|
|
.description = COMPOUND_STRING(
|
|
"Lowers the foe's Attack\n"
|
|
"before it can move."),
|
|
.effect = EFFECT_ATTACK_DOWN,
|
|
.power = 0,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 100,
|
|
.pp = 30,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_NUZZLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Nuzzle"),
|
|
.description = COMPOUND_STRING(
|
|
"Rubs its cheecks against\n"
|
|
"the foe, paralyzing it."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 20,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HOLD_BACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Hold Back"),
|
|
.description = sFalseSwipeDescription,
|
|
.effect = EFFECT_FALSE_SWIPE,
|
|
.power = 40,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_INFESTATION] =
|
|
{
|
|
.name = COMPOUND_STRING("Infestation"),
|
|
.description = COMPOUND_STRING(
|
|
"The foe is infested and\n"
|
|
"attacked for "BINDING_TURNS" turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 20,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_WRAP,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_POWER_UP_PUNCH] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PowerUpPunch", "Power-Up Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"A hard punch that raises\n"
|
|
"the user's Attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_OBLIVION_WING] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("OblivionWing", "Oblivion Wing"),
|
|
.description = sDrainingKissDescription,
|
|
.effect = EFFECT_ABSORB,
|
|
.power = 80,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_THOUSAND_ARROWS] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ThousndArrws", "Thousand Arrows"),
|
|
.description = COMPOUND_STRING(
|
|
"Can hit Flying foes, then\n"
|
|
"knocks them to the ground."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.damagesAirborne = TRUE,
|
|
.ignoreTypeIfFlyingAndUngrounded = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SMACK_DOWN,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_THOUSAND_ARROWS,
|
|
.contestComboMoves = {COMBO_STARTER_THOUSAND_WAVES},
|
|
},
|
|
|
|
[MOVE_THOUSAND_WAVES] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ThousndWaves", "Thousand Waves"),
|
|
.description = COMPOUND_STRING(
|
|
"Those hit by the wave can\n"
|
|
"no longer escape."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.skyBattleBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PREVENT_ESCAPE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_THOUSAND_WAVES,
|
|
.contestComboMoves = {COMBO_STARTER_THOUSAND_ARROWS},
|
|
},
|
|
|
|
[MOVE_LANDS_WRATH] =
|
|
{
|
|
.name = COMPOUND_STRING("Land's Wrath"),
|
|
.description = COMPOUND_STRING(
|
|
"Gathers the energy of the\n"
|
|
"land to attack every foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LIGHT_OF_RUIN] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("LightOfRuin", "Light Of Ruin"),
|
|
.description = COMPOUND_STRING(
|
|
"Fires a great beam of light\n"
|
|
"that also hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 140,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 90,
|
|
.recoil = 50,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_ORIGIN_PULSE] =
|
|
{
|
|
.name = COMPOUND_STRING("Origin Pulse"),
|
|
.description = COMPOUND_STRING(
|
|
"Beams of glowing blue light\n"
|
|
"blast both foes."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 110,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 85,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.pulseMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PRECIPICE_BLADES] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PrcipceBldes", "Precipice Blades"),
|
|
.description = COMPOUND_STRING(
|
|
"Fearsome blades of stone\n"
|
|
"attack both foes."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 85,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_ASCENT] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DragonAscent", "Dragon Ascent"),
|
|
.description = sCloseCombatDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_SPDEF_DOWN,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HYPERSPACE_FURY] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("HyprspceFury", "Hyperspace Fury"),
|
|
.description = sHyperspaceHoleDescription,
|
|
.effect = EFFECT_HYPERSPACE_FURY,
|
|
.power = 100,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.sketchBanned = (B_SKETCH_BANS >= GEN_9),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
// Feint move effect handled in script as it goes before animation
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_HYPERSPACE_FURY,
|
|
.contestComboMoves = {COMBO_STARTER_HYPERSPACE_HOLE},
|
|
},
|
|
|
|
[MOVE_SHORE_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Shore Up"),
|
|
.description = COMPOUND_STRING(
|
|
"Restores the user's HP.\n"
|
|
"More HP in a sandstorm."),
|
|
.effect = EFFECT_SHORE_UP,
|
|
.power = 0,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 0,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 5 : 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SANDSTORM}
|
|
},
|
|
|
|
[MOVE_FIRST_IMPRESSION] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("FrstImpressn", "First Impression"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits hard and first.\n"
|
|
"Only works first turn."),
|
|
.effect = EFFECT_FIRST_TURN_ONLY,
|
|
.power = 90,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 2,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MOVE_FIRST_IMPRESSION,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BANEFUL_BUNKER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BanefulBunkr", "Baneful Bunker"),
|
|
.description = COMPOUND_STRING(
|
|
"Protects user and poisons\n"
|
|
"foes on contact."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 4,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPIRIT_SHACKLE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SpiritShackl", "Spirit Shackle"),
|
|
.description = COMPOUND_STRING(
|
|
"After being hit, foes can\n"
|
|
"no longer escape."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PREVENT_ESCAPE,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DARKEST_LARIAT] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DarkstLariat", "Darkest Lariat"),
|
|
.description = COMPOUND_STRING(
|
|
"Swings the arms to strike\n"
|
|
"It ignores stat changes."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 85,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPARKLING_ARIA] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SparklngAria", "Sparkling Aria"),
|
|
.description = COMPOUND_STRING(
|
|
"Sings with bubbles. Cures\n"
|
|
"burns on contact."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_FOES_AND_ALLY,
|
|
.priority = 0,
|
|
.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,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SCALD},
|
|
},
|
|
|
|
[MOVE_ICE_HAMMER] =
|
|
{
|
|
.name = COMPOUND_STRING("Ice Hammer"),
|
|
.description = COMPOUND_STRING(
|
|
"Swings the fist to strike.\n"
|
|
"Lowers the user's Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL},
|
|
},
|
|
|
|
[MOVE_FLORAL_HEALING] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("FloralHealng", "Floral Healng"),
|
|
.description = COMPOUND_STRING(
|
|
"Restores an ally's HP.\n"
|
|
"Heals more on grass."),
|
|
.effect = EFFECT_HEAL_PULSE,
|
|
.power = 0,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_HIGH_HORSEPOWER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("HighHorsepwr", "High Horsepower"),
|
|
.description = COMPOUND_STRING(
|
|
"Slams hard into the foe with\n"
|
|
"its entire body."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 95,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 95,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STRENGTH_SAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Strength Sap"),
|
|
.description = COMPOUND_STRING(
|
|
"Saps the foe's Attack to\n"
|
|
"heal HP, then drops Attack."),
|
|
.effect = EFFECT_STRENGTH_SAP,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SOLAR_BLADE] =
|
|
{
|
|
.name = COMPOUND_STRING("Solar Blade"),
|
|
.description = COMPOUND_STRING(
|
|
"Charges first turn, then\n"
|
|
"chops with a blade of light."),
|
|
.effect = EFFECT_SOLAR_BEAM,
|
|
.power = 125,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.argument = TWO_TURN_ARG(STRINGID_PKMNTOOKSUNLIGHT, B_WEATHER_SUN),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_LEAFAGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Leafage"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a flurry of\n"
|
|
"small leaves."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GROWTH},
|
|
},
|
|
|
|
[MOVE_SPOTLIGHT] =
|
|
{
|
|
.name = COMPOUND_STRING("Spotlight"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes the foe attack the\n"
|
|
"spotlighted Pokémon."),
|
|
.effect = EFFECT_FOLLOW_ME,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 3,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPDEF_UP_1 },
|
|
.magicCoatAffected = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TOXIC_THREAD] =
|
|
{
|
|
.name = COMPOUND_STRING("Toxic Thread"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a thread that\n"
|
|
"poisons and drops Speed."),
|
|
.effect = EFFECT_TOXIC_THREAD,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_TOXIC},
|
|
},
|
|
|
|
[MOVE_LASER_FOCUS] =
|
|
{
|
|
.name = COMPOUND_STRING("Laser Focus"),
|
|
.description = COMPOUND_STRING(
|
|
"Guarantees the next move\n"
|
|
"will be a critical hit."),
|
|
.effect = EFFECT_LASER_FOCUS,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 30,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GEAR_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Gear Up"),
|
|
.description = COMPOUND_STRING(
|
|
"Boosts the attacks of\n"
|
|
"those with Plus or Minus."),
|
|
.effect = EFFECT_GEAR_UP,
|
|
.power = 0,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_THROAT_CHOP] =
|
|
{
|
|
.name = COMPOUND_STRING("Throat Chop"),
|
|
.description = COMPOUND_STRING(
|
|
"Chops the throat to disable\n"
|
|
"sound moves for a while."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_THROAT_CHOP,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_POLLEN_PUFF] =
|
|
{
|
|
.name = COMPOUND_STRING("Pollen Puff"),
|
|
.description = COMPOUND_STRING(
|
|
"Explodes on foes, but\n"
|
|
"restores ally's HP."),
|
|
.effect = EFFECT_HIT_ENEMY_HEAL_ALLY,
|
|
.power = 90,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ANCHOR_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Anchor Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"Strangles the foe with a\n"
|
|
"chain. The foe can't escape."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PREVENT_ESCAPE,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PSYCHIC_TERRAIN] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PsychcTrrain", "Psychic Terrain"),
|
|
.description = COMPOUND_STRING(
|
|
"The ground turns weird for\n"
|
|
"5 turns. Blocks priority."),
|
|
.effect = EFFECT_PSYCHIC_TERRAIN,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = COMBO_STARTER_PSYCHIC_TERRAIN,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LUNGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Lunge"),
|
|
.description = COMPOUND_STRING(
|
|
"Lunges at the foe to lower\n"
|
|
"its Attack stat."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FIRE_LASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Fire Lash"),
|
|
.description = COMPOUND_STRING(
|
|
"Whips the foe with fire\n"
|
|
"lowering its Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_POWER_TRIP] =
|
|
{
|
|
.name = COMPOUND_STRING("Power Trip"),
|
|
.description = COMPOUND_STRING(
|
|
"It hits harder the more\n"
|
|
"stat boosts the user has."),
|
|
.effect = EFFECT_STORED_POWER,
|
|
.power = 20,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BURN_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Burn Up"),
|
|
.description = COMPOUND_STRING(
|
|
"Burns out the user fully\n"
|
|
"removing the Fire type."),
|
|
.effect = EFFECT_FAIL_IF_NOT_ARG_TYPE,
|
|
.power = 130,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.thawsUser = TRUE,
|
|
.argument = TYPE_FIRE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_REMOVE_ARG_TYPE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_SUNNY_DAY},
|
|
},
|
|
|
|
[MOVE_SPEED_SWAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Speed Swap"),
|
|
.description = COMPOUND_STRING(
|
|
"Swaps user's Speed with\n"
|
|
"the target's."),
|
|
.effect = EFFECT_SPEED_SWAP,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SMART_STRIKE] =
|
|
{
|
|
.name = COMPOUND_STRING("Smart Strike"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with an accurate\n"
|
|
"horn that never misses."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PURIFY] =
|
|
{
|
|
.name = COMPOUND_STRING("Purify"),
|
|
.description = COMPOUND_STRING(
|
|
"Cures the foe's status\n"
|
|
"to restore HP."),
|
|
.effect = EFFECT_PURIFY,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_REVELATION_DANCE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("RvlationDnce", "Revelation Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"Dances with mystical power.\n"
|
|
"Matches user's first type."),
|
|
.effect = EFFECT_REVELATION_DANCE,
|
|
.power = 90,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.danceMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CORE_ENFORCER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("CoreEnforcer", "Core Enforcer"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with a ray that\n"
|
|
"nullifies the foe's ability."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.zMove = { .powerOverride = 140 },
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CORE_ENFORCER,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SHIFT_JUDGE_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TROP_KICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Trop Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"An intense kick from the\n"
|
|
"tropics. Lowers Attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_INSTRUCT] =
|
|
{
|
|
.name = COMPOUND_STRING("Instruct"),
|
|
.description = COMPOUND_STRING(
|
|
"Orders the target to use\n"
|
|
"its last move again."),
|
|
.effect = EFFECT_INSTRUCT,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPATK_UP_1 },
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BEAK_BLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("Beak Blast"),
|
|
.description = COMPOUND_STRING(
|
|
"Heats up beak to attack.\n"
|
|
"Burns foe on contact."),
|
|
.effect = EFFECT_BEAK_BLAST,
|
|
.power = 100,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = -3,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.ballisticMove = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CLANGING_SCALES] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ClngngScales", "Clanging Scales"),
|
|
.description = COMPOUND_STRING(
|
|
"Makes a big noise with\n"
|
|
"its scales. Drops Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 110,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.soundMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_HAMMER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DragonHammer", "Dragon Hammer"),
|
|
.description = COMPOUND_STRING(
|
|
"Swings its whole body\n"
|
|
"like a hammer to damage."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_DRAGON_BREATH, COMBO_STARTER_DRAGON_DANCE, COMBO_STARTER_DRAGON_RAGE, COMBO_STARTER_DRAGON_RUSH, COMBO_STARTER_DRAGON_TAIL},
|
|
},
|
|
|
|
[MOVE_BRUTAL_SWING] =
|
|
{
|
|
.name = COMPOUND_STRING("Brutal Swing"),
|
|
.description = COMPOUND_STRING(
|
|
"Violently swings around\n"
|
|
"to hurt everyone nearby."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_AURORA_VEIL] =
|
|
{
|
|
.name = COMPOUND_STRING("Aurora Veil"),
|
|
.description = COMPOUND_STRING(
|
|
"Weakens all attacks, but\n"
|
|
"only usable with hail."),
|
|
.effect = EFFECT_AURORA_VEIL,
|
|
.power = 0,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_HAIL},
|
|
},
|
|
|
|
[MOVE_SHELL_TRAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Shell Trap"),
|
|
.description = COMPOUND_STRING(
|
|
"Sets a shell trap that\n"
|
|
"damages on contact."),
|
|
.effect = EFFECT_SHELL_TRAP,
|
|
.power = 150,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = -3,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLEUR_CANNON] =
|
|
{
|
|
.name = COMPOUND_STRING("Fleur Cannon"),
|
|
.description = COMPOUND_STRING(
|
|
"A strong ray that harshly\n"
|
|
"lowers Sp. Attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 130,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_TWO_DOWN,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PSYCHIC_FANGS] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PsychicFangs", "Psychic Fangs"),
|
|
.description = COMPOUND_STRING(
|
|
"Chomps with psychic fangs.\n"
|
|
"Destroys any barriers."),
|
|
.effect = EFFECT_BRICK_BREAK,
|
|
.power = 85,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STOMPING_TANTRUM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("StmpngTantrm", "Stomping Tantrum"),
|
|
.description = COMPOUND_STRING(
|
|
"Stomps around angrily.\n"
|
|
"Stronger after a failure."),
|
|
.effect = EFFECT_STOMPING_TANTRUM,
|
|
.power = 75,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SHADOW_BONE] =
|
|
{
|
|
.name = COMPOUND_STRING("Shadow Bone"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes with a haunted\n"
|
|
"bone. Might drop Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 85,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SHIFT_JUDGE_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = COMBO_STARTER_SHADOW_BONE,
|
|
.contestComboMoves = {COMBO_STARTER_BONE_CLUB, COMBO_STARTER_BONEMERANG, COMBO_STARTER_BONE_RUSH},
|
|
},
|
|
|
|
[MOVE_ACCELEROCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Accelerock"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with a high-speed\n"
|
|
"rock that always goes first."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LIQUIDATION] =
|
|
{
|
|
.name = COMPOUND_STRING("Liquidation"),
|
|
.description = COMPOUND_STRING(
|
|
"Slams the foe with water.\n"
|
|
"Can lower Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 85,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_SHIFT_JUDGE_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_RAIN_DANCE},
|
|
},
|
|
|
|
[MOVE_PRISMATIC_LASER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PrsmaticLasr", "Prismatic Laser"),
|
|
.description = COMPOUND_STRING(
|
|
"A high power laser that\n"
|
|
"forces recharge next turn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 160,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RECHARGE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SPECTRAL_THIEF] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SpectrlThief", "Spectral Thief"),
|
|
.description = COMPOUND_STRING(
|
|
"Steals the target's stat\n"
|
|
"boosts, then attacks."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.ignoresSubstitute = TRUE,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPECTRAL_THIEF,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SUNSTEEL_STRIKE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SnsteelStrke", "Sunsteel Strike"),
|
|
.description = COMPOUND_STRING(
|
|
"A sun-fueled strike that\n"
|
|
"ignores abilities."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ignoresTargetAbility = TRUE,
|
|
.metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_8,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MOONGEIST_BEAM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MoongestBeam", "Moongeist Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"A moon-powered beam that\n"
|
|
"ignores abilities."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TEARFUL_LOOK] =
|
|
{
|
|
.name = COMPOUND_STRING("Tearful Look"),
|
|
.description = COMPOUND_STRING(
|
|
"The user tears up, dropping\n"
|
|
"Attack and Sp. Attack."),
|
|
.effect = EFFECT_NOBLE_ROAR,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ZING_ZAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Zing Zap"),
|
|
.description = COMPOUND_STRING(
|
|
"An electrified impact that\n"
|
|
"can cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_CHARGE},
|
|
},
|
|
|
|
[MOVE_NATURES_MADNESS] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("Natur'sMadns", "Nature's Madness"),
|
|
.description = COMPOUND_STRING(
|
|
"Halves the foe's HP with\n"
|
|
"the power of nature."),
|
|
.effect = EFFECT_SUPER_FANG,
|
|
.power = 1,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 90,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MULTI_ATTACK] =
|
|
{
|
|
.name = COMPOUND_STRING("Multi-Attack"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that changes\n"
|
|
"with Memories."),
|
|
.effect = EFFECT_CHANGE_TYPE_ON_ITEM,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 120 : 90,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = HOLD_EFFECT_MEMORY,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MIND_BLOWN] =
|
|
{
|
|
.name = COMPOUND_STRING("Mind Blown"),
|
|
.description = COMPOUND_STRING(
|
|
"It explodes the user's head\n"
|
|
"to damage everything around."),
|
|
.effect = EFFECT_MIND_BLOWN,
|
|
.power = 150,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PLASMA_FISTS] =
|
|
{
|
|
.name = COMPOUND_STRING("Plasma Fists"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with electrical fists.\n"
|
|
"Normal moves become Electric."),
|
|
.effect = EFFECT_PLASMA_FISTS,
|
|
.power = 100,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PHOTON_GEYSER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PhotonGeyser", "Photon Geyser"),
|
|
.description = COMPOUND_STRING(
|
|
"User's highest attack stat\n"
|
|
"determines its category."),
|
|
.effect = EFFECT_PHOTON_GEYSER,
|
|
.power = 100,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ignoresTargetAbility = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ZIPPY_ZAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Zippy Zap"),
|
|
.description = COMPOUND_STRING(
|
|
"Electric bursts always go\n"
|
|
"first and land a critical hit."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 80 : 50,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 10 : 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 2,
|
|
.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({
|
|
.moveEffect = MOVE_EFFECT_EVS_PLUS_1,
|
|
.chance = 100,
|
|
}),
|
|
#endif
|
|
},
|
|
|
|
[MOVE_SPLISHY_SPLASH] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SplishySplsh", "Splishy Splash"),
|
|
.description = COMPOUND_STRING(
|
|
"A huge electrified wave that\n"
|
|
"may paralyze the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_FLOATY_FALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Floaty Fall"),
|
|
.description = COMPOUND_STRING(
|
|
"Floats in air and dives at\n"
|
|
"angle. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8,
|
|
.gravityBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_PIKA_PAPOW] =
|
|
{
|
|
.name = COMPOUND_STRING("Pika Papow"),
|
|
.description = COMPOUND_STRING(
|
|
"Pikachu's love increases its\n"
|
|
"power. It never misses."),
|
|
.effect = EFFECT_RETURN,
|
|
.power = 1,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_BOUNCY_BUBBLE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BouncyBubble", "Bouncy Bubble"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that absorbs\n"
|
|
#if B_UPDATED_MOVE_DATA >= GEN_8
|
|
"all the damage inflicted."),
|
|
#else
|
|
"half the damage inflicted."),
|
|
#endif
|
|
.effect = EFFECT_ABSORB,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 60 : 90,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 20 : 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.healingMove = B_HEAL_BLOCKING >= GEN_6,
|
|
},
|
|
|
|
[MOVE_BUZZY_BUZZ] =
|
|
{
|
|
.name = COMPOUND_STRING("Buzzy Buzz"),
|
|
.description = COMPOUND_STRING(
|
|
"Shoots a jolt of electricity\n"
|
|
"that always paralyzes."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 60 : 90,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.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({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_SIZZLY_SLIDE] =
|
|
{
|
|
.name = COMPOUND_STRING("Sizzly Slide"),
|
|
.description = COMPOUND_STRING(
|
|
"User cloaked in fire charges.\n"
|
|
"Leaves the foe with a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 60 : 90,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 20 : 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8,
|
|
.thawsUser = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_GLITZY_GLOW] =
|
|
{
|
|
.name = COMPOUND_STRING("Glitzy Glow"),
|
|
.description = COMPOUND_STRING(
|
|
"Telekinetic force that sets\n"
|
|
"wall, lowering Sp. Atk damage."),
|
|
.effect = EFFECT_GLITZY_GLOW,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 80 : 90,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 95 : 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_BADDY_BAD] =
|
|
{
|
|
.name = COMPOUND_STRING("Baddy Bad"),
|
|
.description = COMPOUND_STRING(
|
|
"Acting badly, attacks. Sets\n"
|
|
"wall, lowering Attack damage."),
|
|
.effect = EFFECT_BADDY_BAD,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 80 : 90,
|
|
.type = TYPE_DARK,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 95 : 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_SAPPY_SEED] =
|
|
{
|
|
.name = COMPOUND_STRING("Sappy Seed"),
|
|
.description = COMPOUND_STRING(
|
|
"Giant stalk scatters seeds\n"
|
|
"that drain HP every turn."),
|
|
.effect = EFFECT_SAPPY_SEED,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 100 : 90,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 90 : 100,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_8 ? 10 : 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8,
|
|
.magicCoatAffected = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_FREEZY_FROST] =
|
|
{
|
|
.name = COMPOUND_STRING("Freezy Frost"),
|
|
.description = COMPOUND_STRING(
|
|
"Crystal from cold haze hits.\n"
|
|
"Eliminates all stat changes."),
|
|
.effect = EFFECT_FREEZY_FROST,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 100 : 90,
|
|
.type = TYPE_ICE,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 90 : 100,
|
|
.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,
|
|
},
|
|
|
|
[MOVE_SPARKLY_SWIRL] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SparklySwirl", "Sparkly Swirl"),
|
|
.description = COMPOUND_STRING(
|
|
"Wrap foe with whirlwind of\n"
|
|
"scent. Heals party's status."),
|
|
.effect = EFFECT_SPARKLY_SWIRL,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_8 ? 120 : 90,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_8 ? 85 : 100,
|
|
.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,
|
|
},
|
|
|
|
[MOVE_VEEVEE_VOLLEY] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("VeeveeVolley", "Veevee Volley"),
|
|
.description = COMPOUND_STRING(
|
|
"Eevee's love increases its\n"
|
|
"power. It never misses."),
|
|
.effect = EFFECT_RETURN,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.mirrorMoveBanned = B_UPDATED_MOVE_FLAGS < GEN_8,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_DOUBLE_IRON_BASH] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DublIronBash", "Double Iron Bash"),
|
|
.description = COMPOUND_STRING(
|
|
"The user spins and hits with\n"
|
|
"its arms. May cause flinch."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.strikeCount = 2,
|
|
.minimizeDoubleDamage = B_UPDATED_MOVE_FLAGS < GEN_8,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DYNAMAX_CANNON] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DynamxCannon", "Dynamax Cannon"),
|
|
.description = COMPOUND_STRING(
|
|
"Fires a strong beam. Deals\n"
|
|
"2x damage to Dynamaxed foes."),
|
|
.effect = EFFECT_DYNAMAX_DOUBLE_DMG,
|
|
.power = 100,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_SNIPE_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Snipe Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"The user ignores effects\n"
|
|
"that draw in moves."),
|
|
.effect = EFFECT_SNIPE_SHOT,
|
|
.power = 80,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_JAW_LOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Jaw Lock"),
|
|
.description = COMPOUND_STRING(
|
|
"Prevents the user and\n"
|
|
"the target from escaping."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_TRAP_BOTH,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STUFF_CHEEKS] =
|
|
{
|
|
.name = COMPOUND_STRING("Stuff Cheeks"),
|
|
.description = COMPOUND_STRING(
|
|
"Consumes the user's Berry,\n"
|
|
"then sharply raises Def."),
|
|
.effect = EFFECT_STUFF_CHEEKS,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_NO_RETREAT] =
|
|
{
|
|
.name = COMPOUND_STRING("No Retreat"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises all of the user's\n"
|
|
"stats but prevents escape."),
|
|
.effect = EFFECT_NO_RETREAT,
|
|
.power = 0,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TAR_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Tar Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"Lowers the foe's Speed and\n"
|
|
"makes it weak to Fire."),
|
|
.effect = EFFECT_TAR_SHOT,
|
|
.power = 0,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MAGIC_POWDER] =
|
|
{
|
|
.name = COMPOUND_STRING("Magic Powder"),
|
|
.description = COMPOUND_STRING(
|
|
"Magic powder changes the\n"
|
|
"target into a Psychic-type."),
|
|
.effect = EFFECT_SOAK,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.argument = TYPE_PSYCHIC,
|
|
.magicCoatAffected = TRUE,
|
|
.powderMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_DARTS] =
|
|
{
|
|
.name = COMPOUND_STRING("Dragon Darts"),
|
|
.description = COMPOUND_STRING(
|
|
"The user attacks twice. Two\n"
|
|
"targets are hit once each."),
|
|
.effect = EFFECT_HIT, // TODO: EFFECT_DRAGON_DARTS
|
|
.power = 50,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.strikeCount = 2,
|
|
.parentalBondBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_TEATIME] =
|
|
{
|
|
.name = COMPOUND_STRING("Teatime"),
|
|
.description = COMPOUND_STRING(
|
|
"All Pokémon have teatime\n"
|
|
"and eat their Berries."),
|
|
.effect = EFFECT_TEATIME,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_OCTOLOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Octolock"),
|
|
.description = COMPOUND_STRING(
|
|
"Traps the foe to lower Def\n"
|
|
"and Sp. Def fall each turn."),
|
|
.effect = EFFECT_OCTOLOCK,
|
|
.power = 0,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BOLT_BEAK] =
|
|
{
|
|
.name = COMPOUND_STRING("Bolt Beak"),
|
|
.description = COMPOUND_STRING(
|
|
"Double power if the user\n"
|
|
"moves before the target."),
|
|
.effect = EFFECT_BOLT_BEAK,
|
|
.power = 85,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FISHIOUS_REND] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("FishiousRend", "Fishious Rend"),
|
|
.description = COMPOUND_STRING(
|
|
"Double power if the user\n"
|
|
"moves before the target."),
|
|
.effect = EFFECT_BOLT_BEAK,
|
|
.power = 85,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.bitingMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_COURT_CHANGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Court Change"),
|
|
.description = COMPOUND_STRING(
|
|
"The user swaps effects on\n"
|
|
"either side of the field."),
|
|
.effect = EFFECT_COURT_CHANGE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_CLANGOROUS_SOUL] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ClngrousSoul", "Clangorous Soul"),
|
|
.description = COMPOUND_STRING(
|
|
"The user uses some of its\n"
|
|
"HP to raise all its stats."),
|
|
.effect = EFFECT_CLANGOROUS_SOUL,
|
|
.power = 0,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.soundMove = TRUE,
|
|
.danceMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BODY_PRESS] =
|
|
{
|
|
.name = COMPOUND_STRING("Body Press"),
|
|
.description = COMPOUND_STRING(
|
|
"Does more damage the\n"
|
|
"higher the user's Def."),
|
|
.effect = EFFECT_BODY_PRESS,
|
|
.power = 80,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DECORATE] =
|
|
{
|
|
.name = COMPOUND_STRING("Decorate"),
|
|
.description = COMPOUND_STRING(
|
|
"The user sharply raises\n"
|
|
"the target's Atk and Sp.Atk"),
|
|
.effect = EFFECT_DECORATE,
|
|
.power = 0,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRUM_BEATING] =
|
|
{
|
|
.name = COMPOUND_STRING("Drum Beating"),
|
|
.description = COMPOUND_STRING(
|
|
"Plays a drum to attack.\n"
|
|
"The foe's Speed is lowered."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SNAP_TRAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Snap Trap"),
|
|
.description = COMPOUND_STRING(
|
|
"Snares the target in a snap\n"
|
|
"trap for four to five turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 35,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_WRAP,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_PYRO_BALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Pyro Ball"),
|
|
.description = COMPOUND_STRING(
|
|
"Launches a fiery ball at the\n"
|
|
"target. It may cause a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.thawsUser = TRUE,
|
|
.ballisticMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BEHEMOTH_BLADE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BehemthBlade", "Behemoth Blade"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes as a sword. Deals 2x\n"
|
|
"damage to Dynamaxed foes."),
|
|
.effect = EFFECT_DYNAMAX_DOUBLE_DMG,
|
|
.power = 100,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.assistBanned = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_BEHEMOTH_BASH] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BehemothBash", "Behemoth Bash"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks as a shield. Deals 2x\n"
|
|
"damage to Dynamaxed foes."),
|
|
.effect = EFFECT_DYNAMAX_DOUBLE_DMG,
|
|
.power = 100,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.assistBanned = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_AURA_WHEEL] =
|
|
{
|
|
.name = COMPOUND_STRING("Aura Wheel"),
|
|
.description = COMPOUND_STRING(
|
|
"Raises Speed to attack. The\n"
|
|
"Type is based on its form."),
|
|
.effect = EFFECT_AURA_WHEEL,
|
|
.power = 110,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BREAKING_SWIPE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BreakngSwipe", "Breaking Swipe"),
|
|
.description = COMPOUND_STRING(
|
|
"Swings its tail to attack.\n"
|
|
"Lowers the Atk of those hit."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_BRANCH_POKE] =
|
|
{
|
|
.name = COMPOUND_STRING("Branch Poke"),
|
|
.description = COMPOUND_STRING(
|
|
"The user pokes the target\n"
|
|
"with a pointed branch."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 40,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_OVERDRIVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Overdrive"),
|
|
.description = COMPOUND_STRING(
|
|
"The user twangs its guitar,\n"
|
|
"causing strong vibrations."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.soundMove = TRUE,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_APPLE_ACID] =
|
|
{
|
|
.name = COMPOUND_STRING("Apple Acid"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with tart apple acid\n"
|
|
"to lower the foe's Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_GRAV_APPLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Grav Apple"),
|
|
.description = COMPOUND_STRING(
|
|
"Drops an apple from above.\n"
|
|
"Lowers the foe's Defense."),
|
|
.effect = EFFECT_GRAV_APPLE,
|
|
.power = 80,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_SPIRIT_BREAK] =
|
|
{
|
|
.name = COMPOUND_STRING("Spirit Break"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with spirit-breaking\n"
|
|
"force. Lowers Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STRANGE_STEAM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("StrangeSteam", "Strange Steam"),
|
|
.description = COMPOUND_STRING(
|
|
"Emits a strange steam to\n"
|
|
"potentially confuse the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 95,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LIFE_DEW] =
|
|
{
|
|
.name = COMPOUND_STRING("Life Dew"),
|
|
.description = COMPOUND_STRING(
|
|
"Scatters water to restore\n"
|
|
"the HP of itself and allies."),
|
|
.effect = EFFECT_JUNGLE_HEALING,
|
|
.power = 0,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.healingMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_OBSTRUCT] =
|
|
{
|
|
.name = COMPOUND_STRING("Obstruct"),
|
|
.description = COMPOUND_STRING(
|
|
"Protects itself, harshly\n"
|
|
"lowering Def on contact."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 4,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_FALSE_SURRENDER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("FalsSurrendr", "False Surrender"),
|
|
.description = COMPOUND_STRING(
|
|
"Bows to stab the foe\n"
|
|
"with hair. It never misses."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_METEOR_ASSAULT] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MeteorAssalt", "Meteor Assault"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with a thick leek.\n"
|
|
"The user must then rest."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 150,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RECHARGE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_ETERNABEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Eternabeam"),
|
|
.description = COMPOUND_STRING(
|
|
"Eternatus' strongest move.\n"
|
|
"The user rests next turn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 160,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RECHARGE,
|
|
.self = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_STEEL_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Steel Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"Fires a beam of steel from\n"
|
|
"its body. It hurts the user."),
|
|
.effect = EFFECT_MAX_HP_50_RECOIL,
|
|
.power = 140,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 95,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_EXPANDING_FORCE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ExpandngForc", "Expanding Force"),
|
|
.description = COMPOUND_STRING(
|
|
"Power goes up and damages\n"
|
|
"all foes on Psychic Terrain."),
|
|
.effect = EFFECT_EXPANDING_FORCE,
|
|
.power = 80,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_PSYCHIC_TERRAIN}
|
|
},
|
|
|
|
[MOVE_STEEL_ROLLER] =
|
|
{
|
|
.name = COMPOUND_STRING("Steel Roller"),
|
|
.description = COMPOUND_STRING(
|
|
"Destroys terrain. Fails if\n"
|
|
"ground isn't terrain."),
|
|
.effect = EFFECT_HIT_SET_REMOVE_TERRAIN,
|
|
.power = 130,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = 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,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_SCALE_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Scale Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"Shoots scales 2 to 5 times.\n"
|
|
"Ups Speed, lowers defense."),
|
|
.effect = EFFECT_MULTI_HIT,
|
|
.power = 25,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 90,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_METEOR_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Meteor Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"A 2-turn move that raises\n"
|
|
"Sp. Attack before attacking."),
|
|
.effect = EFFECT_TWO_TURNS_ATTACK,
|
|
.power = 120,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.instructBanned = TRUE,
|
|
.argument = TWO_TURN_ARG(STRINGID_METEORBEAMCHARGING),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_PLUS_1,
|
|
.self = TRUE,
|
|
.onChargeTurnOnly = TRUE,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_USER_MORE_EASILY_STARTLED,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_SHELL_SIDE_ARM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ShellSideArm", "Shell Side Arm"),
|
|
.description = COMPOUND_STRING(
|
|
"Deals better of physical and\n"
|
|
"special damage. May poison."),
|
|
.effect = EFFECT_SHELL_SIDE_ARM,
|
|
.power = 90,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_MISTY_EXPLOSION] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MstyExplsion", "Misty Explosion"),
|
|
.description = COMPOUND_STRING(
|
|
"Hit everything and faint.\n"
|
|
"Powers up on Misty Terrain."),
|
|
.effect = EFFECT_EXPLOSION,
|
|
.power = 100,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboMoves = {COMBO_STARTER_MISTY_TERRAIN}
|
|
},
|
|
|
|
[MOVE_GRASSY_GLIDE] =
|
|
{
|
|
.name = COMPOUND_STRING("Grassy Glide"),
|
|
.description = COMPOUND_STRING(
|
|
"Gliding on ground, hits. Goes\n"
|
|
"first on Grassy Terrain."),
|
|
.effect = EFFECT_GRASSY_GLIDE,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 55 : 70,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_GRASSY_TERRAIN}
|
|
},
|
|
|
|
[MOVE_RISING_VOLTAGE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("RisngVoltage", "Rising Voltage"),
|
|
.description = COMPOUND_STRING(
|
|
"This move's power doubles\n"
|
|
"when on Electric Terrain."),
|
|
.effect = EFFECT_RISING_VOLTAGE,
|
|
.power = 70,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_ELECTRIC_TERRAIN}
|
|
},
|
|
|
|
[MOVE_TERRAIN_PULSE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("TerrainPulse", "Terrain Pulse"),
|
|
.description = COMPOUND_STRING(
|
|
"Type and power changes\n"
|
|
"depending on the terrain."),
|
|
.effect = EFFECT_TERRAIN_PULSE,
|
|
.power = 50,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.pulseMove = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {COMBO_STARTER_ELECTRIC_TERRAIN, COMBO_STARTER_MISTY_TERRAIN, COMBO_STARTER_GRASSY_TERRAIN, COMBO_STARTER_PSYCHIC_TERRAIN},
|
|
},
|
|
|
|
[MOVE_SKITTER_SMACK] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SkitterSmack", "Skitter Smack"),
|
|
.description = COMPOUND_STRING(
|
|
"User skitters behind foe to\n"
|
|
"attack. Lowers foe's Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_BURNING_JEALOUSY] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BrningJelosy", "Burning Jealousy"),
|
|
.description = COMPOUND_STRING(
|
|
"Foes that have stats upped\n"
|
|
"during the turn get burned."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.onlyIfTargetRaisedStats = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_LASH_OUT] =
|
|
{
|
|
.name = COMPOUND_STRING("Lash Out"),
|
|
.description = COMPOUND_STRING(
|
|
"If stats lowered during this\n"
|
|
"turn, power is doubled."),
|
|
.effect = EFFECT_LASH_OUT,
|
|
.power = 75,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_STARTLE_PREV_MON,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_POLTERGEIST] =
|
|
{
|
|
.name = COMPOUND_STRING("Poltergeist"),
|
|
.description = COMPOUND_STRING(
|
|
"Control foe's item to attack.\n"
|
|
"Fails if foe has no item."),
|
|
.effect = EFFECT_POLTERGEIST,
|
|
.power = 110,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 90,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_CORROSIVE_GAS] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("CorrosiveGas", "Corrosive Gas"),
|
|
.description = COMPOUND_STRING(
|
|
"Highly acidic gas melts items\n"
|
|
"held by surrounding Pokémon."),
|
|
.effect = EFFECT_CORROSIVE_GAS,
|
|
.power = 0,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_COACHING] =
|
|
{
|
|
.name = COMPOUND_STRING("Coaching"),
|
|
.description = COMPOUND_STRING(
|
|
"Properly coaches allies to\n"
|
|
"up their Attack and Defense."),
|
|
.effect = EFFECT_COACHING,
|
|
.power = 0,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FLIP_TURN] =
|
|
{
|
|
.name = COMPOUND_STRING("Flip Turn"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks and rushes back to\n"
|
|
"switch with a party Pokémon."),
|
|
.effect = EFFECT_HIT_ESCAPE,
|
|
.power = 60,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_AVOID_STARTLE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_TRIPLE_AXEL] =
|
|
{
|
|
.name = COMPOUND_STRING("Triple Axel"),
|
|
.description = COMPOUND_STRING(
|
|
"A 3-kick attack that gets\n"
|
|
"more powerful with each hit."),
|
|
.effect = EFFECT_TRIPLE_KICK,
|
|
.power = 20,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.strikeCount = 3,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_SAME_TYPE,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DUAL_WINGBEAT] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DualWingbeat", "Dual Wingbeat"),
|
|
.description = COMPOUND_STRING(
|
|
"User slams the target with\n"
|
|
"wings and hits twice in a row."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.strikeCount = 2,
|
|
.contestEffect = CONTEST_EFFECT_REPETITION_NOT_BORING,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_SCORCHING_SANDS] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ScorchngSnds", "Scorching Sands"),
|
|
.description = COMPOUND_STRING(
|
|
"Throws scorching sand at\n"
|
|
"the target. May leave a burn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.thawsUser = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 30,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_JUNGLE_HEALING] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("JungleHealng", "Jungle Healng"),
|
|
.description = COMPOUND_STRING(
|
|
"Heals HP and status of\n"
|
|
"itself and allies in battle."),
|
|
.effect = EFFECT_JUNGLE_HEALING,
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.healingMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_WICKED_BLOW] =
|
|
{
|
|
.name = COMPOUND_STRING("Wicked Blow"),
|
|
.description = COMPOUND_STRING(
|
|
"Mastering the Dark style,\n"
|
|
"strikes with a critical hit."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 75 : 80,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.alwaysCriticalHit = TRUE,
|
|
.punchingMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_SURGING_STRIKES] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SurgngStrkes", "Surging Strikes"),
|
|
.description = COMPOUND_STRING(
|
|
"Mastering the Water style,\n"
|
|
"strikes with 3 critical hits."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 25,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.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,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_THUNDER_CAGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Thunder Cage"),
|
|
.description = COMPOUND_STRING(
|
|
"Traps the foe in a cage of\n"
|
|
"electricity for "BINDING_TURNS" turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 90,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_WRAP,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_DONT_EXCITE_AUDIENCE,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DRAGON_ENERGY] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("DragonEnergy", "Dragon Energy"),
|
|
.description = COMPOUND_STRING(
|
|
"The higher the user's HP\n"
|
|
"the more damage caused."),
|
|
.effect = EFFECT_ERUPTION,
|
|
.power = 150,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_LATER,
|
|
.contestCategory = CONTEST_CATEGORY_COOL,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FREEZING_GLARE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("FreezngGlare", "Freezing Glare"),
|
|
.description = COMPOUND_STRING(
|
|
"Shoots psychic power from\n"
|
|
#if B_USE_FROSTBITE == TRUE
|
|
"the eyes. May frostbite."),
|
|
#else
|
|
"the eyes. May freeze the foe."),
|
|
#endif
|
|
.power = 90,
|
|
.effect = EFFECT_HIT,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FREEZE_OR_FROSTBITE,
|
|
.chance = 10,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_CUTE,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_FIERY_WRATH] =
|
|
{
|
|
.name = COMPOUND_STRING("Fiery Wrath"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack fueled by your\n"
|
|
"wrath. May cause flinching."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 20,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_THUNDEROUS_KICK] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ThnderusKick", "Thunderous Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"Uses a lightning-like kick\n"
|
|
"to hit. Lowers foe's Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 90,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
.contestEffect = CONTEST_EFFECT_HIGHLY_APPEALING,
|
|
.contestCategory = CONTEST_CATEGORY_TOUGH,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_GLACIAL_LANCE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("GlacialLance", "Glacial Lance"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes by hurling a blizzard-\n"
|
|
"cloaked icicle lance at foes."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 120 : 130,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_LAST,
|
|
.contestCategory = CONTEST_CATEGORY_BEAUTY,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_ASTRAL_BARRAGE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("AstrlBarrage", "Astral Barrage"),
|
|
.description = COMPOUND_STRING(
|
|
"Strikes by sending a frightful\n"
|
|
"amount of ghosts at foes."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.contestEffect = CONTEST_EFFECT_BETTER_IF_FIRST,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0},
|
|
},
|
|
|
|
[MOVE_EERIE_SPELL] =
|
|
{
|
|
.name = COMPOUND_STRING("Eerie Spell"),
|
|
.description = COMPOUND_STRING(
|
|
"Attacks with psychic power.\n"
|
|
"Foe's last move has 3 PP cut."),
|
|
.effect = EFFECT_EERIE_SPELL,
|
|
.power = 80,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.contestCategory = CONTEST_CATEGORY_SMART,
|
|
.contestComboStarterId = 0,
|
|
.contestComboMoves = {0}
|
|
},
|
|
|
|
[MOVE_DIRE_CLAW] =
|
|
{
|
|
.name = COMPOUND_STRING("Dire Claw"),
|
|
.description = COMPOUND_STRING(
|
|
"High critical hit chance. May\n"
|
|
"paralyze, poison or drowse."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 80 : 60,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DIRE_CLAW,
|
|
.chance = 50,
|
|
}),
|
|
},
|
|
|
|
[MOVE_PSYSHIELD_BASH] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PsyshieldBsh", "Psyshield Bash"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits a foe with psychic\n"
|
|
"energy. May raise Defense."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_POWER_SHIFT] =
|
|
{
|
|
.name = COMPOUND_STRING("Power Shift"),
|
|
.description = COMPOUND_STRING(
|
|
"The user swaps its Attack\n"
|
|
"and Defense stats."),
|
|
.effect = EFFECT_POWER_TRICK,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_STONE_AXE] =
|
|
{
|
|
.name = COMPOUND_STRING("Stone Axe"),
|
|
.description = COMPOUND_STRING(
|
|
"High critical hit ratio. Sets\n"
|
|
"Splinters that hurt the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 90,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_STEALTH_ROCK,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_SPRINGTIDE_STORM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SprngtdeStrm", "Springtide Storm"),
|
|
.description = COMPOUND_STRING(
|
|
"Wraps a foe in fierce winds.\n"
|
|
"Varies with the user's form."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 95,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 80,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.windMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_MINUS_1,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_MYSTICAL_POWER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MystcalPower", "Mystical Power"),
|
|
.description = COMPOUND_STRING(
|
|
"A mysterious power strikes,\n"
|
|
"raising the user's Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_RAGING_FURY] =
|
|
{
|
|
.name = COMPOUND_STRING("Raging Fury"),
|
|
.description = COMPOUND_STRING(
|
|
"A rampage of 2 to 3 turns\n"
|
|
"that confuses the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 120 : 90,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_RANDOM,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_THRASH,
|
|
.self = TRUE,
|
|
}),
|
|
},
|
|
|
|
[MOVE_WAVE_CRASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Wave Crash"),
|
|
.description = COMPOUND_STRING(
|
|
"A slam shrouded in water.\n"
|
|
"It also hurts the user."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 120 : 75,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.recoil = 33,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
},
|
|
|
|
[MOVE_CHLOROBLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("Chloroblast"),
|
|
.description = COMPOUND_STRING(
|
|
"A user-hurting blast of\n"
|
|
"amassed chlorophyll."),
|
|
.effect = EFFECT_MAX_HP_50_RECOIL,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 150 : 120,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 95,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
},
|
|
|
|
[MOVE_MOUNTAIN_GALE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MountainGale", "Mountain Gale"),
|
|
.description = COMPOUND_STRING(
|
|
"Giant chunks of ice damage\n"
|
|
"the foe. It may flinch."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 85,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_VICTORY_DANCE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("VictoryDance", "Victory Dance"),
|
|
.description = COMPOUND_STRING(
|
|
"Dances to raise Attack,\n"
|
|
"Defense and Speed."),
|
|
.effect = EFFECT_VICTORY_DANCE,
|
|
.power = 0,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.danceMove = TRUE,
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_HEADLONG_RUSH] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("HeadlongRush", "Headlong Rush"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with a full-body tackle.\n"
|
|
"Lowers the users's defenses."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 120 : 100,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_SPDEF_DOWN,
|
|
.self = TRUE,
|
|
}),
|
|
},
|
|
|
|
[MOVE_BARB_BARRAGE] =
|
|
{
|
|
.name = COMPOUND_STRING("Barb Barrage"),
|
|
.description = COMPOUND_STRING(
|
|
"Can poison on impact. Powers\n"
|
|
"up against poisoned foes."),
|
|
.effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS,
|
|
.power = 60,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.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,
|
|
.chance = 50,
|
|
}),
|
|
},
|
|
|
|
[MOVE_ESPER_WING] =
|
|
{
|
|
.name = COMPOUND_STRING("Esper Wing"),
|
|
.description = COMPOUND_STRING(
|
|
"High critical hit ratio.\n"
|
|
"Ups the user's Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 80 : 75,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 90,
|
|
.criticalHitStage = 1,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_BITTER_MALICE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BitterMalice", "Bitter Malice"),
|
|
.description = COMPOUND_STRING(
|
|
"A spine-chilling resentment.\n"
|
|
"May lower the foe's Attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 75 : 60,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_SHELTER] =
|
|
{
|
|
.name = COMPOUND_STRING("Shelter"),
|
|
.description = COMPOUND_STRING(
|
|
"The user hardens their skin,\n"
|
|
"sharply raising its Defense."),
|
|
.effect = EFFECT_DEFENSE_UP_2,
|
|
.power = 0,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_TRIPLE_ARROWS] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("TripleArrows", "Triple Arrows"),
|
|
.description = COMPOUND_STRING(
|
|
"High critical hit ratio.\n"
|
|
"May lower Defense or flinch."),
|
|
.effect = EFFECT_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 90 : 50,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = B_UPDATED_MOVE_DATA >= GEN_9 ? 10 : 15,
|
|
.criticalHitStage = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_MINUS_1,
|
|
.chance = 50,
|
|
},
|
|
{
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_INFERNAL_PARADE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("InfrnlParade", "Infernal Parade"),
|
|
.description = COMPOUND_STRING(
|
|
"Hurts a foe harder if it has\n"
|
|
"an ailment. May leave a burn."),
|
|
.effect = EFFECT_DOUBLE_POWER_ON_ARG_STATUS,
|
|
.power = 60,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.argument = STATUS1_ANY,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_CEASELESS_EDGE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("CeaslessEdge", "Ceaseless Edge"),
|
|
.description = COMPOUND_STRING(
|
|
"High critical hit ratio. Sets\n"
|
|
"Splinters that hurt the foe."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 65,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 90,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPIKES,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_BLEAKWIND_STORM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BlekwndStorm", "Bleakwind Storm"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with brutal, cold winds.\n"
|
|
"May lower the foe's Speed."),
|
|
.effect = EFFECT_RAIN_ALWAYS_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 95,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 80,
|
|
.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,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_WILDBOLT_STORM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("WildbltStorm", "Wildbolt Storm"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with a brutal tempest.\n"
|
|
"May inflict paralysis."),
|
|
.effect = EFFECT_RAIN_ALWAYS_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 95,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 80,
|
|
.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,
|
|
.chance = 20,
|
|
}),
|
|
},
|
|
|
|
[MOVE_SANDSEAR_STORM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SndsearStorm", "Sandsear Storm"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with brutally hot sand.\n"
|
|
"May inflict a burn."),
|
|
.effect = EFFECT_RAIN_ALWAYS_HIT,
|
|
.power = B_UPDATED_MOVE_DATA >= GEN_9 ? 100 : 95,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 80,
|
|
.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,
|
|
.chance = 20,
|
|
}),
|
|
},
|
|
|
|
[MOVE_LUNAR_BLESSING] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("LunarBlessng", "Lunar Blessing"),
|
|
.description = COMPOUND_STRING(
|
|
"The user heals and cures\n"
|
|
"itself and its ally."),
|
|
.effect = EFFECT_JUNGLE_HEALING,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.healingMove = TRUE,
|
|
},
|
|
|
|
[MOVE_TAKE_HEART] =
|
|
{
|
|
.name = COMPOUND_STRING("Take Heart"),
|
|
.description = COMPOUND_STRING(
|
|
"The user lifts its spirits to\n"
|
|
"heal and strengthen itself."),
|
|
.effect = EFFECT_TAKE_HEART,
|
|
.power = 0,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_TERA_BLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("Tera Blast"),
|
|
.description = COMPOUND_STRING(
|
|
"If the user's Terastallized,\n"
|
|
"it hits with its Tera-type."),
|
|
.effect = EFFECT_PLACEHOLDER, // EFFECT_TERA_BLAST,
|
|
.power = 80,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.forcePressure = TRUE,
|
|
},
|
|
|
|
[MOVE_SILK_TRAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Silk Trap"),
|
|
.description = COMPOUND_STRING(
|
|
"Protects itself, lowering\n"
|
|
"Speed on contact."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 4,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_AXE_KICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Axe Kick"),
|
|
.description = COMPOUND_STRING(
|
|
"May miss and hurt the kicker.\n"
|
|
"May cause confusion."),
|
|
.effect = EFFECT_RECOIL_IF_MISS,
|
|
.power = 120,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_LAST_RESPECTS] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("LastRespects", "Last Respects"),
|
|
.description = COMPOUND_STRING(
|
|
"This move deals more damage\n"
|
|
"for each defeated ally."),
|
|
.effect = EFFECT_LAST_RESPECTS,
|
|
.power = 50,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE, // Only since it isn't implemented yet
|
|
},
|
|
|
|
[MOVE_LUMINA_CRASH] =
|
|
{
|
|
.name = COMPOUND_STRING("Lumina Crash"),
|
|
.description = COMPOUND_STRING(
|
|
"A mind-affecting light\n"
|
|
"harshly lowers Sp. Def."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_DEF_MINUS_2,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_ORDER_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Order Up"),
|
|
.description = COMPOUND_STRING(
|
|
"Boosts a user's stats\n"
|
|
"depending on Tatsugiri."),
|
|
.effect = EFFECT_PLACEHOLDER, // EFFECT_ORDER_UP
|
|
.power = 80,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_JET_PUNCH] =
|
|
{
|
|
.name = COMPOUND_STRING("Jet Punch"),
|
|
.description = COMPOUND_STRING(
|
|
"A punch is thrown at blinding\n"
|
|
"speed to strike first."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_SPICY_EXTRACT] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SpicyExtract", "Spicy Extract"),
|
|
.description = COMPOUND_STRING(
|
|
"Sharply ups target's Attack,\n"
|
|
"harshly lowers its Defense."),
|
|
.effect = EFFECT_PLACEHOLDER, // EFFECT_SPICY_EXTRACT
|
|
.power = 0,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.magicCoatAffected = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_SPIN_OUT] =
|
|
{
|
|
.name = COMPOUND_STRING("Spin Out"),
|
|
.description = COMPOUND_STRING(
|
|
"Furiously strains its legs.\n"
|
|
"Harshly lowers user's Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_2,
|
|
.self = TRUE,
|
|
}),
|
|
},
|
|
|
|
[MOVE_POPULATION_BOMB] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PoplatinBomb", "Population Bomb"),
|
|
.description = COMPOUND_STRING(
|
|
"The user's fellows hit one\n"
|
|
"to ten times in a row."),
|
|
.effect = EFFECT_POPULATION_BOMB,
|
|
.power = 20,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.strikeCount = 10,
|
|
},
|
|
|
|
[MOVE_ICE_SPINNER] =
|
|
{
|
|
.name = COMPOUND_STRING("Ice Spinner"),
|
|
.description = COMPOUND_STRING(
|
|
"Ice-covered feet hit a foe\n"
|
|
"and destroy the terrain."),
|
|
.effect = EFFECT_HIT_SET_REMOVE_TERRAIN,
|
|
.power = 80,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.argument = ARG_TRY_REMOVE_TERRAIN_HIT, // Remove the active field terrain if there is one.
|
|
.skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
},
|
|
|
|
[MOVE_GLAIVE_RUSH] =
|
|
{
|
|
.name = COMPOUND_STRING("Glaive Rush"),
|
|
.description = COMPOUND_STRING(
|
|
"Foe attacks next turn can't\n"
|
|
"miss and do double damage."),
|
|
.effect = EFFECT_GLAIVE_RUSH,
|
|
.power = 120,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
},
|
|
|
|
[MOVE_REVIVAL_BLESSING] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("RevivlBlesng", "Revival Blessing"),
|
|
.description = COMPOUND_STRING(
|
|
"Revives a fainted party {PKMN}\n"
|
|
"and restores half of its HP."),
|
|
.effect = EFFECT_REVIVAL_BLESSING,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.healingMove = TRUE,
|
|
.sketchBanned = (B_SKETCH_BANS >= GEN_9),
|
|
},
|
|
|
|
[MOVE_SALT_CURE] =
|
|
{
|
|
.name = COMPOUND_STRING("Salt Cure"),
|
|
.description = COMPOUND_STRING(
|
|
"Hurts foe every turn. Double\n"
|
|
"damage to Steel and Water."),
|
|
.effect = EFFECT_SALT_CURE,
|
|
.power = 40,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_TRIPLE_DIVE] =
|
|
{
|
|
.name = COMPOUND_STRING("Triple Dive"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits target with splashes\n"
|
|
"of water 3 times in a row."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 30,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 95,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.strikeCount = 3,
|
|
},
|
|
|
|
[MOVE_MORTAL_SPIN] =
|
|
{
|
|
.name = COMPOUND_STRING("Mortal Spin"),
|
|
.description = COMPOUND_STRING(
|
|
"Erases trap moves and Leech\n"
|
|
"Seed. Poisons adjecent foes."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 30,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_RAPID_SPIN,
|
|
.self = TRUE,
|
|
},
|
|
{
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_DOODLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Doodle"),
|
|
.description = COMPOUND_STRING(
|
|
"Changes user's and ally's\n"
|
|
"Ability into the target's."),
|
|
.effect = EFFECT_DOODLE,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_FILLET_AWAY] =
|
|
{
|
|
.name = COMPOUND_STRING("Fillet Away"),
|
|
.description = COMPOUND_STRING(
|
|
"Sharply boosts offenses and\n"
|
|
"Speed by using its own HP."),
|
|
.effect = EFFECT_FILLET_AWAY,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RECOVER_HP },
|
|
.snatchAffected = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_KOWTOW_CLEAVE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("KowtowCleave", "Kowtow Cleave"),
|
|
.description = COMPOUND_STRING(
|
|
"User slashes the foe after\n"
|
|
"kowtowing. It never misses."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 85,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
},
|
|
|
|
[MOVE_FLOWER_TRICK] =
|
|
{
|
|
.name = COMPOUND_STRING("Flower Trick"),
|
|
.description = COMPOUND_STRING(
|
|
"Rigged bouquet. Always gets\n"
|
|
"a critical hit, never missing."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.alwaysCriticalHit = TRUE,
|
|
},
|
|
|
|
[MOVE_TORCH_SONG] =
|
|
{
|
|
.name = COMPOUND_STRING("Torch Song"),
|
|
.description = COMPOUND_STRING(
|
|
"Flames scorch the target.\n"
|
|
"Boosts the user's Sp. Atk."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.soundMove = TRUE,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_AQUA_STEP] =
|
|
{
|
|
.name = COMPOUND_STRING("Aqua Step"),
|
|
.description = COMPOUND_STRING(
|
|
"Hits with light, fluid dance\n"
|
|
"steps. Ups the user's Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.danceMove = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_RAGING_BULL] =
|
|
{
|
|
.name = COMPOUND_STRING("Raging Bull"),
|
|
.description = COMPOUND_STRING(
|
|
"Tackle that breaks barriers.\n"
|
|
"User's form determines type."),
|
|
.effect = EFFECT_RAGING_BULL,
|
|
.power = 90,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_MAKE_IT_RAIN] =
|
|
{
|
|
.name = COMPOUND_STRING("Make It Rain"),
|
|
.description = COMPOUND_STRING(
|
|
"Lowers the user's Sp. Atk.\n"
|
|
"Money is recovered after."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PAYDAY,
|
|
},
|
|
{
|
|
.moveEffect = MOVE_EFFECT_SP_ATK_MINUS_1,
|
|
.self = TRUE,
|
|
}),
|
|
},
|
|
|
|
[MOVE_RUINATION] =
|
|
{
|
|
.name = COMPOUND_STRING("Ruination"),
|
|
.description = COMPOUND_STRING(
|
|
"Summons a ruinous disaster\n"
|
|
"and cuts half the foe's HP."),
|
|
.effect = EFFECT_SUPER_FANG,
|
|
.power = 1,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 90,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_COLLISION_COURSE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ColisinCours", "Collision Course"),
|
|
.description = COMPOUND_STRING(
|
|
"Prehistoric explosion that's\n"
|
|
"stronger if supereffective."),
|
|
.effect = EFFECT_COLLISION_COURSE,
|
|
.power = 100,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_ELECTRO_DRIFT] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ElectroDrift", "Electro Drift"),
|
|
.description = COMPOUND_STRING(
|
|
"Futuristic electricity. It's\n"
|
|
"stronger if supereffective."),
|
|
.effect = EFFECT_COLLISION_COURSE,
|
|
.power = 100,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_SHED_TAIL] =
|
|
{
|
|
.name = COMPOUND_STRING("Shed Tail"),
|
|
.description = COMPOUND_STRING(
|
|
"Creates a Substitute for\n"
|
|
"itself before switching out."),
|
|
.effect = EFFECT_SHED_TAIL,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_RESET_STATS },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_CHILLY_RECEPTION] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ChilReceptin", "Chilly Reception"),
|
|
.description = COMPOUND_STRING(
|
|
"Bad joke summons snowstorm.\n"
|
|
"The user also switches out."),
|
|
.effect = EFFECT_CHILLY_RECEPTION,
|
|
.power = 0,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_TIDY_UP] =
|
|
{
|
|
.name = COMPOUND_STRING("Tidy Up"),
|
|
.description = COMPOUND_STRING(
|
|
"User tidies up hazards and\n"
|
|
"raises its Attack and Speed."),
|
|
.effect = EFFECT_TIDY_UP,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_SNOWSCAPE] =
|
|
{
|
|
.name = COMPOUND_STRING("Snowscape"),
|
|
.description = COMPOUND_STRING(
|
|
"Summons a snowstorm that\n"
|
|
"lasts for five turns."),
|
|
.effect = EFFECT_SNOWSCAPE,
|
|
.power = 0,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_ALL_BATTLERS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.zMove = { .effect = Z_EFFECT_SPD_UP_1 },
|
|
.ignoresProtect = TRUE,
|
|
.mirrorMoveBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_POUNCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Pounce"),
|
|
.description = COMPOUND_STRING(
|
|
"The user pounces on the foe,\n"
|
|
"lowering its Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_TRAILBLAZE] =
|
|
{
|
|
.name = COMPOUND_STRING("Trailblaze"),
|
|
.description = COMPOUND_STRING(
|
|
"The user attacks suddenly,\n"
|
|
"raising its Speed."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SPD_PLUS_1,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_CHILLING_WATER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("ChillingWatr", "Chilling Water"),
|
|
.description = COMPOUND_STRING(
|
|
"A shower with ice-cold water\n"
|
|
"lowers the target's Attack."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ATK_MINUS_1,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_HYPER_DRILL] =
|
|
{
|
|
.name = COMPOUND_STRING("Hyper Drill"),
|
|
.description = COMPOUND_STRING(
|
|
"A spinning pointed part\n"
|
|
"bypasses a foe's Protect."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_TWIN_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Twin Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"Mystical eye-beams that hit\n"
|
|
"the target twice in a row."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 40,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.strikeCount = 2,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_RAGE_FIST] =
|
|
{
|
|
.name = COMPOUND_STRING("Rage Fist"),
|
|
.description = COMPOUND_STRING(
|
|
"The more the user has been\n"
|
|
"hit, the stronger the move."),
|
|
.effect = EFFECT_RAGE_FIST,
|
|
.power = 50,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.punchingMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_ARMOR_CANNON] =
|
|
{
|
|
.name = COMPOUND_STRING("Armor Cannon"),
|
|
.description = COMPOUND_STRING(
|
|
"A strong attack but lowers\n"
|
|
"the defensive stats."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 120,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_DEF_SPDEF_DOWN,
|
|
.self = TRUE,
|
|
}),
|
|
},
|
|
|
|
[MOVE_BITTER_BLADE] =
|
|
{
|
|
.name = COMPOUND_STRING("Bitter Blade"),
|
|
.description = COMPOUND_STRING(
|
|
"An attack that absorbs\n"
|
|
"half the damage inflicted."),
|
|
.effect = EFFECT_ABSORB,
|
|
.power = 90,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
.healingMove = TRUE,
|
|
},
|
|
|
|
[MOVE_DOUBLE_SHOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("Double Shock"),
|
|
.description = COMPOUND_STRING(
|
|
"Discharges all electricity,\n"
|
|
"losing the Electric type."),
|
|
.effect = EFFECT_FAIL_IF_NOT_ARG_TYPE,
|
|
.power = 120,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.argument = TYPE_ELECTRIC,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_REMOVE_ARG_TYPE,
|
|
.self = TRUE,
|
|
}),
|
|
},
|
|
|
|
[MOVE_GIGATON_HAMMER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("GigatonHammr", "Gigaton Hammer"),
|
|
.description = COMPOUND_STRING(
|
|
"Swings a huge hammer. Can't\n"
|
|
"be used twice in a row."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 160,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.cantUseTwice = TRUE,
|
|
},
|
|
|
|
[MOVE_COMEUPPANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("Comeuppance"),
|
|
.description = COMPOUND_STRING(
|
|
"Retaliates strongly against\n"
|
|
"who last hurt the user."),
|
|
.effect = EFFECT_METAL_BURST,
|
|
.power = 1,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_DEPENDS,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_AQUA_CUTTER] =
|
|
{
|
|
.name = COMPOUND_STRING("Aqua Cutter"),
|
|
.description = COMPOUND_STRING(
|
|
"Pressurized water cut with a\n"
|
|
"high critical-hit ratio."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 70,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.criticalHitStage = 1,
|
|
.pp = 20,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.slicingMove = TRUE,
|
|
},
|
|
|
|
[MOVE_BLAZING_TORQUE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BlazngTorque", "Blazing Torque"),
|
|
.description = COMPOUND_STRING("---"),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.sketchBanned = (B_SKETCH_BANS >= GEN_9),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_WICKED_TORQUE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("WickedTorque", "Wicked Torque"),
|
|
.description = COMPOUND_STRING("---"),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.sketchBanned = (B_SKETCH_BANS >= GEN_9),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SLEEP,
|
|
.chance = 10,
|
|
}),
|
|
},
|
|
|
|
[MOVE_NOXIOUS_TORQUE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("NoxiusTorque", "Noxious Torque"),
|
|
.description = COMPOUND_STRING("---"),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.sketchBanned = (B_SKETCH_BANS >= GEN_9),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_POISON,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_COMBAT_TORQUE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("CombatTorque", "Combat Torque"),
|
|
.description = COMPOUND_STRING("---"),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.sketchBanned = (B_SKETCH_BANS >= GEN_9),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_MAGICAL_TORQUE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MagiclTorque", "Magical Torque"),
|
|
.description = COMPOUND_STRING("---"),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.mirrorMoveBanned = TRUE,
|
|
.meFirstBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.sleepTalkBanned = TRUE,
|
|
.instructBanned = TRUE,
|
|
.encoreBanned = TRUE,
|
|
.assistBanned = TRUE,
|
|
.sketchBanned = (B_SKETCH_BANS >= GEN_9),
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.chance = 30,
|
|
}),
|
|
},
|
|
|
|
[MOVE_PSYBLADE] =
|
|
{
|
|
.name = COMPOUND_STRING("Psyblade"),
|
|
.description = COMPOUND_STRING(
|
|
"This move's power increases\n"
|
|
"when on Electric Terrain."),
|
|
.effect = EFFECT_PSYBLADE,
|
|
.power = 80,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.slicingMove = TRUE,
|
|
},
|
|
|
|
[MOVE_HYDRO_STEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Hydro Steam"),
|
|
.description = COMPOUND_STRING(
|
|
"This move's power increases\n"
|
|
"under harsh sunlight."),
|
|
.effect = EFFECT_HYDRO_STEAM,
|
|
.power = 80,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.thawsUser = TRUE,
|
|
},
|
|
|
|
[MOVE_BLOOD_MOON] =
|
|
{
|
|
.name = COMPOUND_STRING("Blood Moon"),
|
|
.description = COMPOUND_STRING(
|
|
"Unleashes the blood moon.\n"
|
|
"Can't be used twice in a row."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 140,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.cantUseTwice = TRUE,
|
|
},
|
|
|
|
[MOVE_MATCHA_GOTCHA] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MatchaGotcha", "Matcha Gotcha"),
|
|
.description = COMPOUND_STRING(
|
|
"Absorbs half the damage\n"
|
|
"inflicted. May cause a burn."),
|
|
.effect = EFFECT_ABSORB,
|
|
.power = 80,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 90,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.thawsUser = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.healingMove = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_BURN,
|
|
.chance = 20,
|
|
}),
|
|
},
|
|
|
|
[MOVE_SYRUP_BOMB] =
|
|
{
|
|
.name = COMPOUND_STRING("Syrup Bomb"),
|
|
.description = COMPOUND_STRING(
|
|
"Lowers the foe's speed\n"
|
|
"each turn for 3 turns."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 60,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 85,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ballisticMove = TRUE,
|
|
.metronomeBanned = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_SYRUP_BOMB,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_IVY_CUDGEL] =
|
|
{
|
|
.name = COMPOUND_STRING("Ivy Cudgel"),
|
|
.description = COMPOUND_STRING(
|
|
"Type changes with held mask.\n"
|
|
"High critical-hit ratio."),
|
|
.effect = EFFECT_IVY_CUDGEL,
|
|
.power = 100,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.criticalHitStage = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.metronomeBanned = TRUE,
|
|
},
|
|
|
|
[MOVE_ELECTRO_SHOT] =
|
|
{
|
|
.name = COMPOUND_STRING("Electro Shot"),
|
|
.description = COMPOUND_STRING(
|
|
"Absorbs electricity in one turn,\n"
|
|
"then attacks next turn."),
|
|
.effect = EFFECT_TWO_TURNS_ATTACK,
|
|
.power = 130,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.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,
|
|
.self = TRUE,
|
|
.onChargeTurnOnly = TRUE,
|
|
}, SHEER_FORCE_HACK),
|
|
},
|
|
|
|
[MOVE_TERA_STARSTORM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("TeraStarstrm", "Tera Starstorm"),
|
|
.description = COMPOUND_STRING(
|
|
"Damages all opponents if user is\n"
|
|
"Stellar form Terapagos."),
|
|
.effect = EFFECT_PLACEHOLDER, //EFFECT_TERA_STARSTORM
|
|
.power = 120,
|
|
.type = TYPE_NORMAL, // Stellar type if used by Terapagos-Stellar
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED, // MOVE_TARGET_BOTH if used by Terapagos-Stellar
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.assistBanned = TRUE,
|
|
.copycatBanned = TRUE,
|
|
.mimicBanned = TRUE,
|
|
.sketchBanned = (B_SKETCH_BANS >= GEN_9),
|
|
},
|
|
|
|
[MOVE_FICKLE_BEAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Fickle Beam"),
|
|
.description = COMPOUND_STRING(
|
|
"Shoots a beam of light. Sometimes\n"
|
|
"twice as strong."),
|
|
.effect = EFFECT_FICKLE_BEAM,
|
|
.power = 80,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
},
|
|
|
|
[MOVE_BURNING_BULWARK] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("BurnngBulwrk", "Burning Bulwark"),
|
|
.description = COMPOUND_STRING(
|
|
"Evades attack, and burns\n"
|
|
"the foe if struck."),
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.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,
|
|
},
|
|
|
|
[MOVE_THUNDERCLAP] =
|
|
{
|
|
.name = COMPOUND_STRING("Thunderclap"),
|
|
.description = sSuckerPunchDescription,
|
|
.effect = EFFECT_SUCKER_PUNCH,
|
|
.power = 70,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 1,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
},
|
|
|
|
[MOVE_MIGHTY_CLEAVE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MightyCleave", "Mighty Cleave"),
|
|
.description = sFeintDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 95,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.ignoresProtect = TRUE,
|
|
.slicingMove = TRUE,
|
|
},
|
|
|
|
[MOVE_TACHYON_CUTTER] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("TachyonCuttr", "Tachyon Cutter"),
|
|
.description = COMPOUND_STRING(
|
|
"Launches particle blades at\n"
|
|
"the target. Strikes twice."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 50,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.strikeCount = 2,
|
|
.slicingMove = TRUE,
|
|
},
|
|
|
|
[MOVE_HARD_PRESS] =
|
|
{
|
|
.name = COMPOUND_STRING("Hard Press"),
|
|
.description = sWringOutDescription,
|
|
.effect = EFFECT_VARY_POWER_BASED_ON_HP,
|
|
.power = 1,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = 100,
|
|
.makesContact = TRUE,
|
|
},
|
|
|
|
[MOVE_DRAGON_CHEER] =
|
|
{
|
|
.name = COMPOUND_STRING("Dragon Cheer"),
|
|
.description = COMPOUND_STRING(
|
|
"Increases allies' critical hit\n"
|
|
"ratio, especially if Dragons."),
|
|
.effect = EFFECT_DRAGON_CHEER,
|
|
.power = 0,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 0,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_ALLY,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
.ignoresSubstitute = TRUE,
|
|
},
|
|
|
|
[MOVE_ALLURING_VOICE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("AllurngVoice", "Alluring Voice"),
|
|
.description = COMPOUND_STRING(
|
|
"Confuses the target if their\n"
|
|
"stats were boosted this turn."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 80,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.soundMove = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_CONFUSION,
|
|
.onlyIfTargetRaisedStats = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_TEMPER_FLARE] =
|
|
{
|
|
.name = COMPOUND_STRING("Temper Flare"),
|
|
.description = COMPOUND_STRING(
|
|
"A desperation attack. Power\n"
|
|
"doubles if last move failed."),
|
|
.effect = EFFECT_STOMPING_TANTRUM,
|
|
.power = 75,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
},
|
|
|
|
[MOVE_SUPERCELL_SLAM] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("SuprcellSlam", "Supercell Slam"),
|
|
.description = COMPOUND_STRING(
|
|
"An electrified slam. If it\n"
|
|
"misses, the user is hurt."),
|
|
.effect = EFFECT_RECOIL_IF_MISS,
|
|
.power = 100,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 95,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
},
|
|
|
|
[MOVE_PSYCHIC_NOISE] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("PsychicNoise", "Psychic Noise"),
|
|
.description = COMPOUND_STRING(
|
|
"Unpleasant sound waves that\n"
|
|
"damage and prevent healing."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 75,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 100,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.soundMove = TRUE,
|
|
.ignoresSubstitute = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PSYCHIC_NOISE,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[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."),
|
|
.power = 65,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 100,
|
|
.pp = 15,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 3,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.makesContact = TRUE,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_FLINCH,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
|
|
[MOVE_MALIGNANT_CHAIN] =
|
|
{
|
|
.name = HANDLE_EXPANDED_MOVE_NAME("MalignntChan", "Malignant Chain"),
|
|
.description = COMPOUND_STRING(
|
|
"A corrosive chain attack\n"
|
|
"that may badly poison."),
|
|
.effect = EFFECT_HIT,
|
|
.power = 100,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 100,
|
|
.pp = 5,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_TOXIC,
|
|
.chance = 50,
|
|
}),
|
|
},
|
|
|
|
// Z-Moves
|
|
[MOVE_BREAKNECK_BLITZ] =
|
|
{
|
|
.name = COMPOUND_STRING("Breakneck Blitz"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 0,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
},
|
|
[MOVE_CONTINENTAL_CRUSH] =
|
|
{
|
|
.name = COMPOUND_STRING("Continental Crush"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 1,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 1,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
},
|
|
[MOVE_CATASTROPIKA] =
|
|
{
|
|
.name = COMPOUND_STRING("Catastropika"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 210,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 195,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.criticalHitStage = 2,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
},
|
|
[MOVE_STOKED_SPARKSURFER] =
|
|
{
|
|
.name = COMPOUND_STRING("Stoked Sparksurfer"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 175,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_PARALYSIS,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
[MOVE_EXTREME_EVOBOOST] =
|
|
{
|
|
.name = COMPOUND_STRING("Extreme Evoboost"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_EXTREME_EVOBOOST,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 210,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 185,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.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] =
|
|
{
|
|
.name = COMPOUND_STRING("Sinister Arrow Raid"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 180,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 180,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 195,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 190,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 0,
|
|
.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] =
|
|
{
|
|
.name = COMPOUND_STRING("Let's Snuggle Forever"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 190,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 185,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 0,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_BOTH,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.soundMove = TRUE,
|
|
.ignoresSubstitute = B_UPDATED_MOVE_FLAGS >= GEN_6,
|
|
.additionalEffects = ADDITIONAL_EFFECTS({
|
|
.moveEffect = MOVE_EFFECT_ALL_STATS_UP,
|
|
.self = TRUE,
|
|
.chance = 100,
|
|
}),
|
|
},
|
|
[MOVE_GUARDIAN_OF_ALOLA] =
|
|
{
|
|
.name = COMPOUND_STRING("Guardian Of Alola"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_SUPER_FANG,
|
|
.power = 1,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.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,
|
|
.power = 200,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.ignoresTargetAbility = TRUE,
|
|
},
|
|
[MOVE_MENACING_MOONRAZE_MAELSTROM] =
|
|
{
|
|
.name = COMPOUND_STRING("Menacing Moonraze Maelstrom"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 200,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 0,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ignoresTargetAbility = TRUE,
|
|
},
|
|
[MOVE_LIGHT_THAT_BURNS_THE_SKY] =
|
|
{
|
|
.name = COMPOUND_STRING("Light That Burns The Sky"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 200,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_SPECIAL,
|
|
.ignoresTargetAbility = TRUE,
|
|
},
|
|
[MOVE_SOUL_STEALING_7_STAR_STRIKE] =
|
|
{
|
|
.name = COMPOUND_STRING("Soul Stealing 7 Star Strike"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_HIT,
|
|
.power = 195,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 0,
|
|
.pp = 1,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
},
|
|
|
|
[MOVE_MAX_GUARD] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Guard"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_PROTECT,
|
|
.power = 0,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_USER,
|
|
.priority = 4,
|
|
.category = DAMAGE_CATEGORY_STATUS,
|
|
},
|
|
|
|
[MOVE_MAX_FLARE] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Flare"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_SUN,
|
|
},
|
|
|
|
[MOVE_MAX_FLUTTERBY] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Flutterby"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_LOWER_SP_ATK,
|
|
},
|
|
|
|
[MOVE_MAX_LIGHTNING] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Lightning"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_ELECTRIC_TERRAIN,
|
|
},
|
|
|
|
[MOVE_MAX_STRIKE] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Strike"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_LOWER_SPEED,
|
|
},
|
|
|
|
[MOVE_MAX_KNUCKLE] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Knuckle"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_RAISE_TEAM_ATTACK,
|
|
},
|
|
|
|
[MOVE_MAX_PHANTASM] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Phantasm"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_LOWER_DEFENSE,
|
|
},
|
|
|
|
[MOVE_MAX_HAILSTORM] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Hailstorm"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_HAIL,
|
|
},
|
|
|
|
[MOVE_MAX_OOZE] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Ooze"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_RAISE_TEAM_SP_ATK,
|
|
},
|
|
|
|
[MOVE_MAX_GEYSER] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Geyser"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_RAIN,
|
|
},
|
|
|
|
[MOVE_MAX_AIRSTREAM] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Airstream"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_RAISE_TEAM_SPEED,
|
|
},
|
|
|
|
[MOVE_MAX_STARFALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Starfall"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_MISTY_TERRAIN,
|
|
},
|
|
|
|
[MOVE_MAX_WYRMWIND] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Wyrmwind"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_LOWER_ATTACK,
|
|
},
|
|
|
|
[MOVE_MAX_MINDSTORM] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Mindstorm"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_PSYCHIC_TERRAIN,
|
|
},
|
|
|
|
[MOVE_MAX_ROCKFALL] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Rockfall"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_SANDSTORM,
|
|
},
|
|
|
|
[MOVE_MAX_QUAKE] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Quake"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_RAISE_TEAM_SP_DEF,
|
|
.skyBattleBanned = B_EXTRAPOLATED_MOVE_FLAGS,
|
|
},
|
|
|
|
[MOVE_MAX_DARKNESS] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Darkness"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 1,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_LOWER_SP_DEF,
|
|
},
|
|
|
|
[MOVE_MAX_OVERGROWTH] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Overgrowth"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_GRASSY_TERRAIN,
|
|
},
|
|
|
|
[MOVE_MAX_STEELSPIKE] =
|
|
{
|
|
.name = COMPOUND_STRING("Max Steelspike"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_RAISE_TEAM_DEFENSE,
|
|
},
|
|
|
|
[MOVE_G_MAX_VINE_LASH] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Vine Lash"),
|
|
.description = sNullDescription, //ANIM TODO
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_VINE_LASH,
|
|
},
|
|
|
|
[MOVE_G_MAX_WILDFIRE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Wildfire"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_WILDFIRE,
|
|
},
|
|
|
|
[MOVE_G_MAX_CANNONADE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Canonade"),
|
|
.description = sNullDescription, //ANIM TODO
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_CANNONADE,
|
|
},
|
|
|
|
[MOVE_G_MAX_BEFUDDLE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Befuddle"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_BUG,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_EFFECT_SPORE_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_VOLT_CRASH] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Volt Crash"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_PARALYZE_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_GOLD_RUSH] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Gold Rush"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_CONFUSE_FOES_PAY_DAY,
|
|
},
|
|
|
|
[MOVE_G_MAX_CHI_STRIKE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Chi Strike"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_FIGHTING,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_CRIT_PLUS,
|
|
},
|
|
|
|
[MOVE_G_MAX_TERROR] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Terror"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_GHOST,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_MEAN_LOOK,
|
|
},
|
|
|
|
[MOVE_G_MAX_FOAM_BURST] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Foam Burst"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_LOWER_SPEED_2_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_RESONANCE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Resonance"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_ICE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_AURORA_VEIL,
|
|
},
|
|
|
|
[MOVE_G_MAX_CUDDLE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Cuddle"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_INFATUATE_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_REPLENISH] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Replenish"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_NORMAL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_RECYCLE_BERRIES,
|
|
},
|
|
|
|
[MOVE_G_MAX_MALODOR] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Malodor"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_POISON,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_POISON_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_MELTDOWN] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Meltdown"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_TORMENT_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_DRUM_SOLO] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Drum Solo"),
|
|
.description = sNullDescription, //ANIM TODO
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_FIXED_POWER, //EFFECT TODO
|
|
.ignoresTargetAbility = TRUE,
|
|
},
|
|
|
|
[MOVE_G_MAX_FIREBALL] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Fireball"),
|
|
.description = sNullDescription, //ANIM TODO
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_FIXED_POWER, //EFFECT TODO
|
|
.ignoresTargetAbility = TRUE,
|
|
},
|
|
|
|
[MOVE_G_MAX_HYDROSNIPE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Hydrosnipe"),
|
|
.description = sNullDescription, //ANIM TODO
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_FIXED_POWER, //EFFECT TODO
|
|
.ignoresTargetAbility = TRUE,
|
|
},
|
|
|
|
[MOVE_G_MAX_WIND_RAGE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Wind Rage"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_FLYING,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_DEFOG,
|
|
},
|
|
|
|
[MOVE_G_MAX_GRAVITAS] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Gravitas"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_PSYCHIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_GRAVITY,
|
|
},
|
|
|
|
[MOVE_G_MAX_STONESURGE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Stonesurge"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_STEALTH_ROCK,
|
|
},
|
|
|
|
[MOVE_G_MAX_VOLCALITH] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Volcalith"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_ROCK,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_VOLCALITH,
|
|
},
|
|
|
|
[MOVE_G_MAX_TARTNESS] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Tartness"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_LOWER_EVASIVENESS_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_SWEETNESS] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Sweetness"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_GRASS,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_AROMATHERAPY,
|
|
},
|
|
|
|
[MOVE_G_MAX_SANDBLAST] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Sandblast"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_GROUND,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_SANDBLAST_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_STUN_SHOCK] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Stun Shock"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_ELECTRIC,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_POISON_PARALYZE_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_CENTIFERNO] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Centiferno"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_FIRE,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_FIRE_SPIN_FOES,
|
|
},
|
|
|
|
[MOVE_G_MAX_SMITE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Smite"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_CONFUSE_FOES,
|
|
},
|
|
|
|
|
|
[MOVE_G_MAX_SNOOZE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Snooze"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_YAWN_FOE,
|
|
},
|
|
|
|
[MOVE_G_MAX_FINALE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Finale"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_FAIRY,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_HEAL_TEAM,
|
|
},
|
|
|
|
[MOVE_G_MAX_STEELSURGE] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Steelsurge"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_STEEL,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_STEELSURGE,
|
|
},
|
|
|
|
[MOVE_G_MAX_DEPLETION] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Depletion"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_DRAGON,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_SPITE,
|
|
},
|
|
|
|
[MOVE_G_MAX_ONE_BLOW] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max One Blow"),
|
|
.description = sNullDescription,
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_DARK,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_BYPASS_PROTECT, //EFFECT TODO
|
|
},
|
|
|
|
[MOVE_G_MAX_RAPID_FLOW] =
|
|
{
|
|
.name = COMPOUND_STRING("G-Max Rapid Flow"),
|
|
.description = sNullDescription, //ANIM TODO
|
|
.effect = EFFECT_MAX_MOVE,
|
|
.power = 10,
|
|
.type = TYPE_WATER,
|
|
.accuracy = 0,
|
|
.pp = 10,
|
|
.target = MOVE_TARGET_SELECTED,
|
|
.priority = 0,
|
|
.category = DAMAGE_CATEGORY_PHYSICAL,
|
|
.argument = MAX_EFFECT_BYPASS_PROTECT, //EFFECT TODO
|
|
},
|
|
|
|
};
|