@Slabada

Как вернуть true если объект перестал касаться триггера?

не могу понять почему не работает скрипт
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CellBattle : MonoBehaviour
{
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.gameObject.tag == "Tree")
        {
            gameObject.SetActive(false);
        }          
    }

    private void OnTriggerExit2D(Collider2D collision)
    {
        if (collision.gameObject.tag != "Tree")
        {
            gameObject.SetActive(true);
        }
    }
}


У меня есть 8 плиток, на всех один скрипт, мне нужно, чтобы плитка отключалась если касается триггер, а когда перестает, чтобы снова включалась, отключение работает, а назад включаться не хочет и выдает ошибку
" GameObject is already being activated or deactivated.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
CellBattle:OnTriggerExit2D (UnityEngine.Collider2D) (at Assets/CellBattle.cs:19)
CellBattle:OnTriggerEnter2D (UnityEngine.Collider2D) (at Assets/CellBattle.cs:11) "
  • Вопрос задан
  • 135 просмотров
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Объект касается, значит он отключается, а это значит, что он больше не касается, а это значит, что он включается, значит он касается, значит он отключается, а это значит, что он больше не касается, а это значит, что он включается, значит он касается, значит он отключается, а это значит, что он больше не касается, а это значит, что он включается, значит он касается, значит он отключается, а это значит, что он больше не касается, а это значит, что он включается, значит он касается, ... что ты мне голову морочишь, получи ошибку.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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