Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <zcmd>
- #include <sscanf2>
- #define TEAM_RANDOM 9
- #define TEAM_COPS 10
- new bMoney[MAX_PLAYERS];
- new pBribe[MAX_PLAYERS];
- new pBribed[MAX_PLAYERS];
- new bRecently[MAX_PLAYERS];
- new bTimer[MAX_PLAYERS];
- new bAccepted[MAX_PLAYERS]; //0 = not confirmed yet. 1 = accepted. 2 = refused
- forward BribeCancel(playerid);
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Blank Filterscript by your name here");
- print("--------------------------------------\n");
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- return 1;
- }
- stock FindTeam(playerid)
- {
- new Team = GetPVarInt(playerid,"Team");
- return Team;
- }
- stock Float:GetDistanceBetweenPlayers(p1,p2)
- {
- new Float:x1,Float:y1,Float:z1,Float:x3,Float:y3,Float:z3;
- if (!IsPlayerConnected(p1) || !IsPlayerConnected(p2)){
- return -1.00;
- }
- GetPlayerPos(p1,x1,y1,z1);
- GetPlayerPos(p2,x3,y3,z3);
- return floatsqroot(floatpower(floatabs(floatsub(x3,x1)),2)+floatpower(floatabs(floatsub(y3,y1)),2)+floatpower(floatabs(floatsub(z3,z1)),2));
- }
- CMD:bribe(playerid,params[])
- {
- new player1,Float:X,Float:Y,Float:Z,oName[24], pName[24],str[130],Team,amount;
- Team = FindTeam(playerid);
- if(Team != TEAM_RANDOM) return SendClientMessage(playerid,-1,"Sorry, This Command Is For Civilians Only");
- if(sscanf(params,"ud",player1,amount)) return SendClientMessage(playerid,-1,"USAGE: /br(ribe) [playerid] [amount]");
- GetPlayerPos(playerid,X,Y,Z);
- GetPlayerName(playerid,pName,24); GetPlayerName(player1,oName,24);
- if(amount < 0 || amount < GetPlayerMoney(playerid) || amount > 15000) return SendClientMessage(playerid,-1,"Invalid Amount. Max 15000");
- if(!IsPlayerConnected(player1)) return SendClientMessage(playerid,-1,"Invalid Player ID.");
- if(bRecently[player1] == 1) return SendClientMessage(playerid,-1,"Someone Has Bribed This Police Officer Recently");
- if(bRecently[playerid] == 1) return SendClientMessage(playerid,-1,"Please Wait Before Attempting to Bribe Again");
- if(FindTeam(player1) != TEAM_COPS) return SendClientMessage(playerid,-1,"This Player Isn't A Police Officer.");
- if(GetDistanceBetweenPlayers(playerid,player1) > 8) return SendClientMessage(playerid,-1,"This Player Isn't Close Enough");
- bMoney[playerid] = amount;
- bAccepted[playerid] = 0;
- pBribed[playerid] = player1;
- pBribe[player1] = playerid;
- bRecently[playerid] = 1; bRecently[player1] = 1;
- bTimer[playerid] = SetTimerEx("BribeCancel",13000,false,"i",playerid);
- format(str,130,"Warrant %s (%d) Has Attempted To Bribe You With $%d. Type /Ac(cept) To Accept It",pName,playerid);
- SendClientMessage(player1,-1,str);
- format(str,130,"You Have Attempted To Bribe %s (%d) With $%d. Wait And See If They Will Accept",oName,player1);
- SendClientMessage(playerid,-1,str);
- GameTextForPlayer(player1,"~w~Bribe Offered",3000,0);
- return 1;
- }
- CMD:br(playerid,params[]) return cmd_bribe(playerid,params);
- CMD:accept(playerid,params[])
- {
- if(FindTeam(playerid) != TEAM_COPS) return SendClientMessage(playerid,-1,"This Command Is For Police Officers Only");
- if(bRecently[playerid] == 1)
- {
- new pName[24],oName[24],str[130],player1;
- player1 = pBribe[playerid];
- GetPlayerName(playerid,pName,24); GetPlayerName(player1,oName,24);
- GivePlayerMoney(playerid,bMoney[player1]);
- GivePlayerMoney(player1,-bMoney[player1]);
- if(bMoney[player1] > 9000) return SetPlayerWantedLevel(player1,0);
- if(bMoney[player1] < 9000) return SetPlayerWantedLevel(player1,2);
- bMoney[player1] = 0;
- pBribed[player1] = -1; pBribe[playerid] = -1;
- bAccepted[player1] = 1;
- GameTextForPlayer(player1,"~w~Bribe Accepted",3000,3);
- format(str,130,"You Have Accepted %s (%d)'s Bribe For $%d",oName,player1,bMoney[player1]);
- SendClientMessage(playerid,-1,str);
- format(str,130,"Officer %s (%d) Has Accepted Your Briibe For $%d",pName,playerid,bMoney[player1]);
- SendClientMessage(player1,-1,str);
- } else return SendClientMessage(playerid,-1,"You Have Not Been Bribed Recently");
- return 1;
- }
- CMD:ac(playerid,params[]) return cmd_accept(playerid,params);
- CMD:refuse(playerid,params[])
- {
- if(FindTeam(playerid) != TEAM_COPS) return SendClientMessage(playerid,-1,"This Command Is For Police Officers Only");
- if(bRecently[playerid] == 1)
- {
- new pName[24],oName[24],str[130],player1;
- player1 = pBribe[playerid];
- GetPlayerName(playerid,pName,24); GetPlayerName(player1,oName,24);
- bMoney[player1] = 0;
- pBribed[player1] = -1; pBribe[playerid] = -1;
- bAccepted[player1] = 2;
- format(str,130,"You Have Refused %s (%d)'s Bribe For $%d",oName,player1,bMoney[player1]);
- SendClientMessage(playerid,-1,str);
- format(str,130,"Officer %s (%d) Has Refused Your Briibe For $%d",pName,playerid,bMoney[player1]);
- SendClientMessage(player1,-1,str);
- } else return SendClientMessage(playerid,-1,"You Have Not Been Bribed Recently");
- return 1;
- }
- CMD:ref(playerid,params[]) return cmd_refuse(playerid,params);
- public BribeCancel(playerid)
- {
- for(new i; i < MAX_PLAYERS; i++)
- {
- if(bRecently[i] == 1)
- {
- if(bAccepted[i] == 0)
- {
- SendClientMessage(i,-1,"Bribe Canceled");
- bMoney[i] = 0;
- pBribe[i] = 0;
- pBribed[i] = 0;
- bAccepted[i] = 0;
- }
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement