[FilterScript] Anti Money Hacker.
#1

Anti Money Hacker SA:MP

Olб amiguets,


Bom, hoje 2 caras havia me mandado MP sobre a funзгo do money hack do s0rvete,

Bom o code й simples, pequeno porйm funcional:

• Descriзгo:
» Simples, com 1 Timer para checagem ele confere se a grana atual e compбtivel com a grana do GTA, caso nгo for ele ira fazer determinadas funзгo:



Iniciando:
pawn Код:
#include < a_samp  >

new TimerAtuPlayer[MAX_PLAYERS];
new Grana[MAX_PLAYERS];

public OnPlayerConnect(playerid)
{
    TimerAtuPlayer[playerid] = SetTimerEx("UpdatePlayer", 2000, true, "d", playerid);
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    KillTimer(TimerAtuPlayer[playerid]);
    return 1;
}
• Por que um Timer ?
» Simples, lуgicamente para atualizar as informaзхes do jogador em questгo.


Meio:
pawn Код:
forward UpdatePlayer(playerid);
public UpdatePlayer(playerid)
{
    if(GetPlayerMoney(playerid) != Grana[playerid])
    {
        ResetPlayerMoney(playerid);
        GivePlayerMoney(playerid, Grana[playerid]);
    }
    return 1;
}


• Funcionalidade Grana[playerid]
» Funciona como sua segunda moeda do servidor, nela serб salva as informaзгo de tudo o que usar GivePlayerMoneyEx.


• Tenho um timer de atualizar, posso trocar por ele ?
» Sim, desde que troque o nome da callback para chamar no timer, assim chamando a callback certa e eliminando um timer a mais em seu servidor.
» OBS: Evite de utilizar a callback OnPlayerUpdate, opcional



stock's:

pawn Код:
stock GivePlayerMoneyEx(id, money) return Grana[id] += money;
stock GetPlayerMoneyEx(id) return Grana[id];
stock ResetPlayerMoneyEx(id) return Grana[id] = 0;


• GivePlayerMoneyEx ?
» Essa funзгo faz com que a grana colocada ou retirada seja igual a Grana[playeri] pois assim nгo serб identificado como hacker ou algo do tipo.


• GetPlayerMoneyEx ?
» Essa funзгo faz getar a Grana do jogador e nгo o GivePlayerMoney como padrгo do SA:MP


• ResetPlayerMoneyEx ?
» Essa funзгo ira resetar a grana do jogador e do GTA, fazendo assim a grana do jogador seja igual a 0 juntamente com a grana do GTA.



Finalizando:


• Mais por que ResetPlayerMoney ao invez de ResetPlayerMoneyEx ?
» Simples, como o s0rvete e derivados geta na raiz do SA:MP, temos que resetar a grana do GTA tambйm,
» Assim colocando as duas igual a 0

• Mais por que GivePlayerMoney ao invez de GivePlayerMoneyEx ?
» Para normalizar, temos que fazer com que a grana do GTA ficar igual a do player " Grana[playerid] "
» Assim todas as funзхes que usar " GivePlayerMoneyEx " nгo serб resetada pela public de atualizaзгo

• Como Usar ?
» Troque todas os:

GivePlayerMoney(playerid) por GivePlayerMoneyEx(playerid) exceto o que estб dentro da public de atualizaзгo da grana.

GetPlayerMoney(playerid)
por GetPlayerMoneyEx(playerid) exceto o que estб dentro da public de atualizaзгo da grana.

ResetPlayerMoney(playerid) por ResetPlayerMoneyEx(playerid) exceto o que estб dentro da public de atualizaзгo da grana.


• Download
» Download tambйm disponнvel aqui.


• Crйditos:

pawn Код:
//[Full]Garfield[XDB]  me ajudado com o mesmo
// Larceny me ajudado na funзгo das stocks
// DrTHE por ser vagabundo mais tb me deu dicas para diminuir o code
Reply


Messages In This Thread
Anti Money Hacker. - by Maklister - 24.01.2013, 22:37
Re: Anti Money Hacker. - by JonathanFeitosa - 24.01.2013, 22:40
Re: Anti Money Hacker. - by Maklister - 24.01.2013, 22:42
Re: Anti Money Hacker. - by sofina - 24.01.2013, 22:52
Re: Anti Money Hacker. - by ViniBorn - 24.01.2013, 22:54
Re: Anti Money Hacker. - by Maklister - 24.01.2013, 23:09
Re: Anti Money Hacker. - by paulor - 24.01.2013, 23:13
Re: Anti Money Hacker. - by Maklister - 24.01.2013, 23:16
Re: Anti Money Hacker. - by paulor - 24.01.2013, 23:36
Re: Anti Money Hacker. - by Jumper. - 25.01.2013, 11:41

Forum Jump:


Users browsing this thread: 1 Guest(s)