Make sure specific counter applies to right mon

This commit is contained in:
AJ Fontaine 2025-06-16 16:54:40 -04:00
parent c24a084eb3
commit fd3c965cfd
2 changed files with 5 additions and 1 deletions

View File

@ -206,7 +206,7 @@ export class SpeciesEvolutionCondition {
case EvoCondKey.HELD_ITEM:
return pokemon.getHeldItems().some(m => m.is("SpeciesStatBoosterModifier") && (m.type as SpeciesStatBoosterModifierType).key === cond.itemKey);
case EvoCondKey.USE_MOVE_COUNT:
return pokemon.getHeldItems().some(m => m.is("MoveTrackerModifier") && m.getStackCount() >= cond.value);
return pokemon.getHeldItems().some(m => m.is("MoveTrackerModifier") && m.shouldApply(pokemon, cond.move) && m.getStackCount() >= cond.value);
}
});
}

View File

@ -983,6 +983,10 @@ export class MoveTrackerModifier extends PokemonHeldItemModifier {
return super.getArgs().concat([this.species, this.move, this.required]);
}
override shouldApply(pokemon?: Pokemon, ...args: unknown[]): boolean {
return (pokemon?.hasSpecies(this.species) && (args[0] as MoveId) === this.move) || false;
}
/**
* Applies the {@linkcode MoveTrackerModifier}
* @returns always `true`