Exemple #1
0
        public static T FindGameObjectByTagInParent <T>(this MonoBehaviour mono, string tagName) where T : MonoBehaviour
        {
            if (mono.CompareTag(tagName))
            {
                return(mono.GetComponent <T>());
            }
            if (!mono.transform.parent)
            {
                return(null);
            }
            var parent = mono.transform.parent;

            while (parent)
            {
                if (parent.CompareTag(tagName))
                {
                    return(parent.GetComponent <T>());
                }
                else
                {
                    if (parent.parent)
                    {
                        parent = parent.parent;
                    }
                    else
                    {
                        return(null);
                    }
                }
            }
            return(null);
        }