Implement rapid spin

This commit is contained in:
ReneGV 2024-05-01 02:03:22 -06:00
parent 77caa8ece5
commit dd86863bfe

View File

@ -2861,6 +2861,24 @@ export class RemoveScreensAttr extends MoveEffectAttr {
} }
} }
export class RemoveEntryHazardsAttr extends MoveEffectAttr {
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
if (!super.apply(user, target, move, args))
return false;
let arenaSide = user.isPlayer() ? ArenaTagSide.PLAYER : ArenaTagSide.ENEMY;
user.scene.arena.removeTagOnSide(ArenaTagType.STEALTH_ROCK, arenaSide);
user.scene.arena.removeTagOnSide(ArenaTagType.SPIKES, arenaSide);
user.scene.arena.removeTagOnSide(ArenaTagType.TOXIC_SPIKES, arenaSide);
user.scene.arena.removeTagOnSide(ArenaTagType.STICKY_WEB, arenaSide);
return true
}
}
export class ForceSwitchOutAttr extends MoveEffectAttr { export class ForceSwitchOutAttr extends MoveEffectAttr {
private user: boolean; private user: boolean;
private batonPass: boolean; private batonPass: boolean;
@ -4397,7 +4415,7 @@ export function initMoves() {
BattlerTagType.SEEDED, BattlerTagType.SEEDED,
BattlerTagType.INFESTATION BattlerTagType.INFESTATION
], true) ], true)
.partial(), .attr(RemoveEntryHazardsAttr),
new StatusMove(Moves.SWEET_SCENT, Type.NORMAL, 100, 20, -1, 0, 2) new StatusMove(Moves.SWEET_SCENT, Type.NORMAL, 100, 20, -1, 0, 2)
.attr(StatChangeAttr, BattleStat.EVA, -1) .attr(StatChangeAttr, BattleStat.EVA, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES), .target(MoveTarget.ALL_NEAR_ENEMIES),