mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-07-16 21:32:18 +02:00
Add unthaw to all damaging fire moves
This commit is contained in:
parent
d4ffb3bcd3
commit
d76d7d5989
@ -387,6 +387,14 @@ export default class Move implements Localizable {
|
|||||||
export class AttackMove extends Move {
|
export class AttackMove extends Move {
|
||||||
constructor(id: Moves, type: Type, category: MoveCategory, power: integer, accuracy: integer, pp: integer, chance: integer, priority: integer, generation: integer) {
|
constructor(id: Moves, type: Type, category: MoveCategory, power: integer, accuracy: integer, pp: integer, chance: integer, priority: integer, generation: integer) {
|
||||||
super(id, type, category, MoveTarget.NEAR_OTHER, power, accuracy, pp, chance, priority, generation);
|
super(id, type, category, MoveTarget.NEAR_OTHER, power, accuracy, pp, chance, priority, generation);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@link https://bulbapedia.bulbagarden.net/wiki/Freeze_(status_condition)}
|
||||||
|
* > All damaging Fire-type moves can now thaw a frozen target, regardless of whether or not they have a chance to burn;
|
||||||
|
*/
|
||||||
|
if (this.type === Type.FIRE) {
|
||||||
|
this.attrs.push(new HealStatusEffectAttr(false, StatusEffect.FREEZE));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
getTargetBenefitScore(user: Pokemon, target: Pokemon, move: Move): integer {
|
getTargetBenefitScore(user: Pokemon, target: Pokemon, move: Move): integer {
|
||||||
@ -1569,6 +1577,17 @@ export class StealEatBerryAttr extends EatBerryAttr {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param selfTarget - Whether this move targets the user
|
||||||
|
* @param ...effects - Status Effects to heal
|
||||||
|
* @example
|
||||||
|
* ```
|
||||||
|
* // A move that unthaws target
|
||||||
|
* const thawSelf = new HealStatusEffectAttr(false, StatusEffect.FREEZE)
|
||||||
|
* // Pokemon uses 'Refresh' on itself
|
||||||
|
* const cureAll = new HealStatusEffectAttr(true, StatusEffect.BURN, StatusEffect.PARALYSIS, StatusEffect.POISON)
|
||||||
|
* ```
|
||||||
|
*/
|
||||||
export class HealStatusEffectAttr extends MoveEffectAttr {
|
export class HealStatusEffectAttr extends MoveEffectAttr {
|
||||||
private effects: StatusEffect[];
|
private effects: StatusEffect[];
|
||||||
|
|
||||||
@ -1583,7 +1602,7 @@ export class HealStatusEffectAttr extends MoveEffectAttr {
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
const pokemon = this.selfTarget ? user : target;
|
const pokemon = this.selfTarget ? user : target;
|
||||||
if (pokemon.status && this.effects.includes(pokemon.status.effect)) {
|
if (pokemon.hp > 0 && pokemon.status && this.effects.includes(pokemon.status.effect)) {
|
||||||
pokemon.scene.queueMessage(getPokemonMessage(pokemon, getStatusEffectHealText(pokemon.status.effect)));
|
pokemon.scene.queueMessage(getPokemonMessage(pokemon, getStatusEffectHealText(pokemon.status.effect)));
|
||||||
pokemon.resetStatus();
|
pokemon.resetStatus();
|
||||||
pokemon.updateInfo();
|
pokemon.updateInfo();
|
||||||
|
Loading…
Reference in New Issue
Block a user