Суббота, 23 Ноября 2024, 06:36

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Изменение переменной по нажатию
maxon123Дата: Вторник, 11 Июня 2013, 20:16 | Сообщение # 1
частый гость
Сейчас нет на сайте
Дано: объект (например, кнопка), переменная global.object=0
Нажимаешь на объект-кнопку переменная становиться global.object=1. И все. Можно нажимать на кнопку миллионы раз ничего не поменяется(но это естественно, ведь переменная уже равна 1, и если заново присваивать, то ничего не измениться). А как сделать чтобы нажмешь на кнопку раз переменная станет 1, нажмешь второй раз =0, третий опять =1, и так до бесконечности. Возможно тупой вопрос, но очень надеюсь на помощь.
TurugniteДата: Вторник, 11 Июня 2013, 20:19 | Сообщение # 2
почетный гость
Сейчас нет на сайте
if global.object>1
global.object=1


CryMaker: Mourning's Son
RhymeCaster
Humanity[Gamiron №5]
LunarPixelДата: Вторник, 11 Июня 2013, 20:19 | Сообщение # 3
старожил
Сейчас нет на сайте
Код
if global.object=0
global.object=1
else
global.object=0


TurugniteДата: Вторник, 11 Июня 2013, 20:20 | Сообщение # 4
почетный гость
Сейчас нет на сайте
LunarPixel, твоя правда, не вчитался в вопрос)

CryMaker: Mourning's Son
RhymeCaster
Humanity[Gamiron №5]
maxon123Дата: Вторник, 11 Июня 2013, 20:50 | Сообщение # 5
частый гость
Сейчас нет на сайте
Цитата (LunarPixel)
if global.object=0
global.object=1
else
global.object=0


Блин else точно. Спасибо ну и + smile
OverdraveДата: Вторник, 11 Июня 2013, 21:48 | Сообщение # 6
частый гость
Сейчас нет на сайте
В одном из примеров увидел интересный триггер, который выглядит как
Код
your_variable=1-your_variable

Однако надо также учитывать, что кнопка нажата не один шаг, т.е. действие выполняется несколько раз.
Я использую:
CREATE
Код
press_lock=0 //Объявляем переменную-"блокер".


STEP
Код
if press_lock=0 and keyboard_check(mb_left) //"Если переменная-"блокер" выключена (можно использовать "true" и "false"), т.е. равна нулю, а также нажата левая кнопка мыши, то..."
{
your_variable=1-your_variable //Нужное нам действие (выполнится ОДИН раз!)
press_lock=1 //"Включаем" переменную-"блокер"
}

if keyboard_check_released(mb_left) and press_lock=1 //Когда левая кнопка мыши "отжата", а переменная-"блокер" включена,..
press_lock=0 //вырубаем "блокер"


Может код и не удобный, но для понимания простой.
TurugniteДата: Вторник, 11 Июня 2013, 22:49 | Сообщение # 7
почетный гость
Сейчас нет на сайте
Overdrave, мудро

CryMaker: Mourning's Son
RhymeCaster
Humanity[Gamiron №5]
SaladinДата: Вторник, 11 Июня 2013, 23:40 | Сообщение # 8
заслуженный участник
Сейчас нет на сайте
maxon123, есть простой и элегантный способ.
var=!var
Работает только с булевыми.


Анбаннэд. Хэлоу эгин =)
maxon123Дата: Среда, 12 Июня 2013, 16:09 | Сообщение # 9
частый гость
Сейчас нет на сайте
Overdrave, тоже интересное решение.
  • Страница 1 из 1
  • 1
Поиск:

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