Practice_Unity/Assets/Scripts/Managers/Manager.cs
Seonkyu.kim 299af2279c 이동 작업
1. 플레이어 이동 작업
2. 무브먼트 통합 코드로 관리하게 작성
2025-09-19 17:46:08 +09:00

52 lines
1.1 KiB
C#

using Animation;
using UnityEngine;
interface IManager
{
void Init() { }
void OnUpdate() { } // 필수 구현 아님
void Clear() { }
}
public class Manager : MonoBehaviour, IManager
{
static Manager s_instance;
static Manager Instance {get { Init(); return s_instance;}}
InputManager _input = new InputManager();
public static InputManager Input { get { return Instance._input; } }
static void Init()
{
if (s_instance == null)
{
GameObject obj = GameObject.Find("@Manager");
if (obj == null)
{
obj = new GameObject { name = "@Manager" };
obj.AddComponent<Manager>();
}
DontDestroyOnLoad(obj);
s_instance = obj.GetComponent<Manager>();
}
}
void Start()
{
Init();
}
void Update()
{
_input.OnUpdate();
}
// 클리어는 모든 것을 초기화 하는 역할로 자주 사용 되기에 그냥 전역적으로 사용 가능하게 함
public static void Clear()
{
Input.Clear();
}
}