10.02.2015, 16:11
(
Последний раз редактировалось Tamy; 10.02.2015 в 16:52.
)
This should fix your problem, use OnPlayerWeaponShot instead of KeyStateChange. This will only work if you are using 0.3z.
By the way don't forget to remove those lines from OnPlayerKeyStateChange before you place this code.
By the way don't forget to remove those lines from OnPlayerKeyStateChange before you place this code.
Код:
public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ) { if(weaponid < 16 || weaponid == 19 || weaponid == 20 || weaponid == 21 || weaponid > 38) return 0; bAmmo[playerid] = GetPlayerAmmo(playerid); bWeapon[playerid] = GetPlayerWeapon(playerid); SetTimerEx("check",4000,false,"i",playerid); new string[128]; format(string,sizeof(string),"Ammo %i",bAmmo); printf(string); return 1; } forward check(playerid); public check(playerid) { nAmmo[playerid] = GetPlayerAmmo(playerid); nWeapon[playerid] = GetPlayerWeapon(playerid); if(bAmmo[playerid] == nAmmo[playerid] && bWeapon[playerid] == nWeapon[playerid]) { new string[128]; new name[MAX_PLAYER_NAME], string1[24+MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); if(pm[playerid] == false && sm[playerid] == false) { format(string,sizeof(string),"%s has banned for ammo hack",name); SendClientMessageToAll(0xAA3333AA,string); SendClientMessage(playerid, 0xAA3333AA,"You have banned from the server "); } printf("Cheat Detect"); SetTimerEx("ban",500,false,"i",playerid); pm[playerid] = true; sm[playerid] = true; #pragma unused string1 } return 1; }