Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <zcmd>
- #define RED 0xEB0000FF
- #define BLUE 0x0055FFFF
- // Welche Sachen sollen verboten werden: einfach auskommentieren oder anders herum
- #define ANTI_JETPACK // Jetpack
- #define ANTI_MINIGUN // Minigun
- //#define ANTI_DRIVEBY1 // DriveBy-Kills/Totparken (Nur als Fahrer)
- #define ANTI_DRIVEBY2 // DriveBy-Kills/Totparken (Auch als Beifahrer)
- #define ANTI_FLAME // Flammenwerfer
- #define ANTI_ROCKET // Raketenwerfer
- #define ANTI_HS // HS-Raketenwerfer
- #define ANTI_STACHEL // Paketbomben
- #define ANTI_CHAIN // Motorsäge
- #define ANTI_MOLOTOV // Molotov Cocktails
- #define ANTI_INT // Interior-Kills
- #define ANTI_MONEY // Geld-Hacks (bitte Hinweise in der Vorstellung beachten)
- // -------------------------------------------------------------------------------
- // Welche Sachen sollen verhindert werden (Durch Waffen abnehmen etc.)
- //#define NO_DRIVEBY1 // DriveBy (Fahrer) -> Waffen abnehmen
- #define NO_DRIVEBY2 // DriveBy (Allgemein) -> Waffen abnehmen
- // -------------------------------------------------------------------------------
- // Was soll womit bestraft werden (In Kick bzw. Ban umändern)
- #define P_DRIVEBY Kick // DriveBy-Strafe
- #define P_WEAPON Ban // Waffen-Hack-Strafe
- #define P_JETPACK Ban // JetPack-Hack-Strafe
- #define P_INTKILL Kick // Strafe für Interior-Kill
- #define P_MONEY Ban // Strafe für Money-Hacks
- // -------------------------------------------------------------------------------
- new checktimerid;
- new msgtimerid;
- new weapons[MAX_PLAYERS][13];
- new ammos[MAX_PLAYERS][13];
- new bool:waspassenger[MAX_PLAYERS];
- forward checktimer();
- forward msgtimer();
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" 946ben's Antis ");
- print("--------------------------------------\n");
- checktimerid = SetTimer("checktimer", 1500, 1);
- msgtimerid = SetTimer("msgtimer", 1800000, 1); // = alle 30 Minuten
- EnableStuntBonusForAll(0);
- return 1;
- }
- public OnFilterScriptExit()
- {
- KillTimer(checktimerid);
- KillTimer(msgtimerid);
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- for(new i=0; i<13; i++)
- {
- weapons[playerid][i] = 0;
- ammos[playerid][i] = 0;
- }
- #if defined ANIT_MONEY
- SetPVarInt(playerid, "A_MONEY", 0);
- #endif
- return 1;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- #if defined NO_DRIVEBY1
- if(!ispassenger)
- {
- waspassenger[playerid] = false;
- for (new i=0; i<13; i++)
- {
- GetPlayerWeaponData(playerid, i, weapons[playerid][i], ammos[playerid][i]);
- printf("Waffe %d AMMO: %d", weapons[playerid][i], ammos[playerid][i]);
- }
- ResetPlayerWeapons(playerid);
- }
- #endif
- #if defined NO_DRIVEBY2
- for (new i=0; i<13; i++)
- {
- GetPlayerWeaponData(playerid, i, weapons[playerid][i], ammos[playerid][i]);
- printf("Waffe %d AMMO: %d", weapons[playerid][i], ammos[playerid][i]);
- }
- ResetPlayerWeapons(playerid);
- #endif
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- #if defined NO_DRIVEBY1
- if(waspassenger[playerid] == false)
- {
- for(new i=0; i<13; i++)
- {
- GivePlayerWeapon(playerid, weapons[playerid][i], ammos[playerid][i]);
- printf("Waffe %d AMMO: %d", weapons[playerid][i], ammos[playerid][i]);
- }
- }
- #endif
- #if defined NO_DRIVEBY2
- for(new i=0; i<13; i++)
- {
- GivePlayerWeapon(playerid, weapons[playerid][i], ammos[playerid][i]);
- printf("Waffe %d AMMO: %d", weapons[playerid][i], ammos[playerid][i]);
- }
- #endif
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- SetPVarInt(playerid, "A_MONEY", GetPlayerMoney(playerid));
- return 1;
- }
- public OnVehicleMod(playerid,vehicleid,componentid)
- {
- SetPVarInt(playerid, "A_MONEY", GetPlayerMoney(playerid));
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- new string[128];
- #if defined ANTI_DRIVEBY1
- if(IsPlayerInAnyVehicle(killerid) || GetPlayerVehicleSeat(killerid) == 0)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen DriveBy (Fahrer) bestraft.", GetName(killerid));
- SendClientMessageToAll(RED, string);
- P_DRIVEBY(killerid);
- }
- #endif
- #if defined ANTI_DRIVEBY2
- if(IsPlayerInAnyVehicle(killerid))
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen DriveBy (Allgemein) bestraft.", GetName(killerid));
- SendClientMessageToAll(RED, string);
- P_DRIVEBY(killerid);
- }
- #endif
- #if defined ANTI_INT
- if(GetPlayerInterior(killerid) != 1)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen dem Töten in Interiors gekickt.", GetName(killerid));
- SendClientMessageToAll(RED, string);
- P_INTKILL(killerid);
- }
- #endif
- return 1;
- }
- public checktimer()
- {
- new weapon, ammo, string[128];
- #if defined ANTI_JETPACK
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- if(GetPlayerSpecialAction(i) == SPECIAL_ACTION_USEJETPACK)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen der Nutzung eines Jetpacks bestraft.", GetName(i));
- P_JETPACK(i);
- }
- }
- #endif
- #if defined ANTI_MINIGUN
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- GetPlayerWeaponData(i, 7, weapon, ammo);
- if(weapon == 38)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen einer unerlaubten Minigun bestraft.", GetName(i));
- SendClientMessageToAll(RED, string);
- P_WEAPON(i);
- }
- }
- #endif
- #if defined ANTI_FLAME
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- GetPlayerWeaponData(i, 7, weapon, ammo);
- if(weapon == 37)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen einem unerlaubten Flammenwerfer bestraft.", GetName(i));
- SendClientMessageToAll(RED, string);
- P_WEAPON(i);
- }
- }
- #endif
- #if defined ANTI_ROCKET
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- GetPlayerWeaponData(i, 7, weapon, ammo);
- if(weapon == 35)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen einem unerlaubten Raketenwerfer bestraft.", GetName(i));
- SendClientMessageToAll(RED, string);
- P_WEAPON(i);
- }
- }
- #endif
- #if defined ANTI_HS
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- GetPlayerWeaponData(i, 7, weapon, ammo);
- if(weapon == 36)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen einem unerlaubten HS-Raketenwerfer bestraft.", GetName(i));
- SendClientMessageToAll(RED, string);
- P_WEAPON(i);
- }
- }
- #endif
- #if defined ANTI_STACHEL
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- GetPlayerWeaponData(i, 8, weapon, ammo);
- if(weapon == 39)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen unerlaubten Paketbomben bestraft.", GetName(i));
- SendClientMessageToAll(RED, string);
- P_WEAPON(i);
- }
- }
- #endif
- #if defined ANTI_CHAIN
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- GetPlayerWeaponData(i, 1, weapon, ammo);
- if(weapon == 9)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen unerlaubten Motorsäge bestraft.", GetName(i));
- SendClientMessageToAll(RED, string);
- P_WEAPON(i);
- }
- }
- #endif
- #if defined ANTI_MOLOTOV
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- GetPlayerWeaponData(i, 8, weapon, ammo);
- if(weapon == 18)
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen unerlaubten Molotov Cocktail(s) bestraft.", GetName(i));
- SendClientMessageToAll(RED, string);
- P_WEAPON(i);
- }
- }
- #endif
- #if defined ANTI_MONEY
- for(new i; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- if(GetPlayerMoney(i) > GetPVarInt(i, "A_MONEY"))
- {
- format(string, sizeof(string), "[ANTI] %s wurde wegen Geld-Hacks bestraft.", GetName(i));
- SendClientMessageToAll(RED, string);
- P_MONEY(i);
- }
- }
- #endif
- }
- public msgtimer()
- {
- SendClientMessageToAll(BLUE, "[ANTI] Achtung: Das Cheaten auf diesem Server ist verboten");
- SendClientMessageToAll(BLUE, "[ANTI] Der Server wird stetig von einem Anti-Cheat-System überwacht");
- return 1;
- }
- stock GetName(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, MAX_PLAYER_NAME);
- return name;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement