• Регистрация на форуме отключена.
    Она будет открываться первого числа каждого месяца на 24 часа.

    Другие способы описаны>> тут <<

Блокировка выполнения функции через время

Сообщения
25
Реакции
1
Код:
Объявляю глобальную булевую переменную:

new bool:iBlock[33]

Обнуляю при выходе игрока:

public client_disconnect(id) {
  iBlock[id] = false
}

В функции:

if(iBlock[id] == true) return PLUGIN_HANDLED

// Выполняю действие

iBlock[id] == true // Включаю блокировку
set_task(5.0, "Unblock", iBlock[id])

public Unblock(id) iBlock[id] = false
У меня почему-то все прекрасно работает, но у другого игрока функция вызывается один раз и он больше не может ее использовать.
Хотя, добавив вывод значения iBlock[id] до отправки и после отправки set_task, все происходит хорошо: iBlock = 0, но воспользоваться еще раз функцией мой игрок не может в отличии от меня.
 
Сообщения
462
Реакции
837
Помог
14 раз(а)
public Unblock(id) iBlock[id] = false
Откуда берется этот id и чему он равен?
 
Сообщения
520
Реакции
31
Предупреждения
5
Mistrick, вероятно в таске надо указать id, чтобы получить id игрока, а не так, как было сделано.
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу