Понедельник, 25 Ноября 2024, 18:49

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Код выполняется без столкновения
vampir0305Дата: Пятница, 02 Июня 2017, 07:58 | Сообщение # 1
Unity C# Programmer
Сейчас нет на сайте
Всем привет. Есть код в котором при столкновении с объектом с определённым тагом происходит действие. Но проблема в том, что когда столкновение происходит с одним объектом с тагом "сol" то происходит действие которое и должно + действие которое должно происходить только при столкновении с другим объектом.
Код
void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.tag == "col")
        {
               //здесь один код
        }
        if (other.gameObject.tag == "decol")
        {
              //здесь другой код
        }
    }


Красочная сюжетно-ориентированная игра-головоломка
VuvkДата: Пятница, 02 Июня 2017, 08:04 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
vampir0305, желательно использовать
Код
CompareTag ("col")
, т.к. это быстрее


Хз что там у тебя, но попробуй в конце блока с "col" поставить
Код
return;
и погляди, изменит ли это что-то


Сообщение отредактировал Vuvk - Пятница, 02 Июня 2017, 08:08
vampir0305Дата: Пятница, 02 Июня 2017, 08:37 | Сообщение # 3
Unity C# Programmer
Сейчас нет на сайте
Vuvk, Изменил на CompareTag.
Поставил return. Теперь столкновение происходит как надо, но только с первым объектом, со вторым не работает никак.


Красочная сюжетно-ориентированная игра-головоломка
VuvkДата: Пятница, 02 Июня 2017, 08:44 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
vampir0305, а вот теперь совсем странно. Явно какая-то ерунда с тэгами. У тебя объекты не имеют вложенных дочерних с другими тэгами?
vampir0305Дата: Пятница, 02 Июня 2017, 08:48 | Сообщение # 5
Unity C# Programmer
Сейчас нет на сайте
Vuvk, Да имеет именно тот, на котором скрипт висит.

Красочная сюжетно-ориентированная игра-головоломка
VuvkДата: Пятница, 02 Июня 2017, 08:54 | Сообщение # 6
заслуженный участник
Сейчас нет на сайте
vampir0305, т.е. есть родительский объект с вот этим скриптом и у него дочерние с тэгами col или decol? Если это так, то это очевидно дохлый номер, потому что он сам с собой проверяет столкновения
vampir0305Дата: Пятница, 02 Июня 2017, 09:04 | Сообщение # 7
Unity C# Programmer
Сейчас нет на сайте
Vuvk, Нет. Есть объект игрока и у него на дочерний объект повешан этот скрипт. У дочернего объекта нету тэга, у игрока тэг Player. А эти объекты с col и decol отдельные.

Красочная сюжетно-ориентированная игра-головоломка
VuvkДата: Пятница, 02 Июня 2017, 13:33 | Сообщение # 8
заслуженный участник
Сейчас нет на сайте
vampir0305, ну просто так не может триггер перескочить одно условие и выполнить второе. Чудес же не бывает! Значит где-то партак с тэгами (точнее с объектами, на которые он навешан, или с объектами, которые взаимодействуют с ними).
В любом случае, у меня недостаточно телепатических сил, чтобы тебе ещё чем-то помочь, сорри.
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг