Nevoie de Filescript anti-money hack sa nu isi de.a bani
#1

Nevoie de Filescript anti-money hack sa nu isi de.a bani
Reply
#2

pawn Code:
#include < a_samp >

new _m_ac_money [ MAX_PLAYERS ];
forward _m_ac_MoneyCheck ( );

stock _m_ac_GivePlayerMoney ( playerid, money )
{
    if ( !IsPlayerConnected ( playerid ) ) return 0;
    _m_ac_money [ playerid ] += money;
    return GivePlayerMoney ( playerid, money );
}

stock _m_ac_GetPlayerMoney ( playerid )
{
    if ( !IsPlayerConnected ( playerid ) ) return 0;
    return _m_ac_money [ playerid ];
}

stock _m_ac_ResetPlayerMoney ( playerid )
{
    if ( !IsPlayerConnected ( playerid ) ) return 0;
    _m_ac_money [ playerid ] = 0;
    return ResetPlayerMoney ( playerid );
}

public OnGameModeInit ( )
{
    SetTimer ( "_m_ac_MoneyCheck", 1000, true );

    #if defined _m_ac_OnGameModeInit
        return _m_ac_OnGameModeInit ( );
    #else
        return 1;
    #endif
}

public OnPlayerConnect ( playerid )
{
    _m_ac_money [ playerid ] = 0;

    #if defined _m_ac_OnPlayerConnect
        return _m_ac_OnPlayerConnect ( playerid );
    #else
        return 1;
    #endif
}

public _m_ac_MoneyCheck ( )
{
    for ( new i; i != MAX_PLAYERS; ++i )
    {
        if ( !IsPlayerConnected ( i ) ) continue;
        if ( GetPlayerMoney ( i ) != _m_ac_money [ i ] )
        {
            ResetPlayerMoney ( i );
            GivePlayerMoney ( i,  _m_ac_money [ i ] );
        }
    }
    return 1;
}

#if defined _ALS_GivePlayerMoney
    #undef GivePlayerMoney
#else
    #define _ALS_GivePlayerMoney
#endif
#define GivePlayerMoney _m_ac_GivePlayerMoney

#if defined _ALS_GetPlayerMoney
    #undef GetPlayerMoney
#else
    #define _ALS_GetPlayerMoney
#endif
#define GetPlayerMoney _m_ac_GetPlayerMoney

#if defined _ALS_ResetPlayerMoney
    #undef ResetPlayerMoney
#else
    #define _ALS_ResetPlayerMoney
#endif
#define ResetPlayerMoney _m_ac_ResetPlayerMoney

#if defined _ALS_OnGameModeInit
    #undef OnGameModeInit
#else
    #define _ALS_OnGameModeInit
#endif
#define OnGameModeInit _m_ac_OnGameModeInit
#if defined _m_ac_OnGameModeInit
    forward _m_ac_OnGameModeInit ( );
#endif

#if defined _ALS_OnPlayerConnect
    #undef OnPlayerConnect
#else
    #define _ALS_OnPlayerConnect
#endif
#define OnPlayerConnect _m_ac_OnPlayerConnect
#if defined _m_ac_OnPlayerConnect
    forward _m_ac_OnPlayerConnect ( playerid );
#endif
Salveaza-l ca .inc si include-l in GM.
Reply
#3

nu merge... frate Include ala ma poate ajuta cineva? va rog.
Reply
#4

Am bagat acesta in samp si mi-am dat bani cu s.o.b.e.i.t mii reseteaza , e perfect asta dar,,
cand dau bani cu /givemoney mii reseteaza si nu imi trebuie asta. Cum fac c asa nu mii mai reseteaza cu comanda /givemoney si sa ii reseteze doar la cei cu s.o.b

Code:
#include <a_samp>

#define Maximal_Players 500
#define Cheat_Type_Money 0
#define Cheat_Type_Weapons 1
#define Cheat_Type_Player_Speed 2
#define Cheat_Type_Vehicle_Speed 3

new AntiCheatDetectTimer;
enum PlayerInfo
{
	PlayerMoney,
	PlayerWeapon[13],
	PlayerAmmunition[13]
};
new Player[Maximal_Players][PlayerInfo];

public OnFilterScriptInit()
{
	AntiCheatDetectTimer = SetTimer("AntiCheatDetect",1000,1);
	return 1;
}

public OnFilterScriptExit()
{
	KillTimer(AntiCheatDetectTimer);
	return 1;
}

