Страница 1 из 1

Как найти по коду родительный обьект родительного обьекта

СообщениеДобавлено: 12 июн 2019, 15:51
ThePickAssO
Как найти по коду родительный обьект родительного обьекта? Нужно найти 9 родитель, в примере это обьект "Enemy", дочерний откуда идет поиск WeaponPlace, вариант поиска по тегу и названию потому что таких обьектов будет много а мне необходим именно родитель каждого в частности
Изображение

Re: Как найти по коду родительный обьект родительного обьекта

СообщениеДобавлено: 12 июн 2019, 16:48
ThePickAssO
У меня есть вариант, который не очень похож на правильный но:
Синтаксис:
Используется csharp
gameObject.transform.parent.transform.parent.transform.parent.transform.parent.transform.parent.transform.parent

Итак далее.

Re: Как найти по коду родительный обьект родительного обьекта

СообщениеДобавлено: 12 июн 2019, 17:22
1max1
ThePickAssO писал(а):У меня есть вариант, который не очень похож на правильный но:
Синтаксис:
Используется csharp
gameObject.transform.parent.transform.parent.transform.parent.transform.parent.transform.parent.transform.parent

Итак далее.

=))

Синтаксис:
Используется csharp
static class EX
{
    public static Transform FindTopParent(this Transform me, string parentName)
    {
        Transform parent = me.parent;

        if (parent != null && parent.name != parentName)
        {
            return parent.FindTopParent(parentName);
        }
        else
            return parent;
    }

}

transform.FindTopParent("name");
Или если это корневой объект просто transform.root.

Re: Как найти по коду родительный обьект родительного обьекта

СообщениеДобавлено: 12 июн 2019, 19:02
ThePickAssO
1max1 писал(а):
ThePickAssO писал(а):У меня есть вариант, который не очень похож на правильный но:
Синтаксис:
Используется csharp
gameObject.transform.parent.transform.parent.transform.parent.transform.parent.transform.parent.transform.parent

Итак далее.

=))

Синтаксис:
Используется csharp
static class EX
{
    public static Transform FindTopParent(this Transform me, string parentName)
    {
        Transform parent = me.parent;

        if (parent != null && parent.name != parentName)
        {
            return parent.FindTopParent(parentName);
        }
        else
            return parent;
    }

}

transform.FindTopParent("name");
Или если это корневой объект просто transform.root.


Спасибо))