-
Sziasztok!
Olyat szeretnék kérdeni h a moneyhax ot hogy engedélyezem hogy ölésnél adja a lét és ne hacknek vegye?
eredeti link:
http://forum.sa-mp.com/showthread.php?t=189607
-
Inkább csináld azt hogy ellenõrzöd hogy mekkora a pénz különbség két checking között..
Tessék, csintem egy scriptet, nem teszteltem, de mûködnie kell..
#include <a_samp>
//====== Beállítások ======//
#define CHECKING_INTERVAL 10 //Itt állítsd be hány másodpercenként ellenõrízze hogy moneyhackel-e valaki
#define MAX_CASH_DIFF 5000000 //Itt állítsd be hogy a megadott másodperc alatt mennyi pénzt lehet legfeljebb összeszedni
//=========================//
#define func%0(%1) forward%0(%1); public%0(%1)
#define BanEx2(%0,%1,%2) do{new _str[64]; format(_str,64,%1,%2); BanEx(%0,_str);}while(FALSE)
new oldCash[MAX_PLAYERS];
new newCash[MAX_PLAYERS];
new FALSE = false;
public OnFilterScriptInit()
{
SetTimer(\"CheckAllCash\",CHECKING_INTERVAL*1000,1);
return 1;
}
public OnPlayerConnect(playerid)
{
oldCash[playerid] = 0;
newCash[playerid] = 0;
return 1;
}
func CheckAllCash()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i))continue;
oldCash = newCash;
newCash = GetPlayerMoney(i);
if(newCash-oldCash > MAX_CASH_DIFF)
{
BanEx2(i,\"Pénz hack (%d másodperc alatt $%d)\",CHECKING_INTERVAL,MAX_CASH_DIFF);
}
}
return 1;
}
-
és ez a pénzét visszaállitja?
-
Nem, hanem kitiltja.. Ha azt akarod h állítsa vissza kitiltás helyett akkor:
#include <a_samp>
//====== Beállítások ======//
#define CHECKING_INTERVAL 10 //Itt állítsd be hány másodpercenként ellenõrízze hogy moneyhackel-e valaki
#define MAX_CASH_DIFF 5000000 //Itt állítsd be hogy a megadott másodperc alatt mennyi pénzt lehet legfeljebb összeszedni
//=========================//
#define func%0(%1) forward%0(%1); public%0(%1)
//#define BanEx2(%0,%1,%2) do{new _str[64]; format(_str,64,%1,%2); BanEx(%0,_str);}while(FALSE)
#define SetPlayerMoney(%0,%1) do{ResetPlayerMoney(%0); GivePlayerMoney(%0,%1);}while(FALSE)
new oldCash[MAX_PLAYERS];
new newCash[MAX_PLAYERS];
new FALSE = false;
public OnFilterScriptInit()
{
SetTimer(\"CheckAllCash\",CHECKING_INTERVAL*1000,1);
return 1;
}
public OnPlayerConnect(playerid)
{
oldCash[playerid] = 0;
newCash[playerid] = 0;
return 1;
}
func CheckAllCash()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i))continue;
oldCash = newCash;
newCash = GetPlayerMoney(i);
if(newCash-oldCash > MAX_CASH_DIFF)
{
SetPlayerMoney(i,oldCash);
}
}
return 1;
}
-
köszi! ment a +