using PkmnLib.Static.Utils; namespace PkmnLib.Plugin.Gen7.Scripts.Moves; [Script(ScriptCategory.Move, "magnetic_flux")] public class MagneticFlux : Script { /// public override void OnSecondaryEffect(IExecutingMove move, IPokemon target, byte hit) { var battleData = move.User.BattleData; if (battleData is null) return; foreach (var pokemon in battleData.BattleSide.Pokemon.WhereNotNull()) { if (pokemon.ActiveAbility?.Name != "plus" && pokemon.ActiveAbility?.Name != "minus") continue; EventBatchId batch = new(); pokemon.ChangeStatBoost(Statistic.Defense, 1, pokemon == move.User, batch); pokemon.ChangeStatBoost(Statistic.SpecialDefense, 1, pokemon == move.User, batch); } } }