#define GivePlayerMoney GivePlayerGrana
stock DarGrana(id, valor) return pInfo[id][Dinheiro] += valor;
stock GetGrana(id) return pInfo[id][Dinheiro];
stock ResetGrana(id) return pInfo[id][Dinheiro] = 0;
CallBack:AntiMoneyCheat(id)
{
if(GetPlayerMoney(id) != pInfo[id][Dinheiro])
{
ResetPlayerMoney(id);
GivePlayerMoney(id, pInfo[id][Dinheiro]);
}
}
eu uso esse sisteminha aki
й so vc chamar a callback por SetTimerEx ou chamar ela na OnPlayerUpdate PHP код:
|
SetMoney(playerid, Quantidade); GiveMoney(playerid, Quantidade); ResetMoney(playerid); GetMoney(playerid);
new Money[MAX_PLAYERS];
public OnPlayerUpdate(playerid)
{
if(Money[playerid] != GetPlayerMoney(playerid))
{
new name[MAX_PLAYER_NAME], Msg[80];
GetPlayerName(playerid, name, sizeof(name));
format(Msg, 80, "SERVER: %s foi pego no anti money hack e teve seu dinheiro resetado.", name);
SendClientMessageToAll(-1, Msg);
ResetMoney(playerid);
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
ResetMoney(playerid);
return 1;
}
stock SetMoney(playerid, Quantidade)
{
ResetPlayerMoney(playerid);
Money[playerid] = Quantidade;
GivePlayerMoney(playerid, Quantidade);
return 1;
}
stock GiveMoney(playerid, Quantidade)
{
Money[playerid] += Quantidade;
GivePlayerMoney(playerid, Quantidade);
return 1;
}
stock ResetMoney(playerid)
{
Money[playerid] = 0;
ResetPlayerMoney(playerid);
return 1;
}
stock GetMoney(playerid)
{
GetPlayerMoney(playerid);
return 1;
}
stock GiveMoney(playerid, quantia) {
return SetPVarInt(playerid, "grana", GetPVarInt(playerid, "grana") + grana);
}
public OnPlayerUpdate(playerid) {
if(GetPlayerMoney(playerid) != GetPVarInt(playerid, "grana")) {
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid, GetPVarInt(playerid, "grana"));
}
return 1;
}
Assim nгo vai dar certo, vocк sу usa a variбvel de Dinheiro, falta as funзхes de Money..
@Topic da pra fazer dessa maneira: Mais tem um porйm se vocк for na maquina de sumo ele ira reconhecer como hack rsrs |