Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <zcmd>
- #include <sscanf>
- #define CL 0x33CCFFAA
- #define PRESSED(%0) \
- (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
- new Text:KickLol;
- new Text:PlayerName;
- new Text:Yes;
- new Text:No;
- new Active;
- new PoolActive;
- new YesPlayers;
- new NoPlayers;
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if(Active == 1)
- {
- if(PRESSED(KEY_YES))
- {
- new string[128], name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- SendClientMessage(playerid, CL, "You voted to kick that player {FF0000}[YES]");
- Active = 0;
- Close();
- YesPlayers++;
- format(string, sizeof(string), "{FF0000}%s {FFCC33}voted for.", name);
- SendClientMessageToAll(-1, string);
- }
- if(PRESSED(KEY_NO))
- {
- new string[128], name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- SendClientMessage(playerid, CL, "You voted to don't kick that player {FF0000}[NO]");
- Active = 0;
- Close();
- NoPlayers++;
- format(string, sizeof(string), "{FF0000}%s {FFCC33}voted aganist.", name);
- SendClientMessageToAll(-1, string);
- }
- }
- return 1;
- }
- public OnFilterScriptInit()
- {
- KickLol = TextDrawCreate(9.599999, 163.519958, "Do you want to kick");
- TextDrawLetterSize(KickLol, 0.541999, 2.563199);
- TextDrawAlignment(KickLol, 1);
- TextDrawColor(KickLol, 16777215);
- TextDrawSetShadow(KickLol, 0);
- TextDrawSetOutline(KickLol, 1);
- TextDrawBackgroundColor(KickLol, 51);
- TextDrawFont(KickLol, 1);
- TextDrawSetProportional(KickLol, 1);
- PlayerName = TextDrawCreate(208.799957, 164.266647, "JucatorName?");
- TextDrawLetterSize(PlayerName, 0.495599, 2.481067);
- TextDrawAlignment(PlayerName, 1);
- TextDrawColor(PlayerName, -16776961);
- TextDrawSetShadow(PlayerName, 0);
- TextDrawSetOutline(PlayerName, 1);
- TextDrawBackgroundColor(PlayerName, 51);
- TextDrawFont(PlayerName, 1);
- TextDrawSetProportional(PlayerName, 1);
- Yes = TextDrawCreate(16.799993, 209.066635, "1. Yes");
- TextDrawLetterSize(Yes, 0.527600, 3.018666);
- TextDrawAlignment(Yes, 1);
- TextDrawColor(Yes, -1);
- TextDrawSetShadow(Yes, 0);
- TextDrawSetOutline(Yes, 1);
- TextDrawBackgroundColor(Yes, 51);
- TextDrawFont(Yes, 2);
- TextDrawSetProportional(Yes, 1);
- No = TextDrawCreate(13.600000, 234.453231, "2. NO");
- TextDrawLetterSize(No, 0.530799, 2.891733);
- TextDrawAlignment(No, 1);
- TextDrawColor(No, -1);
- TextDrawSetShadow(No, 0);
- TextDrawSetOutline(No, 1);
- TextDrawBackgroundColor(No, 51);
- TextDrawFont(No, 2);
- TextDrawSetProportional(No, 1);
- return 1;
- }
- CMD:votekick(playerid, params[])
- {
- new ID, aname[MAX_PLAYER_NAME], string[128], name[MAX_PLAYER_NAME], newtext[30];
- if(IsPlayerAdmin(playerid))
- {
- if(sscanf(params,"u", ID)) return SendClientMessage(playerid,CL, "Usage: {15FF00}/VoteKick [ID]");
- GetPlayerName(ID, name, sizeof(name));
- GetPlayerName(playerid, aname, sizeof(aname));
- format(newtext, sizeof(newtext), "%s", name);
- Show();
- TextDrawSetString(PlayerName, newtext);
- Active = 1;
- PoolActive = 1;
- format(string, sizeof(string), "{FFCC33}Administrator {FF0000}%s {FFCC33}started {FF0000}Vote-Kick {FFCC33}for {FF0000}%s {FFCC33}!", aname, name);
- SendClientMessageToAll(-1, string);
- format(string, sizeof(string), "{FFCC33}Press {FF0000}Y {FFCC33}if you want to be kicked!");
- SendClientMessageToAll(-1, string);
- format(string, sizeof(string), "{FFCC33}Press {FF0000}N {FFCC33}if you don't want to be kicked!");
- SendClientMessageToAll(-1, string);
- SetTimer("CloseLol", 60000, false);
- }
- else
- {
- SendClientMessage(playerid, CL, "You need to be RCON Admin to start a {FF0000}Vote-Kick!");
- }
- return 1;
- }
- CMD:checkpools(playerid, params[])
- {
- new string[128];
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, CL, "You aren't RCON Admin, so you can't check pools results!");
- if(!PoolActive) return SendClientMessage(playerid, CL, "There isn't any pool active!");
- format(string, sizeof(string), "{FFCC33}Yes: {FF0000}%d {FFCC33}!", YesPlayers);
- SendClientMessage(playerid, -1, string);
- format(string, sizeof(string), "{FFCC33}No: {FF0000}%d {FFCC33}!", NoPlayers);
- SendClientMessage(playerid, -1, string);
- if(YesPlayers > NoPlayers) return SendClientMessage(playerid, CL, "You need to kick voted player!");
- if(NoPlayers > YesPlayers) return SendClientMessage(playerid, CL, "You don't need to kick voted player!");
- SetTimer("UpdatePools", 20000, false);
- return 1;
- }
- stock Show()
- {
- TextDrawShowForAll(KickLol);
- TextDrawShowForAll(PlayerName);
- TextDrawShowForAll(Yes);
- TextDrawShowForAll(No);
- return 1;
- }
- stock Close()
- {
- TextDrawHideForAll(KickLol);
- TextDrawHideForAll(PlayerName);
- TextDrawHideForAll(Yes);
- TextDrawHideForAll(No);
- return 1;
- }
- forward UpdatePools();
- forward CloseLol();
- public CloseLol()
- {
- Close();
- }
- public UpdatePools()
- {
- YesPlayers = 0;
- NoPlayers = 0;
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement