Add test case

This commit is contained in:
Dean 2025-05-07 13:08:09 -07:00
parent 5faad7ce73
commit 787e7d6d07

View File

@ -65,7 +65,7 @@ describe("Abilities - Illusion", () => {
expect(!!zorua.summonData.illusion).equals(false); expect(!!zorua.summonData.illusion).equals(false);
}); });
it("break with neutralizing gas", async () => { it("breaks with neutralizing gas", async () => {
game.override.enemyAbility(Abilities.NEUTRALIZING_GAS); game.override.enemyAbility(Abilities.NEUTRALIZING_GAS);
await game.classicMode.startBattle([Species.KOFFING]); await game.classicMode.startBattle([Species.KOFFING]);
@ -74,6 +74,20 @@ describe("Abilities - Illusion", () => {
expect(!!zorua.summonData.illusion).equals(false); expect(!!zorua.summonData.illusion).equals(false);
}); });
it("does not activate if neutralizing gas is active", async () => {
game.override
.enemyAbility(Abilities.NEUTRALIZING_GAS)
.ability(Abilities.ILLUSION)
.moveset(Moves.SPLASH)
.enemyMoveset(Moves.SPLASH);
await game.classicMode.startBattle([Species.MAGIKARP, Species.FEEBAS, Species.MAGIKARP]);
game.doSwitchPokemon(1);
await game.toNextTurn();
expect(game.scene.getPlayerPokemon()!.summonData.illusion).toBeFalsy();
});
it("causes enemy AI to consider the illusion's type instead of the actual type when considering move effectiveness", async () => { it("causes enemy AI to consider the illusion's type instead of the actual type when considering move effectiveness", async () => {
game.override.enemyMoveset([Moves.FLAMETHROWER, Moves.PSYCHIC, Moves.TACKLE]); game.override.enemyMoveset([Moves.FLAMETHROWER, Moves.PSYCHIC, Moves.TACKLE]);
await game.classicMode.startBattle([Species.ZOROARK, Species.FEEBAS]); await game.classicMode.startBattle([Species.ZOROARK, Species.FEEBAS]);