Hi, I tired make Anticheat. Anticheat hat test before unlimited health and ammo.
If I start test Anticheat me teleport in sea and not to show if player have unlimited health or no.
Thank you very much for your help.
Код HTML:
#include <a_samp>
#include <ZCMD>
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_WARNING 0xFF1400FF
#define COLOR_ADMIN 0xFF0000FF
CMD:acheat(playerid, params[])
{
if(IsPlayerConnected(playerid))
{
new id = strval(params);
if(!strlen(params) || strlen(params)>3) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ] {FFFFFF}Pouћi: /acheat [ ID ]");
else if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ] {FFFFFF}Hrбč se zadanэm ID nenн na serveru !");
else if(IsPlayerNPC(id)) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ]{ffffff} Tohle je NPC !");
else
{
new Name[24];
new Name2[24];
GetPlayerName(playerid, Name, 24);
GetPlayerName(id, Name2, 24);
new string[128];
format(string,128, "Administrбtor %s testuje hrбče %s anticheatem !", Name, Name2);
SendClientMessageToAll(COLOR_ADMIN, string);
format(string,128, "Testujem hrбče %s anticheatem, počekjte prosнm na vэsledky...", Name2);
SavePlayerLastStats(id);
SendClientMessage(playerid, COLOR_WHITE, string);
SetPlayerPos(id, 3000, 3000, 1);
SetPlayerArmour(id, 100.00);
CreateExplosion(3004, 3000, 1, 7, 10);
SetTimerEx("AnticheatTestStepOne", 1000, 0, "ii", id, playerid);
}
}
return 1;
}
forward AnticheatTestStepOne(id, playerid);
public AnticheatTestStepOne(id, playerid)
{
if(IsPlayerConnected(id))
{
new Float:armour;
GetPlayerArmour(id, armour);
new Name2[24];
GetPlayerName(id, Name2, 24);
new string[128];
if(armour > 85)
{
if(IsPlayerConnected(playerid)) SendClientMessage(playerid, COLOR_WHITE, "Armour Hack: {00bb00}Ano");
format(string,128, "Hrбč %s byl pozitivnн na Armour Hack !", Name2);
SendClientMessageToAll(COLOR_ADMIN, string);
}
else
{
if(IsPlayerConnected(playerid)) SendClientMessage(playerid, COLOR_WHITE, "Armour Hack: {ff0000}Ne");
format(string,128, "Hrбč %s byl negativnн na Armour Hack !", Name2);
SendClientMessageToAll(COLOR_ADMIN, string);
}
////////////////////////////////////
SetPlayerPos(id, 3000, 3000, 1);
SetPlayerArmour(id, 0.00);
SetPlayerHealth(id, 100.00);
CreateExplosion(3004, 3000, 1, 7, 10);
SetTimerEx("AnticheatTestStepTwo", 1000, 0, "ii", id, playerid);
}
return 1;
}
forward AnticheatTestStepTwo(id, playerid);
public AnticheatTestStepTwo(id, playerid)
{
if(IsPlayerConnected(id))
{
new Float:hp;
GetPlayerHealth(id, hp);
new Name2[24];
GetPlayerName(id, Name2, 24);
new string[128];
if(hp > 85)
{
if(IsPlayerConnected(playerid)) SendClientMessage(playerid, COLOR_WHITE, "God Mode: {00bb00}Ano");
format(string,128, "Hrбč %s byl pozitivnн na God Mode !", Name2);
SendClientMessageToAll(COLOR_ADMIN, string);
}
else
{
if(IsPlayerConnected(playerid)) SendClientMessage(playerid, COLOR_WHITE, "God Mode: {ff0000}Ne");
format(string,128, "Hrбč %s byl negativnн na God Mode !", Name2);
SendClientMessageToAll(COLOR_ADMIN, string);
}
LoadPlayerLastStats(id);
}
return 1;
}
forward SavePlayerLastStats(playerid);
public SavePlayerLastStats(playerid)
{
if(IsPlayerConnected(playerid))
{
new Float:player_pos_x,
Float:player_pos_y,
Float:player_pos_z,
Float:player_hp,
Float:player_armour;
GetPlayerPos(playerid, player_pos_x, player_pos_y, player_pos_z);
GetPlayerHealth(playerid, player_hp);
GetPlayerArmour(playerid, player_armour);
}
}
forward LoadPlayerLastStats(playerid);
public LoadPlayerLastStats(playerid)
{
if(IsPlayerConnected(playerid))
{
}
}