Передача переменных и обнаруженного коллайдера через скрипт

Общие вопросы о Unity3D

Передача переменных и обнаруженного коллайдера через скрипт

Сообщение Georgeo 14 окт 2019, 11:34

Есть скрипт-сканер. Он обнаруживает триггеры, которые входят в его коллайдер-триггер:
Синтаксис:
Используется csharp
public class UnitASensor : MonoBehaviour
{
    public UnitController Main;
}
void OnTriggerEnter(Collider otherUnit)
   
    {
        if (otherUnit.gameObject.CompareTag("unitback"))
        {
            Main.AllyAhead = true;
        }
        else if (otherUnit.gameObject.CompareTag("unitnose"))
        {
            Main.EnemyAhead = true;
            Main.HPred = otherUnit.GetComponent<UnitController>();
        }

    }
 

И есть главный скрипт, который должен принять то, какой триггер обнаружил скрипт сканер:
Синтаксис:
Используется csharp
public class UnitController : MonoBehaviour
{
public UnitController HPred;
}

 

Я хочу с помощью главного скрипта обратиться и изменить переменные в скрипте объекта, попавшего в сканер.
Суть проблемы: Сканер не передает главному скрипту назначение объекта в HPred, т.е. даже при регистрации самим сканером объекта, но передачи привязки переменной не происходит. Как быть с этой строкой: Main.HPred = otherUnit.GetComponent<UnitController>(); ?
Georgeo
UNец
 
Сообщения: 17
Зарегистрирован: 13 сен 2019, 18:49

Re: Передача переменных и обнаруженного коллайдера через скрипт

Сообщение Georgeo 14 окт 2019, 11:42

Вопрос закрыт, спустя пять минут понял, что поставил у себя неверные тэги, всем спасибо)
Georgeo
UNец
 
Сообщения: 17
Зарегистрирован: 13 сен 2019, 18:49


Вернуться в Общие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11