С этим фиксом не придется создавать лишние таймера, при вызове кика. Это будет сугубо ваш выбор
Код
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-а киков разом, что явно мало вероятно.
Автор: Неизвестен