witches
This commit is contained in:
parent
ffb1f1caa1
commit
b21d392ff6
80 changed files with 2888 additions and 221 deletions
26
Assets/Scripts/Singletons/Abstract/MonoBehaviourSingleton.cs
Normal file
26
Assets/Scripts/Singletons/Abstract/MonoBehaviourSingleton.cs
Normal file
|
@ -0,0 +1,26 @@
|
|||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
public class MonoBehaviourSingleton<T> : MonoBehaviour
|
||||
where T : Component
|
||||
{
|
||||
private static T _instance;
|
||||
public static T Instance {
|
||||
get {
|
||||
if (_instance == null) {
|
||||
var objs = FindObjectsByType<T> (FindObjectsSortMode.None) as T[];
|
||||
if (objs.Length > 0)
|
||||
_instance = objs[0];
|
||||
if (objs.Length > 1) {
|
||||
Debug.LogError ("There is more than one " + typeof(T).Name + " in the scene.");
|
||||
}
|
||||
if (_instance == null) {
|
||||
GameObject obj = new GameObject (typeof(T).Name);
|
||||
obj.hideFlags = HideFlags.HideAndDontSave;
|
||||
_instance = obj.AddComponent<T> ();
|
||||
}
|
||||
}
|
||||
return _instance;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue