02.11.2014, 18:14
Здравствуйте, у меня возникла проблема с античитом на патроны.
Суть проблемы:
Когда игрок под ID 0 покупает оружие и у игрока начинает подвисать паблик TimerTime и некоторые функции которые должны обновляться 1 рав в 1 секунду перестают работать.
Подвисание вызывает stock AntiWeaponAmmoTime(i) и внем находится сама проверка на патроны
Суть проблемы:
Когда игрок под ID 0 покупает оружие и у игрока начинает подвисать паблик TimerTime и некоторые функции которые должны обновляться 1 рав в 1 секунду перестают работать.
Подвисание вызывает stock AntiWeaponAmmoTime(i) и внем находится сама проверка на патроны
PHP Code:
stock AntiWeaponAmmoTime(i)
{
new string[200];
new playersip[125];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(i, sendername, sizeof(sendername));
GetPlayerIp(i, playersip, sizeof(playersip));
if(GetPlayerAmmo(i) >= 2)
{
if(GetPlayerAmmo(i) > PlayerAmmoSlot[i][GetPlayerWeapon(i)])
{
if(CheatCheck[i] == 0)
{
format(string, sizeof(string), "[A]: >> Игрок %s [ID: %d] был кикнут за прибавление патрон {808080}%d {C3C3C3}Код: #11.3 [IP: %s] [Ping: %d]", sendername, i, GetPlayerAmmo(i), playersip, GetPlayerPing(i));
ABroadCast(0xC3C3C3AA, string, 4);
Log("System/Weapons11.1", string);
CheatCheck[i] = 1;
PlayerInfo[i][pCheatSystem] += 1;
PlayerPlaySound(i, 31202, 0.0, 0.0, 0.0);
if(PlayerInfo[i][pRussifierGameText] == 0)
{
GameTextForPlayer(i, "~r~ Kick player", 5000, 2);
}
else
{
GameTextForPlayer(i, "~r~ ‹Ё —Ёћњ kњk®y¦Ё", 5000, 2);
}
KickWithMessage(i, 0xFFA500AA, "Вы были отсоединены от игрового сервера. C причиной: Использование Чит Программ [{FF0000}Код: #11.3{FFA500}]");
}
}
//return 1;
}
return 1;
}
GivePlayerWeaponZS(playerid, weaponid, ammo)
{
PlayerWeapons[playerid][0] = 1;
PlayerWeapons[playerid][weaponid] = 1;
new slot = GetWeaponSlot(weaponid);
PlayerAmmoSlot[playerid][slot] = ammo;
GivePlayerWeapon(playerid, weaponid, ammo);
return 1;
}
stock GetWeaponSlot(weaponid)
{
new slot;
switch(weaponid)
{
case 0: slot = 0;
case 1: slot = 0;
case 2: slot = 1;
case 3: slot = 1;
case 4: slot = 1;
case 5: slot = 1;
case 6: slot = 1;
case 7: slot = 1;
case 8: slot = 1;
case 9: slot = 1;
case 22: slot = 2;
case 23: slot = 2;
case 24: slot = 2;
case 25: slot = 3;
case 26: slot = 3;
case 27: slot = 3;
case 28: slot = 4;
case 29: slot = 4;
case 32: slot = 4;
case 30: slot = 5;
case 31: slot = 5;
case 33: slot = 6;
case 34: slot = 6;
case 35: slot = 7;
case 36: slot = 7;
case 37: slot = 7;
case 38: slot = 7;
case 16: slot = 8;
case 17: slot = 8;
case 18: slot = 8;
case 39: slot = 8;
case 41: slot = 9;
case 42: slot = 9;
case 43: slot = 9;
case 10: slot = 10;
case 11: slot = 10;
case 12: slot = 10;
case 13: slot = 10;
case 14: slot = 10;
case 15: slot = 10;
case 44: slot = 11;
case 45: slot = 11;
case 46: slot = 11;
case 40: slot = 12;
}
return slot;
}