PkmnLib.NET/Plugins/PkmnLib.Plugin.Gen7/Scripts/Pokemon/ProtectionFailureScript.cs

27 lines
701 B
C#

namespace PkmnLib.Plugin.Gen7.Scripts.Pokemon;
/// <summary>
/// Attached script for <see cref="ProtectionEffectScript"/> to keep track of the consecutive turns of using Protect,
/// or protect-like moves.
/// </summary>
[Script(ScriptCategory.Pokemon, "protection_failure")]
public class ProtectionFailureScript : Script
{
public int ProtectTurns { get; set; }
public bool UsedProtect { get; set; }
/// <inheritdoc />
public override void OnBeforeTurnStart(ITurnChoice choice)
{
UsedProtect = false;
}
/// <inheritdoc />
public override void OnEndTurn(IBattle battle)
{
if (!UsedProtect)
{
RemoveSelf();
}
}
}