- Регистрация
- 10 Фев 2011
- Сообщения
- 725
- Лучшие ответы
- 0
- Репутация
- 293
В начало мода, ко всем переменным:
В public OnPlayerUpdate
Добовляем функции в концем мода
Всё, теперь заменяем функцию выдачи оружия GivePlayerWeapon на GivePlayerWeaponAC
И функцию ResetPlayerWeapon на ResetPlayerWeaponEx
PHP:
new PlayerWeapons[MAX_PLAYERS][46];
new PlayerWeapon[MAX_PLAYERS];
new NewPlayerWeapon[MAX_PLAYERS];
В public OnPlayerUpdate
PHP:
NewPlayerWeapon[playerid] = GetPlayerWeapon(playerid);
if(NewPlayerWeapon[playerid] != PlayerWeapon[playerid])
{
OnPlayerWeaponChange(playerid, NewPlayerWeapon[playerid], PlayerWeapon[playerid]);
PlayerWeapon[playerid] = NewPlayerWeapon[playerid];
}
PHP:
forward OnPlayerWeaponChange(playerid, newweapon, oldweapon);
public OnPlayerWeaponChange(playerid, newweapon, oldweapon)
{
if(PlayerWeapons[playerid][newweapon] == 0 && GetPlayerWeapon(playerid) != 0)
{
ResetPlayerWeaponEx(playerid);
Kick(playerid);
}
return 1;
}
GivePlayerWeaponAC(playerid,id,ammo)
{
PlayerWeapons[playerid][0] = 1;
PlayerWeapons[playerid][id] = 1;
if(id == 39) PlayerWeapons[playerid][40] = 1;
GivePlayerWeapon(playerid,id,ammo);
return true;
}
forward AntiNopResetPlayerWeapon(playerid);
public AntiNopResetPlayerWeapon(playerid)
{
new Guns[13][2];
for (new i = 0; i < 13; i++)
{
GetPlayerWeaponData(playerid, i, Guns[i][0], Guns[i][1]);
if(Guns[i][0] > 0)
{
SendClientMessage(playerid,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве #(682)");
Kick(playerid);
}
}
}
stock ResetPlayerWeaponEx(playerid)
{
for(new i = 0; i < 46; i++)
{
PlayerWeapons[playerid][i] = 0;
}
PlayerWeapons[playerid][0] = 1;
ResetPlayerWeapons(playerid);
SetTimerEx("AntiNopResetPlayerWeapon" , 3000, false, "i", playerid);
}
И функцию ResetPlayerWeapon на ResetPlayerWeaponEx