21 lines
No EOL
544 B
C#
21 lines
No EOL
544 B
C#
using UnityEngine;
|
|
|
|
namespace Patterns_And_Principles.Patterns.The_Singleton_Pattern.MonoSingleton.Script
|
|
{
|
|
public abstract class MonoSingleton<T> : MonoBehaviour where T : MonoSingleton<T>
|
|
{
|
|
public static T Instance { get; private set; }
|
|
|
|
protected virtual void Awake()
|
|
{
|
|
if (Instance != null && Instance != this)
|
|
{
|
|
Destroy(gameObject);
|
|
return;
|
|
}
|
|
|
|
Instance = (T)this;
|
|
DontDestroyOnLoad(gameObject);
|
|
}
|
|
}
|
|
} |