This commit is contained in:
Lylian 2025-01-22 16:28:50 +01:00
parent aba5491294
commit 4266239b28
4 changed files with 7 additions and 7 deletions

View File

@ -442,7 +442,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
this.battleData.illusion = {
active: true,
available: true,
basePokemon: this,
basePokemon: { ...this },
species: getPokemonSpecies(speciesId),
formIndex: lastPokemon.formIndex,
gender: lastPokemon.gender,
@ -473,7 +473,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
this.battleData.illusion = {
active: true,
available: true,
basePokemon: this,
basePokemon: { ...this },
species: randomIllusion,
formIndex: randomIllusion.formIndex,
gender: this.gender

View File

@ -57,6 +57,7 @@ describe("Abilities - Illusion", () => {
const zorua = game.scene.getEnemyPokemon()!;
expect(zorua.battleData.illusion.active).equals(false);
expect(zorua.name).equals("Zorua")
});
it("break after getting ability changed", async () => {
@ -126,7 +127,6 @@ describe("Abilities - Illusion", () => {
await game.phaseInterceptor.to(TurnEndPhase);
const zoroark = game.scene.getPlayerPokemon()!;
//console.log(zoroark.battleData.illusion);
expect(zoroark.name).equals("Axew");
expect(zoroark.getNameToRender()).equals("axew nickname");
expect(zoroark.getGender(false, true)).equals(Gender.FEMALE);

View File

@ -1299,7 +1299,7 @@ class PartySlot extends Phaser.GameObjects.Container {
const fusionShinyStar = globalScene.add.image(0, 0, "shiny_star_small_2");
fusionShinyStar.setOrigin(0, 0);
fusionShinyStar.setPosition(shinyStar.x, shinyStar.y);
fusionShinyStar.setTint(getVariantTint(this.pokemon.battleData.illusion.fusionVariant ?? this.pokemon.fusionVariant));
fusionShinyStar.setTint(getVariantTint(this.pokemon.battleData.illusion.basePokemon?.fusionVariant ?? this.pokemon.fusionVariant));
slotInfoContainer.add(fusionShinyStar);
}

View File

@ -333,8 +333,8 @@ export default class SummaryUiHandler extends UiHandler {
this.pokemonSprite.setPipelineData("teraColor", getTypeRgb(this.pokemon.getTeraType()));
this.pokemonSprite.setPipelineData("ignoreTimeTint", true);
this.pokemonSprite.setPipelineData("spriteKey", this.pokemon.getSpriteKey());
this.pokemonSprite.setPipelineData("shiny", this.pokemon.battleData.illusion.shiny ?? this.pokemon.shiny);
this.pokemonSprite.setPipelineData("variant", this.pokemon.battleData.illusion.variant ?? this.pokemon.variant);
this.pokemonSprite.setPipelineData("shiny", this.pokemon.battleData.illusion.basePokemon?.shiny ?? this.pokemon.shiny);
this.pokemonSprite.setPipelineData("variant", this.pokemon.battleData.illusion.basePokemon?.variant ?? this.pokemon.variant);
[ "spriteColors", "fusionSpriteColors" ].map(k => {
delete this.pokemonSprite.pipelineData[`${k}Base`];
if (this.pokemon?.summonData?.speciesForm) {
@ -405,7 +405,7 @@ export default class SummaryUiHandler extends UiHandler {
this.fusionShinyIcon.setPosition(this.shinyIcon.x, this.shinyIcon.y);
this.fusionShinyIcon.setVisible(doubleShiny);
if (isFusion) {
this.fusionShinyIcon.setTint(getVariantTint(this.pokemon.battleData.illusion.fusionVariant ?? this.pokemon.fusionVariant));
this.fusionShinyIcon.setTint(getVariantTint(this.pokemon.battleData.illusion.basePokemon?.fusionVariant ?? this.pokemon.fusionVariant));
}
this.pokeball.setFrame(getPokeballAtlasKey(this.pokemon.pokeball));