holopy3/Assets/Plugins/RootMotion/Shared Scripts/Singleton.cs

26 lines
491 B
C#
Raw Permalink Normal View History

2020-12-10 14:25:12 +00:00
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;
}
}
}