[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Форум pawno » Pawno » Стандартные функции » Kick (Fix)
Kick
ЛолЛисДата: Четверг, 12.05.2016, 20:17 | Сообщение # 1
Группа: Администратор
Сообщений: 277
Статус: Offline
С этим фиксом не придется создавать лишние таймера, при вызове кика. Это будет сугубо ваш выбор

Код
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-а киков разом, что явно мало вероятно.

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


IP: 83.222.105.54:8358
© [CRMP] Россия - Дрифт
 
Форум pawno » Pawno » Стандартные функции » Kick (Fix)
Страница 1 из 11
Поиск:

Хостинг от uCoz