namespace PkmnLib.Plugin.Gen7.Scripts.Pokemon; [Script(ScriptCategory.Pokemon, "protect")] public class ProtectionEffectScript : Script, IScriptBlockIncomingHit { /// public virtual void BlockIncomingHit(IExecutingMove executingMove, IPokemon target, byte hitIndex, ref bool block) { if (target.BattleData == null) return; if (!executingMove.UseMove.HasFlag("protect")) return; var args = new CustomTriggers.BypassProtectionArgs(executingMove, target, hitIndex, false); executingMove.User.RunScriptHook(x => x.CustomTrigger(CustomTriggers.BypassProtection, args)); if (args.Bypass) return; block = true; } }