public OnPlayerConnect(playerid)
{
	Player[playerid][PlayerMoney] = 0;
	for(new W = 0; W < 12; W++)
	{
		Player[playerid][PlayerWeapon][W] = 0;
		Player[playerid][PlayerAmmunition][W] = 0;
	}
	return 1;
}

forward AntiCheat(PlayerId,Cheat_Type,WeaponId);
public AntiCheat(PlayerId,Cheat_Type,WeaponId)
{
	if(Cheat_Type == Cheat_Type_Money) SetMoney(PlayerId,Player[PlayerId][PlayerMoney]);
	if(Cheat_Type == Cheat_Type_Weapons) ResetWeapon(PlayerId,WeaponId);
	if(Cheat_Type == Cheat_Type_Player_Speed) SetPlayerHealth(PlayerId,0);
	if(Cheat_Type == Cheat_Type_Vehicle_Speed) DestroyVehicle(GetPlayerVehicleID(PlayerId));
	return 1;
}

stock GetMoney(PlayerId)
{
	if(!IsPlayerConnected(PlayerId)) return 0;
	return Player[PlayerId][PlayerMoney];
}

stock GiveMoney(PlayerId,Amount)
{
	if(!IsPlayerConnected(PlayerId)) return 0;
	if(Amount == 0) return 0;
	Player[PlayerId][PlayerMoney] += Amount;
    GivePlayerMoney(PlayerId,Amount);
	return 1;
}

stock SetMoney(PlayerId,Amount)
{
    if(!IsPlayerConnected(PlayerId)) return 0;
    Player[PlayerId][PlayerMoney] = Amount;
    ResetPlayerMoney(PlayerId);
    GivePlayerMoney(PlayerId,Player[PlayerId][PlayerMoney]);
	return 1;
}

stock ResetMoney(PlayerId)
{
	if(!IsPlayerConnected(PlayerId)) return 0;
	Player[PlayerId][PlayerMoney] = 0;
	ResetPlayerMoney(PlayerId);
	return 1;
}

stock GiveWeapon(PlayerId,WeaponId,Ammunition)
{
    if(!IsPlayerConnected(PlayerId)) return 0;
    if(WeaponId < 0 || WeaponId == 19 || WeaponId == 20 || WeaponId == 21 || WeaponId > 46) return 0;
    if(Ammunition == 0) return 0;
    for(new W = 0; W < 12; W++)
    {
        GetPlayerWeaponData(PlayerId,W,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]);
    }
    Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)] = WeaponId;
    Player[PlayerId][PlayerAmmunition][GetWeaponSlot(WeaponId)] = Ammunition;
    SetPlayerAmmo(PlayerId,Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)],0);
    GivePlayerWeapon(PlayerId,WeaponId,Ammunition);
    SetPlayerArmedWeapon(PlayerId,WeaponId);
	return 1;
}

stock ResetWeapon(PlayerId,WeaponId)
{
	if(!IsPlayerConnected(PlayerId)) return 0;
	if(WeaponId < 0 || WeaponId == 19 || WeaponId == 20 || WeaponId == 21 || WeaponId > 46) return 0;
	for(new W = 0; W < 12; W++)
	{
	    GetPlayerWeaponData(PlayerId,W,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]);
	}
    Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)] = 0;
    Player[PlayerId][PlayerAmmunition][GetWeaponSlot(WeaponId)] = 0;
    ResetPlayerWeapons(PlayerId);
	for(new W = 0; W < 12; W++)
	{
	    GivePlayerWeapon(PlayerId,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]);
	}
	SetPlayerArmedWeapon(PlayerId,0);
	return 1;
}

stock ResetWeapons(PlayerId)
{
    if(!IsPlayerConnected(PlayerId)) return 0;
    for(new W = 0; W < 12; W++)
    {
        Player[PlayerId][PlayerWeapon][W] = 0;
        Player[PlayerId][PlayerAmmunition][W] = 0;
    }
    ResetPlayerWeapons(PlayerId);
	return 1;
}

stock GetWeaponSlot(WeaponId)
{
	switch(WeaponId)
	{
	    case 0,1: return 0;
		case 2..9: return 1;
		case 10..15: return 10;
		case 16..18,39: return 8;
		case 22..24: return 2;
		case 25..27: return 3;
		case 28,29,32: return 4;
		case 30,31: return 5;
		case 33,34: return 6;
		case 35..38: return 7;
		case 40: return 12;
		case 41..43: return 9;
		case 44..46: return 11;
	}
	return 0;
}

