PkmnLib.NET/PkmnLib.Dynamic/ScriptHandling/Script.cs

36 lines
971 B
C#

using PkmnLib.Dynamic.Libraries;
using PkmnLib.Dynamic.Models;
using PkmnLib.Static.Utils;
namespace PkmnLib.Dynamic.ScriptHandling;
public abstract class Script
{
private bool _markedForDeletion;
private int _suppressCount;
public abstract string Name { get; }
public bool MarkForDeletion() => _markedForDeletion = true;
public bool IsMarkedForDeletion() => _markedForDeletion;
public int SuppressCount() => _suppressCount;
public bool IsSuppressed() => _suppressCount > 0;
public void Suppress() => _suppressCount++;
public void Unsuppress() => _suppressCount--;
public virtual void Stack()
{
}
public virtual void OnRemove()
{
}
public virtual void OnInitialize(IDynamicLibrary library, IReadOnlyDictionary<StringKey, object> parameters)
{
}
public virtual void ChangeStabModifier(IExecutingMove executingMove, IPokemon target, byte hitNumber,
ref float modifier)
{
}
}