Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <zcmd>
- //--------------
- #define DIALOG_ANTI 10
- #define MAX_SPAM 3
- #define MAX_DECREASECOUNT 5
- #define COLOR_RED 0xFF0000AA
- new PlayerSpam[MAX_PLAYERS];
- new SpamTimer[MAX_PLAYERS];
- new BannedInGame[MAX_PLAYERS];
- new PlayerMoney[MAX_PLAYERS];
- //----------------------
- public OnFilterScriptInit()
- {
- print("\n****************************************");
- print("* Anti cheat system by RarKozz *");
- print("****************************************\n");
- return 1;
- }
- public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
- {
- if(weaponid == WEAPON_MINIGUN && hittype == BULLET_HIT_TYPE_PLAYER)
- {
- if(BannedInGame[playerid] == 1)return 0;
- BannedInGame[playerid] = 1;
- new name[MAX_PLAYER_NAME], str[128];
- GetPlayerName(playerid, name,sizeof(name));
- format(str,sizeof(str), "{FF0000}[ANTI-CHEAT]: %s has been banned by the server - Reason: Minigun",name);
- SendClientMessageToAll(-1, str);
- SetTimerEx("ban", 1000, false, "i", playerid);
- }
- return 1;
- }
- forward ban(playerid);
- public ban(playerid)
- {
- SendClientMessage(playerid, -1, "{FF0000}[BOT]: You have been banned for using minigun.");
- ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX,"BANNED", "{FF0000}You have been banned by the server\nIf you have been banned by mistake please make a ban appeal at www.website.com","Exit","");
- Ban(playerid);
- BannedInGame[playerid] = 0;
- return 1;
- }
- public OnRconLoginAttempt(ip[], password[], success)
- {
- if(!success)
- {
- new PlayerIP[16];
- for(new i = 12; i< MAX_PLAYERS; i++)
- {
- GetPlayerIp(i, PlayerIP,sizeof(PlayerIP));
- if(!strcmp(ip, PlayerIP, true))
- {
- ShowPlayerDialog(i, 1, DIALOG_STYLE_MSGBOX,"BANNED", "{FF0000}You have been banned by the server\nIf you have been banned by mistake please make a ban appeal at www.website.com","Exit","");
- SetTimerEx("BannedRcon", 1000, false, "i");
- TogglePlayerControllable(i,0);
- }
- }
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(GetPlayerWeapon(killerid) == 35) Ban(killerid);
- if(GetPlayerWeapon(killerid) == 36) Ban(killerid);
- SetTimerEx("BannedHack", 1000, false, "i");
- return 1;
- }
- forward BannedHack(playerid);
- public BannedHack(playerid)
- {
- Ban(playerid);
- return 1;
- }
- forward BannedRcon(i);
- public BannedRcon(i)
- {
- new attemptedname[MAX_PLAYER_NAME], str[128];
- GetPlayerName(i, attemptedname,sizeof(attemptedname));
- format(str,sizeof(str), "{FF0000}[ANTI-CHEAT]: %s has been banned for rcon login attempt.", attemptedname);
- SendClientMessageToAll(-1,str);
- Ban(i);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- PlayerSpam[playerid] = 0;
- PlayerMoney[playerid] = 0;
- return 1;
- }
- public OnPlayerDisconnect(playerid)
- {
- PlayerSpam[playerid] = 0;
- PlayerMoney[playerid] = 0;
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- SpamTimer[playerid] = SetTimerEx("DecreaseSpam",MAX_DECREASECOUNT*1000,1,"",playerid);
- if(PlayerSpam[playerid] < MAX_SPAM)
- {
- PlayerSpam[playerid] ++;
- }
- else if(PlayerSpam[playerid] >= MAX_SPAM)
- {
- new TalkS[120],string[120], name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name,sizeof(name));
- format(string,sizeof(string), "{FF0000}[ANTI-CHEAT]: %s(ID: %d) has been kicked from the server - Reason: Spam",name, playerid);
- SendClientMessageToAll(-1,string);
- format(TalkS,sizeof(TalkS), "{FF0000}You have been kicked for spamming.");
- ShowPlayerDialog(playerid, DIALOG_ANTI, DIALOG_STYLE_MSGBOX,"{FF0000}ANTI CHEAT",TalkS,"OK","");
- PlayerSpam[playerid] = 0;
- KillTimer(SpamTimer[playerid]);
- SetTimerEx("SpamTimerKick", 1000, false, "i", playerid);
- }
- return 1;
- }
- forward SpamTimerKick(playerid);
- public SpamTimerKick(playerid)
- {
- SendClientMessage(playerid, -1, "{FF0000}[ANTI-CHEAT]: {FFFFFF}You have been kicked for spamming");
- Kick(playerid);
- return 1;
- }
- forward DecreaseSpam(playerid);
- public DecreaseSpam(playerid)
- {
- PlayerSpam[playerid] --;
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- new pname[MAX_PLAYER_NAME], string[128];
- if(GetPlayerMoney(playerid) > PlayerMoney[playerid])
- {
- GetPlayerName(playerid, pname,sizeof(pname));
- format(string, sizeof(string), "{FF0000}[ANTI-CHEAT]: * %s has been banned by the anti cheat - Reason: Money hack", pname);
- SendClientMessageToAll(-1, string);
- BanEx(playerid, "Money hack");
- }
- return 1;
- }
- stock a_GivePlayerMoney(playerid, money)
- {
- pMoney[playerid] += money;
- GivePlayerMoney(playerid, money);
- }
- stock a_SetPlayerMoney(playerid, money)
- {
- pMoney[playerid] = money;
- ResetPlayerMoney(playerid);
- GivePlayerMoney(playerid);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement