Задать вопрос
@Gera01
Unity, С# и больше ничего.

Как сделать так чтобы функция OnTrigerEnter действовала только при прикосновением с 1 объектом?

Как сделать так чтобы функция OnTrigerEnter действовала только при прикосновением с 1 объектом? Есть объект (ёж), который должен удалять игрока (это я cделал) и есть стена которая добавляет балл при прикосновении, но когда игрок соприкасается со стеной он тоже удаляется. Как сделать чтобы стена не удаляла игрока, то есть OnTrigerEnter работала только на ежа. (У игрока, ежа и стены есть RigidBody и BoxCollider, еж и стена с триггером).
  • Вопрос задан
  • 119 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Stepik
    PRO C#. Профессия "Backend разработчик"
    4 месяца
    Далее
  • Яндекс Практикум
    Продвинутая разработка на C# и .NET
    5 месяцев
    Далее
  • Merion Academy
    C# разработчик с нуля
    4 месяца
    Далее
Решения вопроса 1
freeExec
@freeExec
Участник OpenStreetMap
Если строго отвечать на ваш вопрос, то в настройках физики можно задать, какой слой с каким могут взаимодействовать. Но ёж станет ходить сквозь стены.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
GavriKos
@GavriKos Куратор тега Unity
Микропетпроджект - https://voidtrack.space/
Правильный вариант - удалять должна не стена (стене пофиг кто в нее ударился), а сам объект, который ударился, должен ловить Ontriggerenter и уже решать удаляться ему или нет (на еже есть скрипт с удалением, на других объектах нет).

Неправильный, но рабочий вариант - стена проверяет что за объект столкнулся и решает удалять его или нет. Проверять можно по:
- имени (ужасно)
- наличию скрипта (средне)
- тегу (норм).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы