Вызов гуя, есть проблемы.
Короче есть у меня скрипт, который следит за тем чтобы гуй был вкл или выкл.
По клику мыши на монстра, меняется переменная в глобальном скрипте,
и другой скрипт включает отображение гуя на канвасе.
При повторном щелчке мыши где угодно у меня вызывается
переменная, которая выключает отображения гуя через тот же скрипт.
Скрипт отслеживающий щелчки по монстру, скрипт с глобальными переменными статическими, и вызывающий гуй скрипт - разные.
Всё работает до тех пор, пока я не собираюсь при вызванном гуе с монстра
щёлкнуть мышкой в другого монстра, и тут в 30% случаев сначала вызывается гуй, потом сразу скрывается из-за скрипта в предыдущем монстре
(скрипта, который после отображения скрывает гуй по щелчку).
Выглядит как баг, и не приятно. Посоветуйте как лучше организовать процесс, может у кого есть идеи?
Отображение и скрытие должны происходить на одну и ту же клавишу,
и то действие должно быть применимо к любому количеству пропикиваемых лучом монстров.
Я чё-то по ходу на работе заработался, что сейчас вечерами не могу решить такую простую элементарную задачу.
А теперь снова всё то же самое:
К щелчку по монстру привязано отображение гуя, когда гуй отображён,
при любом следующем щелчке срабатывает скрипт скрывающий гуй.
Проблема случается в тот момент, когда уже при отображённом гуе
вызванном на одном монстре, мне вдруг нужно щёлкнуть в другого монстра
и вызвать тот же гуй. В 30% случаев, сначала срабатывает вызов гуя на
новом монстре, и после на предыдущем монстре тот же самый клик мне всё руинит закрывая гуй.
Я знаю, что можно сделать, чтобы только по клику на монстра или на кнопку гуй закрывался,
и после типа мы только получали возможность тыкать в другого монстра, но мне это не подходит,
т.к. это медленный вариант раздражающий игрока, всё должно делаться быстро, и по клику на одну и ту же клавишу.
Вопрос в том, как дать понять скрипту, что раз мы уже на другом монстре гуй вызвали, то на прерыдущем его по щелчку
скрывать не надо. Вроде всё элементарно, тупо, просто. Но это юнити, и он мне что-то мозг сломал,
со своей разбивкой на миллион префабов, и скриптов обрабатываемых в рандомном порядке.
Если бы хотя бы какая-то структура обработки скриптов была на вызванных префабах,
а он рандомом хреначит без последовательности чёткой.
|