mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-08-17 12:59:25 +02:00
Move check to trySetStatus()
and update test
This commit is contained in:
parent
1f9842328a
commit
c76784135e
@ -3525,9 +3525,6 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||||||
*/
|
*/
|
||||||
canSetStatus(effect: StatusEffect | undefined, quiet: boolean = false, overrideStatus: boolean = false, sourcePokemon: Pokemon | null = null, ignoreField: boolean = false): boolean {
|
canSetStatus(effect: StatusEffect | undefined, quiet: boolean = false, overrideStatus: boolean = false, sourcePokemon: Pokemon | null = null, ignoreField: boolean = false): boolean {
|
||||||
if (effect !== StatusEffect.FAINT) {
|
if (effect !== StatusEffect.FAINT) {
|
||||||
if (this.isFainted()) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (overrideStatus ? this.status?.effect === effect : this.status) {
|
if (overrideStatus ? this.status?.effect === effect : this.status) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -3609,6 +3606,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||||||
if (!this.canSetStatus(effect, asPhase, false, sourcePokemon)) {
|
if (!this.canSetStatus(effect, asPhase, false, sourcePokemon)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (this.isFainted() && effect !== StatusEffect.FAINT) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* If this Pokemon falls asleep or freezes in the middle of a multi-hit attack,
|
* If this Pokemon falls asleep or freezes in the middle of a multi-hit attack,
|
||||||
|
@ -434,7 +434,8 @@ describe("Status Effects", () => {
|
|||||||
const player = game.scene.getPlayerPokemon()!;
|
const player = game.scene.getPlayerPokemon()!;
|
||||||
player.hp = 0;
|
player.hp = 0;
|
||||||
|
|
||||||
expect(player.canSetStatus(StatusEffect.BURN)).toBe(false);
|
expect(player.trySetStatus(StatusEffect.BURN)).toBe(false);
|
||||||
|
expect(player.status?.effect).not.toBe(StatusEffect.BURN);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user