summaryrefslogtreecommitdiff
path: root/marching/Assets/Scripts/Common/SingletonMB.cs
diff options
context:
space:
mode:
Diffstat (limited to 'marching/Assets/Scripts/Common/SingletonMB.cs')
-rw-r--r--marching/Assets/Scripts/Common/SingletonMB.cs58
1 files changed, 0 insertions, 58 deletions
diff --git a/marching/Assets/Scripts/Common/SingletonMB.cs b/marching/Assets/Scripts/Common/SingletonMB.cs
deleted file mode 100644
index 5debe57..0000000
--- a/marching/Assets/Scripts/Common/SingletonMB.cs
+++ /dev/null
@@ -1,58 +0,0 @@
-using Newtonsoft.Json.Utilities;
-using UnityEngine;
-
-public abstract class SingletonMB<T> : MonoBehaviour where T : class
-{
- protected static T m_Instance;
-
- public static T Instance
- {
- get { return m_Instance; }
- set
- {
- if (m_Instance != null)
- {
- throw new System.ApplicationException("An instance was created duplicate!");
- }
-
- m_Instance = value;
- }
- }
-
- protected virtual void Awake()
- {
- //if (null != m_Instance)
- //{
- // LogHelper.LogError(StringUtil.Concat("Exception: Duplicated Instance!! type is ", typeof(T).ToString(), ", plz send this error msg to hanjun!"));
- //}
-
- m_Instance = gameObject.GetComponent<T>();
- }
-
- /// <summary>
- /// CN: 加这个函数是为了同一个GameObject挂了多个Manager类,再OnDestroy里设置自己的单例为null
- /// </summary>
- protected virtual void OnDestroy()
- {
- //m_Instance = null;
- DoWhenOnDestroy();
- }
-
- protected virtual void DoWhenOnDestroy()
- {
-
- }
-
- public void ReleaseInstance()
- {
- if (m_Instance != null)
- {
- UnityEngine.Object.Destroy(this.gameObject);
- //m_Instance = null;
- }
- else
- {
- Debug.LogError("m_Instance is already null!! type is " + typeof(T).ToString());
- }
- }
-} \ No newline at end of file