Implement Intrepid Sword & Dauntless Shield abilities

This commit is contained in:
Madmadness65 2024-04-01 15:34:46 -05:00
parent 886700f3b2
commit 077d87ade8
4 changed files with 9 additions and 6 deletions

View File

@ -1,6 +1,6 @@
import Phaser from 'phaser';
import UI, { Mode } from './ui/ui';
import { NextEncounterPhase, NewBiomeEncounterPhase, SelectBiomePhase, MessagePhase, TurnInitPhase, ReturnPhase, LevelCapPhase, ShowTrainerPhase, LoginPhase, ConsolidateDataPhase, MovePhase, TitlePhase } from './phases';
import { NextEncounterPhase, NewBiomeEncounterPhase, SelectBiomePhase, MessagePhase, TurnInitPhase, ReturnPhase, LevelCapPhase, ShowTrainerPhase, LoginPhase, MovePhase, TitlePhase } from './phases';
import Pokemon, { PlayerPokemon, EnemyPokemon } from './field/pokemon';
import PokemonSpecies, { PokemonSpeciesFilter, allSpecies, getPokemonSpecies, initSpecies } from './data/pokemon-species';
import * as Utils from './utils';

View File

@ -2470,8 +2470,10 @@ export function initAbilities() {
new Ability(Abilities.PRISM_ARMOR, "Prism Armor (N)", "Reduces the power of supereffective attacks taken.", 7),
new Ability(Abilities.NEUROFORCE, "Neuroforce", "Powers up moves that are super effective.", 7)
.attr(MovePowerBoostAbAttr, (user, target, move) => target.getAttackTypeEffectiveness(move.type) >= 2, 1.25),
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 enters a battle.", 8),
new Ability(Abilities.INTREPID_SWORD, "Intrepid Sword", "Boosts the Pokémon's Attack stat when the Pokémon enters a battle.", 8)
.attr(PostSummonStatChangeAbAttr, BattleStat.ATK, 1, true),
new Ability(Abilities.DAUNTLESS_SHIELD, "Dauntless Shield", "Boosts the Pokémon's Defense stat when the Pokémon enters a battle.", 8)
.attr(PostSummonStatChangeAbAttr, BattleStat.DEF, 1, true),
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 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 cotton fluff around and lowers the Speed stat of all Pokémon except itself.", 8),

View File

@ -3194,7 +3194,8 @@ export function initMoves() {
.ballBombMove(),
new StatusMove(Moves.FORESIGHT, "Foresight (N)", Type.NORMAL, -1, 40, "Enables a Ghost-type target to be hit by Normal- and Fighting-type attacks. This also enables an evasive target to be hit.", -1, 0, 2),
new SelfStatusMove(Moves.DESTINY_BOND, "Destiny Bond (N)", Type.GHOST, -1, 5, "After using this move, if the user faints, the Pokémon that landed the knockout hit also faints. Its chance of failing rises if it is used in succession.", -1, 0, 2)
.ignoresProtect(),
.ignoresProtect()
.condition(failOnBossCondition),
new StatusMove(Moves.PERISH_SONG, "Perish Song", Type.NORMAL, -1, 5, "Any Pokémon that hears this song faints in three turns, unless it switches out of battle.", -1, 0, 2)
.attr(FaintCountdownAttr)
.ignoresProtect()
@ -4742,7 +4743,7 @@ export function initMoves() {
new AttackMove(Moves.GLAIVE_RUSH, "Glaive Rush (P)", Type.DRAGON, MoveCategory.PHYSICAL, 120, 100, 5, "The user throws its entire body into a reckless charge. After this move is used, attacks on the user cannot miss and will inflict double damage until the user's next turn.", -1, 0, 9),
new StatusMove(Moves.REVIVAL_BLESSING, "Revival Blessing (N)", Type.NORMAL, -1, 1, "The user bestows a loving blessing, reviving a party Pokémon that has fainted and restoring half that Pokémon's max HP.", -1, 0, 9),
new AttackMove(Moves.SALT_CURE, "Salt Cure", Type.ROCK, MoveCategory.PHYSICAL, 40, 100, 15, "The user salt cures the target, inflicting damage every turn. Steel and Water types are more strongly affected by this move.", -1, 0, 9)
.attr(AddBattlerTagAttr, BattlerTagType.SALT_CURED),
.attr(AddBattlerTagAttr, BattlerTagType.SALT_CURED),
new AttackMove(Moves.TRIPLE_DIVE, "Triple Dive", Type.WATER, MoveCategory.PHYSICAL, 30, 95, 10, "The user performs a perfectly timed triple dive, hitting the target with splashes of water three times in a row.", -1, 0, 9)
.attr(MultiHitAttr, MultiHitType._3),
new AttackMove(Moves.MORTAL_SPIN, "Mortal Spin", Type.POISON, MoveCategory.PHYSICAL, 30, 100, 15, "The user performs a spin attack that can also eliminate the effects of such moves as Bind, Wrap, and Leech Seed. This also poisons opposing Pokémon.", 100, 0, 9)

View File

@ -2340,7 +2340,7 @@ export function initSpecies() {
new PokemonForm("Hearthflame Mask Terastallized", "hearthflame-mask-tera", Type.GRASS, Type.FIRE, 1.2, 39.8, Abilities.EMBODY_ASPECT_HEARTHFLAME, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
new PokemonForm("Cornerstone Mask Terastallized", "cornerstone-mask-tera", Type.GRASS, Type.ROCK, 1.2, 39.8, Abilities.EMBODY_ASPECT_CORNERSTONE, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
),
new PokemonSpecies(Species.ARCHALUDON, "Archaludon", 9, false, false, false, "Alloy Pokémon", Type.STEEL, Type.DRAGON, 2, 60, Abilities.STAMINA, Abilities.STURDY, Abilities.STALWART, 535, 90, 105, 130, 125, 65, 85, 10, 50, 300, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.ARCHALUDON, "Archaludon", 9, false, false, false, "Alloy Pokémon", Type.STEEL, Type.DRAGON, 2, 60, Abilities.STAMINA, Abilities.STURDY, Abilities.STALWART, 600, 90, 105, 130, 125, 65, 85, 10, 50, 300, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.HYDRAPPLE, "Hydrapple", 9, false, false, false, "Apple Hydra Pokémon", Type.GRASS, Type.DRAGON, 1.8, 93, Abilities.SUPERSWEET_SYRUP, Abilities.REGENERATOR, Abilities.STICKY_HOLD, 540, 106, 80, 110, 120, 80, 44, 10, 50, 270, GrowthRate.ERRATIC, 50, false),
new PokemonSpecies(Species.GOUGING_FIRE, "Gouging Fire", 9, false, false, false, "Paradox Pokémon", Type.FIRE, Type.DRAGON, 3.5, 590, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 105, 115, 121, 65, 93, 91, 10, 0, 295, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.RAGING_BOLT, "Raging Bolt", 9, false, false, false, "Paradox Pokémon", Type.ELECTRIC, Type.DRAGON, 5.2, 480, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 125, 73, 91, 137, 89, 75, 10, 0, 295, GrowthRate.SLOW, null, false),