Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Помощь в киборе

Страниц (2): [1] 2 »
 

1. Squidie - 26 Июня, 2021 - 18:20:23 - перейти к сообщению
Здравствуйте, требуется помощь, нужно чтобы если клавиша была нажата выполнял функцию, если нажата снова останавливал
2. Zireael - 26 Июня, 2021 - 18:57:31 - перейти к сообщению
 Цитата:
нужно чтобы если клавиша была нажата выполнял функцию, если нажата снова останавливал

CODE:
int flag=1;
int x=0;
enabletimer(0);

loop()
{
textout(0, 0, 0, format(x), 1);
if(flag) // если переменная не равна 0
{
func(); // вызвать фукнкцию
}
sleep(10);
}

function func()
{
x++;
}

CREATE_TIMER(0, 30)
{
if(getkeystate(SPACE)) // если нажат пробел
{
while(getkeystate(SPACE))sleep(10); // ждать пока нажат пробел
if(flag)flag=0;
else flag=1;
}
}

При нажатии пробела функция перестаёт вызываться, при повторном нажатии опять будет вызываться.
3. Squidie - 27 Июня, 2021 - 03:11:08 - перейти к сообщению
 Zireael пишет:
 Цитата:
нужно чтобы если клавиша была нажата выполнял функцию, если нажата снова останавливал

CODE:
int flag=1;
int x=0;
enabletimer(0);

loop()
{
textout(0, 0, 0, format(x), 1);
if(flag) // если переменная не равна 0
{
func(); // вызвать фукнкцию
}
sleep(10);
}

function func()
{
x++;
}

CREATE_TIMER(0, 30)
{
if(getkeystate(SPACE)) // если нажат пробел
{
while(getkeystate(SPACE))sleep(10); // ждать пока нажат пробел
if(flag)flag=0;
else flag=1;
}
}

При нажатии пробела функция перестаёт вызываться, при повторном нажатии опять будет вызываться.

Работает но только при зажатом пробеле не выполняет функцию
4. Zireael - 27 Июня, 2021 - 03:12:39 - перейти к сообщению
 Цитата:
Работает но только при зажатом пробеле не выполняет функцию

Разумеется.
 Цитата:
while(getkeystate(SPACE))sleep(10); // ждать пока нажат пробел
5. Squidie - 27 Июня, 2021 - 03:23:26 - перейти к сообщению
 Zireael пишет:
 Цитата:
Работает но только при зажатом пробеле не выполняет функцию

Разумеется.
 Цитата:
while(getkeystate(SPACE))sleep(10); // ждать пока нажат пробел

а как сделать чтоб при одном нажатии останавливалось выполнение функции и при повторном продолжалось?
6. Zireael - 27 Июня, 2021 - 03:26:23 - перейти к сообщению
 Цитата:
а как сделать чтоб при одном нажатии останавливалось выполнение функции и при повторном продолжалось?

Оно так и работает.
 Цитата:
При нажатии пробела функция перестаёт вызываться, при повторном нажатии опять будет вызываться.
7. Squidie - 27 Июня, 2021 - 03:31:11 - перейти к сообщению
 Zireael пишет:
 Цитата:
а как сделать чтоб при одном нажатии останавливалось выполнение функции и при повторном продолжалось?

Оно так и работает.
 Цитата:
При нажатии пробела функция перестаёт вызываться, при повторном нажатии опять будет вызываться.

но у меня только при зажатом работает
8. Zireael - 27 Июня, 2021 - 03:36:51 - перейти к сообщению
 Цитата:
Работает но только при зажатом пробеле не выполняет функцию

 Цитата:
но у меня только при зажатом работает

То работает, то не работает. Определитесь уже.
9. Squidie - 27 Июня, 2021 - 04:22:21 - перейти к сообщению
 Zireael пишет:
 Цитата:
Работает но только при зажатом пробеле не выполняет функцию

 Цитата:
но у меня только при зажатом работает

То работает, то не работает. Определитесь уже.

Работает при зажатом, а нужно при нажатии, просто нажать не зажимать пробел
10. Zireael - 27 Июня, 2021 - 04:31:57 - перейти к сообщению
 Цитата:
Работает при зажатом, а нужно при нажатии, просто нажать не зажимать пробел

При зажатом он будет только ждать когда пробел будет отпущен. Ничего другого выполняться не будет.

Powered by ExBB FM 1.0 Final