mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-07-01 14:02:18 +02:00
Fixed things2.0
This commit is contained in:
parent
ef08575b4c
commit
2eb5a03eda
@ -28,7 +28,7 @@ describe("Abilities - Battery", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.enemySpecies(Species.SHUCKLE)
|
||||
.enemySpecies(SpeciesId.SHUCKLE)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.moveset([MoveId.TACKLE, MoveId.BREAKING_SWIPE, MoveId.SPLASH, MoveId.DAZZLING_GLEAM])
|
||||
.enemyMoveset(MoveId.SPLASH);
|
||||
|
@ -130,7 +130,7 @@ describe("Abilities - Disguise", () => {
|
||||
|
||||
it("persists form change when wave changes with no arena reset", async () => {
|
||||
game.override.starterSpecies(0).starterForms({
|
||||
[Species.MIMIKYU]: bustedForm,
|
||||
[SpeciesId.MIMIKYU]: bustedForm,
|
||||
});
|
||||
await game.classicMode.startBattle([SpeciesId.FURRET, SpeciesId.MIMIKYU]);
|
||||
|
||||
@ -147,9 +147,9 @@ describe("Abilities - Disguise", () => {
|
||||
it("reverts to Disguised form on arena reset", async () => {
|
||||
game.override
|
||||
.startingWave(4)
|
||||
.starterSpecies(Species.MIMIKYU)
|
||||
.starterSpecies(SpeciesId.MIMIKYU)
|
||||
.starterForms({
|
||||
[Species.MIMIKYU]: bustedForm,
|
||||
[SpeciesId.MIMIKYU]: bustedForm,
|
||||
});
|
||||
|
||||
await game.classicMode.startBattle();
|
||||
@ -170,7 +170,7 @@ describe("Abilities - Disguise", () => {
|
||||
.startingWave(10)
|
||||
.starterSpecies(0)
|
||||
.starterForms({
|
||||
[Species.MIMIKYU]: bustedForm,
|
||||
[SpeciesId.MIMIKYU]: bustedForm,
|
||||
});
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.MIMIKYU, SpeciesId.FURRET]);
|
||||
|
@ -74,7 +74,7 @@ describe("Abilities - Flash Fire", () => {
|
||||
|
||||
it("activated after being frozen", async () => {
|
||||
game.override.enemyMoveset([MoveId.EMBER]).moveset(MoveId.SPLASH).statusEffect(StatusEffect.FREEZE);
|
||||
await game.classicMode.startBattle([Species.BLISSEY]);
|
||||
await game.classicMode.startBattle([SpeciesId.BLISSEY]);
|
||||
|
||||
const blissey = game.scene.getPlayerPokemon()!;
|
||||
|
||||
@ -106,7 +106,7 @@ describe("Abilities - Flash Fire", () => {
|
||||
.moveset([MoveId.EMBER, MoveId.SPLASH])
|
||||
.enemyAbility(AbilityId.FLASH_FIRE)
|
||||
.ability(AbilityId.NONE);
|
||||
await game.classicMode.startBattle([Species.BLISSEY]);
|
||||
await game.classicMode.startBattle([SpeciesId.BLISSEY]);
|
||||
const blissey = game.scene.getPlayerPokemon()!;
|
||||
const initialHP = 1000;
|
||||
blissey.hp = initialHP;
|
||||
@ -134,8 +134,8 @@ describe("Abilities - Flash Fire", () => {
|
||||
.enemyMoveset(MoveId.EMBER)
|
||||
.enemyAbility(AbilityId.NONE)
|
||||
.ability(AbilityId.FLASH_FIRE)
|
||||
.enemySpecies(Species.BLISSEY);
|
||||
await game.classicMode.startBattle([Species.RATTATA]);
|
||||
.enemySpecies(SpeciesId.BLISSEY);
|
||||
await game.classicMode.startBattle([SpeciesId.RATTATA]);
|
||||
|
||||
const blissey = game.scene.getEnemyPokemon()!;
|
||||
const initialHP = 1000;
|
||||
|
@ -67,7 +67,7 @@ describe("Abilities - Good As Gold", () => {
|
||||
.battleStyle("double")
|
||||
.enemyMoveset([MoveId.STEALTH_ROCK, MoveId.HAZE])
|
||||
.moveset([MoveId.SWORDS_DANCE, MoveId.SAFEGUARD]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP, Species.FEEBAS]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP, SpeciesId.FEEBAS]);
|
||||
const [good_as_gold, ball_fetch] = game.scene.getPlayerField();
|
||||
|
||||
// Force second pokemon to have ball fetch to isolate to a single mon.
|
||||
@ -87,7 +87,7 @@ describe("Abilities - Good As Gold", () => {
|
||||
|
||||
it("should not block field targeted effects in singles", async () => {
|
||||
game.override.battleStyle("single").enemyMoveset([MoveId.SPIKES]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.select(MoveId.SPLASH, 0);
|
||||
await game.phaseInterceptor.to("BerryPhase");
|
||||
@ -97,7 +97,7 @@ describe("Abilities - Good As Gold", () => {
|
||||
|
||||
it("should block the ally's helping hand", async () => {
|
||||
game.override.battleStyle("double").moveset([MoveId.HELPING_HAND, MoveId.TACKLE]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP, Species.FEEBAS]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP, SpeciesId.FEEBAS]);
|
||||
|
||||
game.move.select(MoveId.HELPING_HAND, 0);
|
||||
game.move.select(MoveId.TACKLE, 1);
|
||||
@ -129,7 +129,7 @@ describe("Abilities - Good As Gold", () => {
|
||||
|
||||
it("should not block field targeted effects like rain dance", async () => {
|
||||
game.override.battleStyle("single").enemyMoveset([MoveId.RAIN_DANCE]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.use(MoveId.SPLASH, 0);
|
||||
await game.phaseInterceptor.to("BerryPhase");
|
||||
|
@ -32,7 +32,7 @@ describe("Abilities - Ice Face", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.EISCUE)
|
||||
.enemySpecies(SpeciesId.EISCUE)
|
||||
.enemyAbility(AbilityId.ICE_FACE)
|
||||
.moveset([MoveId.TACKLE, MoveId.ICE_BEAM, MoveId.TOXIC_THREAD, MoveId.HAIL]);
|
||||
});
|
||||
@ -53,7 +53,7 @@ describe("Abilities - Ice Face", () => {
|
||||
|
||||
it("takes no damage from the first hit of multihit physical move and transforms to Noice", async () => {
|
||||
game.override.moveset([MoveId.SURGING_STRIKES]).enemyLevel(1);
|
||||
await game.classicMode.startBattle([Species.HITMONLEE]);
|
||||
await game.classicMode.startBattle([SpeciesId.HITMONLEE]);
|
||||
|
||||
game.move.select(MoveId.SURGING_STRIKES);
|
||||
|
||||
@ -199,9 +199,9 @@ describe("Abilities - Ice Face", () => {
|
||||
game.override
|
||||
.startingWave(4)
|
||||
.startingLevel(4)
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.starterForms({
|
||||
[Species.EISCUE]: noiceForm,
|
||||
[SpeciesId.EISCUE]: noiceForm,
|
||||
});
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.EISCUE]);
|
||||
|
@ -117,7 +117,7 @@ describe("Abilities - Illusion", () => {
|
||||
});
|
||||
|
||||
it("should not break from indirect damage from status, weather or recoil", async () => {
|
||||
game.override.enemySpecies(Species.GIGALITH).enemyAbility(AbilityId.SAND_STREAM);
|
||||
game.override.enemySpecies(SpeciesId.GIGALITH).enemyAbility(AbilityId.SAND_STREAM);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.ZOROARK, SpeciesId.AZUMARILL]);
|
||||
|
||||
@ -131,7 +131,7 @@ describe("Abilities - Illusion", () => {
|
||||
|
||||
it("copies the the name, nickname, gender, shininess, and pokeball from the illusion source", async () => {
|
||||
game.override.enemyMoveset(MoveId.SPLASH);
|
||||
await game.classicMode.startBattle([Species.ABRA, Species.ZOROARK, Species.AXEW]);
|
||||
await game.classicMode.startBattle([SpeciesId.ABRA, SpeciesId.ZOROARK, SpeciesId.AXEW]);
|
||||
|
||||
const axew = game.scene.getPlayerParty().at(2)!;
|
||||
axew.shiny = true;
|
||||
|
@ -162,8 +162,8 @@ describe("Abilities - Imposter", () => {
|
||||
});
|
||||
|
||||
it("should stay transformed with the correct form after reload", async () => {
|
||||
game.override.moveset([MoveId.ABSORB]).enemySpecies(Species.UNOWN);
|
||||
await game.classicMode.startBattle([Species.DITTO]);
|
||||
game.override.moveset([MoveId.ABSORB]).enemySpecies(SpeciesId.UNOWN);
|
||||
await game.classicMode.startBattle([SpeciesId.DITTO]);
|
||||
|
||||
const enemy = game.scene.getEnemyPokemon()!;
|
||||
|
||||
|
@ -89,7 +89,7 @@ describe("Abilities - Intimidate", () => {
|
||||
|
||||
it("should not activate again if there is no switch or new entry", async () => {
|
||||
game.override.startingWave(2).moveset([MoveId.SPLASH]);
|
||||
await game.classicMode.startBattle([Species.MIGHTYENA, Species.POOCHYENA]);
|
||||
await game.classicMode.startBattle([SpeciesId.MIGHTYENA, SpeciesId.POOCHYENA]);
|
||||
|
||||
const playerPokemon = game.scene.getPlayerPokemon()!;
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
|
@ -24,7 +24,7 @@ describe("Abilities - Intrepid Sword", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.ZACIAN)
|
||||
.enemySpecies(SpeciesId.ZACIAN)
|
||||
.enemyAbility(AbilityId.INTREPID_SWORD)
|
||||
.ability(AbilityId.INTREPID_SWORD);
|
||||
});
|
||||
|
@ -186,7 +186,7 @@ describe("Abilities - Libero", () => {
|
||||
});
|
||||
|
||||
test("ability applies correctly even if the pokemon's move fails because of type immunity", async () => {
|
||||
game.override.moveset([MoveId.TACKLE]).enemySpecies(Species.GASTLY);
|
||||
game.override.moveset([MoveId.TACKLE]).enemySpecies(SpeciesId.GASTLY);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
@ -259,7 +259,7 @@ describe("Abilities - Libero", () => {
|
||||
});
|
||||
|
||||
test("ability applies correctly even if the pokemon's Trick-or-Treat fails", async () => {
|
||||
game.override.moveset([MoveId.TRICK_OR_TREAT]).enemySpecies(Species.GASTLY);
|
||||
game.override.moveset([MoveId.TRICK_OR_TREAT]).enemySpecies(SpeciesId.GASTLY);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
|
@ -47,7 +47,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
});
|
||||
|
||||
it("should not bounce moves while the target is in the semi-invulnerable state", async () => {
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.use(MoveId.GROWL);
|
||||
await game.move.forceEnemyMove(MoveId.FLY);
|
||||
@ -59,7 +59,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
|
||||
it("should individually bounce back multi-target moves", async () => {
|
||||
game.override.battleStyle("double");
|
||||
await game.classicMode.startBattle([Species.MAGIKARP, Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP, SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.use(MoveId.GROWL, 0);
|
||||
game.move.use(MoveId.SPLASH, 1);
|
||||
@ -111,7 +111,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
|
||||
it("should bounce back a spread status move against both pokemon", async () => {
|
||||
game.override.battleStyle("double").enemyMoveset([MoveId.SPLASH]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP, Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP, SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.use(MoveId.GROWL, 0);
|
||||
game.move.use(MoveId.SPLASH, 1);
|
||||
@ -122,7 +122,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
|
||||
it("should only bounce spikes back once in doubles when both targets have magic bounce", async () => {
|
||||
game.override.battleStyle("double").moveset([MoveId.SPIKES]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.select(MoveId.SPIKES);
|
||||
await game.phaseInterceptor.to("BerryPhase");
|
||||
@ -133,7 +133,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
|
||||
it("should bounce spikes even when the target is protected", async () => {
|
||||
game.override.moveset([MoveId.SPIKES]).enemyMoveset([MoveId.PROTECT]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.select(MoveId.SPIKES);
|
||||
await game.phaseInterceptor.to("BerryPhase");
|
||||
@ -142,7 +142,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
|
||||
it("should not bounce spikes when the target is in the semi-invulnerable state", async () => {
|
||||
game.override.moveset([MoveId.SPIKES]).enemyMoveset([MoveId.FLY]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.select(MoveId.SPIKES);
|
||||
await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]);
|
||||
@ -152,7 +152,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
|
||||
it("should not bounce back curse", async () => {
|
||||
game.override.moveset([MoveId.CURSE]);
|
||||
await game.classicMode.startBattle([Species.GASTLY]);
|
||||
await game.classicMode.startBattle([SpeciesId.GASTLY]);
|
||||
|
||||
game.move.select(MoveId.CURSE);
|
||||
await game.phaseInterceptor.to("BerryPhase");
|
||||
@ -163,7 +163,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
it("should not cause encore to be interrupted after bouncing", async () => {
|
||||
game.override.moveset([MoveId.SPLASH, MoveId.GROWL, MoveId.ENCORE]).enemyMoveset([MoveId.TACKLE, MoveId.GROWL]);
|
||||
// game.override.ability(AbilityId.MOLD_BREAKER);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
const playerPokemon = game.scene.getPlayerPokemon()!;
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
|
||||
@ -218,7 +218,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
// TODO: stomping tantrum should consider moves that were bounced.
|
||||
it.todo("should cause stomping tantrum to double in power when the last move was bounced", async () => {
|
||||
game.override.battleStyle("single").moveset([MoveId.STOMPING_TANTRUM, MoveId.CHARM]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
const stomping_tantrum = allMoves[MoveId.STOMPING_TANTRUM];
|
||||
vi.spyOn(stomping_tantrum, "calculateBattlePower");
|
||||
@ -234,7 +234,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
// TODO: stomping tantrum should consider moves that were bounced
|
||||
it.todo("should boost enemy's stomping tantrum after failed bounce", async () => {
|
||||
game.override.enemyMoveset([MoveId.STOMPING_TANTRUM, MoveId.SPLASH, MoveId.CHARM]);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR]);
|
||||
|
||||
const stomping_tantrum = allMoves[MoveId.STOMPING_TANTRUM];
|
||||
const enemy = game.scene.getEnemyPokemon()!;
|
||||
@ -255,7 +255,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
it("should respect immunities when bouncing a move", async () => {
|
||||
vi.spyOn(allMoves[MoveId.THUNDER_WAVE], "accuracy", "get").mockReturnValue(100);
|
||||
game.override.moveset([MoveId.THUNDER_WAVE, MoveId.GROWL]).ability(AbilityId.SOUNDPROOF);
|
||||
await game.classicMode.startBattle([Species.PHANPY]);
|
||||
await game.classicMode.startBattle([SpeciesId.PHANPY]);
|
||||
|
||||
// Turn 1 - thunder wave immunity test
|
||||
game.move.select(MoveId.THUNDER_WAVE);
|
||||
@ -326,7 +326,7 @@ describe("Abilities - Magic Bounce", () => {
|
||||
|
||||
it("should not bounce back status moves that hit through semi-invulnerable states", async () => {
|
||||
game.override.moveset([MoveId.TOXIC, MoveId.CHARM]);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR]);
|
||||
|
||||
game.move.select(MoveId.TOXIC);
|
||||
await game.move.selectEnemyMove(MoveId.FLY);
|
||||
|
@ -35,7 +35,7 @@ describe("Abilities - Magic Guard", () => {
|
||||
.moveset([MoveId.SPLASH])
|
||||
.startingLevel(100)
|
||||
/** Enemy Pokemon overrides */
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemyLevel(100);
|
||||
@ -205,7 +205,7 @@ describe("Abilities - Magic Guard", () => {
|
||||
});
|
||||
|
||||
it("Magic Guard prevents against damage from volatile status effects", async () => {
|
||||
await game.classicMode.startBattle([Species.DUSKULL]);
|
||||
await game.classicMode.startBattle([SpeciesId.DUSKULL]);
|
||||
game.override.moveset([MoveId.CURSE]).enemyAbility(AbilityId.MAGIC_GUARD);
|
||||
|
||||
const leadPokemon = game.scene.getPlayerPokemon()!;
|
||||
|
@ -38,7 +38,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Player side + single battle Intimidate - opponent loses stats", async () => {
|
||||
game.override.ability(AbilityId.MIRROR_ARMOR).enemyAbility(AbilityId.INTIMIDATE);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR]);
|
||||
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
const userPokemon = game.scene.getPlayerPokemon()!;
|
||||
@ -54,7 +54,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Enemy side + single battle Intimidate - player loses stats", async () => {
|
||||
game.override.enemyAbility(AbilityId.MIRROR_ARMOR).ability(AbilityId.INTIMIDATE);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR]);
|
||||
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
const userPokemon = game.scene.getPlayerPokemon()!;
|
||||
@ -70,7 +70,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Player side + double battle Intimidate - opponents each lose -2 atk", async () => {
|
||||
game.override.battleStyle("double").ability(AbilityId.MIRROR_ARMOR).enemyAbility(AbilityId.INTIMIDATE);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR, Species.CHARMANDER]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR, SpeciesId.CHARMANDER]);
|
||||
|
||||
const [enemy1, enemy2] = game.scene.getEnemyField();
|
||||
const [player1, player2] = game.scene.getPlayerField();
|
||||
@ -90,7 +90,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Enemy side + double battle Intimidate - players each lose -2 atk", async () => {
|
||||
game.override.battleStyle("double").enemyAbility(AbilityId.MIRROR_ARMOR).ability(AbilityId.INTIMIDATE);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR, Species.CHARMANDER]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR, SpeciesId.CHARMANDER]);
|
||||
|
||||
const [enemy1, enemy2] = game.scene.getEnemyField();
|
||||
const [player1, player2] = game.scene.getPlayerField();
|
||||
@ -110,7 +110,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Player side + single battle Intimidate + Tickle - opponent loses stats", async () => {
|
||||
game.override.ability(AbilityId.MIRROR_ARMOR).enemyAbility(AbilityId.INTIMIDATE);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR]);
|
||||
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
const userPokemon = game.scene.getPlayerPokemon()!;
|
||||
@ -128,7 +128,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Player side + double battle Intimidate + Tickle - opponents each lose -3 atk, -1 def", async () => {
|
||||
game.override.battleStyle("double").ability(AbilityId.MIRROR_ARMOR).enemyAbility(AbilityId.INTIMIDATE);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR, Species.CHARMANDER]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR, SpeciesId.CHARMANDER]);
|
||||
|
||||
const [enemy1, enemy2] = game.scene.getEnemyField();
|
||||
const [player1, player2] = game.scene.getPlayerField();
|
||||
@ -151,7 +151,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Enemy side + single battle Intimidate + Tickle - player loses stats", async () => {
|
||||
game.override.enemyAbility(AbilityId.MIRROR_ARMOR).ability(AbilityId.INTIMIDATE);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR]);
|
||||
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
const userPokemon = game.scene.getPlayerPokemon()!;
|
||||
@ -169,7 +169,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Player side + single battle Intimidate + oppoenent has white smoke - no one loses stats", async () => {
|
||||
game.override.enemyAbility(AbilityId.WHITE_SMOKE).ability(AbilityId.MIRROR_ARMOR);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR]);
|
||||
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
const userPokemon = game.scene.getPlayerPokemon()!;
|
||||
@ -187,7 +187,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Enemy side + single battle Intimidate + player has white smoke - no one loses stats", async () => {
|
||||
game.override.ability(AbilityId.WHITE_SMOKE).enemyAbility(AbilityId.MIRROR_ARMOR);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR]);
|
||||
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
const userPokemon = game.scene.getPlayerPokemon()!;
|
||||
@ -241,7 +241,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Both sides have mirror armor - does not loop, player loses attack", async () => {
|
||||
game.override.enemyAbility(AbilityId.MIRROR_ARMOR).ability(AbilityId.MIRROR_ARMOR).ability(AbilityId.INTIMIDATE);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR]);
|
||||
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
const userPokemon = game.scene.getPlayerPokemon()!;
|
||||
@ -275,7 +275,7 @@ describe("Ability - Mirror Armor", () => {
|
||||
|
||||
it("Double battle + sticky web applied player side - player switches out and enemy 1 should lose -1 speed", async () => {
|
||||
game.override.battleStyle("double").ability(AbilityId.MIRROR_ARMOR);
|
||||
await game.classicMode.startBattle([Species.BULBASAUR, Species.CHARMANDER, Species.SQUIRTLE]);
|
||||
await game.classicMode.startBattle([SpeciesId.BULBASAUR, SpeciesId.CHARMANDER, SpeciesId.SQUIRTLE]);
|
||||
|
||||
const [enemy1, enemy2] = game.scene.getEnemyField();
|
||||
const [player1, player2] = game.scene.getPlayerField();
|
||||
|
@ -29,7 +29,7 @@ describe("Abilities - Moxie", () => {
|
||||
const moveToUse = MoveId.AERIAL_ACE;
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.RATTATA)
|
||||
.enemySpecies(SpeciesId.RATTATA)
|
||||
.enemyAbility(AbilityId.MOXIE)
|
||||
.ability(AbilityId.MOXIE)
|
||||
.startingLevel(2000)
|
||||
|
@ -30,7 +30,7 @@ describe("Abilities - Parental Bond", () => {
|
||||
.battleStyle("single")
|
||||
.disableCrits()
|
||||
.ability(AbilityId.PARENTAL_BOND)
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyAbility(AbilityId.FUR_COAT)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.startingLevel(100)
|
||||
@ -62,7 +62,7 @@ describe("Abilities - Parental Bond", () => {
|
||||
});
|
||||
|
||||
it("should apply secondary effects to both strikes", async () => {
|
||||
game.override.moveset([MoveId.POWER_UP_PUNCH]).enemySpecies(Species.AMOONGUSS);
|
||||
game.override.moveset([MoveId.POWER_UP_PUNCH]).enemySpecies(SpeciesId.AMOONGUSS);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
|
@ -24,9 +24,9 @@ describe("Abilities - Perish Song", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.disableCrits()
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.starterSpecies(Species.CURSOLA)
|
||||
.starterSpecies(SpeciesId.CURSOLA)
|
||||
.ability(AbilityId.PERISH_BODY)
|
||||
.moveset([MoveId.SPLASH])
|
||||
.enemyMoveset([MoveId.AQUA_JET]);
|
||||
@ -46,7 +46,7 @@ describe("Abilities - Perish Song", () => {
|
||||
|
||||
it("should trigger even when fainting", async () => {
|
||||
game.override.enemyLevel(100).startingLevel(1);
|
||||
await game.classicMode.startBattle([Species.CURSOLA, Species.FEEBAS]);
|
||||
await game.classicMode.startBattle([SpeciesId.CURSOLA, SpeciesId.FEEBAS]);
|
||||
const magikarp = game.scene.getEnemyPokemon();
|
||||
|
||||
game.move.select(MoveId.SPLASH);
|
||||
@ -90,7 +90,7 @@ describe("Abilities - Perish Song", () => {
|
||||
.enemyMoveset([MoveId.PERISH_SONG, MoveId.AQUA_JET, MoveId.SPLASH])
|
||||
.moveset([MoveId.WHIRLWIND, MoveId.SPLASH])
|
||||
.startingWave(5);
|
||||
await game.classicMode.startBattle([Species.CURSOLA]);
|
||||
await game.classicMode.startBattle([SpeciesId.CURSOLA]);
|
||||
const cursola = game.scene.getPlayerPokemon();
|
||||
|
||||
game.move.select(MoveId.WHIRLWIND);
|
||||
|
@ -30,7 +30,7 @@ describe("Abilities - Power Spot", () => {
|
||||
.battleStyle("double")
|
||||
.moveset([MoveId.TACKLE, MoveId.BREAKING_SWIPE, MoveId.SPLASH, MoveId.DAZZLING_GLEAM])
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemySpecies(Species.SHUCKLE)
|
||||
.enemySpecies(SpeciesId.SHUCKLE)
|
||||
.enemyAbility(AbilityId.BALL_FETCH);
|
||||
});
|
||||
|
||||
|
@ -186,7 +186,7 @@ describe("Abilities - Protean", () => {
|
||||
});
|
||||
|
||||
test("ability applies correctly even if the pokemon's move fails because of type immunity", async () => {
|
||||
game.override.moveset([MoveId.TACKLE]).enemySpecies(Species.GASTLY);
|
||||
game.override.moveset([MoveId.TACKLE]).enemySpecies(SpeciesId.GASTLY);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
@ -259,7 +259,7 @@ describe("Abilities - Protean", () => {
|
||||
});
|
||||
|
||||
test("ability applies correctly even if the pokemon's Trick-or-Treat fails", async () => {
|
||||
game.override.moveset([MoveId.TRICK_OR_TREAT]).enemySpecies(Species.GASTLY);
|
||||
game.override.moveset([MoveId.TRICK_OR_TREAT]).enemySpecies(SpeciesId.GASTLY);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
|
@ -25,11 +25,11 @@ describe("Abilities - Quick Draw", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.starterSpecies(Species.MAGIKARP)
|
||||
.starterSpecies(SpeciesId.MAGIKARP)
|
||||
.ability(AbilityId.QUICK_DRAW)
|
||||
.moveset([MoveId.TACKLE, MoveId.TAIL_WHIP])
|
||||
.enemyLevel(100)
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.enemyMoveset([MoveId.TACKLE]);
|
||||
|
||||
|
@ -25,9 +25,9 @@ describe("Abilities - Sand Spit", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.disableCrits()
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.starterSpecies(Species.SILICOBRA)
|
||||
.starterSpecies(SpeciesId.SILICOBRA)
|
||||
.ability(AbilityId.SAND_SPIT)
|
||||
.moveset([MoveId.SPLASH, MoveId.COIL]);
|
||||
});
|
||||
|
@ -24,7 +24,7 @@ describe("Abilities - Screen Cleaner", () => {
|
||||
|
||||
beforeEach(() => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override.battleStyle("single").ability(AbilityId.SCREEN_CLEANER).enemySpecies(Species.SHUCKLE);
|
||||
game.override.battleStyle("single").ability(AbilityId.SCREEN_CLEANER).enemySpecies(SpeciesId.SHUCKLE);
|
||||
});
|
||||
|
||||
it("removes Aurora Veil", async () => {
|
||||
|
@ -25,9 +25,9 @@ describe("Abilities - Seed Sower", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.disableCrits()
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.starterSpecies(Species.ARBOLIVA)
|
||||
.starterSpecies(SpeciesId.ARBOLIVA)
|
||||
.ability(AbilityId.SEED_SOWER)
|
||||
.moveset([MoveId.SPLASH]);
|
||||
});
|
||||
|
@ -33,7 +33,7 @@ describe("Abilities - Shield Dust", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.ONIX)
|
||||
.enemySpecies(SpeciesId.ONIX)
|
||||
.enemyAbility(AbilityId.SHIELD_DUST)
|
||||
.startingLevel(100)
|
||||
.moveset(MoveId.AIR_SLASH)
|
||||
|
@ -37,7 +37,7 @@ describe("Abilities - SHIELDS DOWN", () => {
|
||||
const meteorForm = 0,
|
||||
coreForm = 7;
|
||||
game.override.startingWave(4).starterForms({
|
||||
[Species.MINIOR]: coreForm,
|
||||
[SpeciesId.MINIOR]: coreForm,
|
||||
});
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP, SpeciesId.MINIOR]);
|
||||
@ -154,7 +154,7 @@ describe("Abilities - SHIELDS DOWN", () => {
|
||||
|
||||
// the `NoTransformAbilityAbAttr` attribute is not checked anywhere, so this test cannot pass.
|
||||
test.todo("ditto should not be immune to status after transforming", async () => {
|
||||
game.override.enemySpecies(Species.DITTO).enemyAbility(AbilityId.IMPOSTER).moveset([MoveId.SPLASH, MoveId.SPORE]);
|
||||
game.override.enemySpecies(SpeciesId.DITTO).enemyAbility(AbilityId.IMPOSTER).moveset([MoveId.SPLASH, MoveId.SPORE]);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.MINIOR]);
|
||||
|
||||
@ -171,8 +171,8 @@ describe("Abilities - SHIELDS DOWN", () => {
|
||||
.moveset([MoveId.THUNDERBOLT])
|
||||
.startingLevel(100)
|
||||
.startingWave(5)
|
||||
.enemySpecies(Species.MINIOR);
|
||||
await game.classicMode.startBattle([Species.REGIELEKI]);
|
||||
.enemySpecies(SpeciesId.MINIOR);
|
||||
await game.classicMode.startBattle([SpeciesId.REGIELEKI]);
|
||||
const minior = game.scene.getEnemyPokemon()!;
|
||||
|
||||
game.move.select(MoveId.THUNDERBOLT);
|
||||
|
@ -30,7 +30,7 @@ describe("Abilities - Steely Spirit", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.enemySpecies(Species.SHUCKLE)
|
||||
.enemySpecies(SpeciesId.SHUCKLE)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.moveset([MoveId.IRON_HEAD, MoveId.SPLASH])
|
||||
.enemyMoveset(MoveId.SPLASH);
|
||||
|
@ -25,10 +25,10 @@ describe("Abilities - Sturdy", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.starterSpecies(Species.LUCARIO)
|
||||
.starterSpecies(SpeciesId.LUCARIO)
|
||||
.startingLevel(100)
|
||||
.moveset([MoveId.CLOSE_COMBAT, MoveId.FISSURE])
|
||||
.enemySpecies(Species.ARON)
|
||||
.enemySpecies(SpeciesId.ARON)
|
||||
.enemyLevel(5)
|
||||
.enemyAbility(AbilityId.STURDY);
|
||||
});
|
||||
|
@ -69,7 +69,7 @@ describe("Abilities - Sweet Veil", () => {
|
||||
});
|
||||
|
||||
it("prevents the user and its allies already drowsy due to Yawn from falling asleep.", async () => {
|
||||
game.override.enemySpecies(Species.PIKACHU).enemyLevel(5).startingLevel(5).enemyMoveset(MoveId.SPLASH);
|
||||
game.override.enemySpecies(SpeciesId.PIKACHU).enemyLevel(5).startingLevel(5).enemyMoveset(MoveId.SPLASH);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.SHUCKLE, SpeciesId.SHUCKLE, SpeciesId.SWIRLIX]);
|
||||
|
||||
|
@ -36,7 +36,7 @@ describe("Abilities - Volt Absorb", () => {
|
||||
.moveset([moveToUse])
|
||||
.ability(ability)
|
||||
.enemyMoveset([MoveId.SPLASH, MoveId.NONE, MoveId.NONE, MoveId.NONE])
|
||||
.enemySpecies(Species.DUSKULL)
|
||||
.enemySpecies(SpeciesId.DUSKULL)
|
||||
.enemyAbility(AbilityId.BALL_FETCH);
|
||||
|
||||
await game.classicMode.startBattle();
|
||||
@ -56,7 +56,7 @@ describe("Abilities - Volt Absorb", () => {
|
||||
game.override
|
||||
.moveset(MoveId.THUNDERBOLT)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyAbility(AbilityId.VOLT_ABSORB);
|
||||
|
||||
await game.classicMode.startBattle();
|
||||
@ -77,7 +77,7 @@ describe("Abilities - Volt Absorb", () => {
|
||||
game.override
|
||||
.moveset(MoveId.THUNDERBOLT)
|
||||
.enemyMoveset(MoveId.DIVE)
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyAbility(AbilityId.VOLT_ABSORB);
|
||||
|
||||
await game.classicMode.startBattle();
|
||||
|
@ -25,14 +25,14 @@ describe("Abilities - Wind Power", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.SHIFTRY)
|
||||
.enemySpecies(SpeciesId.SHIFTRY)
|
||||
.enemyAbility(AbilityId.WIND_POWER)
|
||||
.moveset([MoveId.TAILWIND, MoveId.SPLASH, MoveId.PETAL_BLIZZARD, MoveId.SANDSTORM])
|
||||
.enemyMoveset(MoveId.SPLASH);
|
||||
});
|
||||
|
||||
it("becomes charged when hit by wind moves", async () => {
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
const shiftry = game.scene.getEnemyPokemon()!;
|
||||
|
||||
expect(shiftry.getTag(BattlerTagType.CHARGED)).toBeUndefined();
|
||||
@ -44,7 +44,7 @@ describe("Abilities - Wind Power", () => {
|
||||
});
|
||||
|
||||
it("becomes charged when Tailwind takes effect on its side", async () => {
|
||||
game.override.ability(AbilityId.WIND_POWER).enemySpecies(Species.MAGIKARP);
|
||||
game.override.ability(AbilityId.WIND_POWER).enemySpecies(SpeciesId.MAGIKARP);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.SHIFTRY]);
|
||||
const shiftry = game.scene.getPlayerPokemon()!;
|
||||
@ -58,7 +58,7 @@ describe("Abilities - Wind Power", () => {
|
||||
});
|
||||
|
||||
it("does not become charged when Tailwind takes effect on opposing side", async () => {
|
||||
game.override.enemySpecies(Species.MAGIKARP).ability(AbilityId.WIND_POWER);
|
||||
game.override.enemySpecies(SpeciesId.MAGIKARP).ability(AbilityId.WIND_POWER);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.SHIFTRY]);
|
||||
const magikarp = game.scene.getEnemyPokemon()!;
|
||||
|
@ -30,7 +30,7 @@ describe("Weather - Fog", () => {
|
||||
.moveset([MoveId.TACKLE])
|
||||
.ability(AbilityId.BALL_FETCH)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyMoveset([MoveId.SPLASH]);
|
||||
});
|
||||
|
||||
|
@ -27,7 +27,7 @@ describe("Weather - Strong Winds", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.startingLevel(10)
|
||||
.enemySpecies(Species.TAILLOW)
|
||||
.enemySpecies(SpeciesId.TAILLOW)
|
||||
.enemyAbility(AbilityId.DELTA_STREAM)
|
||||
.moveset([MoveId.THUNDERBOLT, MoveId.ICE_BEAM, MoveId.ROCK_SLIDE]);
|
||||
});
|
||||
|
@ -26,7 +26,7 @@ describe("Battle order", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.MEWTWO)
|
||||
.enemySpecies(SpeciesId.MEWTWO)
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.ability(AbilityId.INSOMNIA)
|
||||
.moveset([MoveId.TACKLE]);
|
||||
|
@ -88,22 +88,22 @@ describe("Test Battle Phase", () => {
|
||||
}, 20000);
|
||||
|
||||
it("do attack wave 3 - single battle - regular - OHKO", async () => {
|
||||
game.override.enemySpecies(Species.RATTATA).startingLevel(2000).battleStyle("single");
|
||||
await game.classicMode.startBattle([Species.MEWTWO]);
|
||||
game.override.enemySpecies(SpeciesId.RATTATA).startingLevel(2000).battleStyle("single");
|
||||
await game.classicMode.startBattle([SpeciesId.MEWTWO]);
|
||||
game.move.use(MoveId.TACKLE);
|
||||
await game.phaseInterceptor.to("SelectModifierPhase");
|
||||
}, 20000);
|
||||
|
||||
it("do attack wave 3 - single battle - regular - NO OHKO with opponent using non damage attack", async () => {
|
||||
game.override
|
||||
.enemySpecies(Species.RATTATA)
|
||||
.enemySpecies(SpeciesId.RATTATA)
|
||||
.startingLevel(5)
|
||||
.startingWave(3)
|
||||
.moveset([MoveId.TACKLE])
|
||||
.enemyAbility(AbilityId.HYDRATION)
|
||||
.enemyMoveset([MoveId.TAIL_WHIP, MoveId.TAIL_WHIP, MoveId.TAIL_WHIP, MoveId.TAIL_WHIP])
|
||||
.battleStyle("single");
|
||||
await game.classicMode.startBattle([Species.MEWTWO]);
|
||||
await game.classicMode.startBattle([SpeciesId.MEWTWO]);
|
||||
game.move.select(MoveId.TACKLE);
|
||||
await game.phaseInterceptor.runFrom(EnemyCommandPhase).to(TurnInitPhase, false);
|
||||
}, 20000);
|
||||
@ -239,15 +239,15 @@ describe("Test Battle Phase", () => {
|
||||
const moveToUse = MoveId.SPLASH;
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.starterSpecies(Species.MEWTWO)
|
||||
.enemySpecies(Species.RATTATA)
|
||||
.starterSpecies(SpeciesId.MEWTWO)
|
||||
.enemySpecies(SpeciesId.RATTATA)
|
||||
.enemyAbility(AbilityId.HYDRATION)
|
||||
.ability(AbilityId.ZEN_MODE)
|
||||
.startingLevel(2000)
|
||||
.startingWave(3)
|
||||
.moveset([moveToUse])
|
||||
.enemyMoveset([MoveId.TACKLE, MoveId.TACKLE, MoveId.TACKLE, MoveId.TACKLE]);
|
||||
await game.classicMode.startBattle([Species.DARMANITAN, Species.CHARIZARD]);
|
||||
await game.classicMode.startBattle([SpeciesId.DARMANITAN, SpeciesId.CHARIZARD]);
|
||||
|
||||
game.move.select(moveToUse);
|
||||
await game.phaseInterceptor.to(DamageAnimPhase, false);
|
||||
@ -260,14 +260,14 @@ describe("Test Battle Phase", () => {
|
||||
const moveToUse = MoveId.SPLASH;
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.RATTATA)
|
||||
.enemySpecies(SpeciesId.RATTATA)
|
||||
.enemyAbility(AbilityId.HYDRATION)
|
||||
.ability(AbilityId.ZEN_MODE)
|
||||
.startingLevel(2000)
|
||||
.startingWave(3)
|
||||
.moveset([moveToUse])
|
||||
.enemyMoveset([MoveId.TACKLE, MoveId.TACKLE, MoveId.TACKLE, MoveId.TACKLE]);
|
||||
await game.classicMode.startBattle([Species.MEWTWO]);
|
||||
await game.classicMode.startBattle([SpeciesId.MEWTWO]);
|
||||
const turn = game.scene.currentBattle.turn;
|
||||
game.move.select(moveToUse);
|
||||
await game.toNextTurn();
|
||||
|
@ -30,7 +30,7 @@ describe("Evolution", () => {
|
||||
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.startingLevel(60);
|
||||
});
|
||||
|
@ -27,7 +27,7 @@ describe("Moves - Baneful Bunker", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.moveset(MoveId.SLASH)
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.enemyMoveset(MoveId.BANEFUL_BUNKER)
|
||||
.startingLevel(100)
|
||||
|
@ -60,7 +60,7 @@ describe("Moves - Baton Pass", () => {
|
||||
it("passes stat stage buffs when AI uses it", async () => {
|
||||
// arrange
|
||||
game.override.startingWave(5).enemyMoveset([MoveId.NASTY_PLOT, MoveId.BATON_PASS]);
|
||||
await game.classicMode.startBattle([Species.RAICHU, Species.SHUCKLE]);
|
||||
await game.classicMode.startBattle([SpeciesId.RAICHU, SpeciesId.SHUCKLE]);
|
||||
|
||||
// round 1 - ai buffs
|
||||
game.move.select(MoveId.SPLASH);
|
||||
|
@ -130,7 +130,7 @@ describe("Moves - Beak Blast", () => {
|
||||
|
||||
it("should not burn a long reach enemy that hits the user with a contact move", async () => {
|
||||
game.override.enemyAbility(AbilityId.LONG_REACH).enemyMoveset([MoveId.FALSE_SWIPE]).enemyLevel(100);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
game.move.select(MoveId.BEAK_BLAST);
|
||||
await game.phaseInterceptor.to("BerryPhase", false);
|
||||
const enemyPokemon = game.scene.getEnemyPokemon()!;
|
||||
|
@ -25,7 +25,7 @@ describe("Moves - Beat Up", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyLevel(100)
|
||||
.enemyMoveset([MoveId.SPLASH])
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
|
@ -28,7 +28,7 @@ describe("Moves - Ceaseless Edge", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.RATTATA)
|
||||
.enemySpecies(SpeciesId.RATTATA)
|
||||
.enemyAbility(AbilityId.RUN_AWAY)
|
||||
.enemyPassiveAbility(AbilityId.RUN_AWAY)
|
||||
.startingLevel(100)
|
||||
|
@ -28,8 +28,8 @@ describe("Moves - Clangorous Soul", () => {
|
||||
beforeEach(() => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.starterSpecies(Species.MAGIKARP)
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.starterSpecies(SpeciesId.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.startingLevel(100)
|
||||
.enemyLevel(100)
|
||||
.moveset([MoveId.CLANGOROUS_SOUL])
|
||||
|
@ -29,7 +29,7 @@ describe("Moves - Crafty Shield", () => {
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.moveset([MoveId.CRAFTY_SHIELD, MoveId.SPLASH, MoveId.SWORDS_DANCE])
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyMoveset([MoveId.GROWL])
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.startingLevel(100)
|
||||
@ -71,7 +71,7 @@ describe("Moves - Crafty Shield", () => {
|
||||
});
|
||||
|
||||
test("should protect the user and allies from moves that ignore other protection", async () => {
|
||||
game.override.enemySpecies(Species.DUSCLOPS).enemyMoveset([MoveId.CURSE]);
|
||||
game.override.enemySpecies(SpeciesId.DUSCLOPS).enemyMoveset([MoveId.CURSE]);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.CHARIZARD, SpeciesId.BLASTOISE]);
|
||||
|
||||
|
@ -32,12 +32,12 @@ describe("Moves - Dragon Rage", () => {
|
||||
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.starterSpecies(Species.SNORLAX)
|
||||
.starterSpecies(SpeciesId.SNORLAX)
|
||||
.moveset([MoveId.DRAGON_RAGE])
|
||||
.ability(AbilityId.BALL_FETCH)
|
||||
.passiveAbility(AbilityId.BALL_FETCH)
|
||||
.startingLevel(100)
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.enemyPassiveAbility(AbilityId.BALL_FETCH)
|
||||
|
@ -29,8 +29,8 @@ describe("Moves - FILLET AWAY", () => {
|
||||
beforeEach(() => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.starterSpecies(Species.MAGIKARP)
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.starterSpecies(SpeciesId.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.startingLevel(100)
|
||||
.enemyLevel(100)
|
||||
.moveset([MoveId.FILLET_AWAY])
|
||||
|
@ -30,11 +30,11 @@ describe("Moves - Fissure", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.disableCrits()
|
||||
.starterSpecies(Species.SNORLAX)
|
||||
.starterSpecies(SpeciesId.SNORLAX)
|
||||
.moveset([MoveId.FISSURE])
|
||||
.passiveAbility(AbilityId.BALL_FETCH)
|
||||
.startingLevel(100)
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemyPassiveAbility(AbilityId.BALL_FETCH)
|
||||
.enemyLevel(100);
|
||||
|
@ -41,7 +41,7 @@ describe("Moves - Flame Burst", () => {
|
||||
.disableCrits()
|
||||
.ability(AbilityId.UNNERVE)
|
||||
.startingWave(4)
|
||||
.enemySpecies(Species.SHUCKLE)
|
||||
.enemySpecies(SpeciesId.SHUCKLE)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.enemyMoveset([MoveId.SPLASH]);
|
||||
});
|
||||
|
@ -26,9 +26,9 @@ describe("Moves - Follow Me", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.starterSpecies(Species.AMOONGUSS)
|
||||
.starterSpecies(SpeciesId.AMOONGUSS)
|
||||
.ability(AbilityId.BALL_FETCH)
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.startingLevel(100)
|
||||
.enemyLevel(100)
|
||||
.moveset([MoveId.FOLLOW_ME, MoveId.RAGE_POWDER, MoveId.SPOTLIGHT, MoveId.QUICK_ATTACK])
|
||||
|
@ -28,7 +28,7 @@ describe("Moves - Gastro Acid", () => {
|
||||
.enemyLevel(100)
|
||||
.ability(AbilityId.NONE)
|
||||
.moveset([MoveId.GASTRO_ACID, MoveId.WATER_GUN, MoveId.SPLASH, MoveId.CORE_ENFORCER])
|
||||
.enemySpecies(Species.BIDOOF)
|
||||
.enemySpecies(SpeciesId.BIDOOF)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemyAbility(AbilityId.WATER_ABSORB);
|
||||
});
|
||||
|
@ -24,7 +24,7 @@ describe("Moves - Glaive Rush", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.disableCrits()
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.enemyMoveset([MoveId.GLAIVE_RUSH])
|
||||
.ability(AbilityId.BALL_FETCH)
|
||||
@ -32,7 +32,7 @@ describe("Moves - Glaive Rush", () => {
|
||||
});
|
||||
|
||||
it("takes double damage from attacks", async () => {
|
||||
await game.classicMode.startBattle([Species.KLINK]);
|
||||
await game.classicMode.startBattle([SpeciesId.KLINK]);
|
||||
|
||||
const enemy = game.scene.getEnemyPokemon()!;
|
||||
enemy.hp = 1000;
|
||||
@ -47,7 +47,7 @@ describe("Moves - Glaive Rush", () => {
|
||||
});
|
||||
|
||||
it("always gets hit by attacks", async () => {
|
||||
await game.classicMode.startBattle([Species.KLINK]);
|
||||
await game.classicMode.startBattle([SpeciesId.KLINK]);
|
||||
|
||||
const enemy = game.scene.getEnemyPokemon()!;
|
||||
enemy.hp = 1000;
|
||||
@ -60,7 +60,7 @@ describe("Moves - Glaive Rush", () => {
|
||||
|
||||
it("interacts properly with multi-lens", async () => {
|
||||
game.override.startingHeldItems([{ name: "MULTI_LENS", count: 2 }]).enemyMoveset([MoveId.AVALANCHE]);
|
||||
await game.classicMode.startBattle([Species.KLINK]);
|
||||
await game.classicMode.startBattle([SpeciesId.KLINK]);
|
||||
|
||||
const player = game.scene.getPlayerPokemon()!;
|
||||
const enemy = game.scene.getEnemyPokemon()!;
|
||||
@ -80,7 +80,7 @@ describe("Moves - Glaive Rush", () => {
|
||||
|
||||
it("secondary effects only last until next move", async () => {
|
||||
game.override.enemyMoveset([MoveId.SHADOW_SNEAK]);
|
||||
await game.classicMode.startBattle([Species.KLINK]);
|
||||
await game.classicMode.startBattle([SpeciesId.KLINK]);
|
||||
|
||||
const player = game.scene.getPlayerPokemon()!;
|
||||
const enemy = game.scene.getEnemyPokemon()!;
|
||||
@ -105,7 +105,7 @@ describe("Moves - Glaive Rush", () => {
|
||||
|
||||
it("secondary effects are removed upon switching", async () => {
|
||||
game.override.enemyMoveset([MoveId.SHADOW_SNEAK]);
|
||||
await game.classicMode.startBattle([Species.KLINK, Species.FEEBAS]);
|
||||
await game.classicMode.startBattle([SpeciesId.KLINK, SpeciesId.FEEBAS]);
|
||||
|
||||
const player = game.scene.getPlayerPokemon()!;
|
||||
const enemy = game.scene.getEnemyPokemon()!;
|
||||
@ -128,7 +128,7 @@ describe("Moves - Glaive Rush", () => {
|
||||
game.override
|
||||
.moveset([MoveId.SHADOW_SNEAK, MoveId.PROTECT, MoveId.SPLASH, MoveId.GLAIVE_RUSH])
|
||||
.enemyMoveset([MoveId.GLAIVE_RUSH, MoveId.SPLASH]);
|
||||
await game.classicMode.startBattle([Species.KLINK]);
|
||||
await game.classicMode.startBattle([SpeciesId.KLINK]);
|
||||
|
||||
const player = game.scene.getPlayerPokemon()!;
|
||||
const enemy = game.scene.getEnemyPokemon()!;
|
||||
|
@ -30,7 +30,7 @@ describe("Moves - Hard Press", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.ability(AbilityId.BALL_FETCH)
|
||||
.enemySpecies(Species.MUNCHLAX)
|
||||
.enemySpecies(SpeciesId.MUNCHLAX)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.moveset([MoveId.HARD_PRESS]);
|
||||
|
@ -25,7 +25,7 @@ describe("Moves - Haze", () => {
|
||||
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.RATTATA)
|
||||
.enemySpecies(SpeciesId.RATTATA)
|
||||
.enemyLevel(100)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
|
@ -29,7 +29,7 @@ describe("Moves - Hyper Beam", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.ability(AbilityId.BALL_FETCH)
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.enemyMoveset([MoveId.SPLASH])
|
||||
.enemyLevel(100)
|
||||
|
@ -24,7 +24,7 @@ describe("Moves - Lunar Blessing", () => {
|
||||
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.enemySpecies(Species.SHUCKLE)
|
||||
.enemySpecies(SpeciesId.SHUCKLE)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.moveset([MoveId.LUNAR_BLESSING, MoveId.SPLASH])
|
||||
|
@ -57,7 +57,7 @@ describe("Moves - Magic Coat", () => {
|
||||
|
||||
it("should not reflect moves used on the next turn", async () => {
|
||||
game.override.moveset([MoveId.GROWL, MoveId.SPLASH]).enemyMoveset([MoveId.MAGIC_COAT, MoveId.SPLASH]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
// turn 1
|
||||
game.move.select(MoveId.SPLASH);
|
||||
@ -82,7 +82,7 @@ describe("Moves - Magic Coat", () => {
|
||||
|
||||
it("should individually bounce back multi-target moves when used by both targets in doubles", async () => {
|
||||
game.override.battleStyle("double").moveset([MoveId.GROWL, MoveId.SPLASH]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP, Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP, SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.select(MoveId.GROWL, 0);
|
||||
game.move.select(MoveId.SPLASH, 1);
|
||||
@ -97,7 +97,7 @@ describe("Moves - Magic Coat", () => {
|
||||
.battleStyle("double")
|
||||
.moveset([MoveId.GROWL, MoveId.SPLASH])
|
||||
.enemyMoveset([MoveId.SPLASH, MoveId.MAGIC_COAT]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP, Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP, SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.select(MoveId.GROWL, 0);
|
||||
game.move.select(MoveId.SPLASH, 1);
|
||||
@ -125,7 +125,7 @@ describe("Moves - Magic Coat", () => {
|
||||
.ability(AbilityId.MAGIC_BOUNCE)
|
||||
.moveset([MoveId.GROWL, MoveId.MAGIC_COAT])
|
||||
.enemyMoveset([MoveId.SPLASH, MoveId.MAGIC_COAT]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP, Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP, SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.select(MoveId.MAGIC_COAT, 0);
|
||||
game.move.select(MoveId.GROWL, 1);
|
||||
@ -148,7 +148,7 @@ describe("Moves - Magic Coat", () => {
|
||||
|
||||
it("should still bounce back a move from a mold breaker user", async () => {
|
||||
game.override.ability(AbilityId.MOLD_BREAKER).moveset([MoveId.GROWL]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.select(MoveId.GROWL);
|
||||
await game.phaseInterceptor.to("BerryPhase");
|
||||
@ -159,7 +159,7 @@ describe("Moves - Magic Coat", () => {
|
||||
|
||||
it("should only bounce spikes back once when both targets use magic coat in doubles", async () => {
|
||||
game.override.battleStyle("double").moveset([MoveId.SPIKES]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
game.move.select(MoveId.SPIKES);
|
||||
await game.phaseInterceptor.to("BerryPhase");
|
||||
@ -170,7 +170,7 @@ describe("Moves - Magic Coat", () => {
|
||||
|
||||
it("should not bounce back curse", async () => {
|
||||
game.override.moveset([MoveId.CURSE]);
|
||||
await game.classicMode.startBattle([Species.GASTLY]);
|
||||
await game.classicMode.startBattle([SpeciesId.GASTLY]);
|
||||
|
||||
game.move.select(MoveId.CURSE);
|
||||
await game.phaseInterceptor.to("BerryPhase");
|
||||
@ -205,7 +205,7 @@ describe("Moves - Magic Coat", () => {
|
||||
// TODO: stomping tantrum should consider moves that were bounced.
|
||||
it.todo("should cause stomping tantrum to double in power when the last move was bounced", async () => {
|
||||
game.override.battleStyle("single").moveset([MoveId.STOMPING_TANTRUM, MoveId.CHARM]);
|
||||
await game.classicMode.startBattle([Species.MAGIKARP]);
|
||||
await game.classicMode.startBattle([SpeciesId.MAGIKARP]);
|
||||
|
||||
const stomping_tantrum = allMoves[MoveId.STOMPING_TANTRUM];
|
||||
vi.spyOn(stomping_tantrum, "calculateBattlePower");
|
||||
@ -247,7 +247,7 @@ describe("Moves - Magic Coat", () => {
|
||||
it("should respect immunities when bouncing a move", async () => {
|
||||
vi.spyOn(allMoves[MoveId.THUNDER_WAVE], "accuracy", "get").mockReturnValue(100);
|
||||
game.override.moveset([MoveId.THUNDER_WAVE, MoveId.GROWL]).ability(AbilityId.SOUNDPROOF);
|
||||
await game.classicMode.startBattle([Species.PHANPY]);
|
||||
await game.classicMode.startBattle([SpeciesId.PHANPY]);
|
||||
|
||||
// Turn 1 - thunder wave immunity test
|
||||
game.move.select(MoveId.THUNDER_WAVE);
|
||||
|
@ -27,7 +27,7 @@ describe("Moves - Make It Rain", () => {
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.moveset([MoveId.MAKE_IT_RAIN, MoveId.SPLASH])
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.startingLevel(100)
|
||||
|
@ -29,7 +29,7 @@ describe("Moves - Mat Block", () => {
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.moveset([MoveId.MAT_BLOCK, MoveId.SPLASH])
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyMoveset([MoveId.TACKLE])
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.startingLevel(100)
|
||||
|
@ -30,7 +30,7 @@ describe("Moves - Protect", () => {
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.moveset([MoveId.PROTECT])
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.enemyMoveset([MoveId.TACKLE])
|
||||
.startingLevel(100)
|
||||
|
@ -26,10 +26,10 @@ describe("Moves - Purify", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.starterSpecies(Species.PYUKUMUKU)
|
||||
.starterSpecies(SpeciesId.PYUKUMUKU)
|
||||
.startingLevel(10)
|
||||
.moveset([MoveId.PURIFY, MoveId.SIZZLY_SLIDE])
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyLevel(10)
|
||||
.enemyMoveset([MoveId.SPLASH, MoveId.NONE, MoveId.NONE, MoveId.NONE]);
|
||||
});
|
||||
|
@ -28,7 +28,7 @@ describe("Moves - Quick Guard", () => {
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.moveset([MoveId.QUICK_GUARD, MoveId.SPLASH, MoveId.FOLLOW_ME])
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyMoveset([MoveId.QUICK_ATTACK])
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.startingLevel(100)
|
||||
|
@ -24,7 +24,7 @@ describe("Moves - Rage Powder", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.startingLevel(100)
|
||||
.enemyLevel(100)
|
||||
.moveset([MoveId.FOLLOW_ME, MoveId.RAGE_POWDER, MoveId.SPOTLIGHT, MoveId.QUICK_ATTACK])
|
||||
|
@ -25,9 +25,9 @@ describe("Moves - Rollout", () => {
|
||||
game.override
|
||||
.disableCrits()
|
||||
.battleStyle("single")
|
||||
.starterSpecies(Species.RATTATA)
|
||||
.starterSpecies(SpeciesId.RATTATA)
|
||||
.ability(AbilityId.BALL_FETCH)
|
||||
.enemySpecies(Species.BIDOOF)
|
||||
.enemySpecies(SpeciesId.BIDOOF)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.startingLevel(100)
|
||||
.enemyLevel(100)
|
||||
|
@ -27,7 +27,7 @@ describe("Moves - Roost", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.RELICANTH)
|
||||
.enemySpecies(SpeciesId.RELICANTH)
|
||||
.startingLevel(100)
|
||||
.enemyLevel(100)
|
||||
.enemyMoveset(MoveId.EARTHQUAKE)
|
||||
|
@ -34,7 +34,7 @@ describe("Moves - Spit Up", () => {
|
||||
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.RATTATA)
|
||||
.enemySpecies(SpeciesId.RATTATA)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemyAbility(AbilityId.NONE)
|
||||
.enemyLevel(2000)
|
||||
|
@ -24,8 +24,8 @@ describe("Moves - Spotlight", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.starterSpecies(Species.AMOONGUSS)
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.starterSpecies(SpeciesId.AMOONGUSS)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.startingLevel(100)
|
||||
.enemyLevel(100)
|
||||
.moveset([MoveId.FOLLOW_ME, MoveId.RAGE_POWDER, MoveId.SPOTLIGHT, MoveId.QUICK_ATTACK])
|
||||
|
@ -29,7 +29,7 @@ describe("Moves - Stockpile", () => {
|
||||
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.RATTATA)
|
||||
.enemySpecies(SpeciesId.RATTATA)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.enemyAbility(AbilityId.NONE)
|
||||
.startingLevel(2000)
|
||||
|
@ -36,9 +36,9 @@ describe("Moves - Tackle", () => {
|
||||
|
||||
it("TACKLE against ghost", async () => {
|
||||
const moveToUse = MoveId.TACKLE;
|
||||
game.override.enemySpecies(Species.GENGAR);
|
||||
game.override.enemySpecies(SpeciesId.GENGAR);
|
||||
|
||||
await game.classicMode.startBattle([Species.MIGHTYENA]);
|
||||
await game.classicMode.startBattle([SpeciesId.MIGHTYENA]);
|
||||
const hpOpponent = game.scene.currentBattle.enemyParty[0].hp;
|
||||
game.move.select(moveToUse);
|
||||
await game.phaseInterceptor.runFrom(EnemyCommandPhase).to(TurnEndPhase);
|
||||
|
@ -27,7 +27,7 @@ describe("Moves - Tail whip", () => {
|
||||
const moveToUse = MoveId.TAIL_WHIP;
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.RATTATA)
|
||||
.enemySpecies(SpeciesId.RATTATA)
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.ability(AbilityId.INSOMNIA)
|
||||
.startingLevel(2000)
|
||||
|
@ -26,7 +26,7 @@ describe("Moves - Thousand Arrows", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.TOGETIC)
|
||||
.enemySpecies(SpeciesId.TOGETIC)
|
||||
.startingLevel(100)
|
||||
.enemyLevel(100)
|
||||
.moveset([MoveId.THOUSAND_ARROWS])
|
||||
@ -51,7 +51,7 @@ describe("Moves - Thousand Arrows", () => {
|
||||
});
|
||||
|
||||
it("move should hit and ground targets with Levitate", async () => {
|
||||
game.override.enemySpecies(Species.SNORLAX).enemyAbility(AbilityId.LEVITATE);
|
||||
game.override.enemySpecies(SpeciesId.SNORLAX).enemyAbility(AbilityId.LEVITATE);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.ILLUMISE]);
|
||||
|
||||
|
@ -27,10 +27,10 @@ describe("Moves - Tidy Up", () => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.battleStyle("single")
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyAbility(AbilityId.BALL_FETCH)
|
||||
.enemyMoveset(MoveId.SPLASH)
|
||||
.starterSpecies(Species.FEEBAS)
|
||||
.starterSpecies(SpeciesId.FEEBAS)
|
||||
.ability(AbilityId.BALL_FETCH)
|
||||
.moveset([MoveId.TIDY_UP])
|
||||
.startingLevel(50);
|
||||
|
@ -76,7 +76,7 @@ describe("Moves - Toxic", () => {
|
||||
|
||||
it("moves other than Toxic should not hit semi-invulnerable targets even if user is Poison-type", async () => {
|
||||
game.override.moveset(MoveId.SWIFT).enemyMoveset(MoveId.FLY);
|
||||
await game.classicMode.startBattle([Species.TOXAPEX]);
|
||||
await game.classicMode.startBattle([SpeciesId.TOXAPEX]);
|
||||
|
||||
game.move.select(MoveId.SWIFT);
|
||||
await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]);
|
||||
|
@ -28,7 +28,7 @@ describe("Moves - Wide Guard", () => {
|
||||
game.override
|
||||
.battleStyle("double")
|
||||
.moveset([MoveId.WIDE_GUARD, MoveId.SPLASH, MoveId.SURF])
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemySpecies(SpeciesId.SNORLAX)
|
||||
.enemyMoveset(MoveId.SWIFT)
|
||||
.enemyAbility(AbilityId.INSOMNIA)
|
||||
.startingLevel(100)
|
||||
|
@ -36,7 +36,7 @@ describe("UI - Transfer Items", () => {
|
||||
{ name: "BERRY", count: 2, type: BerryType.LUM },
|
||||
])
|
||||
.moveset([MoveId.DRAGON_CLAW])
|
||||
.enemySpecies(Species.MAGIKARP)
|
||||
.enemySpecies(SpeciesId.MAGIKARP)
|
||||
.enemyMoveset([MoveId.SPLASH]);
|
||||
|
||||
await game.classicMode.startBattle([SpeciesId.RAYQUAZA, SpeciesId.RAYQUAZA, SpeciesId.RAYQUAZA]);
|
||||
|
Loading…
Reference in New Issue
Block a user