SharedVRCStuff/AAC/AACCore/Editor/LayerGroup.cs
2026-02-04 21:35:29 -05:00

31 lines
No EOL
1,018 B
C#

using System.Collections.Generic;
using nadena.dev.ndmf;
namespace gay.lilyy.aaccore {
public abstract class LayerGroup
{
public virtual bool enabled { get { return true; } }
public virtual bool experimental { get { return false; } }
private AACLayerGroupLogger _logger;
protected AACLayerGroupLogger Logger => _logger ??= new AACLayerGroupLogger(SystemName);
private static readonly List<LayerGroup> instances = new();
protected LayerGroup() => instances.Add(this);
public static IEnumerable<LayerGroup> Instances => instances;
public virtual bool shouldWarnIfNotApplicable => true;
public virtual BuildPhase buildPhase => BuildPhase.Generating;
public virtual bool IsApplicable(AACAssets assets) {
return true;
}
public abstract string DisplayName { get; }
public abstract string SystemName { get; }
public abstract void Run(AACAssets assets);
}
}