Files
PkmnLib.NET/Plugins/PkmnLib.Plugin.Gen7/Scripts/Pokemon/KingsShieldEffect.cs

22 lines
753 B
C#

using PkmnLib.Static.Moves;
namespace PkmnLib.Plugin.Gen7.Scripts.Pokemon;
[Script(ScriptCategory.Pokemon, "kings_shield")]
public class KingsShieldEffect : ProtectionEffectScript
{
/// <inheritdoc />
public override void BlockIncomingHit(IExecutingMove executingMove, IBattlePokemon target, byte hitIndex,
ref bool block)
{
// Kings Shield doesnt protect from status moves
if (executingMove.UseMove.Category == MoveCategory.Status)
return;
base.BlockIncomingHit(executingMove, target, hitIndex, ref block);
if (block && executingMove.GetHitData(target, hitIndex).IsContact)
{
executingMove.User.ChangeStatBoost(Statistic.Attack, -2, false, false);
}
}
}