Суббота, 20 Апреля 2024, 16:01

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Button баг
Button баг
SmallNibblerДата: Воскресенье, 04 Октября 2015, 20:39 | Сообщение # 1
частый гость
Сейчас нет на сайте
Здравствуйте, моя проблема в том что кнопка работает как то не правильно, она должна выполнять, при нажатии первый раз - одно действие, а при следующем - другое. Но она при первом нажатии выполняет первое действие, при втором нажатии тоже первое действие, при третьем нажатии второе действие, после чего цикл повторяется. С точки зрения логики, мне кажется что, всё правильно, но я не понимаю в чем проблема.
Код:


Просто создайте объект, и поместите в него этот компонент, и ещё какой нибудь, и нажмите кнопку.

Путем комментирования кода, я выяснил что проблема в этом куске кода:
Код
Component[] c = GetComponents<Component> ();
for (int i = 0; i < c.Length; i++)
if (!(c [i] is Transform) && !(c [i] is ComponentsOldManager) && !(c [i] is Entity))  
{
if(boolean) c[i].hideFlags = HideFlags.None; else c[i].hideFlags = HideFlags.HideInInspector;
}

Добавлено (04 октября 2015, 20:39)
---------------------------------------------
Нашел причину, переменная isShowed должна быть в class ComponentsOldManager.

irinautkinaДата: Воскресенье, 04 Октября 2015, 22:14 | Сообщение # 2
участник
Сейчас нет на сайте
можно реализовать вот так

if (i%3<2) первое действие
else второе действие
i++;


Сообщение отредактировал irinautkina - Понедельник, 05 Октября 2015, 00:42
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Button баг
  • Страница 1 из 1
  • 1
Поиск:

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