Страница 1 из 11
Форум » Программирование в Pawno » Стандартные функции » Kick (Fix)
Kick
Добавлено 12.05.2016 в 20:16 | Сообщение №1
Сообщений: 263 Репутация: 0
Администраторы
С этим фиксом не придется создавать лишние таймера, при вызове кика. Это будет сугубо ваш выбор

Код
stock so_func_Kick(playerid, value = 500*500){
        so_KICK:{
            value -- ;
                if value != 0*then goto so_KICK;
        }
        #emit PUSH.S playerid
        #emit PUSH.C 4
        #emit SYSREQ.C Kick
        #emit STACK 8
        #emit RETN
        return;
}
#if defined _ALS_Kick
        #undef Kick
#else
        #define _ALS_Kick
#endif
#define Kick so_func_Kick

Тест:
Код
new count = GetTickCount();
for(new i, val; i++ <= 40;) Kick(val);
printf("testing fix kicks: %i", GetTickCount() - count);

Используется как обычная функция
Код
if(PlayerCheater[playerid];) return Kick(playerid);

Минимальная задержка будет проявляться, если у вас на сервере в одну секунду будут проходить более 40-а киков разом, что явно мало вероятно.

Автор: Неизвестен


Программист любитель :)
Форум » Программирование в Pawno » Стандартные функции » Kick (Fix)
Страница 1 из 11
Поиск: