using System.Collections; using UnityEngine; using UnityEngine.UI; namespace Monpl.Utils.Extensions { public static class MonoBehaviourExtensions { public static void StopAndNullCoroutine(this MonoBehaviour mono, Coroutine co) { if(co != null) mono.StopCoroutine(co); co = null; } public static Coroutine RestartCoroutine(this MonoBehaviour mono, IEnumerator routine, Coroutine co) { mono.StopAndNullCoroutine(co); co = mono.StartCoroutine(routine); return co; } /// /// 자신의 child 찾는 함수, 만약 자식의 자식인 경우, (button/circle/bg) 이런식으로 계층을 적어준다. /// public static T GetChildOrNull(this MonoBehaviour mono, string childName) where T : Component { var child = mono.transform.Find(childName); return child == null ? null : child.GetComponent(); } } }