Во первых ко всем new (после всех #include) приписываем:
PHP код:
new BunnyHoppingTime[MAX_PLAYERS];
new BunnyHoppingPunTime[MAX_PLAYERS];
forward AntiBH();
Во вторых в OnPlayerConnect кидаем:
PHP код:
BunnyHoppingTime[playerid]= 0;
BunnyHoppingPunTime[playerid] = 0;
Находим OnGameModeInit и добавляем:
PHP код:
SetTimer("AntiBH",1000,1);
Дальше добавляем новый паблик (можно в самый конец)
PHP код:
public AntiBH()
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(!IsPlayerConnected(i)){continue;}
if(BunnyHoppingPunTime[i] > 0)
{
BunnyHoppingPunTime[i] --;
if(BunnyHoppingPunTime[i] == 0)
{
TogglePlayerControllable(i,1);
}
}
}
return 1;
}
И в OnPlayerKeyStateChange добовляем:
PHP код:
if(newkeys & KEY_JUMP || (newkeys & KEY_SPRINT && newkeys & KEY_JUMP))
{
if(!IsPlayerInAnyVehicle(playerid))
{
if(BunnyHoppingTime[playerid] > 15)
{
BunnyHoppingPunTime[playerid] = 7;//7 - секунд заморозки
TogglePlayerControllable(playerid,0);
SendClientMessage(playerid,COLOR_LIGHTRED,"* На нашем сервере банни-хоп запрещен, тебя заморозило на 7 секунд");
}
BunnyHoppingTime[playerid] += 5;
}
}