Author Topic: Переключатели  (Read 2253 times)

0 Members and 2 Guests are viewing this topic.

DIIR

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Переключатели
« on: February 07, 2020, 06:42:01 PM »
Возник вопрос по переключателям.
Думал что на коленках наваяю переключатель с помощью обычных алгоритмов IF и так далее, а оказалось не так всё просто.
Суть такая:
Нужно что бы понажатию клавиши "Y" переменная менялась с 1 на 0, при повторном нажатии обратно. Допускается обращение цикла, т.е в следующем цикле при нажатии переменная менялась. Важно что бы переменная менялась только в промежутке 1 и 0.
Всю голову себе сломал но так и не смог сделать этот переключатель.

thread(pereklu6)    // Поток
if (iskeydown(#y)=1) //Условие при нажатии
   $Ключевая_переменная = 0
      wait(10) //Время в секундах сколько кнопка не будет отвечать после нажатия
   end_if
   waitms(50)
end_thread  //Конец потока

а вот как при повторном нажатии вернуть, бог и разработчик знает. ((

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Переключатели
« Reply #1 on: February 07, 2020, 07:01:53 PM »
Все просто
Code: (clickermann) [Select]
thread(pereklu6)    // Поток
   if (iskeydown(#y)=1) //Условие при нажатии
      $var = $var^1
      wait(10) //Время в секундах сколько кнопка не будет отвечать после нажатия
   end_if
   waitms(50)
end_thread  //Конец потока

$var^1 - это битовая операция, если $var = 0 то вернет за место себя 1, если $var = 1 то вернет 0

DIIR

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Re: Переключатели
« Reply #2 on: February 07, 2020, 09:51:45 PM »
Все просто
Code: (clickermann) [Select]
thread(pereklu6)    // Поток
   if (iskeydown(#y)=1) //Условие при нажатии
      $var = $var^1
      wait(10) //Время в секундах сколько кнопка не будет отвечать после нажатия
   end_if
   waitms(50)
end_thread  //Конец потока

$var^1 - это битовая операция, если $var = 0 то вернет за место себя 1, если $var = 1 то вернет 0

Огромное спасибо! Вы не представляете какой популярностью будет пользоваться данный совет, в просторах инета.