31 lines
1.2 KiB
C#
31 lines
1.2 KiB
C#
|
|
using UnityEngine;
|
|||
|
|
|
|||
|
|
public class MANAGER_WindowsBase : MonoBehaviour
|
|||
|
|
{
|
|||
|
|
public static MANAGER_WindowsBase Instance { get; private set; }
|
|||
|
|
|
|||
|
|
[Header("Core Systems")]
|
|||
|
|
public MANAGER_Mail MailSystem;
|
|||
|
|
public MANAGER_QuestProgress QuestSystem;
|
|||
|
|
public MANAGER_RemoteData RemoteData;
|
|||
|
|
public MANAGER_UI UI;
|
|||
|
|
public MANAGER_Shop ShopSystem;
|
|||
|
|
|
|||
|
|
// 1. Делаем Awake доступным для наследников (protected)
|
|||
|
|
// и разрешаем его переопределение (virtual)
|
|||
|
|
protected virtual void Awake()
|
|||
|
|
{
|
|||
|
|
if (Instance == null)
|
|||
|
|
{
|
|||
|
|
Instance = this;
|
|||
|
|
// Убедитесь, что Singleton нужен именно здесь.
|
|||
|
|
// Если это базовый класс для МНОГИХ окон, DontDestroyOnLoad может быть лишним.
|
|||
|
|
DontDestroyOnLoad(gameObject);
|
|||
|
|
}
|
|||
|
|
else if (Instance != this)
|
|||
|
|
{
|
|||
|
|
Destroy(gameObject);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|