Johurt
Умник
Доброго времени суток. Нужна ваша помощь. Багается мой античит(благодаря гта или самп, не знаю...).
Проблема в том, что иногда античит выкидывает из сервера совсем невинных людей. Каким то образом меняются ид оружия, кол-во патронов. Замучился уже фиксить... Может знаете как можно исправить?
Лог:
PHP:
stock CheckPlayerWeapons(playerid, mode = false)
{
if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING)
{
if(pInfo[playerid][KickedForWeapons]) return 0;
new weapons[26], bool:cSlot[13];
for(new pw = 0; pw < 13; pw++)
{
GetPlayerWeaponData(playerid, pw, weapons[pw], weapons[pw + 13]);
if(weapons[pw] != 0 && weapons[pw] != pInfo[playerid][wInfo][pw])
{
if(weapons[pw] != 0 && weapons[pw + 13] == 0) continue;
if(IsPlayerInAnyVehicle(playerid))
{
if(pw == 1 && (weapons[pw] != pInfo[playerid][wInfo][pw])) continue;
if(pw == 4 && (weapons[pw] == 29 && pInfo[playerid][wInfo][pw] == 32)) continue;
}
cSlot[pw] = true;
printf("gLog2 %s | Slot: %d, Gun: %d, Ammo: %d || Gun: %d, Ammo: %d | OldState: %d", GetPlayerNameEx(playerid), pw, weapons[pw], weapons[pw + 13], pInfo[playerid][wInfo][pw], pInfo[playerid][wInfo][pw + 13], pInfo[playerid][OldState]);
}
if(weapons[pw + 13] < 0) cSlot[pw] = true;
if(weapons[pw + 13] > pInfo[playerid][wInfo][pw + 13])
{
if(pw != 0 && pw != 1 && pw != 10 && pw != 11)
{
cSlot[pw] = true;
printf("gLog2 %s | Slot: %d, Gun: %d, Ammo: %d || Gun: %d, Ammo: %d | OldState: %d", GetPlayerNameEx(playerid), pw, weapons[pw], weapons[pw + 13], pInfo[playerid][wInfo][pw], pInfo[playerid][wInfo][pw + 13], pInfo[playerid][OldState]);
}
}
if(!cSlot[pw])
{
if(!(pw == 4 && (weapons[pw] == 29 && pInfo[playerid][wInfo][pw] == 32)) || pw == 1 && weapons[pw] == pInfo[playerid][wInfo][pw])
{
pInfo[playerid][wInfo][pw] = weapons[pw];
}
pInfo[playerid][wInfo][pw + 13] = weapons[pw + 13];
}
}
for(new pw = 0; pw < 13; pw++)
{
if(cSlot[pw])
{
ResetPlayerWeapons(playerid);
if(mode)
{
pInfo[playerid][KickedForWeapons] = true;
KickEx(playerid);
}
return 1;
}
}
}
return 0;
}
Лог:
PHP:
[13:25:33] gLog2 Name | Slot: 2, Gun: 22, Ammo: 189 || Gun: 0, Ammo: 0 | OldState: 2
[13:27:02] gLog2 Name | Slot: 1, Gun: 3, Ammo: 4 || Gun: 2, Ammo: 4 | OldState: 3
[14:17:32] gLog2 Name | Slot: 1, Gun: 7, Ammo: 4 || Gun: 5, Ammo: 4 | OldState: 3
[14:46:32] gLog2 Name | Slot: 1, Gun: 3, Ammo: 1 || Gun: 2, Ammo: 1 | OldState: 3
[15:33:13] gLog2 Name | Slot: 2, Gun: 24, Ammo: 65 || Gun: 0, Ammo: 0 | OldState: 8
