mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-07-17 13:52:18 +02:00
Changed resetStatus to have a condition whether to include confusion or not, defaults to false so you manually have to add
This commit is contained in:
parent
a6eb739b1a
commit
99c5654db5
@ -2147,9 +2147,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Resets the status of a pokemon
|
* Resets the status of a pokemon
|
||||||
* @param revive whether revive should be cured, defaults to true
|
* @param {boolean} revive Whether revive should be cured; defaults to true.
|
||||||
|
* @param {boolean} confusion Whether resetStatus should include confusion or not; defaults to false.
|
||||||
*/
|
*/
|
||||||
resetStatus(revive: boolean = true): void {
|
resetStatus(revive: boolean = true, confusion: boolean = false): void {
|
||||||
const lastStatus = this.status?.effect;
|
const lastStatus = this.status?.effect;
|
||||||
if (!revive && lastStatus === StatusEffect.FAINT) {
|
if (!revive && lastStatus === StatusEffect.FAINT) {
|
||||||
return;
|
return;
|
||||||
@ -2160,9 +2161,11 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||||||
if (this.getTag(BattlerTagType.NIGHTMARE))
|
if (this.getTag(BattlerTagType.NIGHTMARE))
|
||||||
this.lapseTag(BattlerTagType.NIGHTMARE);
|
this.lapseTag(BattlerTagType.NIGHTMARE);
|
||||||
}
|
}
|
||||||
|
if(confusion) {
|
||||||
if (this.getTag(BattlerTagType.CONFUSED))
|
if (this.getTag(BattlerTagType.CONFUSED))
|
||||||
this.lapseTag(BattlerTagType.CONFUSED);
|
this.lapseTag(BattlerTagType.CONFUSED);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
primeSummonData(summonDataPrimer: PokemonSummonData): void {
|
primeSummonData(summonDataPrimer: PokemonSummonData): void {
|
||||||
this.summonDataPrimer = summonDataPrimer;
|
this.summonDataPrimer = summonDataPrimer;
|
||||||
|
@ -225,7 +225,7 @@ export class PokemonHpRestoreModifierType extends PokemonModifierType {
|
|||||||
constructor(localeKey: string, iconImage: string, restorePoints: integer, restorePercent: integer, healStatus: boolean = false, newModifierFunc?: NewModifierFunc, selectFilter?: PokemonSelectFilter, group?: string) {
|
constructor(localeKey: string, iconImage: string, restorePoints: integer, restorePercent: integer, healStatus: boolean = false, newModifierFunc?: NewModifierFunc, selectFilter?: PokemonSelectFilter, group?: string) {
|
||||||
super(localeKey, iconImage, newModifierFunc || ((_type, args) => new Modifiers.PokemonHpRestoreModifier(this, (args[0] as PlayerPokemon).id, this.restorePoints, this.restorePercent, this.healStatus, false)),
|
super(localeKey, iconImage, newModifierFunc || ((_type, args) => new Modifiers.PokemonHpRestoreModifier(this, (args[0] as PlayerPokemon).id, this.restorePoints, this.restorePercent, this.healStatus, false)),
|
||||||
selectFilter || ((pokemon: PlayerPokemon) => {
|
selectFilter || ((pokemon: PlayerPokemon) => {
|
||||||
if (!pokemon.hp || (pokemon.hp >= pokemon.getMaxHp() && (!pokemon.status && !pokemon.getTag(BattlerTagType.CONFUSED))))
|
if (!pokemon.hp || (pokemon.hp >= pokemon.getMaxHp() && (!this.healStatus || (!pokemon.status && !pokemon.getTag(BattlerTagType.CONFUSED)))))
|
||||||
return PartyUiHandler.NoEffectMessage;
|
return PartyUiHandler.NoEffectMessage;
|
||||||
return null;
|
return null;
|
||||||
}), group || 'potion');
|
}), group || 'potion');
|
||||||
|
@ -1035,9 +1035,8 @@ export class PokemonHpRestoreModifier extends ConsumablePokemonModifier {
|
|||||||
if (!this.fainted)
|
if (!this.fainted)
|
||||||
restorePoints = Math.floor(restorePoints * (args[1] as number));
|
restorePoints = Math.floor(restorePoints * (args[1] as number));
|
||||||
if (this.fainted || this.healStatus)
|
if (this.fainted || this.healStatus)
|
||||||
pokemon.resetStatus();
|
pokemon.resetStatus(true, true)
|
||||||
pokemon.hp = Math.min(pokemon.hp + Math.max(Math.ceil(Math.max(Math.floor((this.restorePercent * 0.01) * pokemon.getMaxHp()), restorePoints)), 1), pokemon.getMaxHp());
|
pokemon.hp = Math.min(pokemon.hp + Math.max(Math.ceil(Math.max(Math.floor((this.restorePercent * 0.01) * pokemon.getMaxHp()), restorePoints)), 1), pokemon.getMaxHp());
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1052,8 +1051,7 @@ export class PokemonStatusHealModifier extends ConsumablePokemonModifier {
|
|||||||
|
|
||||||
apply(args: any[]): boolean {
|
apply(args: any[]): boolean {
|
||||||
const pokemon = args[0] as Pokemon;
|
const pokemon = args[0] as Pokemon;
|
||||||
pokemon.resetStatus();
|
pokemon.resetStatus(true, true);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user