Add scrolling ability text
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"textures": [
|
"textures": [
|
||||||
{
|
{
|
||||||
"image": "658-battle-bond.png",
|
"image": "658-ash.png",
|
||||||
"format": "RGBA8888",
|
"format": "RGBA8888",
|
||||||
"size": {
|
"size": {
|
||||||
"w": 79,
|
"w": 79,
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"textures": [
|
"textures": [
|
||||||
{
|
{
|
||||||
"image": "658-battle-bond.png",
|
"image": "658-ash.png",
|
||||||
"format": "RGBA8888",
|
"format": "RGBA8888",
|
||||||
"size": {
|
"size": {
|
||||||
"w": 73,
|
"w": 73,
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"textures": [
|
"textures": [
|
||||||
{
|
{
|
||||||
"image": "658-battle-bond.png",
|
"image": "658-ash.png",
|
||||||
"format": "RGBA8888",
|
"format": "RGBA8888",
|
||||||
"size": {
|
"size": {
|
||||||
"w": 73,
|
"w": 73,
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 546 B After Width: | Height: | Size: 546 B |
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"textures": [
|
"textures": [
|
||||||
{
|
{
|
||||||
"image": "658-battle-bond.png",
|
"image": "658-ash.png",
|
||||||
"format": "RGBA8888",
|
"format": "RGBA8888",
|
||||||
"size": {
|
"size": {
|
||||||
"w": 79,
|
"w": 79,
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
@ -1511,241 +1511,241 @@ export const allAbilities = [ new Ability(Abilities.NONE, "-", "", 3) ];
|
|||||||
|
|
||||||
export function initAbilities() {
|
export function initAbilities() {
|
||||||
allAbilities.push(
|
allAbilities.push(
|
||||||
new Ability(Abilities.STENCH, "Stench (N)", "By releasing stench when attacking, this Pokémon\nmay cause the target to flinch.", 3),
|
new Ability(Abilities.STENCH, "Stench (N)", "By releasing stench when attacking, this Pokémon may cause the target to flinch.", 3),
|
||||||
new Ability(Abilities.DRIZZLE, "Drizzle", "The Pokémon makes it rain when it enters a battle.", 3)
|
new Ability(Abilities.DRIZZLE, "Drizzle", "The Pokémon makes it rain when it enters a battle.", 3)
|
||||||
.attr(PostSummonWeatherChangeAbAttr, WeatherType.RAIN),
|
.attr(PostSummonWeatherChangeAbAttr, WeatherType.RAIN),
|
||||||
new Ability(Abilities.SPEED_BOOST, "Speed Boost", "Its Speed stat is boosted every turn.", 3)
|
new Ability(Abilities.SPEED_BOOST, "Speed Boost", "Its Speed stat is boosted every turn.", 3)
|
||||||
.attr(PostTurnSpeedBoostAbAttr),
|
.attr(PostTurnSpeedBoostAbAttr),
|
||||||
new Ability(Abilities.BATTLE_ARMOR, "Battle Armor", "Hard armor protects the Pokémon from critical hits.", 3)
|
new Ability(Abilities.BATTLE_ARMOR, "Battle Armor", "Hard armor protects the Pokémon from critical hits.", 3)
|
||||||
.attr(BlockCritAbAttr),
|
.attr(BlockCritAbAttr),
|
||||||
new Ability(Abilities.STURDY, "Sturdy (N)", "It cannot be knocked out with one hit. One-hit KO\nmoves cannot knock it out, either.", 3),
|
new Ability(Abilities.STURDY, "Sturdy (N)", "It cannot be knocked out with one hit. One-hit KO moves cannot knock it out, either.", 3),
|
||||||
new Ability(Abilities.DAMP, "Damp (N)", "Prevents the use of explosive moves, such as\nSelf-Destruct, by dampening its surroundings.", 3),
|
new Ability(Abilities.DAMP, "Damp (N)", "Prevents the use of explosive moves, such as Self-Destruct, by dampening its surroundings.", 3),
|
||||||
new Ability(Abilities.LIMBER, "Limber", "Its limber body protects the Pokémon from paralysis.", 3)
|
new Ability(Abilities.LIMBER, "Limber", "Its limber body protects the Pokémon from paralysis.", 3)
|
||||||
.attr(StatusEffectImmunityAbAttr, StatusEffect.PARALYSIS),
|
.attr(StatusEffectImmunityAbAttr, StatusEffect.PARALYSIS),
|
||||||
new Ability(Abilities.SAND_VEIL, "Sand Veil", "Boosts the Pokémon's evasiveness in a sandstorm.", 3)
|
new Ability(Abilities.SAND_VEIL, "Sand Veil", "Boosts the Pokémon's evasiveness in a sandstorm.", 3)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.EVA, 1.2)
|
.attr(BattleStatMultiplierAbAttr, BattleStat.EVA, 1.2)
|
||||||
.attr(BlockWeatherDamageAttr, WeatherType.SANDSTORM)
|
.attr(BlockWeatherDamageAttr, WeatherType.SANDSTORM)
|
||||||
.condition(getWeatherCondition(WeatherType.SANDSTORM)),
|
.condition(getWeatherCondition(WeatherType.SANDSTORM)),
|
||||||
new Ability(Abilities.STATIC, "Static", "The Pokémon is charged with static electricity, so\ncontact with it may cause paralysis.", 3)
|
new Ability(Abilities.STATIC, "Static", "The Pokémon is charged with static electricity, so contact with it may cause paralysis.", 3)
|
||||||
.attr(PostDefendContactApplyStatusEffectAbAttr, StatusEffect.PARALYSIS),
|
.attr(PostDefendContactApplyStatusEffectAbAttr, StatusEffect.PARALYSIS),
|
||||||
new Ability(Abilities.VOLT_ABSORB, "Volt Absorb", "Restores HP if hit by an Electric-type move instead\nof taking damage.", 3)
|
new Ability(Abilities.VOLT_ABSORB, "Volt Absorb", "Restores HP if hit by an Electric-type move instead of taking damage.", 3)
|
||||||
.attr(TypeImmunityHealAbAttr, Type.ELECTRIC),
|
.attr(TypeImmunityHealAbAttr, Type.ELECTRIC),
|
||||||
new Ability(Abilities.WATER_ABSORB, "Water Absorb", "Restores HP if hit by a Water-type move instead of\ntaking damage.", 3)
|
new Ability(Abilities.WATER_ABSORB, "Water Absorb", "Restores HP if hit by a Water-type move instead of taking damage.", 3)
|
||||||
.attr(TypeImmunityHealAbAttr, Type.WATER),
|
.attr(TypeImmunityHealAbAttr, Type.WATER),
|
||||||
new Ability(Abilities.OBLIVIOUS, "Oblivious", "The Pokémon is oblivious, and that keeps it from\nbeing infatuated or falling for taunts.", 3)
|
new Ability(Abilities.OBLIVIOUS, "Oblivious", "The Pokémon is oblivious, and that keeps it from being infatuated or falling for taunts.", 3)
|
||||||
.attr(BattlerTagImmunityAbAttr, BattlerTagType.INFATUATED),
|
.attr(BattlerTagImmunityAbAttr, BattlerTagType.INFATUATED),
|
||||||
new Ability(Abilities.CLOUD_NINE, "Cloud Nine", "Eliminates the effects of weather.", 3)
|
new Ability(Abilities.CLOUD_NINE, "Cloud Nine", "Eliminates the effects of weather.", 3)
|
||||||
.attr(SuppressWeatherEffectAbAttr),
|
.attr(SuppressWeatherEffectAbAttr),
|
||||||
new Ability(Abilities.COMPOUND_EYES, "Compound Eyes", "The Pokémon's compound eyes boost its accuracy.", 3)
|
new Ability(Abilities.COMPOUND_EYES, "Compound Eyes", "The Pokémon's compound eyes boost its accuracy.", 3)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.ACC, 1.3),
|
.attr(BattleStatMultiplierAbAttr, BattleStat.ACC, 1.3),
|
||||||
new Ability(Abilities.INSOMNIA, "Insomnia", "The Pokémon is suffering from insomnia and cannot\nfall asleep.", 3)
|
new Ability(Abilities.INSOMNIA, "Insomnia", "The Pokémon is suffering from insomnia and cannot fall asleep.", 3)
|
||||||
.attr(StatusEffectImmunityAbAttr, StatusEffect.SLEEP)
|
.attr(StatusEffectImmunityAbAttr, StatusEffect.SLEEP)
|
||||||
.attr(BattlerTagImmunityAbAttr, BattlerTagType.DROWSY),
|
.attr(BattlerTagImmunityAbAttr, BattlerTagType.DROWSY),
|
||||||
new Ability(Abilities.COLOR_CHANGE, "Color Change", "The Pokémon's type becomes the type of the move\nused on it.", 3)
|
new Ability(Abilities.COLOR_CHANGE, "Color Change", "The Pokémon's type becomes the type of the move used on it.", 3)
|
||||||
.attr(PostDefendTypeChangeAbAttr),
|
.attr(PostDefendTypeChangeAbAttr),
|
||||||
new Ability(Abilities.IMMUNITY, "Immunity", "The immune system of the Pokémon prevents it from\ngetting poisoned.", 3)
|
new Ability(Abilities.IMMUNITY, "Immunity", "The immune system of the Pokémon prevents it from getting poisoned.", 3)
|
||||||
.attr(StatusEffectImmunityAbAttr, StatusEffect.POISON),
|
.attr(StatusEffectImmunityAbAttr, StatusEffect.POISON),
|
||||||
new Ability(Abilities.FLASH_FIRE, "Flash Fire", "Powers up the Pokémon's Fire-type moves if it's hit\nby one.", 3)
|
new Ability(Abilities.FLASH_FIRE, "Flash Fire", "Powers up the Pokémon's Fire-type moves if it's hit by one.", 3)
|
||||||
.attr(TypeImmunityAddBattlerTagAbAttr, Type.FIRE, BattlerTagType.FIRE_BOOST, 1, (pokemon: Pokemon) => !pokemon.status || pokemon.status.effect !== StatusEffect.FREEZE),
|
.attr(TypeImmunityAddBattlerTagAbAttr, Type.FIRE, BattlerTagType.FIRE_BOOST, 1, (pokemon: Pokemon) => !pokemon.status || pokemon.status.effect !== StatusEffect.FREEZE),
|
||||||
new Ability(Abilities.SHIELD_DUST, "Shield Dust (N)", "This Pokémon's dust blocks the additional effects of\nattacks taken.", 3),
|
new Ability(Abilities.SHIELD_DUST, "Shield Dust (N)", "This Pokémon's dust blocks the additional effects of attacks taken.", 3),
|
||||||
new Ability(Abilities.OWN_TEMPO, "Own Tempo", "This Pokémon has its own tempo, and that prevents\nit from becoming confused.", 3)
|
new Ability(Abilities.OWN_TEMPO, "Own Tempo", "This Pokémon has its own tempo, and that prevents it from becoming confused.", 3)
|
||||||
.attr(BattlerTagImmunityAbAttr, BattlerTagType.CONFUSED),
|
.attr(BattlerTagImmunityAbAttr, BattlerTagType.CONFUSED),
|
||||||
new Ability(Abilities.SUCTION_CUPS, "Suction Cups (N)", "This Pokémon uses suction cups to stay in one spot\nto negate all moves and items that force\nswitching out.", 3),
|
new Ability(Abilities.SUCTION_CUPS, "Suction Cups (N)", "This Pokémon uses suction cups to stay in one spot to negate all moves and items that force switching out.", 3),
|
||||||
new Ability(Abilities.INTIMIDATE, "Intimidate", "The Pokémon intimidates opposing Pokémon upon\nentering battle, lowering their Attack stat.", 3)
|
new Ability(Abilities.INTIMIDATE, "Intimidate", "The Pokémon intimidates opposing Pokémon upon entering battle, lowering their Attack stat.", 3)
|
||||||
.attr(PostSummonStatChangeAbAttr, BattleStat.ATK, -1),
|
.attr(PostSummonStatChangeAbAttr, BattleStat.ATK, -1),
|
||||||
new Ability(Abilities.SHADOW_TAG, "Shadow Tag", "This Pokémon steps on the opposing Pokémon's\nshadow to prevent it from escaping.", 3)
|
new Ability(Abilities.SHADOW_TAG, "Shadow Tag", "This Pokémon steps on the opposing Pokémon's shadow to prevent it from escaping.", 3)
|
||||||
.attr(ArenaTrapAbAttr),
|
.attr(ArenaTrapAbAttr),
|
||||||
new Ability(Abilities.ROUGH_SKIN, "Rough Skin (N)", "This Pokémon inflicts damage with its rough skin\nto the attacker on contact.", 3),
|
new Ability(Abilities.ROUGH_SKIN, "Rough Skin (N)", "This Pokémon inflicts damage with its rough skin to the attacker on contact.", 3),
|
||||||
new Ability(Abilities.WONDER_GUARD, "Wonder Guard", "Its mysterious power only lets supereffective moves\nhit the Pokémon.", 3)
|
new Ability(Abilities.WONDER_GUARD, "Wonder Guard", "Its mysterious power only lets supereffective moves hit the Pokémon.", 3)
|
||||||
.attr(NonSuperEffectiveImmunityAbAttr),
|
.attr(NonSuperEffectiveImmunityAbAttr),
|
||||||
new Ability(Abilities.LEVITATE, "Levitate", "By floating in the air, the Pokémon receives full\nimmunity to all Ground-type moves.", 3)
|
new Ability(Abilities.LEVITATE, "Levitate", "By floating in the air, the Pokémon receives full immunity to all Ground-type moves.", 3)
|
||||||
.attr(TypeImmunityAbAttr, Type.GROUND, (pokemon: Pokemon) => !pokemon.getTag(BattlerTagType.IGNORE_FLYING) && !pokemon.scene.arena.getTag(ArenaTagType.GRAVITY)),
|
.attr(TypeImmunityAbAttr, Type.GROUND, (pokemon: Pokemon) => !pokemon.getTag(BattlerTagType.IGNORE_FLYING) && !pokemon.scene.arena.getTag(ArenaTagType.GRAVITY)),
|
||||||
new Ability(Abilities.EFFECT_SPORE, "Effect Spore", "Contact with the Pokémon may inflict poison, sleep,\nor paralysis on its attacker.", 3)
|
new Ability(Abilities.EFFECT_SPORE, "Effect Spore", "Contact with the Pokémon may inflict poison, sleep, or paralysis on its attacker.", 3)
|
||||||
.attr(PostDefendContactApplyStatusEffectAbAttr, 10, StatusEffect.POISON, StatusEffect.PARALYSIS, StatusEffect.SLEEP),
|
.attr(PostDefendContactApplyStatusEffectAbAttr, 10, StatusEffect.POISON, StatusEffect.PARALYSIS, StatusEffect.SLEEP),
|
||||||
new Ability(Abilities.SYNCHRONIZE, "Synchronize (N)", "The attacker will receive the same status condition if\nit inflicts a burn, poison, or paralysis to the Pokémon.", 3),
|
new Ability(Abilities.SYNCHRONIZE, "Synchronize (N)", "The attacker will receive the same status condition if it inflicts a burn, poison, or paralysis to the Pokémon.", 3),
|
||||||
new Ability(Abilities.CLEAR_BODY, "Clear Body", "Prevents other Pokémon's moves or Abilities from\nlowering the Pokémon's stats.", 3)
|
new Ability(Abilities.CLEAR_BODY, "Clear Body", "Prevents other Pokémon's moves or Abilities from lowering the Pokémon's stats.", 3)
|
||||||
.attr(ProtectStatAbAttr),
|
.attr(ProtectStatAbAttr),
|
||||||
new Ability(Abilities.NATURAL_CURE, "Natural Cure (N)", "All status conditions heal when the Pokémon\nswitches out.", 3),
|
new Ability(Abilities.NATURAL_CURE, "Natural Cure (N)", "All status conditions heal when the Pokémon switches out.", 3),
|
||||||
new Ability(Abilities.LIGHTNING_ROD, "Lightning Rod", "The Pokémon draws in all Electric-type moves.\nInstead of being hit by Electric-type moves,\nit boosts its Sp. Atk.", 3)
|
new Ability(Abilities.LIGHTNING_ROD, "Lightning Rod", "The Pokémon draws in all Electric-type moves. Instead of being hit by Electric-type moves, it boosts its Sp. Atk.", 3)
|
||||||
.attr(TypeImmunityStatChangeAbAttr, Type.ELECTRIC, BattleStat.SPATK, 1),
|
.attr(TypeImmunityStatChangeAbAttr, Type.ELECTRIC, BattleStat.SPATK, 1),
|
||||||
new Ability(Abilities.SERENE_GRACE, "Serene Grace (N)", "Boosts the likelihood of additional effects occurring\nwhen attacking.", 3),
|
new Ability(Abilities.SERENE_GRACE, "Serene Grace (N)", "Boosts the likelihood of additional effects occurring when attacking.", 3),
|
||||||
new Ability(Abilities.SWIFT_SWIM, "Swift Swim", "Boosts the Pokémon's Speed stat in rain.", 3)
|
new Ability(Abilities.SWIFT_SWIM, "Swift Swim", "Boosts the Pokémon's Speed stat in rain.", 3)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
|
.attr(BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
|
||||||
.condition(getWeatherCondition(WeatherType.RAIN, WeatherType.HEAVY_RAIN)),
|
.condition(getWeatherCondition(WeatherType.RAIN, WeatherType.HEAVY_RAIN)),
|
||||||
new Ability(Abilities.CHLOROPHYLL, "Chlorophyll", "Boosts the Pokémon's Speed stat in harsh sunlight.", 3)
|
new Ability(Abilities.CHLOROPHYLL, "Chlorophyll", "Boosts the Pokémon's Speed stat in harsh sunlight.", 3)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
|
.attr(BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
|
||||||
.condition(getWeatherCondition(WeatherType.SUNNY, WeatherType.HARSH_SUN)),
|
.condition(getWeatherCondition(WeatherType.SUNNY, WeatherType.HARSH_SUN)),
|
||||||
new Ability(Abilities.ILLUMINATE, "Illuminate", "Raises the likelihood of meeting wild Pokémon by\nilluminating the surroundings.", 3)
|
new Ability(Abilities.ILLUMINATE, "Illuminate", "Raises the likelihood of meeting wild Pokémon by illuminating the surroundings.", 3)
|
||||||
.attr(DoubleBattleChanceAbAttr),
|
.attr(DoubleBattleChanceAbAttr),
|
||||||
new Ability(Abilities.TRACE, "Trace (N)", "When it enters a battle, the Pokémon copies an\nopposing Pokémon's Ability.", 3),
|
new Ability(Abilities.TRACE, "Trace (N)", "When it enters a battle, the Pokémon copies an opposing Pokémon's Ability.", 3),
|
||||||
new Ability(Abilities.HUGE_POWER, "Huge Power", "Doubles the Pokémon's Attack stat.", 3)
|
new Ability(Abilities.HUGE_POWER, "Huge Power", "Doubles the Pokémon's Attack stat.", 3)
|
||||||
.attr(PostSummonStatChangeAbAttr, BattleStat.ATK, 2, true),
|
.attr(PostSummonStatChangeAbAttr, BattleStat.ATK, 2, true),
|
||||||
new Ability(Abilities.POISON_POINT, "Poison Point", "Contact with the Pokémon may poison the attacker.", 3)
|
new Ability(Abilities.POISON_POINT, "Poison Point", "Contact with the Pokémon may poison the attacker.", 3)
|
||||||
.attr(PostDefendContactApplyStatusEffectAbAttr, StatusEffect.POISON),
|
.attr(PostDefendContactApplyStatusEffectAbAttr, StatusEffect.POISON),
|
||||||
new Ability(Abilities.INNER_FOCUS, "Inner Focus", "The Pokémon's intensely focused, and that protects\nthe Pokémon from flinching.", 3)
|
new Ability(Abilities.INNER_FOCUS, "Inner Focus", "The Pokémon's intensely focused, and that protects the Pokémon from flinching.", 3)
|
||||||
.attr(BattlerTagImmunityAbAttr, BattlerTagType.FLINCHED),
|
.attr(BattlerTagImmunityAbAttr, BattlerTagType.FLINCHED),
|
||||||
new Ability(Abilities.MAGMA_ARMOR, "Magma Armor", "The Pokémon is covered with hot magma, which\nprevents the Pokémon from becoming frozen.", 3)
|
new Ability(Abilities.MAGMA_ARMOR, "Magma Armor", "The Pokémon is covered with hot magma, which prevents the Pokémon from becoming frozen.", 3)
|
||||||
.attr(StatusEffectImmunityAbAttr, StatusEffect.FREEZE),
|
.attr(StatusEffectImmunityAbAttr, StatusEffect.FREEZE),
|
||||||
new Ability(Abilities.WATER_VEIL, "Water Veil", "The Pokémon is covered with a water veil, which\nprevents the Pokémon from getting a burn.", 3)
|
new Ability(Abilities.WATER_VEIL, "Water Veil", "The Pokémon is covered with a water veil, which prevents the Pokémon from getting a burn.", 3)
|
||||||
.attr(StatusEffectImmunityAbAttr, StatusEffect.BURN),
|
.attr(StatusEffectImmunityAbAttr, StatusEffect.BURN),
|
||||||
new Ability(Abilities.MAGNET_PULL, "Magnet Pull", "Prevents Steel-type Pokémon from escaping using\nits magnetic force.", 3)
|
new Ability(Abilities.MAGNET_PULL, "Magnet Pull", "Prevents Steel-type Pokémon from escaping using its magnetic force.", 3)
|
||||||
/*.attr(ArenaTrapAbAttr)
|
/*.attr(ArenaTrapAbAttr)
|
||||||
.condition((pokemon: Pokemon) => pokemon.getOpponent()?.isOfType(Type.STEEL))*/,
|
.condition((pokemon: Pokemon) => pokemon.getOpponent()?.isOfType(Type.STEEL))*/,
|
||||||
new Ability(Abilities.SOUNDPROOF, "Soundproof (N)", "Soundproofing gives the Pokémon full\nimmunity to all sound-based moves.", 3),
|
new Ability(Abilities.SOUNDPROOF, "Soundproof (N)", "Soundproofing gives the Pokémon full immunity to all sound-based moves.", 3),
|
||||||
new Ability(Abilities.RAIN_DISH, "Rain Dish", "The Pokémon gradually regains HP in rain.", 3)
|
new Ability(Abilities.RAIN_DISH, "Rain Dish", "The Pokémon gradually regains HP in rain.", 3)
|
||||||
.attr(PostWeatherLapseHealAbAttr, 1, WeatherType.RAIN, WeatherType.HEAVY_RAIN),
|
.attr(PostWeatherLapseHealAbAttr, 1, WeatherType.RAIN, WeatherType.HEAVY_RAIN),
|
||||||
new Ability(Abilities.SAND_STREAM, "Sand Stream", "The Pokémon summons a sandstorm when it enters\na battle.", 3)
|
new Ability(Abilities.SAND_STREAM, "Sand Stream", "The Pokémon summons a sandstorm when it enters a battle.", 3)
|
||||||
.attr(PostSummonWeatherChangeAbAttr, WeatherType.SANDSTORM),
|
.attr(PostSummonWeatherChangeAbAttr, WeatherType.SANDSTORM),
|
||||||
new Ability(Abilities.PRESSURE, "Pressure", "By putting pressure on the opposing Pokémon, it\nraises their PP usage.", 3)
|
new Ability(Abilities.PRESSURE, "Pressure", "By putting pressure on the opposing Pokémon, it raises their PP usage.", 3)
|
||||||
.attr(PostSummonMessageAbAttr, (pokemon: Pokemon) => getPokemonMessage(pokemon, 'is\nexerting its Pressure!')),
|
.attr(PostSummonMessageAbAttr, (pokemon: Pokemon) => getPokemonMessage(pokemon, 'is exerting its Pressure!')),
|
||||||
new Ability(Abilities.THICK_FAT, "Thick Fat", "The Pokémon is protected by a layer of thick fat,\nwhich halves the damage taken from Fire- and\nIce-type moves.", 3)
|
new Ability(Abilities.THICK_FAT, "Thick Fat", "The Pokémon is protected by a layer of thick fat, which halves the damage taken from Fire- and Ice-type moves.", 3)
|
||||||
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.FIRE, 0.5)
|
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.FIRE, 0.5)
|
||||||
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.ICE, 0.5),
|
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.ICE, 0.5),
|
||||||
new Ability(Abilities.EARLY_BIRD, "Early Bird (N)", "The Pokémon awakens from sleep twice as fast\nas other Pokémon.", 3),
|
new Ability(Abilities.EARLY_BIRD, "Early Bird (N)", "The Pokémon awakens from sleep twice as fast as other Pokémon.", 3),
|
||||||
new Ability(Abilities.FLAME_BODY, "Flame Body", "Contact with the Pokémon may burn the attacker.", 3)
|
new Ability(Abilities.FLAME_BODY, "Flame Body", "Contact with the Pokémon may burn the attacker.", 3)
|
||||||
.attr(PostDefendContactApplyStatusEffectAbAttr, 30, StatusEffect.BURN),
|
.attr(PostDefendContactApplyStatusEffectAbAttr, 30, StatusEffect.BURN),
|
||||||
new Ability(Abilities.RUN_AWAY, "Run Away (N)", "Enables a sure getaway from wild Pokémon.", 3),
|
new Ability(Abilities.RUN_AWAY, "Run Away (N)", "Enables a sure getaway from wild Pokémon.", 3),
|
||||||
new Ability(Abilities.KEEN_EYE, "Keen Eye", "Keen eyes prevent other Pokémon from lowering this\nPokémon's accuracy.", 3)
|
new Ability(Abilities.KEEN_EYE, "Keen Eye", "Keen eyes prevent other Pokémon from lowering this Pokémon's accuracy.", 3)
|
||||||
.attr(ProtectStatAbAttr, BattleStat.ACC),
|
.attr(ProtectStatAbAttr, BattleStat.ACC),
|
||||||
new Ability(Abilities.HYPER_CUTTER, "Hyper Cutter", "The Pokémon's proud of its powerful pincers. They\nprevent other Pokémon from lowering its Attack stat.", 3)
|
new Ability(Abilities.HYPER_CUTTER, "Hyper Cutter", "The Pokémon's proud of its powerful pincers. They prevent other Pokémon from lowering its Attack stat.", 3)
|
||||||
.attr(ProtectStatAbAttr, BattleStat.ATK),
|
.attr(ProtectStatAbAttr, BattleStat.ATK),
|
||||||
new Ability(Abilities.PICKUP, "Pickup (N)", "The Pokémon may pick up the item an opposing\nPokémon used during a battle. It may pick up items\noutside of battle, too.", 3),
|
new Ability(Abilities.PICKUP, "Pickup (N)", "The Pokémon may pick up the item an opposing Pokémon used during a battle. It may pick up items outside of battle, too.", 3),
|
||||||
new Ability(Abilities.TRUANT, "Truant", "The Pokémon can't use a move if it had used a move\non the previous turn.", 3)
|
new Ability(Abilities.TRUANT, "Truant", "The Pokémon can't use a move if it had used a move on the previous turn.", 3)
|
||||||
.attr(PostSummonAddBattlerTagAbAttr, BattlerTagType.TRUANT, 1),
|
.attr(PostSummonAddBattlerTagAbAttr, BattlerTagType.TRUANT, 1),
|
||||||
new Ability(Abilities.HUSTLE, "Hustle", "Boosts the Attack stat, but lowers accuracy.", 3)
|
new Ability(Abilities.HUSTLE, "Hustle", "Boosts the Attack stat, but lowers accuracy.", 3)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.ATK, 1.5)
|
.attr(BattleStatMultiplierAbAttr, BattleStat.ATK, 1.5)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.ACC, 0.8),
|
.attr(BattleStatMultiplierAbAttr, BattleStat.ACC, 0.8),
|
||||||
new Ability(Abilities.CUTE_CHARM, "Cute Charm", "Contact with the Pokémon may cause infatuation.", 3)
|
new Ability(Abilities.CUTE_CHARM, "Cute Charm", "Contact with the Pokémon may cause infatuation.", 3)
|
||||||
.attr(PostDefendContactApplyTagChanceAbAttr, 30, BattlerTagType.INFATUATED),
|
.attr(PostDefendContactApplyTagChanceAbAttr, 30, BattlerTagType.INFATUATED),
|
||||||
new Ability(Abilities.PLUS, "Plus (N)", "Boosts the Sp. Atk stat of the Pokémon if an ally\nwith the Plus or Minus Ability is also in battle.", 3),
|
new Ability(Abilities.PLUS, "Plus (N)", "Boosts the Sp. Atk stat of the Pokémon if an ally with the Plus or Minus Ability is also in battle.", 3),
|
||||||
new Ability(Abilities.MINUS, "Minus (N)", "Boosts the Sp. Atk stat of the Pokémon if an ally\nwith the Plus or Minus Ability is also in battle.", 3),
|
new Ability(Abilities.MINUS, "Minus (N)", "Boosts the Sp. Atk stat of the Pokémon if an ally with the Plus or Minus Ability is also in battle.", 3),
|
||||||
new Ability(Abilities.FORECAST, "Forecast (N)", "The Pokémon transforms with the weather to change\nits type to Water, Fire, or Ice.", 3),
|
new Ability(Abilities.FORECAST, "Forecast (N)", "The Pokémon transforms with the weather to change its type to Water, Fire, or Ice.", 3),
|
||||||
new Ability(Abilities.STICKY_HOLD, "Sticky Hold", "Items held by the Pokémon are stuck fast and\ncannot be removed by other Pokémon.", 3)
|
new Ability(Abilities.STICKY_HOLD, "Sticky Hold", "Items held by the Pokémon are stuck fast and cannot be removed by other Pokémon.", 3)
|
||||||
.attr(BlockItemTheftAbAttr),
|
.attr(BlockItemTheftAbAttr),
|
||||||
new Ability(Abilities.SHED_SKIN, "Shed Skin (N)", "The Pokémon may heal its own status conditions\nby shedding its skin.", 3),
|
new Ability(Abilities.SHED_SKIN, "Shed Skin (N)", "The Pokémon may heal its own status conditions by shedding its skin.", 3),
|
||||||
new Ability(Abilities.GUTS, "Guts (N)", "It's so gutsy that having a status condition boosts\nthe Pokémon's Attack stat.", 3),
|
new Ability(Abilities.GUTS, "Guts (N)", "It's so gutsy that having a status condition boosts the Pokémon's Attack stat.", 3),
|
||||||
new Ability(Abilities.MARVEL_SCALE, "Marvel Scale (N)", "The Pokémon's marvelous scales boost the Defense\nstat if it has a status condition.", 3),
|
new Ability(Abilities.MARVEL_SCALE, "Marvel Scale (N)", "The Pokémon's marvelous scales boost the Defense stat if it has a status condition.", 3),
|
||||||
new Ability(Abilities.LIQUID_OOZE, "Liquid Ooze (N)", "The oozed liquid has a strong stench, which damages\nattackers using any draining move.", 3),
|
new Ability(Abilities.LIQUID_OOZE, "Liquid Ooze (N)", "The oozed liquid has a strong stench, which damages attackers using any draining move.", 3),
|
||||||
new Ability(Abilities.OVERGROW, "Overgrow", "Powers up Grass-type moves when the Pokémon's\nHP is low.", 3)
|
new Ability(Abilities.OVERGROW, "Overgrow", "Powers up Grass-type moves when the Pokémon's HP is low.", 3)
|
||||||
.attr(LowHpMoveTypePowerBoostAbAttr, Type.GRASS),
|
.attr(LowHpMoveTypePowerBoostAbAttr, Type.GRASS),
|
||||||
new Ability(Abilities.BLAZE, "Blaze", "Powers up Fire-type moves when the Pokémon's HP\nis low.", 3)
|
new Ability(Abilities.BLAZE, "Blaze", "Powers up Fire-type moves when the Pokémon's HP is low.", 3)
|
||||||
.attr(LowHpMoveTypePowerBoostAbAttr, Type.FIRE),
|
.attr(LowHpMoveTypePowerBoostAbAttr, Type.FIRE),
|
||||||
new Ability(Abilities.TORRENT, "Torrent", "Powers up Water-type moves when the Pokémon's\nHP is low.", 3)
|
new Ability(Abilities.TORRENT, "Torrent", "Powers up Water-type moves when the Pokémon's HP is low.", 3)
|
||||||
.attr(LowHpMoveTypePowerBoostAbAttr, Type.WATER),
|
.attr(LowHpMoveTypePowerBoostAbAttr, Type.WATER),
|
||||||
new Ability(Abilities.SWARM, "Swarm", "Powers up Bug-type moves when the Pokémon's HP\nis low.", 3)
|
new Ability(Abilities.SWARM, "Swarm", "Powers up Bug-type moves when the Pokémon's HP is low.", 3)
|
||||||
.attr(LowHpMoveTypePowerBoostAbAttr, Type.BUG),
|
.attr(LowHpMoveTypePowerBoostAbAttr, Type.BUG),
|
||||||
new Ability(Abilities.ROCK_HEAD, "Rock Head", "Protects the Pokémon from recoil damage.", 3)
|
new Ability(Abilities.ROCK_HEAD, "Rock Head", "Protects the Pokémon from recoil damage.", 3)
|
||||||
.attr(BlockRecoilDamageAttr),
|
.attr(BlockRecoilDamageAttr),
|
||||||
new Ability(Abilities.DROUGHT, "Drought", "Turns the sunlight harsh when the Pokémon enters\na battle.", 3)
|
new Ability(Abilities.DROUGHT, "Drought", "Turns the sunlight harsh when the Pokémon enters a battle.", 3)
|
||||||
.attr(PostSummonWeatherChangeAbAttr, WeatherType.SUNNY),
|
.attr(PostSummonWeatherChangeAbAttr, WeatherType.SUNNY),
|
||||||
new Ability(Abilities.ARENA_TRAP, "Arena Trap", "Prevents opposing Pokémon from fleeing.", 3)
|
new Ability(Abilities.ARENA_TRAP, "Arena Trap", "Prevents opposing Pokémon from fleeing.", 3)
|
||||||
.attr(ArenaTrapAbAttr),
|
.attr(ArenaTrapAbAttr),
|
||||||
new Ability(Abilities.VITAL_SPIRIT, "Vital Spirit", "The Pokémon is full of vitality, and that prevents\nit from falling asleep.", 3)
|
new Ability(Abilities.VITAL_SPIRIT, "Vital Spirit", "The Pokémon is full of vitality, and that prevents it from falling asleep.", 3)
|
||||||
.attr(StatusEffectImmunityAbAttr, StatusEffect.SLEEP)
|
.attr(StatusEffectImmunityAbAttr, StatusEffect.SLEEP)
|
||||||
.attr(BattlerTagImmunityAbAttr, BattlerTagType.DROWSY),
|
.attr(BattlerTagImmunityAbAttr, BattlerTagType.DROWSY),
|
||||||
new Ability(Abilities.WHITE_SMOKE, "White Smoke", "The Pokémon is protected by its white smoke, which\nprevents other Pokémon from lowering its stats.", 3)
|
new Ability(Abilities.WHITE_SMOKE, "White Smoke", "The Pokémon is protected by its white smoke, which prevents other Pokémon from lowering its stats.", 3)
|
||||||
.attr(ProtectStatAbAttr),
|
.attr(ProtectStatAbAttr),
|
||||||
new Ability(Abilities.PURE_POWER, "Pure Power", "Using its pure power, the Pokémon doubles its\nAttack stat.", 3)
|
new Ability(Abilities.PURE_POWER, "Pure Power", "Using its pure power, the Pokémon doubles its Attack stat.", 3)
|
||||||
.attr(PostSummonStatChangeAbAttr, BattleStat.ATK, 2, true),
|
.attr(PostSummonStatChangeAbAttr, BattleStat.ATK, 2, true),
|
||||||
new Ability(Abilities.SHELL_ARMOR, "Shell Armor", "A hard shell protects the Pokémon from critical hits.", 3)
|
new Ability(Abilities.SHELL_ARMOR, "Shell Armor", "A hard shell protects the Pokémon from critical hits.", 3)
|
||||||
.attr(BlockCritAbAttr),
|
.attr(BlockCritAbAttr),
|
||||||
new Ability(Abilities.AIR_LOCK, "Air Lock", "Eliminates the effects of weather.", 3)
|
new Ability(Abilities.AIR_LOCK, "Air Lock", "Eliminates the effects of weather.", 3)
|
||||||
.attr(SuppressWeatherEffectAbAttr, true),
|
.attr(SuppressWeatherEffectAbAttr, true),
|
||||||
new Ability(Abilities.TANGLED_FEET, "Tangled Feet (N)", "Raises evasiveness if the Pokémon is confused.", 4),
|
new Ability(Abilities.TANGLED_FEET, "Tangled Feet (N)", "Raises evasiveness if the Pokémon is confused.", 4),
|
||||||
new Ability(Abilities.MOTOR_DRIVE, "Motor Drive", "Boosts its Speed stat if hit by an Electric-type move\ninstead of taking damage.", 4)
|
new Ability(Abilities.MOTOR_DRIVE, "Motor Drive", "Boosts its Speed stat if hit by an Electric-type move instead of taking damage.", 4)
|
||||||
.attr(TypeImmunityStatChangeAbAttr, Type.ELECTRIC, BattleStat.SPD, 1),
|
.attr(TypeImmunityStatChangeAbAttr, Type.ELECTRIC, BattleStat.SPD, 1),
|
||||||
new Ability(Abilities.RIVALRY, "Rivalry (N)", "Becomes competitive and deals more damage to\nPokémon of the same gender, but deals less to\nPokémon of the opposite gender.", 4),
|
new Ability(Abilities.RIVALRY, "Rivalry (N)", "Becomes competitive and deals more damage to Pokémon of the same gender, but deals less to Pokémon of the opposite gender.", 4),
|
||||||
new Ability(Abilities.STEADFAST, "Steadfast (N)", "The Pokémon's determination boosts the Speed\nstat each time the Pokémon flinches.", 4),
|
new Ability(Abilities.STEADFAST, "Steadfast (N)", "The Pokémon's determination boosts the Speed stat each time the Pokémon flinches.", 4),
|
||||||
new Ability(Abilities.SNOW_CLOAK, "Snow Cloak", "Boosts evasiveness in a hailstorm.", 4)
|
new Ability(Abilities.SNOW_CLOAK, "Snow Cloak", "Boosts evasiveness in a hailstorm.", 4)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.EVA, 1.2)
|
.attr(BattleStatMultiplierAbAttr, BattleStat.EVA, 1.2)
|
||||||
.attr(BlockWeatherDamageAttr, WeatherType.HAIL),
|
.attr(BlockWeatherDamageAttr, WeatherType.HAIL),
|
||||||
new Ability(Abilities.GLUTTONY, "Gluttony (N)", "Makes the Pokémon eat a held Berry when its HP\ndrops to half or less, which is sooner than usual.", 4),
|
new Ability(Abilities.GLUTTONY, "Gluttony (N)", "Makes the Pokémon eat a held Berry when its HP drops to half or less, which is sooner than usual.", 4),
|
||||||
new Ability(Abilities.ANGER_POINT, "Anger Point", "The Pokémon is angered when it takes a critical hit,\nand that maxes its Attack stat.", 4)
|
new Ability(Abilities.ANGER_POINT, "Anger Point", "The Pokémon is angered when it takes a critical hit, and that maxes its Attack stat.", 4)
|
||||||
.attr(PostDefendCritStatChangeAbAttr, BattleStat.ATK, 6),
|
.attr(PostDefendCritStatChangeAbAttr, BattleStat.ATK, 6),
|
||||||
new Ability(Abilities.UNBURDEN, "Unburden (N)", "Boosts the Speed stat if the Pokémon's held item is\nused or lost.", 4),
|
new Ability(Abilities.UNBURDEN, "Unburden (N)", "Boosts the Speed stat if the Pokémon's held item is used or lost.", 4),
|
||||||
new Ability(Abilities.HEATPROOF, "Heatproof", "The heatproof body of the Pokémon halves the\ndamage from Fire-type moves that hit it.", 4)
|
new Ability(Abilities.HEATPROOF, "Heatproof", "The heatproof body of the Pokémon halves the damage from Fire-type moves that hit it.", 4)
|
||||||
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.FIRE, 0.5),
|
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.FIRE, 0.5),
|
||||||
new Ability(Abilities.SIMPLE, "Simple", "The stat changes the Pokémon receives are doubled.", 4)
|
new Ability(Abilities.SIMPLE, "Simple", "The stat changes the Pokémon receives are doubled.", 4)
|
||||||
.attr(StatChangeMultiplierAbAttr, 2),
|
.attr(StatChangeMultiplierAbAttr, 2),
|
||||||
new Ability(Abilities.DRY_SKIN, "Dry Skin", "Restores HP in rain or when hit by Water-type\nmoves. Reduces HP in harsh sunlight, and increases\nthe damage received from Fire-type moves.", 4)
|
new Ability(Abilities.DRY_SKIN, "Dry Skin", "Restores HP in rain or when hit by Water-type moves. Reduces HP in harsh sunlight, and increases the damage received from Fire-type moves.", 4)
|
||||||
.attr(PostWeatherLapseDamageAbAttr, 2, WeatherType.SUNNY, WeatherType.HARSH_SUN)
|
.attr(PostWeatherLapseDamageAbAttr, 2, WeatherType.SUNNY, WeatherType.HARSH_SUN)
|
||||||
.attr(PostWeatherLapseHealAbAttr, 2, WeatherType.RAIN, WeatherType.HEAVY_RAIN)
|
.attr(PostWeatherLapseHealAbAttr, 2, WeatherType.RAIN, WeatherType.HEAVY_RAIN)
|
||||||
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.FIRE, 1.25)
|
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.FIRE, 1.25)
|
||||||
.attr(TypeImmunityHealAbAttr, Type.WATER),
|
.attr(TypeImmunityHealAbAttr, Type.WATER),
|
||||||
new Ability(Abilities.DOWNLOAD, "Download (N)", "Compares an opposing Pokémon's Defense and\nSp. Def stats before raising its own Attack or\nSp. Atk stat—whichever will be more effective.", 4),
|
new Ability(Abilities.DOWNLOAD, "Download (N)", "Compares an opposing Pokémon's Defense and Sp. Def stats before raising its own Attack or Sp. Atk stat—whichever will be more effective.", 4),
|
||||||
new Ability(Abilities.IRON_FIST, "Iron Fist (N)", "Powers up punching moves.", 4),
|
new Ability(Abilities.IRON_FIST, "Iron Fist (N)", "Powers up punching moves.", 4),
|
||||||
new Ability(Abilities.POISON_HEAL, "Poison Heal (N)", "Restores HP if the Pokémon is poisoned instead of\nlosing HP.", 4),
|
new Ability(Abilities.POISON_HEAL, "Poison Heal (N)", "Restores HP if the Pokémon is poisoned instead of losing HP.", 4),
|
||||||
new Ability(Abilities.ADAPTABILITY, "Adaptability", "Powers up moves of the same type as the Pokémon.", 4)
|
new Ability(Abilities.ADAPTABILITY, "Adaptability", "Powers up moves of the same type as the Pokémon.", 4)
|
||||||
.attr(StabBoostAbAttr),
|
.attr(StabBoostAbAttr),
|
||||||
new Ability(Abilities.SKILL_LINK, "Skill Link (N)", "Maximizes the number of times multistrike\nmoves hit.", 4),
|
new Ability(Abilities.SKILL_LINK, "Skill Link (N)", "Maximizes the number of times multistrike moves hit.", 4),
|
||||||
new Ability(Abilities.HYDRATION, "Hydration (N)", "Heals status conditions if it's raining.", 4),
|
new Ability(Abilities.HYDRATION, "Hydration (N)", "Heals status conditions if it's raining.", 4),
|
||||||
new Ability(Abilities.SOLAR_POWER, "Solar Power", "Boosts the Sp. Atk stat in harsh sunlight, but HP\ndecreases every turn.", 4)
|
new Ability(Abilities.SOLAR_POWER, "Solar Power", "Boosts the Sp. Atk stat in harsh sunlight, but HP decreases every turn.", 4)
|
||||||
.attr(PostWeatherLapseDamageAbAttr, 2, WeatherType.SUNNY, WeatherType.HARSH_SUN)
|
.attr(PostWeatherLapseDamageAbAttr, 2, WeatherType.SUNNY, WeatherType.HARSH_SUN)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.SPATK, 1.5)
|
.attr(BattleStatMultiplierAbAttr, BattleStat.SPATK, 1.5)
|
||||||
.condition(getWeatherCondition(WeatherType.SUNNY, WeatherType.HARSH_SUN)),
|
.condition(getWeatherCondition(WeatherType.SUNNY, WeatherType.HARSH_SUN)),
|
||||||
new Ability(Abilities.QUICK_FEET, "Quick Feet (N)", "Boosts the Speed stat if the Pokémon has a\nstatus condition.", 4),
|
new Ability(Abilities.QUICK_FEET, "Quick Feet (N)", "Boosts the Speed stat if the Pokémon has a status condition.", 4),
|
||||||
new Ability(Abilities.NORMALIZE, "Normalize (N)", "All the Pokémon's moves become Normal type.\nThe power of those moves is boosted a little.", 4),
|
new Ability(Abilities.NORMALIZE, "Normalize (N)", "All the Pokémon's moves become Normal type. The power of those moves is boosted a little.", 4),
|
||||||
new Ability(Abilities.SNIPER, "Sniper (N)", "Powers up moves if they become critical hits\nwhen attacking.", 4),
|
new Ability(Abilities.SNIPER, "Sniper (N)", "Powers up moves if they become critical hits when attacking.", 4),
|
||||||
new Ability(Abilities.MAGIC_GUARD, "Magic Guard (N)", "The Pokémon only takes damage from attacks.", 4),
|
new Ability(Abilities.MAGIC_GUARD, "Magic Guard (N)", "The Pokémon only takes damage from attacks.", 4),
|
||||||
new Ability(Abilities.NO_GUARD, "No Guard (N)", "The Pokémon employs no-guard tactics to ensure\nincoming and outgoing attacks always land.", 4),
|
new Ability(Abilities.NO_GUARD, "No Guard (N)", "The Pokémon employs no-guard tactics to ensure incoming and outgoing attacks always land.", 4),
|
||||||
new Ability(Abilities.STALL, "Stall (N)", "The Pokémon moves after all other Pokémon do.", 4),
|
new Ability(Abilities.STALL, "Stall (N)", "The Pokémon moves after all other Pokémon do.", 4),
|
||||||
new Ability(Abilities.TECHNICIAN, "Technician (N)", "Powers up the Pokémon's weaker moves.", 4),
|
new Ability(Abilities.TECHNICIAN, "Technician (N)", "Powers up the Pokémon's weaker moves.", 4),
|
||||||
new Ability(Abilities.LEAF_GUARD, "Leaf Guard", "Prevents status conditions in harsh sunlight.", 4)
|
new Ability(Abilities.LEAF_GUARD, "Leaf Guard", "Prevents status conditions in harsh sunlight.", 4)
|
||||||
.attr(StatusEffectImmunityAbAttr)
|
.attr(StatusEffectImmunityAbAttr)
|
||||||
.condition(getWeatherCondition(WeatherType.SUNNY, WeatherType.HARSH_SUN)),
|
.condition(getWeatherCondition(WeatherType.SUNNY, WeatherType.HARSH_SUN)),
|
||||||
new Ability(Abilities.KLUTZ, "Klutz (N)", "The Pokémon can't use any held items.", 4),
|
new Ability(Abilities.KLUTZ, "Klutz (N)", "The Pokémon can't use any held items.", 4),
|
||||||
new Ability(Abilities.MOLD_BREAKER, "Mold Breaker (N)", "Moves can be used on the target regardless of\nits Abilities.", 4),
|
new Ability(Abilities.MOLD_BREAKER, "Mold Breaker (N)", "Moves can be used on the target regardless of its Abilities.", 4),
|
||||||
new Ability(Abilities.SUPER_LUCK, "Super Luck (N)", "The Pokémon is so lucky that the critical-hit ratios\nof its moves are boosted.", 4),
|
new Ability(Abilities.SUPER_LUCK, "Super Luck (N)", "The Pokémon is so lucky that the critical-hit ratios of its moves are boosted.", 4),
|
||||||
new Ability(Abilities.AFTERMATH, "Aftermath (N)", "Damages the attacker if it contacts the Pokémon\nwith a finishing hit.", 4),
|
new Ability(Abilities.AFTERMATH, "Aftermath (N)", "Damages the attacker if it contacts the Pokémon with a finishing hit.", 4),
|
||||||
new Ability(Abilities.ANTICIPATION, "Anticipation (N)", "The Pokémon can sense an opposing Pokémon's\ndangerous moves.", 4),
|
new Ability(Abilities.ANTICIPATION, "Anticipation (N)", "The Pokémon can sense an opposing Pokémon's dangerous moves.", 4),
|
||||||
new Ability(Abilities.FOREWARN, "Forewarn (N)", "When it enters a battle, the Pokémon can tell one of\nthe moves an opposing Pokémon has.", 4),
|
new Ability(Abilities.FOREWARN, "Forewarn (N)", "When it enters a battle, the Pokémon can tell one of the moves an opposing Pokémon has.", 4),
|
||||||
new Ability(Abilities.UNAWARE, "Unaware", "When attacking, the Pokémon ignores the target\nPokémon's stat changes.", 4)
|
new Ability(Abilities.UNAWARE, "Unaware", "When attacking, the Pokémon ignores the target Pokémon's stat changes.", 4)
|
||||||
.attr(IgnoreOpponentStatChangesAbAttr),
|
.attr(IgnoreOpponentStatChangesAbAttr),
|
||||||
new Ability(Abilities.TINTED_LENS, "Tinted Lens (N)", "The Pokémon can use \"not very effective\" moves\nto deal regular damage.", 4),
|
new Ability(Abilities.TINTED_LENS, "Tinted Lens (N)", "The Pokémon can use \"not very effective\" moves to deal regular damage.", 4),
|
||||||
new Ability(Abilities.FILTER, "Filter (N)", "Reduces the power of supereffective attacks taken.", 4),
|
new Ability(Abilities.FILTER, "Filter (N)", "Reduces the power of supereffective attacks taken.", 4),
|
||||||
new Ability(Abilities.SLOW_START, "Slow Start (N)", "For five turns, the Pokémon's Attack and Speed\nstats are halved.", 4),
|
new Ability(Abilities.SLOW_START, "Slow Start (N)", "For five turns, the Pokémon's Attack and Speed stats are halved.", 4),
|
||||||
new Ability(Abilities.SCRAPPY, "Scrappy (N)", "The Pokémon can hit Ghost-type Pokémon with\nNormal- and Fighting-type moves.", 4),
|
new Ability(Abilities.SCRAPPY, "Scrappy (N)", "The Pokémon can hit Ghost-type Pokémon with Normal- and Fighting-type moves.", 4),
|
||||||
new Ability(Abilities.STORM_DRAIN, "Storm Drain", "Draws in all Water-type moves. Instead of being hit\nby Water-type moves, it boosts its Sp. Atk.", 4)
|
new Ability(Abilities.STORM_DRAIN, "Storm Drain", "Draws in all Water-type moves. Instead of being hit by Water-type moves, it boosts its Sp. Atk.", 4)
|
||||||
.attr(TypeImmunityStatChangeAbAttr, Type.WATER, BattleStat.SPATK, 1),
|
.attr(TypeImmunityStatChangeAbAttr, Type.WATER, BattleStat.SPATK, 1),
|
||||||
new Ability(Abilities.ICE_BODY, "Ice Body", "The Pokémon gradually regains HP in a hailstorm.", 4)
|
new Ability(Abilities.ICE_BODY, "Ice Body", "The Pokémon gradually regains HP in a hailstorm.", 4)
|
||||||
.attr(PostWeatherLapseHealAbAttr, 1, WeatherType.HAIL),
|
.attr(PostWeatherLapseHealAbAttr, 1, WeatherType.HAIL),
|
||||||
new Ability(Abilities.SOLID_ROCK, "Solid Rock (N)", "Reduces the power of supereffective attacks taken.", 4),
|
new Ability(Abilities.SOLID_ROCK, "Solid Rock (N)", "Reduces the power of supereffective attacks taken.", 4),
|
||||||
new Ability(Abilities.SNOW_WARNING, "Snow Warning", "The Pokémon summons a hailstorm when it enters\na battle.", 4)
|
new Ability(Abilities.SNOW_WARNING, "Snow Warning", "The Pokémon summons a hailstorm when it enters a battle.", 4)
|
||||||
.attr(PostSummonWeatherChangeAbAttr, WeatherType.HAIL),
|
.attr(PostSummonWeatherChangeAbAttr, WeatherType.HAIL),
|
||||||
new Ability(Abilities.HONEY_GATHER, "Honey Gather (N)", "The Pokémon may gather Honey after a battle.", 4),
|
new Ability(Abilities.HONEY_GATHER, "Honey Gather (N)", "The Pokémon may gather Honey after a battle.", 4),
|
||||||
new Ability(Abilities.FRISK, "Frisk (N)", "When it enters a battle, the Pokémon can check an\nopposing Pokémon's held item.", 4),
|
new Ability(Abilities.FRISK, "Frisk (N)", "When it enters a battle, the Pokémon can check an opposing Pokémon's held item.", 4),
|
||||||
new Ability(Abilities.RECKLESS, "Reckless", "Powers up moves that have recoil damage.", 4)
|
new Ability(Abilities.RECKLESS, "Reckless", "Powers up moves that have recoil damage.", 4)
|
||||||
.attr(RecoilMovePowerBoostAbAttr),
|
.attr(RecoilMovePowerBoostAbAttr),
|
||||||
new Ability(Abilities.MULTITYPE, "Multitype (N)", "Changes the Pokémon's type to match the Plate or\nZ-Crystal it holds.", 4),
|
new Ability(Abilities.MULTITYPE, "Multitype (N)", "Changes the Pokémon's type to match the Plate or Z-Crystal it holds.", 4),
|
||||||
new Ability(Abilities.FLOWER_GIFT, "Flower Gift (N)", "Boosts the Attack and Sp. Def stats of itself\nand allies in harsh sunlight.", 4),
|
new Ability(Abilities.FLOWER_GIFT, "Flower Gift (N)", "Boosts the Attack and Sp. Def stats of itself and allies in harsh sunlight.", 4),
|
||||||
new Ability(Abilities.BAD_DREAMS, "Bad Dreams (N)", "Reduces the HP of sleeping opposing Pokémon.", 4),
|
new Ability(Abilities.BAD_DREAMS, "Bad Dreams (N)", "Reduces the HP of sleeping opposing Pokémon.", 4),
|
||||||
new Ability(Abilities.PICKPOCKET, "Pickpocket (N)", "Steals an item from an attacker that made\ndirect contact.", 5),
|
new Ability(Abilities.PICKPOCKET, "Pickpocket (N)", "Steals an item from an attacker that made direct contact.", 5),
|
||||||
new Ability(Abilities.SHEER_FORCE, "Sheer Force (N)", "Removes additional effects to increase the power\nof moves when attacking.", 5),
|
new Ability(Abilities.SHEER_FORCE, "Sheer Force (N)", "Removes additional effects to increase the power of moves when attacking.", 5),
|
||||||
new Ability(Abilities.CONTRARY, "Contrary", "Makes stat changes have an opposite effect.", 5)
|
new Ability(Abilities.CONTRARY, "Contrary", "Makes stat changes have an opposite effect.", 5)
|
||||||
.attr(StatChangeMultiplierAbAttr, -1),
|
.attr(StatChangeMultiplierAbAttr, -1),
|
||||||
new Ability(Abilities.UNNERVE, "Unnerve (N)", "Unnerves opposing Pokémon and makes them unable\nto eat Berries.", 5),
|
new Ability(Abilities.UNNERVE, "Unnerve (N)", "Unnerves opposing Pokémon and makes them unable to eat Berries.", 5),
|
||||||
new Ability(Abilities.DEFIANT, "Defiant (N)", "Boosts the Pokémon's Attack stat sharply when its\nstats are lowered.", 5),
|
new Ability(Abilities.DEFIANT, "Defiant (N)", "Boosts the Pokémon's Attack stat sharply when its stats are lowered.", 5),
|
||||||
new Ability(Abilities.DEFEATIST, "Defeatist (N)", "Halves the Pokémon's Attack and Sp. Atk stats\nwhen its HP becomes half or less.", 5),
|
new Ability(Abilities.DEFEATIST, "Defeatist (N)", "Halves the Pokémon's Attack and Sp. Atk stats when its HP becomes half or less.", 5),
|
||||||
new Ability(Abilities.CURSED_BODY, "Cursed Body (N)", "May disable a move used on the Pokémon.", 5),
|
new Ability(Abilities.CURSED_BODY, "Cursed Body (N)", "May disable a move used on the Pokémon.", 5),
|
||||||
new Ability(Abilities.HEALER, "Healer (N)", "Sometimes heals an ally's status condition.", 5),
|
new Ability(Abilities.HEALER, "Healer (N)", "Sometimes heals an ally's status condition.", 5),
|
||||||
new Ability(Abilities.FRIEND_GUARD, "Friend Guard (N)", "Reduces damage done to allies.", 5),
|
new Ability(Abilities.FRIEND_GUARD, "Friend Guard (N)", "Reduces damage done to allies.", 5),
|
||||||
new Ability(Abilities.WEAK_ARMOR, "Weak Armor (N)", "Physical attacks to the Pokémon lower its Defense\nstat but sharply raise its Speed stat.", 5),
|
new Ability(Abilities.WEAK_ARMOR, "Weak Armor (N)", "Physical attacks to the Pokémon lower its Defense stat but sharply raise its Speed stat.", 5),
|
||||||
new Ability(Abilities.HEAVY_METAL, "Heavy Metal", "Doubles the Pokémon's weight.", 5)
|
new Ability(Abilities.HEAVY_METAL, "Heavy Metal", "Doubles the Pokémon's weight.", 5)
|
||||||
.attr(WeightMultiplierAbAttr, 2),
|
.attr(WeightMultiplierAbAttr, 2),
|
||||||
new Ability(Abilities.LIGHT_METAL, "Light Metal", "Halves the Pokémon's weight.", 5)
|
new Ability(Abilities.LIGHT_METAL, "Light Metal", "Halves the Pokémon's weight.", 5)
|
||||||
.attr(WeightMultiplierAbAttr, 0.5),
|
.attr(WeightMultiplierAbAttr, 0.5),
|
||||||
new Ability(Abilities.MULTISCALE, "Multiscale (N)", "Reduces the amount of damage the Pokémon takes\nwhile its HP is full.", 5),
|
new Ability(Abilities.MULTISCALE, "Multiscale (N)", "Reduces the amount of damage the Pokémon takes while its HP is full.", 5),
|
||||||
new Ability(Abilities.TOXIC_BOOST, "Toxic Boost (N)", "Powers up physical attacks when the Pokémon\nis poisoned.", 5),
|
new Ability(Abilities.TOXIC_BOOST, "Toxic Boost (N)", "Powers up physical attacks when the Pokémon is poisoned.", 5),
|
||||||
new Ability(Abilities.FLARE_BOOST, "Flare Boost (N)", "Powers up special attacks when the Pokémon\nis burned.", 5),
|
new Ability(Abilities.FLARE_BOOST, "Flare Boost (N)", "Powers up special attacks when the Pokémon is burned.", 5),
|
||||||
new Ability(Abilities.HARVEST, "Harvest (N)", "May create another Berry after one is used.", 5),
|
new Ability(Abilities.HARVEST, "Harvest (N)", "May create another Berry after one is used.", 5),
|
||||||
new Ability(Abilities.TELEPATHY, "Telepathy (N)", "Anticipates an ally's attack and dodges it.", 5),
|
new Ability(Abilities.TELEPATHY, "Telepathy (N)", "Anticipates an ally's attack and dodges it.", 5),
|
||||||
new Ability(Abilities.MOODY, "Moody (N)", "Raises one stat sharply and lowers another\nevery turn.", 5),
|
new Ability(Abilities.MOODY, "Moody (N)", "Raises one stat sharply and lowers another every turn.", 5),
|
||||||
new Ability(Abilities.OVERCOAT, "Overcoat", "Protects the Pokémon from things like sand, hail,\nand powder.", 5)
|
new Ability(Abilities.OVERCOAT, "Overcoat", "Protects the Pokémon from things like sand, hail, and powder.", 5)
|
||||||
.attr(BlockWeatherDamageAttr),
|
.attr(BlockWeatherDamageAttr),
|
||||||
new Ability(Abilities.POISON_TOUCH, "Poison Touch", "May poison a target when the Pokémon\nmakes contact.", 5)
|
new Ability(Abilities.POISON_TOUCH, "Poison Touch", "May poison a target when the Pokémon makes contact.", 5)
|
||||||
.attr(PostDefendContactApplyStatusEffectAbAttr, 30, StatusEffect.POISON),
|
.attr(PostDefendContactApplyStatusEffectAbAttr, 30, StatusEffect.POISON),
|
||||||
new Ability(Abilities.REGENERATOR, "Regenerator (N)", "Restores a little HP when withdrawn from battle.", 5),
|
new Ability(Abilities.REGENERATOR, "Regenerator (N)", "Restores a little HP when withdrawn from battle.", 5),
|
||||||
new Ability(Abilities.BIG_PECKS, "Big Pecks", "Protects the Pokémon from\nDefense-lowering effects.", 5)
|
new Ability(Abilities.BIG_PECKS, "Big Pecks", "Protects the Pokémon from Defense-lowering effects.", 5)
|
||||||
.attr(ProtectStatAbAttr, BattleStat.DEF),
|
.attr(ProtectStatAbAttr, BattleStat.DEF),
|
||||||
new Ability(Abilities.SAND_RUSH, "Sand Rush", "Boosts the Pokémon's Speed stat in a sandstorm.", 5)
|
new Ability(Abilities.SAND_RUSH, "Sand Rush", "Boosts the Pokémon's Speed stat in a sandstorm.", 5)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
|
.attr(BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
|
||||||
@ -1753,170 +1753,170 @@ export function initAbilities() {
|
|||||||
.condition(getWeatherCondition(WeatherType.SANDSTORM)),
|
.condition(getWeatherCondition(WeatherType.SANDSTORM)),
|
||||||
new Ability(Abilities.WONDER_SKIN, "Wonder Skin (N)", "Makes status moves more likely to miss.", 5),
|
new Ability(Abilities.WONDER_SKIN, "Wonder Skin (N)", "Makes status moves more likely to miss.", 5),
|
||||||
new Ability(Abilities.ANALYTIC, "Analytic (N)", "Boosts move power when the Pokémon moves last.", 5),
|
new Ability(Abilities.ANALYTIC, "Analytic (N)", "Boosts move power when the Pokémon moves last.", 5),
|
||||||
new Ability(Abilities.ILLUSION, "Illusion (N)", "Comes out disguised as the Pokémon in the party's\nlast spot.", 5),
|
new Ability(Abilities.ILLUSION, "Illusion (N)", "Comes out disguised as the Pokémon in the party's last spot.", 5),
|
||||||
new Ability(Abilities.IMPOSTER, "Imposter", "The Pokémon transforms itself into the Pokémon\nit's facing.", 5)
|
new Ability(Abilities.IMPOSTER, "Imposter", "The Pokémon transforms itself into the Pokémon it's facing.", 5)
|
||||||
.attr(PostSummonTransformAbAttr),
|
.attr(PostSummonTransformAbAttr),
|
||||||
new Ability(Abilities.INFILTRATOR, "Infiltrator (N)", "Passes through the opposing Pokémon's barrier,\nsubstitute, and the like and strikes.", 5),
|
new Ability(Abilities.INFILTRATOR, "Infiltrator (N)", "Passes through the opposing Pokémon's barrier, substitute, and the like and strikes.", 5),
|
||||||
new Ability(Abilities.MUMMY, "Mummy (N)", "Contact with the Pokémon changes the attacker's\nAbility to Mummy.", 5),
|
new Ability(Abilities.MUMMY, "Mummy (N)", "Contact with the Pokémon changes the attacker's Ability to Mummy.", 5),
|
||||||
new Ability(Abilities.MOXIE, "Moxie (N)", "The Pokémon shows moxie, and that boosts the\nAttack stat after knocking out any Pokémon.", 5),
|
new Ability(Abilities.MOXIE, "Moxie (N)", "The Pokémon shows moxie, and that boosts the Attack stat after knocking out any Pokémon.", 5),
|
||||||
new Ability(Abilities.JUSTIFIED, "Justified (N)", "Being hit by a Dark-type move boosts the Attack\nstat of the Pokémon, for justice.", 5),
|
new Ability(Abilities.JUSTIFIED, "Justified (N)", "Being hit by a Dark-type move boosts the Attack stat of the Pokémon, for justice.", 5),
|
||||||
new Ability(Abilities.RATTLED, "Rattled (N)", "Dark-, Ghost-, and Bug-type moves scare the\nPokémon and boost its Speed stat.", 5),
|
new Ability(Abilities.RATTLED, "Rattled (N)", "Dark-, Ghost-, and Bug-type moves scare the Pokémon and boost its Speed stat.", 5),
|
||||||
new Ability(Abilities.MAGIC_BOUNCE, "Magic Bounce (N)", "Reflects status moves instead of getting hit\nby them.", 5),
|
new Ability(Abilities.MAGIC_BOUNCE, "Magic Bounce (N)", "Reflects status moves instead of getting hit by them.", 5),
|
||||||
new Ability(Abilities.SAP_SIPPER, "Sap Sipper", "Boosts the Attack stat if hit by a Grass-type move\ninstead of taking damage.", 5)
|
new Ability(Abilities.SAP_SIPPER, "Sap Sipper", "Boosts the Attack stat if hit by a Grass-type move instead of taking damage.", 5)
|
||||||
.attr(TypeImmunityStatChangeAbAttr, Type.GRASS, BattleStat.ATK, 1),
|
.attr(TypeImmunityStatChangeAbAttr, Type.GRASS, BattleStat.ATK, 1),
|
||||||
new Ability(Abilities.PRANKSTER, "Prankster (N)", "Gives priority to a status move.", 5),
|
new Ability(Abilities.PRANKSTER, "Prankster (N)", "Gives priority to a status move.", 5),
|
||||||
new Ability(Abilities.SAND_FORCE, "Sand Force (N)", "Boosts the power of Rock-, Ground-, and Steel-type\nmoves in a sandstorm.", 5),
|
new Ability(Abilities.SAND_FORCE, "Sand Force (N)", "Boosts the power of Rock-, Ground-, and Steel-type moves in a sandstorm.", 5),
|
||||||
new Ability(Abilities.IRON_BARBS, "Iron Barbs (N)", "Inflicts damage on the attacker upon contact with\niron barbs.", 5),
|
new Ability(Abilities.IRON_BARBS, "Iron Barbs (N)", "Inflicts damage on the attacker upon contact with iron barbs.", 5),
|
||||||
new Ability(Abilities.ZEN_MODE, "Zen Mode (N)", "Changes the Pokémon's shape when HP is half\nor less.", 5),
|
new Ability(Abilities.ZEN_MODE, "Zen Mode (N)", "Changes the Pokémon's shape when HP is half or less.", 5),
|
||||||
new Ability(Abilities.VICTORY_STAR, "Victory Star (N)", "Boosts the accuracy of its allies and itself.", 5),
|
new Ability(Abilities.VICTORY_STAR, "Victory Star (N)", "Boosts the accuracy of its allies and itself.", 5),
|
||||||
new Ability(Abilities.TURBOBLAZE, "Turboblaze (N)", "Moves can be used on the target regardless of\nits Abilities.", 5),
|
new Ability(Abilities.TURBOBLAZE, "Turboblaze (N)", "Moves can be used on the target regardless of its Abilities.", 5),
|
||||||
new Ability(Abilities.TERAVOLT, "Teravolt (N)", "Moves can be used on the target regardless of\nits Abilities.", 5),
|
new Ability(Abilities.TERAVOLT, "Teravolt (N)", "Moves can be used on the target regardless of its Abilities.", 5),
|
||||||
new Ability(Abilities.AROMA_VEIL, "Aroma Veil (N)", "Protects itself and its allies from attacks that limit\ntheir move choices.", 6),
|
new Ability(Abilities.AROMA_VEIL, "Aroma Veil (N)", "Protects itself and its allies from attacks that limit their move choices.", 6),
|
||||||
new Ability(Abilities.FLOWER_VEIL, "Flower Veil (N)", "Ally Grass-type Pokémon are protected from\nstatus conditions and the lowering of their stats.", 6),
|
new Ability(Abilities.FLOWER_VEIL, "Flower Veil (N)", "Ally Grass-type Pokémon are protected from status conditions and the lowering of their stats.", 6),
|
||||||
new Ability(Abilities.CHEEK_POUCH, "Cheek Pouch (N)", "Restores HP as well when the Pokémon eats a Berry.", 6),
|
new Ability(Abilities.CHEEK_POUCH, "Cheek Pouch (N)", "Restores HP as well when the Pokémon eats a Berry.", 6),
|
||||||
new Ability(Abilities.PROTEAN, "Protean (N)", "Changes the Pokémon's type to the type of the\nmove it's about to use.", 6),
|
new Ability(Abilities.PROTEAN, "Protean (N)", "Changes the Pokémon's type to the type of the move it's about to use.", 6),
|
||||||
new Ability(Abilities.FUR_COAT, "Fur Coat (N)", "Halves the damage from physical moves.", 6),
|
new Ability(Abilities.FUR_COAT, "Fur Coat (N)", "Halves the damage from physical moves.", 6),
|
||||||
new Ability(Abilities.MAGICIAN, "Magician (N)", "The Pokémon steals the held item of a Pokémon it\nhits with a move.", 6),
|
new Ability(Abilities.MAGICIAN, "Magician (N)", "The Pokémon steals the held item of a Pokémon it hits with a move.", 6),
|
||||||
new Ability(Abilities.BULLETPROOF, "Bulletproof (N)", "Protects the Pokémon from some ball and\nbomb moves.", 6),
|
new Ability(Abilities.BULLETPROOF, "Bulletproof (N)", "Protects the Pokémon from some ball and bomb moves.", 6),
|
||||||
new Ability(Abilities.COMPETITIVE, "Competitive (N)", "Boosts the Sp. Atk stat sharply when a stat\nis lowered.", 6),
|
new Ability(Abilities.COMPETITIVE, "Competitive (N)", "Boosts the Sp. Atk stat sharply when a stat is lowered.", 6),
|
||||||
new Ability(Abilities.STRONG_JAW, "Strong Jaw (N)", "The Pokémon's strong jaw boosts the power of its\nbiting moves.", 6),
|
new Ability(Abilities.STRONG_JAW, "Strong Jaw (N)", "The Pokémon's strong jaw boosts the power of its biting moves.", 6),
|
||||||
new Ability(Abilities.REFRIGERATE, "Refrigerate (N)", "Normal-type moves become Ice-type moves.\nThe power of those moves is boosted a little.", 6),
|
new Ability(Abilities.REFRIGERATE, "Refrigerate (N)", "Normal-type moves become Ice-type moves. The power of those moves is boosted a little.", 6),
|
||||||
new Ability(Abilities.SWEET_VEIL, "Sweet Veil (N)", "Prevents itself and ally Pokémon from falling asleep.", 6),
|
new Ability(Abilities.SWEET_VEIL, "Sweet Veil (N)", "Prevents itself and ally Pokémon from falling asleep.", 6),
|
||||||
new Ability(Abilities.STANCE_CHANGE, "Stance Change (N)", "The Pokémon changes its form to Blade Forme when\nit uses an attack move and changes to Shield Forme\nwhen it uses King's Shield.", 6),
|
new Ability(Abilities.STANCE_CHANGE, "Stance Change (N)", "The Pokémon changes its form to Blade Forme when it uses an attack move and changes to Shield Forme when it uses King's Shield.", 6),
|
||||||
new Ability(Abilities.GALE_WINGS, "Gale Wings (N)", "Gives priority to Flying-type moves when\nthe Pokémon's HP is full.", 6),
|
new Ability(Abilities.GALE_WINGS, "Gale Wings (N)", "Gives priority to Flying-type moves when the Pokémon's HP is full.", 6),
|
||||||
new Ability(Abilities.MEGA_LAUNCHER, "Mega Launcher (N)", "Powers up aura and pulse moves.", 6),
|
new Ability(Abilities.MEGA_LAUNCHER, "Mega Launcher (N)", "Powers up aura and pulse moves.", 6),
|
||||||
new Ability(Abilities.GRASS_PELT, "Grass Pelt (N)", "Boosts the Pokémon's Defense stat on\nGrassy Terrain.", 6),
|
new Ability(Abilities.GRASS_PELT, "Grass Pelt (N)", "Boosts the Pokémon's Defense stat on Grassy Terrain.", 6),
|
||||||
new Ability(Abilities.SYMBIOSIS, "Symbiosis (N)", "The Pokémon passes its item to an ally that has\nused up an item.", 6),
|
new Ability(Abilities.SYMBIOSIS, "Symbiosis (N)", "The Pokémon passes its item to an ally that has used up an item.", 6),
|
||||||
new Ability(Abilities.TOUGH_CLAWS, "Tough Claws (N)", "Powers up moves that make direct contact.", 6),
|
new Ability(Abilities.TOUGH_CLAWS, "Tough Claws (N)", "Powers up moves that make direct contact.", 6),
|
||||||
new Ability(Abilities.PIXILATE, "Pixilate (N)", "Normal-type moves become Fairy-type moves.\nThe power of those moves is boosted a little.", 6),
|
new Ability(Abilities.PIXILATE, "Pixilate (N)", "Normal-type moves become Fairy-type moves. The power of those moves is boosted a little.", 6),
|
||||||
new Ability(Abilities.GOOEY, "Gooey (N)", "Contact with the Pokémon lowers the attacker's\nSpeed stat.", 6),
|
new Ability(Abilities.GOOEY, "Gooey (N)", "Contact with the Pokémon lowers the attacker's Speed stat.", 6),
|
||||||
new Ability(Abilities.AERILATE, "Aerilate (N)", "Normal-type moves become Flying-type moves.\nThe power of those moves is boosted a little.", 6),
|
new Ability(Abilities.AERILATE, "Aerilate (N)", "Normal-type moves become Flying-type moves. The power of those moves is boosted a little.", 6),
|
||||||
new Ability(Abilities.PARENTAL_BOND, "Parental Bond (N)", "Parent and child each attacks.", 6),
|
new Ability(Abilities.PARENTAL_BOND, "Parental Bond (N)", "Parent and child each attacks.", 6),
|
||||||
new Ability(Abilities.DARK_AURA, "Dark Aura (N)", "Powers up each Pokémon's Dark-type moves.", 6),
|
new Ability(Abilities.DARK_AURA, "Dark Aura (N)", "Powers up each Pokémon's Dark-type moves.", 6),
|
||||||
new Ability(Abilities.FAIRY_AURA, "Fairy Aura (N)", "Powers up each Pokémon's Fairy-type moves.", 6),
|
new Ability(Abilities.FAIRY_AURA, "Fairy Aura (N)", "Powers up each Pokémon's Fairy-type moves.", 6),
|
||||||
new Ability(Abilities.AURA_BREAK, "Aura Break (N)", "The effects of \"Aura\" Abilities are reversed\nto lower the power of affected moves.", 6),
|
new Ability(Abilities.AURA_BREAK, "Aura Break (N)", "The effects of \"Aura\" Abilities are reversed to lower the power of affected moves.", 6),
|
||||||
new Ability(Abilities.PRIMORDIAL_SEA, "Primordial Sea", "The Pokémon changes the weather to nullify\nFire-type attacks.", 6)
|
new Ability(Abilities.PRIMORDIAL_SEA, "Primordial Sea", "The Pokémon changes the weather to nullify Fire-type attacks.", 6)
|
||||||
.attr(PostSummonWeatherChangeAbAttr, WeatherType.HEAVY_RAIN),
|
.attr(PostSummonWeatherChangeAbAttr, WeatherType.HEAVY_RAIN),
|
||||||
new Ability(Abilities.DESOLATE_LAND, "Desolate Land", "The Pokémon changes the weather to nullify\nWater-type attacks.", 6)
|
new Ability(Abilities.DESOLATE_LAND, "Desolate Land", "The Pokémon changes the weather to nullify Water-type attacks.", 6)
|
||||||
.attr(PostSummonWeatherChangeAbAttr, WeatherType.HARSH_SUN),
|
.attr(PostSummonWeatherChangeAbAttr, WeatherType.HARSH_SUN),
|
||||||
new Ability(Abilities.DELTA_STREAM, "Delta Stream", "The Pokémon changes the weather to eliminate all\nof the Flying type's weaknesses.", 6)
|
new Ability(Abilities.DELTA_STREAM, "Delta Stream", "The Pokémon changes the weather to eliminate all of the Flying type's weaknesses.", 6)
|
||||||
.attr(PostSummonWeatherChangeAbAttr, WeatherType.STRONG_WINDS),
|
.attr(PostSummonWeatherChangeAbAttr, WeatherType.STRONG_WINDS),
|
||||||
new Ability(Abilities.STAMINA, "Stamina (N)", "Boosts the Defense stat when hit by an attack.", 7),
|
new Ability(Abilities.STAMINA, "Stamina (N)", "Boosts the Defense stat when hit by an attack.", 7),
|
||||||
new Ability(Abilities.WIMP_OUT, "Wimp Out (N)", "The Pokémon cowardly switches out when its HP\nbecomes half or less.", 7),
|
new Ability(Abilities.WIMP_OUT, "Wimp Out (N)", "The Pokémon cowardly switches out when its HP becomes half or less.", 7),
|
||||||
new Ability(Abilities.EMERGENCY_EXIT, "Emergency Exit (N)", "The Pokémon, sensing danger, switches out when its\nHP becomes half or less.", 7),
|
new Ability(Abilities.EMERGENCY_EXIT, "Emergency Exit (N)", "The Pokémon, sensing danger, switches out when its HP becomes half or less.", 7),
|
||||||
new Ability(Abilities.WATER_COMPACTION, "Water Compaction (N)", "Boosts the Pokémon's Defense stat sharply when hit\nby a Water-type move.", 7),
|
new Ability(Abilities.WATER_COMPACTION, "Water Compaction (N)", "Boosts the Pokémon's Defense stat sharply when hit by a Water-type move.", 7),
|
||||||
new Ability(Abilities.MERCILESS, "Merciless (N)", "The Pokémon's attacks become critical hits if the\ntarget is poisoned.", 7),
|
new Ability(Abilities.MERCILESS, "Merciless (N)", "The Pokémon's attacks become critical hits if the target is poisoned.", 7),
|
||||||
new Ability(Abilities.SHIELDS_DOWN, "Shields Down (N)", "When its HP becomes half or less, the Pokémon's\nshell breaks and it becomes aggressive.", 7),
|
new Ability(Abilities.SHIELDS_DOWN, "Shields Down (N)", "When its HP becomes half or less, the Pokémon's shell breaks and it becomes aggressive.", 7),
|
||||||
new Ability(Abilities.STAKEOUT, "Stakeout (N)", "Doubles the damage dealt to the target's\nreplacement if the target switches out.", 7),
|
new Ability(Abilities.STAKEOUT, "Stakeout (N)", "Doubles the damage dealt to the target's replacement if the target switches out.", 7),
|
||||||
new Ability(Abilities.WATER_BUBBLE, "Water Bubble (N)", "Lowers the power of Fire-type moves done to the\nPokémon and prevents the Pokémon from getting\na burn.", 7),
|
new Ability(Abilities.WATER_BUBBLE, "Water Bubble (N)", "Lowers the power of Fire-type moves done to the Pokémon and prevents the Pokémon from getting a burn.", 7),
|
||||||
new Ability(Abilities.STEELWORKER, "Steelworker (N)", "Powers up Steel-type moves.", 7),
|
new Ability(Abilities.STEELWORKER, "Steelworker (N)", "Powers up Steel-type moves.", 7),
|
||||||
new Ability(Abilities.BERSERK, "Berserk (N)", "Boosts the Pokémon's Sp. Atk stat when it takes\na hit that causes its HP to become half or less.", 7),
|
new Ability(Abilities.BERSERK, "Berserk (N)", "Boosts the Pokémon's Sp. Atk stat when it takes a hit that causes its HP to become half or less.", 7),
|
||||||
new Ability(Abilities.SLUSH_RUSH, "Slush Rush (N)", "Boosts the Pokémon's Speed stat in a hailstorm.", 7)
|
new Ability(Abilities.SLUSH_RUSH, "Slush Rush (N)", "Boosts the Pokémon's Speed stat in a hailstorm.", 7)
|
||||||
.attr(BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
|
.attr(BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
|
||||||
.condition(getWeatherCondition(WeatherType.HAIL)),
|
.condition(getWeatherCondition(WeatherType.HAIL)),
|
||||||
new Ability(Abilities.LONG_REACH, "Long Reach", "The Pokémon uses its moves without making contact\nwith the target.", 7)
|
new Ability(Abilities.LONG_REACH, "Long Reach", "The Pokémon uses its moves without making contact with the target.", 7)
|
||||||
.attr(IgnoreContactAbAttr),
|
.attr(IgnoreContactAbAttr),
|
||||||
new Ability(Abilities.LIQUID_VOICE, "Liquid Voice (N)", "All sound-based moves become Water-type moves.", 7),
|
new Ability(Abilities.LIQUID_VOICE, "Liquid Voice (N)", "All sound-based moves become Water-type moves.", 7),
|
||||||
new Ability(Abilities.TRIAGE, "Triage (N)", "Gives priority to a healing move.", 7),
|
new Ability(Abilities.TRIAGE, "Triage (N)", "Gives priority to a healing move.", 7),
|
||||||
new Ability(Abilities.GALVANIZE, "Galvanize (N)", "Normal-type moves become Electric-type moves.\nThe power of those moves is boosted a little.", 7),
|
new Ability(Abilities.GALVANIZE, "Galvanize (N)", "Normal-type moves become Electric-type moves. The power of those moves is boosted a little.", 7),
|
||||||
new Ability(Abilities.SURGE_SURFER, "Surge Surfer (N)", "Doubles the Pokémon's Speed stat on\nElectric Terrain.", 7),
|
new Ability(Abilities.SURGE_SURFER, "Surge Surfer (N)", "Doubles the Pokémon's Speed stat on Electric Terrain.", 7),
|
||||||
new Ability(Abilities.SCHOOLING, "Schooling (N)", "When it has a lot of HP, the Pokémon forms a\npowerful school. It stops schooling when its HP\nis low.", 7),
|
new Ability(Abilities.SCHOOLING, "Schooling (N)", "When it has a lot of HP, the Pokémon forms a powerful school. It stops schooling when its HP is low.", 7),
|
||||||
new Ability(Abilities.DISGUISE, "Disguise (N)", "Once per battle, the shroud that covers the\nPokémon can protect it from an attack.", 7),
|
new Ability(Abilities.DISGUISE, "Disguise (N)", "Once per battle, the shroud that covers the Pokémon can protect it from an attack.", 7),
|
||||||
new Ability(Abilities.BATTLE_BOND, "Battle Bond (N)", "Defeating an opposing Pokémon strengthens the\nPokémon's bond with its Trainer, and it becomes\nAsh-Greninja. Water Shuriken gets more powerful.", 7),
|
new Ability(Abilities.BATTLE_BOND, "Battle Bond (N)", "Defeating an opposing Pokémon strengthens the Pokémon's bond with its Trainer, and it becomes Ash-Greninja. Water Shuriken gets more powerful.", 7),
|
||||||
new Ability(Abilities.POWER_CONSTRUCT, "Power Construct (N)", "Other Cells gather to aid when its HP becomes\nhalf or less. Then the Pokémon changes\nits form to Complete Forme.", 7),
|
new Ability(Abilities.POWER_CONSTRUCT, "Power Construct (N)", "Other Cells gather to aid when its HP becomes half or less. Then the Pokémon changes its form to Complete Forme.", 7),
|
||||||
new Ability(Abilities.CORROSION, "Corrosion (N)", "The Pokémon can poison the target even if it's\na Steel or Poison type.", 7),
|
new Ability(Abilities.CORROSION, "Corrosion (N)", "The Pokémon can poison the target even if it's a Steel or Poison type.", 7),
|
||||||
new Ability(Abilities.COMATOSE, "Comatose (N)", "It's always drowsing and will never wake up.\nIt can attack without waking up.", 7),
|
new Ability(Abilities.COMATOSE, "Comatose (N)", "It's always drowsing and will never wake up. It can attack without waking up.", 7),
|
||||||
new Ability(Abilities.QUEENLY_MAJESTY, "Queenly Majesty (N)", "Its majesty pressures the opposing Pokémon,\nmaking it unable to attack using priority moves.", 7),
|
new Ability(Abilities.QUEENLY_MAJESTY, "Queenly Majesty (N)", "Its majesty pressures the opposing Pokémon, making it unable to attack using priority moves.", 7),
|
||||||
new Ability(Abilities.INNARDS_OUT, "Innards Out (N)", "Damages the attacker landing the finishing hit\nby the amount equal to its last HP.", 7),
|
new Ability(Abilities.INNARDS_OUT, "Innards Out (N)", "Damages the attacker landing the finishing hit by the amount equal to its last HP.", 7),
|
||||||
new Ability(Abilities.DANCER, "Dancer (N)", "When another Pokémon uses a dance move,\nit can use a dance move following it regardless\nof its Speed.", 7),
|
new Ability(Abilities.DANCER, "Dancer (N)", "When another Pokémon uses a dance move, it can use a dance move following it regardless of its Speed.", 7),
|
||||||
new Ability(Abilities.BATTERY, "Battery (N)", "Powers up ally Pokémon's special moves.", 7),
|
new Ability(Abilities.BATTERY, "Battery (N)", "Powers up ally Pokémon's special moves.", 7),
|
||||||
new Ability(Abilities.FLUFFY, "Fluffy (N)", "Halves the damage taken from moves that make\ndirect contact, but doubles that of Fire-type moves.", 7),
|
new Ability(Abilities.FLUFFY, "Fluffy (N)", "Halves the damage taken from moves that make direct contact, but doubles that of Fire-type moves.", 7),
|
||||||
new Ability(Abilities.DAZZLING, "Dazzling (N)", "Surprises the opposing Pokémon, making it unable\nto attack using priority moves.", 7),
|
new Ability(Abilities.DAZZLING, "Dazzling (N)", "Surprises the opposing Pokémon, making it unable to attack using priority moves.", 7),
|
||||||
new Ability(Abilities.SOUL_HEART, "Soul-Heart (N)", "Boosts its Sp. Atk stat every time a Pokémon faints.", 7),
|
new Ability(Abilities.SOUL_HEART, "Soul-Heart (N)", "Boosts its Sp. Atk stat every time a Pokémon faints.", 7),
|
||||||
new Ability(Abilities.TANGLING_HAIR, "Tangling Hair (N)", "Contact with the Pokémon lowers the attacker's\nSpeed stat.", 7),
|
new Ability(Abilities.TANGLING_HAIR, "Tangling Hair (N)", "Contact with the Pokémon lowers the attacker's Speed stat.", 7),
|
||||||
new Ability(Abilities.RECEIVER, "Receiver (N)", "The Pokémon copies the Ability of a defeated ally.", 7),
|
new Ability(Abilities.RECEIVER, "Receiver (N)", "The Pokémon copies the Ability of a defeated ally.", 7),
|
||||||
new Ability(Abilities.POWER_OF_ALCHEMY, "Power of Alchemy (N)", "The Pokémon copies the Ability of a defeated ally.", 7),
|
new Ability(Abilities.POWER_OF_ALCHEMY, "Power of Alchemy (N)", "The Pokémon copies the Ability of a defeated ally.", 7),
|
||||||
new Ability(Abilities.BEAST_BOOST, "Beast Boost (N)", "The Pokémon boosts its most proficient stat each\ntime it knocks out a Pokémon.", 7),
|
new Ability(Abilities.BEAST_BOOST, "Beast Boost (N)", "The Pokémon boosts its most proficient stat each time it knocks out a Pokémon.", 7),
|
||||||
new Ability(Abilities.RKS_SYSTEM, "RKS System (N)", "Changes the Pokémon's type to match the\nmemory disc it holds.", 7),
|
new Ability(Abilities.RKS_SYSTEM, "RKS System (N)", "Changes the Pokémon's type to match the memory disc it holds.", 7),
|
||||||
new Ability(Abilities.ELECTRIC_SURGE, "Electric Surge (N)", "Turns the ground into Electric Terrain when the\nPokémon enters a battle.", 7),
|
new Ability(Abilities.ELECTRIC_SURGE, "Electric Surge (N)", "Turns the ground into Electric Terrain when the Pokémon enters a battle.", 7),
|
||||||
new Ability(Abilities.PSYCHIC_SURGE, "Psychic Surge (N)", "Turns the ground into Psychic Terrain when\nthe Pokémon enters a battle.", 7),
|
new Ability(Abilities.PSYCHIC_SURGE, "Psychic Surge (N)", "Turns the ground into Psychic Terrain when the Pokémon enters a battle.", 7),
|
||||||
new Ability(Abilities.MISTY_SURGE, "Misty Surge (N)", "Turns the ground into Misty Terrain when\nthe Pokémon enters a battle.", 7),
|
new Ability(Abilities.MISTY_SURGE, "Misty Surge (N)", "Turns the ground into Misty Terrain when the Pokémon enters a battle.", 7),
|
||||||
new Ability(Abilities.GRASSY_SURGE, "Grassy Surge (N)", "Turns the ground into Grassy Terrain when\nthe Pokémon enters a battle.", 7),
|
new Ability(Abilities.GRASSY_SURGE, "Grassy Surge (N)", "Turns the ground into Grassy Terrain when the Pokémon enters a battle.", 7),
|
||||||
new Ability(Abilities.FULL_METAL_BODY, "Full Metal Body (N)", "Prevents other Pokémon's moves or Abilities from\nlowering the Pokémon's stats.", 7),
|
new Ability(Abilities.FULL_METAL_BODY, "Full Metal Body (N)", "Prevents other Pokémon's moves or Abilities from lowering the Pokémon's stats.", 7),
|
||||||
new Ability(Abilities.SHADOW_SHIELD, "Shadow Shield (N)", "Reduces the amount of damage the Pokémon takes\nwhile its HP is full.", 7),
|
new Ability(Abilities.SHADOW_SHIELD, "Shadow Shield (N)", "Reduces the amount of damage the Pokémon takes while its HP is full.", 7),
|
||||||
new Ability(Abilities.PRISM_ARMOR, "Prism Armor (N)", "Reduces the power of supereffective attacks taken.", 7),
|
new Ability(Abilities.PRISM_ARMOR, "Prism Armor (N)", "Reduces the power of supereffective attacks taken.", 7),
|
||||||
new Ability(Abilities.NEUROFORCE, "Neuroforce (N)", "Powers up moves that are super effective.", 7),
|
new Ability(Abilities.NEUROFORCE, "Neuroforce (N)", "Powers up moves that are super effective.", 7),
|
||||||
new Ability(Abilities.INTREPID_SWORD, "Intrepid Sword (N)", "Boosts the Pokémon's Attack stat when the Pokémon\nenters a battle.", 8),
|
new Ability(Abilities.INTREPID_SWORD, "Intrepid Sword (N)", "Boosts the Pokémon's Attack stat when the Pokémon enters a battle.", 8),
|
||||||
new Ability(Abilities.DAUNTLESS_SHIELD, "Dauntless Shield (N)", "Boosts the Pokémon's Defense stat when the Pokémon\nenters a battle.", 8),
|
new Ability(Abilities.DAUNTLESS_SHIELD, "Dauntless Shield (N)", "Boosts the Pokémon's Defense stat when the Pokémon enters a battle.", 8),
|
||||||
new Ability(Abilities.LIBERO, "Libero (N)", "Changes the Pokémon's type to the type of the\nmove it's about to use.", 8),
|
new Ability(Abilities.LIBERO, "Libero (N)", "Changes the Pokémon's type to the type of the move it's about to use.", 8),
|
||||||
new Ability(Abilities.BALL_FETCH, "Ball Fetch (N)", "If the Pokémon is not holding an item, it will fetch\nthe Poké Ball from the first failed throw\nof the battle.", 8),
|
new Ability(Abilities.BALL_FETCH, "Ball Fetch (N)", "If the Pokémon is not holding an item, it will fetch the Poké Ball from the first failed throw of the battle.", 8),
|
||||||
new Ability(Abilities.COTTON_DOWN, "Cotton Down (N)", "When the Pokémon is hit by an attack, it scatters\ncotton fluff around and lowers the Speed stat of\nall Pokémon except itself.", 8),
|
new Ability(Abilities.COTTON_DOWN, "Cotton Down (N)", "When the Pokémon is hit by an attack, it scatters cotton fluff around and lowers the Speed stat of all Pokémon except itself.", 8),
|
||||||
new Ability(Abilities.PROPELLER_TAIL, "Propeller Tail (N)", "Ignores the effects of opposing Pokémon's Abilities and\nmoves that draw in moves.", 8),
|
new Ability(Abilities.PROPELLER_TAIL, "Propeller Tail (N)", "Ignores the effects of opposing Pokémon's Abilities and moves that draw in moves.", 8),
|
||||||
new Ability(Abilities.MIRROR_ARMOR, "Mirror Armor (N)", "Bounces back only the stat-lowering effects that\nthe Pokémon receives.", 8),
|
new Ability(Abilities.MIRROR_ARMOR, "Mirror Armor (N)", "Bounces back only the stat-lowering effects that the Pokémon receives.", 8),
|
||||||
new Ability(Abilities.GULP_MISSILE, "Gulp Missile (N)", "When the Pokémon uses Surf or Dive, it will come back\nwith prey. When it takes damage, it will spit out the prey\nto attack.", 8),
|
new Ability(Abilities.GULP_MISSILE, "Gulp Missile (N)", "When the Pokémon uses Surf or Dive, it will come back with prey. When it takes damage, it will spit out the prey to attack.", 8),
|
||||||
new Ability(Abilities.STALWART, "Stalwart (N)", "Ignores the effects of opposing Pokémon's Abilities and\nmoves that draw in moves.", 8),
|
new Ability(Abilities.STALWART, "Stalwart (N)", "Ignores the effects of opposing Pokémon's Abilities and moves that draw in moves.", 8),
|
||||||
new Ability(Abilities.STEAM_ENGINE, "Steam Engine (N)", "Boosts the Pokémon's Speed stat drastically if hit by a\nFire- or Water-type move.", 8),
|
new Ability(Abilities.STEAM_ENGINE, "Steam Engine (N)", "Boosts the Pokémon's Speed stat drastically if hit by a Fire- or Water-type move.", 8),
|
||||||
new Ability(Abilities.PUNK_ROCK, "Punk Rock (N)", "Boosts the power of sound-based moves.\nThe Pokémon also takes half the damage from\nthese kinds of moves.", 8),
|
new Ability(Abilities.PUNK_ROCK, "Punk Rock (N)", "Boosts the power of sound-based moves. The Pokémon also takes half the damage from these kinds of moves.", 8),
|
||||||
new Ability(Abilities.SAND_SPIT, "Sand Spit (N)", "The Pokémon creates a sandstorm when it's hit by\nan attack.", 8),
|
new Ability(Abilities.SAND_SPIT, "Sand Spit (N)", "The Pokémon creates a sandstorm when it's hit by an attack.", 8),
|
||||||
new Ability(Abilities.ICE_SCALES, "Ice Scales (N)", "The Pokémon is protected by ice scales, which halve\nthe damage taken from special moves.", 8),
|
new Ability(Abilities.ICE_SCALES, "Ice Scales (N)", "The Pokémon is protected by ice scales, which halve the damage taken from special moves.", 8),
|
||||||
new Ability(Abilities.RIPEN, "Ripen (N)", "Ripens Berries and doubles their effect.", 8),
|
new Ability(Abilities.RIPEN, "Ripen (N)", "Ripens Berries and doubles their effect.", 8),
|
||||||
new Ability(Abilities.ICE_FACE, "Ice Face (N)", "The Pokémon's ice head can take a physical attack as\na substitute, but the attack also changes the Pokémon's\nappearance. The ice will be restored when it hails.", 8),
|
new Ability(Abilities.ICE_FACE, "Ice Face (N)", "The Pokémon's ice head can take a physical attack as a substitute, but the attack also changes the Pokémon's appearance. The ice will be restored when it hails.", 8),
|
||||||
new Ability(Abilities.POWER_SPOT, "Power Spot (N)", "Just being next to the Pokémon powers up moves.", 8),
|
new Ability(Abilities.POWER_SPOT, "Power Spot (N)", "Just being next to the Pokémon powers up moves.", 8),
|
||||||
new Ability(Abilities.MIMICRY, "Mimicry (N)", "Changes the Pokémon's type depending on the terrain.", 8),
|
new Ability(Abilities.MIMICRY, "Mimicry (N)", "Changes the Pokémon's type depending on the terrain.", 8),
|
||||||
new Ability(Abilities.SCREEN_CLEANER, "Screen Cleaner (N)", "When the Pokémon enters a battle, the effects of\nLight Screen, Reflect, and Aurora Veil are nullified for\nboth opposing and ally Pokémon.", 8),
|
new Ability(Abilities.SCREEN_CLEANER, "Screen Cleaner (N)", "When the Pokémon enters a battle, the effects of Light Screen, Reflect, and Aurora Veil are nullified for both opposing and ally Pokémon.", 8),
|
||||||
new Ability(Abilities.STEELY_SPIRIT, "Steely Spirit (N)", "Powers up ally Pokémon's Steel-type moves.", 8),
|
new Ability(Abilities.STEELY_SPIRIT, "Steely Spirit (N)", "Powers up ally Pokémon's Steel-type moves.", 8),
|
||||||
new Ability(Abilities.PERISH_BODY, "Perish Body (N)", "When hit by a move that makes direct contact,\nthe Pokémon and the attacker will faint after three turns\nunless they switch out of battle.", 8),
|
new Ability(Abilities.PERISH_BODY, "Perish Body (N)", "When hit by a move that makes direct contact, the Pokémon and the attacker will faint after three turns unless they switch out of battle.", 8),
|
||||||
new Ability(Abilities.WANDERING_SPIRIT, "Wandering Spirit (N)", "The Pokémon exchanges Abilities with a Pokémon\nthat hits it with a move that makes direct contact.", 8),
|
new Ability(Abilities.WANDERING_SPIRIT, "Wandering Spirit (N)", "The Pokémon exchanges Abilities with a Pokémon that hits it with a move that makes direct contact.", 8),
|
||||||
new Ability(Abilities.GORILLA_TACTICS, "Gorilla Tactics (N)", "Boosts the Pokémon's Attack stat but only allows\nthe use of the first selected move.", 8),
|
new Ability(Abilities.GORILLA_TACTICS, "Gorilla Tactics (N)", "Boosts the Pokémon's Attack stat but only allows the use of the first selected move.", 8),
|
||||||
new Ability(Abilities.NEUTRALIZING_GAS, "Neutralizing Gas (N)", "If the Pokémon with Neutralizing Gas is in the battle,\nthe effects of all Pokémon's Abilities will be nullified\nor will not be triggered.", 8),
|
new Ability(Abilities.NEUTRALIZING_GAS, "Neutralizing Gas (N)", "If the Pokémon with Neutralizing Gas is in the battle, the effects of all Pokémon's Abilities will be nullified or will not be triggered.", 8),
|
||||||
new Ability(Abilities.PASTEL_VEIL, "Pastel Veil (N)", "Protects the Pokémon and its ally Pokémon from\nbeing poisoned.", 8),
|
new Ability(Abilities.PASTEL_VEIL, "Pastel Veil (N)", "Protects the Pokémon and its ally Pokémon from being poisoned.", 8),
|
||||||
new Ability(Abilities.HUNGER_SWITCH, "Hunger Switch (N)", "The Pokémon changes its form, alternating between\nits Full Belly Mode and Hangry Mode after the end of\neach turn.", 8),
|
new Ability(Abilities.HUNGER_SWITCH, "Hunger Switch (N)", "The Pokémon changes its form, alternating between its Full Belly Mode and Hangry Mode after the end of each turn.", 8),
|
||||||
new Ability(Abilities.QUICK_DRAW, "Quick Draw (N)", "Enables the Pokémon to move first occasionally.", 8),
|
new Ability(Abilities.QUICK_DRAW, "Quick Draw (N)", "Enables the Pokémon to move first occasionally.", 8),
|
||||||
new Ability(Abilities.UNSEEN_FIST, "Unseen Fist (N)", "If the Pokémon uses moves that make direct contact,\nit can attack the target even if the target protects itself.", 8),
|
new Ability(Abilities.UNSEEN_FIST, "Unseen Fist (N)", "If the Pokémon uses moves that make direct contact, it can attack the target even if the target protects itself.", 8),
|
||||||
new Ability(Abilities.CURIOUS_MEDICINE, "Curious Medicine (N)", "When the Pokémon enters a battle, it scatters medicine\nfrom its shell, which removes all stat changes\nfrom allies.", 8),
|
new Ability(Abilities.CURIOUS_MEDICINE, "Curious Medicine (N)", "When the Pokémon enters a battle, it scatters medicine from its shell, which removes all stat changes from allies.", 8),
|
||||||
new Ability(Abilities.TRANSISTOR, "Transistor (N)", "Powers up Electric-type moves.", 8),
|
new Ability(Abilities.TRANSISTOR, "Transistor (N)", "Powers up Electric-type moves.", 8),
|
||||||
new Ability(Abilities.DRAGONS_MAW, "Dragon's Maw (N)", "Powers up Dragon-type moves.", 8),
|
new Ability(Abilities.DRAGONS_MAW, "Dragon's Maw (N)", "Powers up Dragon-type moves.", 8),
|
||||||
new Ability(Abilities.CHILLING_NEIGH, "Chilling Neigh (N)", "When the Pokémon knocks out a target, it utters a\nchilling neigh, which boosts its Attack stat.", 8),
|
new Ability(Abilities.CHILLING_NEIGH, "Chilling Neigh (N)", "When the Pokémon knocks out a target, it utters a chilling neigh, which boosts its Attack stat.", 8),
|
||||||
new Ability(Abilities.GRIM_NEIGH, "Grim Neigh (N)", "When the Pokémon knocks out a target, it utters a\nterrifying neigh, which boosts its Sp. Atk stat.", 8),
|
new Ability(Abilities.GRIM_NEIGH, "Grim Neigh (N)", "When the Pokémon knocks out a target, it utters a terrifying neigh, which boosts its Sp. Atk stat.", 8),
|
||||||
new Ability(Abilities.AS_ONE_GLASTRIER, "As One (N)", "This Ability combines the effects of both Calyrex's\nUnnerve Ability and Glastrier's Chilling Neigh Ability.", 8),
|
new Ability(Abilities.AS_ONE_GLASTRIER, "As One (N)", "This Ability combines the effects of both Calyrex's Unnerve Ability and Glastrier's Chilling Neigh Ability.", 8),
|
||||||
new Ability(Abilities.AS_ONE_SPECTRIER, "As One (N)", "This Ability combines the effects of both Calyrex's\nUnnerve Ability and Spectrier's Grim Neigh Ability.", 8),
|
new Ability(Abilities.AS_ONE_SPECTRIER, "As One (N)", "This Ability combines the effects of both Calyrex's Unnerve Ability and Spectrier's Grim Neigh Ability.", 8),
|
||||||
new Ability(Abilities.LINGERING_AROMA, "Lingering Aroma (N)", "Contact with the Pokémon changes the\nattacker's Ability to Lingering Aroma.", 9),
|
new Ability(Abilities.LINGERING_AROMA, "Lingering Aroma (N)", "Contact with the Pokémon changes the attacker's Ability to Lingering Aroma.", 9),
|
||||||
new Ability(Abilities.SEED_SOWER, "Seed Sower (N)", "Turns the ground into Grassy Terrain\nwhen the Pokémon is hit by an attack.", 9),
|
new Ability(Abilities.SEED_SOWER, "Seed Sower (N)", "Turns the ground into Grassy Terrain when the Pokémon is hit by an attack.", 9),
|
||||||
new Ability(Abilities.THERMAL_EXCHANGE, "Thermal Exchange (N)", "Unable to be burned, boosts Attack\nwhen hit with Fire-type attacks.", 9),
|
new Ability(Abilities.THERMAL_EXCHANGE, "Thermal Exchange (N)", "Unable to be burned, boosts Attack when hit with Fire-type attacks.", 9),
|
||||||
new Ability(Abilities.ANGER_SHELL, "Anger Shell (N)", "When below half HP, Def and Sp. Def go\ndown, but Atk, Sp. Atk, and Speed go up.", 9),
|
new Ability(Abilities.ANGER_SHELL, "Anger Shell (N)", "When below half HP, Def and Sp. Def go down, but Atk, Sp. Atk, and Speed go up.", 9),
|
||||||
new Ability(Abilities.PURIFYING_SALT, "Purifying Salt (N)", "Protected from status conditions and\nhalved damage from Ghost-type moves.", 9),
|
new Ability(Abilities.PURIFYING_SALT, "Purifying Salt (N)", "Protected from status conditions and halved damage from Ghost-type moves.", 9),
|
||||||
new Ability(Abilities.WELL_BAKED_BODY, "Well-Baked Body (N)", "Immune to Fire-type moves. Instead,\nits Defense stat is sharply boosted.", 9),
|
new Ability(Abilities.WELL_BAKED_BODY, "Well-Baked Body (N)", "Immune to Fire-type moves. Instead, its Defense stat is sharply boosted.", 9),
|
||||||
new Ability(Abilities.WIND_RIDER, "Wind Rider (N)", "Immunity to wind moves. Ups Attack if\nhit by one, or if Tailwind is in effect.", 9),
|
new Ability(Abilities.WIND_RIDER, "Wind Rider (N)", "Immunity to wind moves. Ups Attack if hit by one, or if Tailwind is in effect.", 9),
|
||||||
new Ability(Abilities.GUARD_DOG, "Guard Dog (N)", "Ups Attack if intimidated. The Pokémon\ncannot be forcefully switched out.", 9),
|
new Ability(Abilities.GUARD_DOG, "Guard Dog (N)", "Ups Attack if intimidated. The Pokémon cannot be forcefully switched out.", 9),
|
||||||
new Ability(Abilities.ROCKY_PAYLOAD, "Rocky Payload (N)", "Powers up Rock-type moves.", 9),
|
new Ability(Abilities.ROCKY_PAYLOAD, "Rocky Payload (N)", "Powers up Rock-type moves.", 9),
|
||||||
new Ability(Abilities.WIND_POWER, "Wind Power (N)", "Wind moves charge the Pokémon,\nboosting the next Electric-type move.", 9),
|
new Ability(Abilities.WIND_POWER, "Wind Power (N)", "Wind moves charge the Pokémon, boosting the next Electric-type move.", 9),
|
||||||
new Ability(Abilities.ZERO_TO_HERO, "Zero to Hero (N)", "The Pokémon transforms into its Hero\nForm when it switches out.", 9),
|
new Ability(Abilities.ZERO_TO_HERO, "Zero to Hero (N)", "The Pokémon transforms into its Hero Form when it switches out.", 9),
|
||||||
new Ability(Abilities.COMMANDER, "Commander (N)", "If with an ally Dondozo, it becomes one\nwith it and controls the ally from within.", 9),
|
new Ability(Abilities.COMMANDER, "Commander (N)", "If with an ally Dondozo, it becomes one with it and controls the ally from within.", 9),
|
||||||
new Ability(Abilities.ELECTROMORPHOSIS, "Electromorphosis (N)", "Taking damage charges the Pokémon,\nboosting the next Electric-type move.", 9),
|
new Ability(Abilities.ELECTROMORPHOSIS, "Electromorphosis (N)", "Taking damage charges the Pokémon, boosting the next Electric-type move.", 9),
|
||||||
new Ability(Abilities.PROTOSYNTHESIS, "Protosynthesis (N)", "Boosts the Pokémon's best stat in\nsunlight or if a Booster Energy is held.", 9),
|
new Ability(Abilities.PROTOSYNTHESIS, "Protosynthesis (N)", "Boosts the Pokémon's best stat in sunlight or if a Booster Energy is held.", 9),
|
||||||
new Ability(Abilities.QUARK_DRIVE, "Quark Drive (N)", "Boosts the Pokémon's best stat on\nElectric Terrain or with Booster Energy.", 9),
|
new Ability(Abilities.QUARK_DRIVE, "Quark Drive (N)", "Boosts the Pokémon's best stat on Electric Terrain or with Booster Energy.", 9),
|
||||||
new Ability(Abilities.GOOD_AS_GOLD, "Good as Gold (N)", "The body of solid gold gives full immunity\nto other Pokémon's status moves.", 9),
|
new Ability(Abilities.GOOD_AS_GOLD, "Good as Gold (N)", "The body of solid gold gives full immunity to other Pokémon's status moves.", 9),
|
||||||
new Ability(Abilities.VESSEL_OF_RUIN, "Vessel of Ruin (N)", "The ruinous vessel lowers the Sp. Atk\nstats of all Pokémon except itself.", 9),
|
new Ability(Abilities.VESSEL_OF_RUIN, "Vessel of Ruin (N)", "The ruinous vessel lowers the Sp. Atk stats of all Pokémon except itself.", 9),
|
||||||
new Ability(Abilities.SWORD_OF_RUIN, "Sword of Ruin (N)", "The ruinous sword lowers the Defense\nstats of all Pokémon except itself.", 9),
|
new Ability(Abilities.SWORD_OF_RUIN, "Sword of Ruin (N)", "The ruinous sword lowers the Defense stats of all Pokémon except itself.", 9),
|
||||||
new Ability(Abilities.TABLETS_OF_RUIN, "Tablets of Ruin (N)", "The ruinous tablets lowers the Attack\nstats of all Pokémon except itself.", 9),
|
new Ability(Abilities.TABLETS_OF_RUIN, "Tablets of Ruin (N)", "The ruinous tablets lowers the Attack stats of all Pokémon except itself.", 9),
|
||||||
new Ability(Abilities.BEADS_OF_RUIN, "Beads of Ruin (N)", "The ruinous beads lowers the Sp. Def\nstats of all Pokémon except itself.", 9),
|
new Ability(Abilities.BEADS_OF_RUIN, "Beads of Ruin (N)", "The ruinous beads lowers the Sp. Def stats of all Pokémon except itself.", 9),
|
||||||
new Ability(Abilities.ORICHALCUM_PULSE, "Orichalcum Pulse (N)", "Sunlight turns harsh on entry. Attack\nis also boosted in harsh sunlight.", 9),
|
new Ability(Abilities.ORICHALCUM_PULSE, "Orichalcum Pulse (N)", "Sunlight turns harsh on entry. Attack is also boosted in harsh sunlight.", 9),
|
||||||
new Ability(Abilities.HADRON_ENGINE, "Hadron Engine (N)", "Sets Electric Terrain on entry. Sp. Atk\nis also boosted on Electric Terrain.", 9),
|
new Ability(Abilities.HADRON_ENGINE, "Hadron Engine (N)", "Sets Electric Terrain on entry. Sp. Atk is also boosted on Electric Terrain.", 9),
|
||||||
new Ability(Abilities.OPPORTUNIST, "Opportunist (N)", "If an opponent's stat is boosted, the\nPokémon boosts the same stat itself.", 9),
|
new Ability(Abilities.OPPORTUNIST, "Opportunist (N)", "If an opponent's stat is boosted, the Pokémon boosts the same stat itself.", 9),
|
||||||
new Ability(Abilities.CUD_CHEW, "Cud Chew (N)", "When a Berry is eaten, it will be eaten\nagain at the end of the next turn.", 9),
|
new Ability(Abilities.CUD_CHEW, "Cud Chew (N)", "When a Berry is eaten, it will be eaten again at the end of the next turn.", 9),
|
||||||
new Ability(Abilities.SHARPNESS, "Sharpness (N)", "Powers up slicing moves.", 9),
|
new Ability(Abilities.SHARPNESS, "Sharpness (N)", "Powers up slicing moves.", 9),
|
||||||
new Ability(Abilities.SUPREME_OVERLORD, "Supreme Overlord (N)", "Its Atk and Sp. Atk are boosted\nslightly for each defeated ally.", 9),
|
new Ability(Abilities.SUPREME_OVERLORD, "Supreme Overlord (N)", "Its Atk and Sp. Atk are boosted slightly for each defeated ally.", 9),
|
||||||
new Ability(Abilities.COSTAR, "Costar (N)", "When the Pokémon enters a battle, it\ncopies an ally's stat changes.", 9),
|
new Ability(Abilities.COSTAR, "Costar (N)", "When the Pokémon enters a battle, it copies an ally's stat changes.", 9),
|
||||||
new Ability(Abilities.TOXIC_DEBRIS, "Toxic Debris (N)", "Spreads Toxic Spikes when taking\ndamage from physical moves.", 9),
|
new Ability(Abilities.TOXIC_DEBRIS, "Toxic Debris (N)", "Spreads Toxic Spikes when taking damage from physical moves.", 9),
|
||||||
new Ability(Abilities.ARMOR_TAIL, "Armor Tail (N)", "Foes are unable to use priority moves\nagainst the Pokémon or its allies.", 9),
|
new Ability(Abilities.ARMOR_TAIL, "Armor Tail (N)", "Foes are unable to use priority moves against the Pokémon or its allies.", 9),
|
||||||
new Ability(Abilities.EARTH_EATER, "Earth Eater", "Restores HP if hit by a Ground-type\nmove instead of taking damage.", 9)
|
new Ability(Abilities.EARTH_EATER, "Earth Eater", "Restores HP if hit by a Ground-type move instead of taking damage.", 9)
|
||||||
.attr(TypeImmunityHealAbAttr, Type.GROUND),
|
.attr(TypeImmunityHealAbAttr, Type.GROUND),
|
||||||
new Ability(Abilities.MYCELIUM_MIGHT, "Mycelium Might (N)", "Using a status move is slower, but it\ncannot be prevented by abilities.", 9),
|
new Ability(Abilities.MYCELIUM_MIGHT, "Mycelium Might (N)", "Using a status move is slower, but it cannot be prevented by abilities.", 9),
|
||||||
new Ability(Abilities.MINDS_EYE, "Mind's Eye (N)", "Ignores foe's evasion, accuracy can't\nbe lowered, and can hit Ghost types.", 9),
|
new Ability(Abilities.MINDS_EYE, "Mind's Eye (N)", "Ignores foe's evasion, accuracy can't be lowered, and can hit Ghost types.", 9),
|
||||||
new Ability(Abilities.SUPERSWEET_SYRUP, "Supersweet Syrup (N)", "On entry, the enemy's Evasion is\nlowered once per battle.", 9),
|
new Ability(Abilities.SUPERSWEET_SYRUP, "Supersweet Syrup (N)", "On entry, the enemy's Evasion is lowered once per battle.", 9),
|
||||||
new Ability(Abilities.HOSPITALITY, "Hospitality (N)", "On entry, an ally's HP is restored by 25\npercent.", 9),
|
new Ability(Abilities.HOSPITALITY, "Hospitality (N)", "On entry, an ally's HP is restored by 25 percent.", 9),
|
||||||
new Ability(Abilities.TOXIC_CHAIN, "Toxic Chain (N)", "The Pokémon's attacks have a chance\nto badly poison targets.", 9),
|
new Ability(Abilities.TOXIC_CHAIN, "Toxic Chain (N)", "The Pokémon's attacks have a chance to badly poison targets.", 9),
|
||||||
new Ability(Abilities.EMBODY_ASPECT, "Embody Aspect (N)", "A stat is boosted depending on the\nMask held by the Pokémon.", 9),
|
new Ability(Abilities.EMBODY_ASPECT, "Embody Aspect (N)", "A stat is boosted depending on the Mask held by the Pokémon.", 9),
|
||||||
new Ability(Abilities.MOUNTAINEER, "Mountaineer (N)", "", 5),
|
new Ability(Abilities.MOUNTAINEER, "Mountaineer (N)", "", 5),
|
||||||
new Ability(Abilities.WAVE_RIDER, "Wave Rider (N)", "", 5),
|
new Ability(Abilities.WAVE_RIDER, "Wave Rider (N)", "", 5),
|
||||||
new Ability(Abilities.SKATER, "Skater (N)", "", 5),
|
new Ability(Abilities.SKATER, "Skater (N)", "", 5),
|
||||||
|
@ -1398,8 +1398,8 @@ export function initSpecies() {
|
|||||||
new PokemonSpecies(Species.FROGADIER, "Frogadier", 6, false, false, false, "Bubble Frog Pokémon", Type.WATER, null, 0.6, 10.9, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 405, 54, 63, 52, 83, 56, 97, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
|
new PokemonSpecies(Species.FROGADIER, "Frogadier", 6, false, false, false, "Bubble Frog Pokémon", Type.WATER, null, 0.6, 10.9, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 405, 54, 63, 52, 83, 56, 97, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
|
||||||
new PokemonSpecies(Species.GRENINJA, "Greninja", 6, false, false, false, "Ninja Pokémon", Type.WATER, Type.DARK, 1.5, 40, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false, false,
|
new PokemonSpecies(Species.GRENINJA, "Greninja", 6, false, false, false, "Ninja Pokémon", Type.WATER, Type.DARK, 1.5, 40, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false, false,
|
||||||
new PokemonForm("Normal", "", Type.WATER, Type.DARK, 1.5, 40, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239),
|
new PokemonForm("Normal", "", Type.WATER, Type.DARK, 1.5, 40, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239),
|
||||||
new PokemonForm("Battle Bond", "battle-bond", Type.WATER, Type.DARK, 1.5, 40, Abilities.BATTLE_BOND, Abilities.NONE, Abilities.NONE, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239),
|
new PokemonForm("Battle Bond", "battle-bond", Type.WATER, Type.DARK, 1.5, 40, Abilities.BATTLE_BOND, Abilities.NONE, Abilities.NONE, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239, false, ""),
|
||||||
new PokemonForm("Ash", "ash", Type.WATER, Type.DARK, 1.5, 40, Abilities.BATTLE_BOND, Abilities.NONE, Abilities.NONE, 640, 72, 145, 67, 153, 71, 132, 45, 70, 239, false, "battle-bond"),
|
new PokemonForm("Ash", "ash", Type.WATER, Type.DARK, 1.5, 40, Abilities.BATTLE_BOND, Abilities.NONE, Abilities.NONE, 640, 72, 145, 67, 153, 71, 132, 45, 70, 239),
|
||||||
),
|
),
|
||||||
new PokemonSpecies(Species.BUNNELBY, "Bunnelby", 6, false, false, false, "Digging Pokémon", Type.NORMAL, null, 0.4, 5, Abilities.PICKUP, Abilities.CHEEK_POUCH, Abilities.HUGE_POWER, 237, 38, 36, 38, 32, 36, 57, 255, 50, 47, GrowthRate.MEDIUM_FAST, 50, false),
|
new PokemonSpecies(Species.BUNNELBY, "Bunnelby", 6, false, false, false, "Digging Pokémon", Type.NORMAL, null, 0.4, 5, Abilities.PICKUP, Abilities.CHEEK_POUCH, Abilities.HUGE_POWER, 237, 38, 36, 38, 32, 36, 57, 255, 50, 47, GrowthRate.MEDIUM_FAST, 50, false),
|
||||||
new PokemonSpecies(Species.DIGGERSBY, "Diggersby", 6, false, false, false, "Digging Pokémon", Type.NORMAL, Type.GROUND, 1, 42.4, Abilities.PICKUP, Abilities.CHEEK_POUCH, Abilities.HUGE_POWER, 423, 85, 56, 77, 50, 77, 78, 127, 50, 148, GrowthRate.MEDIUM_FAST, 50, false),
|
new PokemonSpecies(Species.DIGGERSBY, "Diggersby", 6, false, false, false, "Digging Pokémon", Type.NORMAL, Type.GROUND, 1, 42.4, Abilities.PICKUP, Abilities.CHEEK_POUCH, Abilities.HUGE_POWER, 423, 85, 56, 77, 50, 77, 78, 127, 50, 148, GrowthRate.MEDIUM_FAST, 50, false),
|
||||||
|
@ -5757,10 +5757,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.SALAMENCE,
|
Species.SALAMENCE,
|
||||||
Species.ALOLA_RATTATA,
|
Species.ALOLA_RATTATA,
|
||||||
Species.ALOLA_RATICATE,
|
Species.ALOLA_RATICATE,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
Species.GALAR_SLOWBRO,
|
Species.GALAR_SLOWBRO,
|
||||||
Species.HISUI_SNEASEL,
|
Species.HISUI_SNEASEL,
|
||||||
],
|
],
|
||||||
@ -15281,10 +15278,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.SALAMENCE,
|
Species.SALAMENCE,
|
||||||
Species.ALOLA_RATTATA,
|
Species.ALOLA_RATTATA,
|
||||||
Species.ALOLA_RATICATE,
|
Species.ALOLA_RATICATE,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
],
|
],
|
||||||
[Moves.STEEL_WING]: [
|
[Moves.STEEL_WING]: [
|
||||||
Species.PIDGEOTTO,
|
Species.PIDGEOTTO,
|
||||||
@ -15697,10 +15691,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.ALOLA_RATICATE,
|
Species.ALOLA_RATICATE,
|
||||||
Species.ALOLA_EXEGGUTOR,
|
Species.ALOLA_EXEGGUTOR,
|
||||||
Species.ALOLA_MAROWAK,
|
Species.ALOLA_MAROWAK,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
Species.GALAR_PONYTA,
|
Species.GALAR_PONYTA,
|
||||||
Species.GALAR_RAPIDASH,
|
Species.GALAR_RAPIDASH,
|
||||||
Species.GALAR_FARFETCHD,
|
Species.GALAR_FARFETCHD,
|
||||||
@ -16884,10 +16875,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.SALAMENCE,
|
Species.SALAMENCE,
|
||||||
Species.ALOLA_RATTATA,
|
Species.ALOLA_RATTATA,
|
||||||
Species.ALOLA_RATICATE,
|
Species.ALOLA_RATICATE,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
],
|
],
|
||||||
[Moves.FRUSTRATION]: [
|
[Moves.FRUSTRATION]: [
|
||||||
Species.BEEDRILL,
|
Species.BEEDRILL,
|
||||||
@ -17014,10 +17002,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.SALAMENCE,
|
Species.SALAMENCE,
|
||||||
Species.ALOLA_RATTATA,
|
Species.ALOLA_RATTATA,
|
||||||
Species.ALOLA_RATICATE,
|
Species.ALOLA_RATICATE,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
],
|
],
|
||||||
[Moves.SAFEGUARD]: [
|
[Moves.SAFEGUARD]: [
|
||||||
Species.BULBASAUR,
|
Species.BULBASAUR,
|
||||||
@ -17678,10 +17663,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.SALAMENCE,
|
Species.SALAMENCE,
|
||||||
Species.ALOLA_RATTATA,
|
Species.ALOLA_RATTATA,
|
||||||
Species.ALOLA_RATICATE,
|
Species.ALOLA_RATICATE,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
],
|
],
|
||||||
[Moves.RAIN_DANCE]: [
|
[Moves.RAIN_DANCE]: [
|
||||||
Species.BUTTERFREE,
|
Species.BUTTERFREE,
|
||||||
@ -24454,10 +24436,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.ALOLA_SANDSLASH,
|
Species.ALOLA_SANDSLASH,
|
||||||
Species.ALOLA_MEOWTH,
|
Species.ALOLA_MEOWTH,
|
||||||
Species.ALOLA_PERSIAN,
|
Species.ALOLA_PERSIAN,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
Species.GALAR_MEOWTH,
|
Species.GALAR_MEOWTH,
|
||||||
Species.GALAR_ZAPDOS,
|
Species.GALAR_ZAPDOS,
|
||||||
Species.GALAR_MOLTRES,
|
Species.GALAR_MOLTRES,
|
||||||
@ -32022,11 +32001,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.TORNADUS,
|
Species.TORNADUS,
|
||||||
Species.THUNDURUS,
|
Species.THUNDURUS,
|
||||||
Species.CHESNAUGHT,
|
Species.CHESNAUGHT,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'',
|
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
Species.VOLCANION,
|
Species.VOLCANION,
|
||||||
Species.DECIDUEYE,
|
Species.DECIDUEYE,
|
||||||
Species.PIKIPEK,
|
Species.PIKIPEK,
|
||||||
@ -33034,10 +33009,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.ALOLA_RATICATE,
|
Species.ALOLA_RATICATE,
|
||||||
Species.ALOLA_EXEGGUTOR,
|
Species.ALOLA_EXEGGUTOR,
|
||||||
Species.ALOLA_MAROWAK,
|
Species.ALOLA_MAROWAK,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
Species.GALAR_PONYTA,
|
Species.GALAR_PONYTA,
|
||||||
Species.GALAR_RAPIDASH,
|
Species.GALAR_RAPIDASH,
|
||||||
Species.GALAR_FARFETCHD,
|
Species.GALAR_FARFETCHD,
|
||||||
@ -33097,10 +33069,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.SLOWBRO,
|
Species.SLOWBRO,
|
||||||
Species.RAYQUAZA,
|
Species.RAYQUAZA,
|
||||||
Species.CAMERUPT,
|
Species.CAMERUPT,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
],
|
],
|
||||||
[Moves.STORED_POWER]: [
|
[Moves.STORED_POWER]: [
|
||||||
Species.NINETALES,
|
Species.NINETALES,
|
||||||
@ -33394,10 +33363,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.POLTCHAGEIST,
|
Species.POLTCHAGEIST,
|
||||||
Species.SINISTCHA,
|
Species.SINISTCHA,
|
||||||
Species.KYOGRE,
|
Species.KYOGRE,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
Species.GALAR_CORSOLA,
|
Species.GALAR_CORSOLA,
|
||||||
Species.GALAR_STUNFISK,
|
Species.GALAR_STUNFISK,
|
||||||
Species.CRAMORANT,
|
Species.CRAMORANT,
|
||||||
@ -33577,11 +33543,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.THUNDURUS,
|
Species.THUNDURUS,
|
||||||
Species.FROAKIE,
|
Species.FROAKIE,
|
||||||
Species.FROGADIER,
|
Species.FROGADIER,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'',
|
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
Species.VIVILLON,
|
Species.VIVILLON,
|
||||||
Species.LITLEO,
|
Species.LITLEO,
|
||||||
Species.PYROAR,
|
Species.PYROAR,
|
||||||
@ -34415,10 +34377,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.HERACROSS,
|
Species.HERACROSS,
|
||||||
Species.MEDICHAM,
|
Species.MEDICHAM,
|
||||||
Species.GALLADE,
|
Species.GALLADE,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
Species.GALAR_FARFETCHD,
|
Species.GALAR_FARFETCHD,
|
||||||
Species.GALAR_ZIGZAGOON,
|
Species.GALAR_ZIGZAGOON,
|
||||||
Species.GALAR_LINOONE,
|
Species.GALAR_LINOONE,
|
||||||
@ -35377,10 +35336,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.SALAMENCE,
|
Species.SALAMENCE,
|
||||||
Species.ALOLA_RATTATA,
|
Species.ALOLA_RATTATA,
|
||||||
Species.ALOLA_RATICATE,
|
Species.ALOLA_RATICATE,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
],
|
],
|
||||||
[Moves.MYSTICAL_FIRE]: [
|
[Moves.MYSTICAL_FIRE]: [
|
||||||
Species.PONYTA,
|
Species.PONYTA,
|
||||||
@ -36234,10 +36190,7 @@ export const tmSpecies: TmSpecies = {
|
|||||||
Species.SALAMENCE,
|
Species.SALAMENCE,
|
||||||
Species.ALOLA_EXEGGUTOR,
|
Species.ALOLA_EXEGGUTOR,
|
||||||
Species.ALOLA_MAROWAK,
|
Species.ALOLA_MAROWAK,
|
||||||
[
|
|
||||||
Species.GRENINJA,
|
Species.GRENINJA,
|
||||||
'battle-bond',
|
|
||||||
],
|
|
||||||
[
|
[
|
||||||
Species.ETERNATUS,
|
Species.ETERNATUS,
|
||||||
'eternamax',
|
'eternamax',
|
||||||
|
@ -51,7 +51,7 @@ export default class SummaryUiHandler extends UiHandler {
|
|||||||
private moveCategoryIcon: Phaser.GameObjects.Sprite;
|
private moveCategoryIcon: Phaser.GameObjects.Sprite;
|
||||||
private summaryPageTransitionContainer: Phaser.GameObjects.Container;
|
private summaryPageTransitionContainer: Phaser.GameObjects.Container;
|
||||||
|
|
||||||
private moveDescriptionScrollTween: Phaser.Tweens.Tween;
|
private descriptionScrollTween: Phaser.Tweens.Tween;
|
||||||
private moveCursorBlinkTimer: Phaser.Time.TimerEvent;
|
private moveCursorBlinkTimer: Phaser.Time.TimerEvent;
|
||||||
|
|
||||||
private pokemon: PlayerPokemon;
|
private pokemon: PlayerPokemon;
|
||||||
@ -361,14 +361,14 @@ export default class SummaryUiHandler extends UiHandler {
|
|||||||
this.moveDescriptionText.setText(selectedMove?.effect || '');
|
this.moveDescriptionText.setText(selectedMove?.effect || '');
|
||||||
const moveDescriptionLineCount = Math.floor(this.moveDescriptionText.displayHeight / 14.83);
|
const moveDescriptionLineCount = Math.floor(this.moveDescriptionText.displayHeight / 14.83);
|
||||||
|
|
||||||
if (this.moveDescriptionScrollTween) {
|
if (this.descriptionScrollTween) {
|
||||||
this.moveDescriptionScrollTween.remove();
|
this.descriptionScrollTween.remove();
|
||||||
this.moveDescriptionScrollTween = null;
|
this.descriptionScrollTween = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (moveDescriptionLineCount > 3) {
|
if (moveDescriptionLineCount > 3) {
|
||||||
this.moveDescriptionText.setY(84);
|
this.moveDescriptionText.setY(84);
|
||||||
this.moveDescriptionScrollTween = this.scene.tweens.add({
|
this.descriptionScrollTween = this.scene.tweens.add({
|
||||||
targets: this.moveDescriptionText,
|
targets: this.moveDescriptionText,
|
||||||
delay: Utils.fixedInt(2000),
|
delay: Utils.fixedInt(2000),
|
||||||
loop: -1,
|
loop: -1,
|
||||||
@ -468,6 +468,11 @@ export default class SummaryUiHandler extends UiHandler {
|
|||||||
const pageBg = (pageContainer.getAt(0) as Phaser.GameObjects.Sprite);
|
const pageBg = (pageContainer.getAt(0) as Phaser.GameObjects.Sprite);
|
||||||
pageBg.setTexture(this.getPageKey(page));
|
pageBg.setTexture(this.getPageKey(page));
|
||||||
|
|
||||||
|
if (this.descriptionScrollTween) {
|
||||||
|
this.descriptionScrollTween.remove();
|
||||||
|
this.descriptionScrollTween = null;
|
||||||
|
}
|
||||||
|
|
||||||
switch (page) {
|
switch (page) {
|
||||||
case Page.PROFILE:
|
case Page.PROFILE:
|
||||||
const profileContainer = this.scene.add.container(0, -pageBg.height);
|
const profileContainer = this.scene.add.container(0, -pageBg.height);
|
||||||
@ -494,9 +499,33 @@ export default class SummaryUiHandler extends UiHandler {
|
|||||||
abilityNameText.setOrigin(0, 1);
|
abilityNameText.setOrigin(0, 1);
|
||||||
profileContainer.add(abilityNameText);
|
profileContainer.add(abilityNameText);
|
||||||
|
|
||||||
const abilityDescriptionText = addTextObject(this.scene, 7, 69, ability.description, TextStyle.WINDOW, { maxLines: 2, wordWrap: { width: 1212 } });
|
const abilityDescriptionText = addTextObject(this.scene, 7, 69, ability.description, TextStyle.WINDOW, { wordWrap: { width: 1224 } });
|
||||||
abilityDescriptionText.setOrigin(0, 0);
|
abilityDescriptionText.setOrigin(0, 0);
|
||||||
profileContainer.add(abilityDescriptionText);
|
profileContainer.add(abilityDescriptionText);
|
||||||
|
|
||||||
|
const abilityDescriptionTextMaskRect = this.scene.make.graphics({});
|
||||||
|
abilityDescriptionTextMaskRect.setScale(6);
|
||||||
|
abilityDescriptionTextMaskRect.fillStyle(0xFFFFFF);
|
||||||
|
abilityDescriptionTextMaskRect.beginPath();
|
||||||
|
abilityDescriptionTextMaskRect.fillRect(110, 90.5, 206, 31);
|
||||||
|
|
||||||
|
const abilityDescriptionTextMask = abilityDescriptionTextMaskRect.createGeometryMask();
|
||||||
|
|
||||||
|
abilityDescriptionText.setMask(abilityDescriptionTextMask);
|
||||||
|
|
||||||
|
const abilityDescriptionLineCount = Math.floor(abilityDescriptionText.displayHeight / 14.83);
|
||||||
|
|
||||||
|
if (abilityDescriptionLineCount > 2) {
|
||||||
|
abilityDescriptionText.setY(69);
|
||||||
|
this.descriptionScrollTween = this.scene.tweens.add({
|
||||||
|
targets: abilityDescriptionText,
|
||||||
|
delay: Utils.fixedInt(2000),
|
||||||
|
loop: -1,
|
||||||
|
hold: Utils.fixedInt(2000),
|
||||||
|
duration: Utils.fixedInt((abilityDescriptionLineCount - 2) * 2000),
|
||||||
|
y: `-=${14.83 * (abilityDescriptionLineCount - 2)}`
|
||||||
|
});
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case Page.STATS:
|
case Page.STATS:
|
||||||
const statsContainer = this.scene.add.container(0, -pageBg.height);
|
const statsContainer = this.scene.add.container(0, -pageBg.height);
|
||||||
|