holopy3/Assets/Plugins/RootMotion/Shared Scripts/Singleton.cs
2020-12-10 15:25:12 +01:00

25 lines
491 B
C#

using UnityEngine;
using System.Collections;
namespace RootMotion {
/// <summary>
/// The base abstract Singleton class.
/// </summary>
public abstract class Singleton<T>: MonoBehaviour where T: Singleton<T> {
private static T sInstance = null;
public static T instance {
get {
return sInstance;
}
}
protected virtual void Awake() {
if (sInstance != null) Debug.LogError(name + "error: already initialized", this);
sInstance = (T)this;
}
}
}