using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; using UnityEngine.UI; public class MonoMgr : SingletonAutoMono { private event UnityAction onUpdate; private event UnityAction onFixedUpdate; private event UnityAction onLateUpdate; public void AddUpdateListener(UnityAction action) { onUpdate += action; } public void RemoveUpdateListener(UnityAction action) { onUpdate -= action; } public void AddFixedUpdateListener(UnityAction action) { onFixedUpdate += action; } public void RemoveFixedUpdateListener(UnityAction action) { onFixedUpdate -= action; } public void AddLateUpdateListener(UnityAction action) { onLateUpdate += action; } public void RemoveLateUpdateListener(UnityAction action) { onLateUpdate -= action; } private void Update() { onUpdate?.Invoke(); } private void FixedUpdate() { onFixedUpdate?.Invoke(); } private void LateUpdate() { onLateUpdate?.Invoke(); } }