PkmnLib.NET/PkmnLib.Dynamic/ScriptHandling/Registry/ScriptAttribute.cs

29 lines
730 B
C#

using JetBrains.Annotations;
using PkmnLib.Static.Utils;
namespace PkmnLib.Dynamic.ScriptHandling.Registry;
/// <summary>
/// Helper attribute to register scripts through reflection.
/// </summary>
[AttributeUsage(AttributeTargets.Class)]
[MeansImplicitUse]
public class ScriptAttribute : Attribute
{
/// <summary>
/// The category of the script it should be registered in.
/// </summary>
public ScriptCategory Category { get; }
/// <summary>
/// The name of the script.
/// </summary>
public StringKey Name { get; }
/// <inheritdoc cref="ScriptAttribute"/>
public ScriptAttribute(ScriptCategory category, string name)
{
Category = category;
Name = name;
}
}