forward AntiCheatDetect();
public AntiCheatDetect()
{
	for(new P = 0; P < Maximal_Players; P++)
	{
	    if(IsPlayerConnected(P))
	    {
	        if(GetPlayerMoney(P) != GetMoney(P)) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Money);
	        if(Player[P][PlayerWeapon][GetWeaponSlot(GetPlayerWeapon(P))] != GetPlayerWeapon(P)) CallLocalFunction("AntiCheat","ddd",P,Cheat_Type_Weapons,GetPlayerWeapon(P));
	        if(GetPlayerState(P) == PLAYER_STATE_ONFOOT)
	        {
	            new Float:X;
	            new Float:Y;
				new Float:Z;
				GetPlayerVelocity(P,X,Y,Z);
				if(floatround(X) > 1 || floatround(Y) > 1 || floatround(Z) > 1) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Player_Speed);
			}
			if(GetPlayerState(P) == PLAYER_STATE_DRIVER)
			{
			    new Float:X;
			    new Float:Y;
			    new Float:Z;
			    GetVehicleVelocity(GetPlayerVehicleID(P),X,Y,Z);
			    if(floatround(X) > 1 || floatround(Y) > 1 || floatround(Z) > 3 || floatround(X) < -1 || floatround(Y) < -1 || floatround(Z) < -3) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Vehicle_Speed);
			}
	    }
	}
	return 1;
}
Reply
#5

Quote:
Originally Posted by florinadrian96
View Post
nu merge...
imi pare rau sa te dezamagesc dar codul respectiv chiar merge... iar daca tu nu ai reusit sa faci codul asta sa functioneze ce te face sa crezi codul altor persoane o sa reusesti sa-l pui in functiune

Poftim! Incearca codul lui Dan https://github.com/udan11/samp-anticheat
Reply
#6

ai incercat sa iti dau /givemoney ? la mine mii reseteaza si pe aia.
Reply
#7

UAU normal ca tii reseteaza daca primesti bani tot cu giveplayermoney
Reply
#8

ma ajuti Dydu? sa fac asta

ca sa nu mi se mai reseteze si la /givemoney ? te rog

Code:
#include <a_samp>

#define Maximal_Players 500
#define Cheat_Type_Money 0
#define Cheat_Type_Weapons 1
#define Cheat_Type_Player_Speed 2
#define Cheat_Type_Vehicle_Speed 3

new AntiCheatDetectTimer;
enum PlayerInfo
{
	PlayerMoney,
	PlayerWeapon[13],
	PlayerAmmunition[13]
};
new Player[Maximal_Players][PlayerInfo];

public OnFilterScriptInit()
{
	AntiCheatDetectTimer = SetTimer("AntiCheatDetect",1000,1);
	return 1;
}

public OnFilterScriptExit()
{
	KillTimer(AntiCheatDetectTimer);
	return 1;
}

public OnPlayerConnect(playerid)
{
	Player[playerid][PlayerMoney] = 0;
	for(new W = 0; W < 12; W++)
	{
		Player[playerid][PlayerWeapon][W] = 0;
		Player[playerid][PlayerAmmunition][W] = 0;
	}
	return 1;
}

forward AntiCheat(PlayerId,Cheat_Type,WeaponId);
public AntiCheat(PlayerId,Cheat_Type,WeaponId)
{
	if(Cheat_Type == Cheat_Type_Money) SetMoney(PlayerId,Player[PlayerId][PlayerMoney]);
	if(Cheat_Type == Cheat_Type_Weapons) ResetWeapon(PlayerId,WeaponId);
	if(Cheat_Type == Cheat_Type_Player_Speed) SetPlayerHealth(PlayerId,0);
	if(Cheat_Type == Cheat_Type_Vehicle_Speed) DestroyVehicle(GetPlayerVehicleID(PlayerId));
	return 1;
}

stock GetMoney(PlayerId)
{
	if(!IsPlayerConnected(PlayerId)) return 0;
	return Player[PlayerId][PlayerMoney];
}

stock GiveMoney(PlayerId,Amount)
{
	if(!IsPlayerConnected(PlayerId)) return 0;
	if(Amount == 0) return 0;
	Player[PlayerId][PlayerMoney] += Amount;
    GivePlayerMoney(PlayerId,Amount);
	return 1;
}

stock SetMoney(PlayerId,Amount)
{
    if(!IsPlayerConnected(PlayerId)) return 0;
    Player[PlayerId][PlayerMoney] = Amount;
    ResetPlayerMoney(PlayerId);
    GivePlayerMoney(PlayerId,Player[PlayerId][PlayerMoney]);
	return 1;
}

