Semikola
Умник
Здравствуйте, пользователи Pawno-Info.
Сегодня я хочу вам представить Атни-Чит на оружие.
Данный Анти-Чит рассчитан на моды основанные на RLS.
ВАЖНО!
Если у вас есть:
то в него вставляем следующий код:
А если нет, то
и вставляем весь выше приведенный код!
и + добавить к основному
Далее идем в
И прописываем там:
Для сообщения о читерстве всей администрации добавить:
Так же обязательно добавить:
Сегодня я хочу вам представить Атни-Чит на оружие.
Данный Анти-Чит рассчитан на моды основанные на RLS.
ВАЖНО!
PHP:
Что бы данный анти-чит работал. Выдача всего серверного оружие должна производится в переменные
в enum pInfo
{
pSlot1,pSlot2,pSlot3..pSlot10,pSlotAmmo1,pSlotAmmo2,pSlotAmmo3..pSlotAmmo10
}
Обычно для этого в RLS есть функция GiveRichGun(playerid,weaponid,ammo);
Если у вас есть:
PHP:
public AntiCheat()
PHP:
//---------------------------------------------------------------[Анти-Чит на оружие]
for(new i; i<GetMaxPlayers(); i++)
{
if(!IsPlayerConnected(i)) continue;
new gun;
gun = GetPlayerWeapon(i);
if(IsAColdGun(gun))
{
//pSlot1
if(PlayerInfo[i][pSlot1] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6681");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6681",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
else if(IsAPistol(gun))
{
//pSlot2
if(PlayerInfo[i][pSlot2] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6682");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6682",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
else if(IsAShotgun(gun))
{
//pSlot3
if(PlayerInfo[i][pSlot3] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6683");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6683",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
else if(IsAMachineGun(gun))
{
//pSlot4
if(PlayerInfo[i][pSlot4] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6684");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6684",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
else if(IsAnAssault(gun))
{
//pSlot5
if(PlayerInfo[i][pSlot5] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6685");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6685",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
else if(IsARifle(gun))
{
//pSlot6
if(PlayerInfo[i][pSlot6] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6686");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6686",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
else if(IsAHeavyAssault(gun))
{
//pSlot7
if(PlayerInfo[i][pSlot7] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6687");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6687",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
else if(IsAGrenade(gun))
{
//pSlot8
if(PlayerInfo[i][pSlot8] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6688");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6688",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
else if(IsAStuff1(gun))
{
//pSlot9
if(PlayerInfo[i][pSlot9] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6689");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6689",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
else if(IsAGirlsStuff(gun))
{
//pSlot10
if(PlayerInfo[i][pSlot10] != gun)
{
SendClientMessage(i,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. Код: #6690");
GetPlayerName(i,CheaterName,sizeof(CheaterName));
format(string,sizeof(string),"%s был кикнут по подозрению на чит-оружие. Код: #6690",CheaterName);
TalkForAllAdmin(COLOR_YELLOW2,string);
Kick(i);
}
}
}
//---------------------------------------------------------------[Анти-Чит на оружие]
PHP:
Создаем
public AntiCheat()
{}
и + добавить к основному
PHP:
ко всем new добавляем:
new UpdatedAntiCheatInfo;
PHP:
public OnGameModeInit()
PHP:
UpdatedAntiCheatInfo = SetTimer("AntiCheat",2000,true);
PHP:
stock TalkForAllAdmin(color,string[])
{
for(new x; x<GetMaxPlayers(); x++)
{
if(IsPlayerConnected(x))
{
if(PlayerInfo[x][pAdmin] >= 1)
{
SendClientMessage(x,color,string);
}
}
}
}
PHP:
stock IsAColdGun(gunid)
{
switch(gunid)
{
case 2..9: return 1;
}
return 0;
}
Последнее редактирование:
