add pokemon.getPokeball()

This commit is contained in:
Lylian 2025-04-06 17:55:08 +02:00
parent f2a120a848
commit db63776147
4 changed files with 13 additions and 6 deletions

View File

@ -558,6 +558,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
}
}
getPokeball(useIllusion = false){
if(useIllusion){
return this.summonData?.illusion?.pokeball ?? this.pokeball
} else {
return this.pokeball
}
}
init(): void {
this.fieldPosition = FieldPosition.CENTER;
this.initBattleInfo();

View File

@ -128,7 +128,7 @@ export class SummonPhase extends PartyMemberPokemonPhase {
this.player ? 36 : 248,
this.player ? 80 : 44,
"pb",
getPokeballAtlasKey(pokemon.summonData?.illusion?.pokeball ?? pokemon.pokeball),
getPokeballAtlasKey(pokemon.getPokeball(true)),
);
pokeball.setVisible(false);
pokeball.setOrigin(0.5, 0.625);
@ -180,7 +180,7 @@ export class SummonPhase extends PartyMemberPokemonPhase {
addPokeballOpenParticles(
pokemon.x,
pokemon.y - 16,
pokemon.summonData?.illusion?.pokeball ?? pokemon.pokeball,
pokemon.getPokeball(true),
);
globalScene.updateModifiers(this.player);
globalScene.updateFieldScale();
@ -189,7 +189,7 @@ export class SummonPhase extends PartyMemberPokemonPhase {
pokemon.setVisible(true);
pokemon.getSprite().setVisible(true);
pokemon.setScale(0.5);
pokemon.tint(getPokeballTintColor(pokemon.summonData?.illusion?.pokeball ?? pokemon.pokeball));
pokemon.tint(getPokeballTintColor(pokemon.getPokeball(true)));
pokemon.untint(250, "Sine.easeIn");
globalScene.updateFieldScale();
globalScene.tweens.add({

View File

@ -105,7 +105,7 @@ export class SwitchSummonPhase extends SummonPhase {
);
globalScene.playSound("se/pb_rel");
pokemon.hideInfo();
pokemon.tint(getPokeballTintColor(pokemon.summonData?.illusion?.pokeball ?? pokemon.pokeball), 1, 250, "Sine.easeIn");
pokemon.tint(getPokeballTintColor(pokemon.getPokeball(true)), 1, 250, "Sine.easeIn");
globalScene.tweens.add({
targets: pokemon,
duration: 250,

View File

@ -135,11 +135,10 @@ describe("Abilities - Illusion", () => {
const zoroark = game.scene.getPlayerPokemon()!;
console.log("OOOOOOOOOOOOOOOOOOOOO", !!zoroark.summonData.illusion)
expect(zoroark.name).equals("Axew");
expect(zoroark.getNameToRender()).equals("axew nickname");
expect(zoroark.getGender(false, true)).equals(Gender.FEMALE);
expect(zoroark.isShiny(true)).equals(true);
expect(zoroark.summonData?.illusion?.pokeball).equals(PokeballType.GREAT_BALL);
expect(zoroark.getPokeball(true)).equals(PokeballType.GREAT_BALL);
});
});