stock ResetMoney(PlayerId)
{
	if(!IsPlayerConnected(PlayerId)) return 0;
	Player[PlayerId][PlayerMoney] = 0;
	ResetPlayerMoney(PlayerId);
	return 1;
}

stock GiveWeapon(PlayerId,WeaponId,Ammunition)
{
    if(!IsPlayerConnected(PlayerId)) return 0;
    if(WeaponId < 0 || WeaponId == 19 || WeaponId == 20 || WeaponId == 21 || WeaponId > 46) return 0;
    if(Ammunition == 0) return 0;
    for(new W = 0; W < 12; W++)
    {
        GetPlayerWeaponData(PlayerId,W,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]);
    }
    Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)] = WeaponId;
    Player[PlayerId][PlayerAmmunition][GetWeaponSlot(WeaponId)] = Ammunition;
    SetPlayerAmmo(PlayerId,Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)],0);
    GivePlayerWeapon(PlayerId,WeaponId,Ammunition);
    SetPlayerArmedWeapon(PlayerId,WeaponId);
	return 1;
}

stock ResetWeapon(PlayerId,WeaponId)
{
	if(!IsPlayerConnected(PlayerId)) return 0;
	if(WeaponId < 0 || WeaponId == 19 || WeaponId == 20 || WeaponId == 21 || WeaponId > 46) return 0;
	for(new W = 0; W < 12; W++)
	{
	    GetPlayerWeaponData(PlayerId,W,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]);
	}
    Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)] = 0;
    Player[PlayerId][PlayerAmmunition][GetWeaponSlot(WeaponId)] = 0;
    ResetPlayerWeapons(PlayerId);
	for(new W = 0; W < 12; W++)
	{
	    GivePlayerWeapon(PlayerId,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]);
	}
	SetPlayerArmedWeapon(PlayerId,0);
	return 1;
}

stock ResetWeapons(PlayerId)
{
    if(!IsPlayerConnected(PlayerId)) return 0;
    for(new W = 0; W < 12; W++)
    {
        Player[PlayerId][PlayerWeapon][W] = 0;
        Player[PlayerId][PlayerAmmunition][W] = 0;
    }
    ResetPlayerWeapons(PlayerId);
	return 1;
}

stock GetWeaponSlot(WeaponId)
{
	switch(WeaponId)
	{
	    case 0,1: return 0;
		case 2..9: return 1;
		case 10..15: return 10;
		case 16..18,39: return 8;
		case 22..24: return 2;
		case 25..27: return 3;
		case 28,29,32: return 4;
		case 30,31: return 5;
		case 33,34: return 6;
		case 35..38: return 7;
		case 40: return 12;
		case 41..43: return 9;
		case 44..46: return 11;
	}
	return 0;
}

forward AntiCheatDetect();
public AntiCheatDetect()
{
	for(new P = 0; P < Maximal_Players; P++)
	{
	    if(IsPlayerConnected(P))
	    {
	        if(GetPlayerMoney(P) != GetMoney(P)) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Money);
	        if(Player[P][PlayerWeapon][GetWeaponSlot(GetPlayerWeapon(P))] != GetPlayerWeapon(P)) CallLocalFunction("AntiCheat","ddd",P,Cheat_Type_Weapons,GetPlayerWeapon(P));
	        if(GetPlayerState(P) == PLAYER_STATE_ONFOOT)
	        {
	            new Float:X;
	            new Float:Y;
				new Float:Z;
				GetPlayerVelocity(P,X,Y,Z);
				if(floatround(X) > 1 || floatround(Y) > 1 || floatround(Z) > 1) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Player_Speed);
			}
			if(GetPlayerState(P) == PLAYER_STATE_DRIVER)
			{
			    new Float:X;
			    new Float:Y;
			    new Float:Z;
			    GetVehicleVelocity(GetPlayerVehicleID(P),X,Y,Z);
			    if(floatround(X) > 1 || floatround(Y) > 1 || floatround(Z) > 3 || floatround(X) < -1 || floatround(Y) < -1 || floatround(Z) < -3) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Vehicle_Speed);
			}
	    }
	}
	return 1;
}
Reply
#9

Tu vrei mura-n gura.
Ti s-a dat codul si tu rapid "nu merge" , bat la pariu ca nici nu ai stat macar 5 minute sa iti bati capul.
Reply
#10

ba da frate dar nu imi dau seama nu am mai scriptat de mult ma ajuti te rog frumos...
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)