Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <ocmd>
- #define DIALOG_NEWPRESI 1
- #define DIALOG_WAHLEN 2
- #define DIALOG_PRESI1 3
- #define DIALOG_PRESI2 4
- #define DIALOG_PRESI3 5
- #define Blau 0x009BFFFF
- #define Rot 0xFF0019FF
- new vote;
- new voted[MAX_PLAYERS];
- enum EPW
- {
- S1,
- S2,
- S3
- }
- new PW[EPW];
- enum EPEPW
- {
- S1P,
- S2P,
- S3P
- }
- new PPW[EPW][EPEPW];
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print("Votesystem by [GSL]Erik");
- print("--------------------------------------\n");
- vote = 0;
- PW[S1] = -1;
- PPW[S1][S1P] = 0;
- PW[S2] = -1;
- PPW[S2][S2P] = 0;
- PW[S3] = -1;
- PPW[S3][S3P] = 0;
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- SendClientMessage(playerid,Blau,"~Votesystem~ by [GSL]Erik");
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- if(vote == 1)
- {
- SendClientMessage(playerid,Blau,"**Benutze /vote, um den Presidenten zu wählen!**");
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == DIALOG_NEWPRESI)
- {
- if(response)
- {
- if(listitem == 0)
- {
- ShowPlayerDialog(playerid,DIALOG_PRESI1,DIALOG_STYLE_INPUT,"Spieler-ID","Gebe bitte die ID von dem Spieler ein!","Fertig","Abbrechen");
- return 1;
- }
- if(listitem == 1)
- {
- ShowPlayerDialog(playerid,DIALOG_PRESI2,DIALOG_STYLE_INPUT,"Spieler-ID","Gebe bitte die ID von dem Spieler ein!","Fertig","Abbrechen");
- return 1;
- }
- if(listitem == 2)
- {
- ShowPlayerDialog(playerid,DIALOG_PRESI3,DIALOG_STYLE_INPUT,"Spieler-ID","Gebe bitte die ID von dem Spieler ein!","Fertig","Abbrechen");
- }
- return 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_PRESI1)
- {
- if(response)
- {
- PW[S1] = strval(inputtext);
- new string[128];
- format(string,128,"1. ID: %d\n2. ID: %d\n3. ID: %d",PW[S1],PW[S2],PW[S3]);
- ShowPlayerDialog(playerid,DIALOG_NEWPRESI,DIALOG_STYLE_LIST,"Presidenten-Wahl",string,"Bearbeiten","Abbrechen");
- return 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_PRESI2)
- {
- if(response)
- {
- PW[S2] = strval(inputtext);
- new string[128];
- format(string,128,"1. ID: %d\n2. ID: %d\n3. ID: %d",PW[S1],PW[S2],PW[S3]);
- ShowPlayerDialog(playerid,DIALOG_NEWPRESI,DIALOG_STYLE_LIST,"Presidenten-Wahl",string,"Bearbeiten","Abbrechen");
- return 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_PRESI3)
- {
- if(response)
- {
- PW[S3] = strval(inputtext);
- new string[128];
- format(string,128,"1. ID: %d\n2. ID: %d\n3. ID: %d",PW[S1],PW[S2],PW[S3]);
- ShowPlayerDialog(playerid,DIALOG_NEWPRESI,DIALOG_STYLE_LIST,"Presidenten-Wahl",string,"Bearbeiten","Abbrechen");
- }
- return 1;
- }
- if(dialogid == DIALOG_WAHLEN)
- {
- if(voted[playerid] == 1)return SendClientMessage(playerid,Rot,"FEHLER: Du hast bereits gevotet!");
- if(response)
- {
- if(listitem == 0)
- {
- PPW[S1][S1P] ++;
- voted[playerid] = 1;
- return 1;
- }
- if(listitem == 1)
- {
- PPW[S2][S2P] ++;
- voted[playerid] = 1;
- return 1;
- }
- if(listitem == 2)
- {
- PPW[S3][S3P] ++;
- voted[playerid] = 1;
- return 1;
- }
- return 1;
- }
- return 1;
- }
- return 0;
- }
- ocmd:vote(playerid)
- {
- if(vote == 0)return SendClientMessage(playerid,Rot,"FEHLER: Es liegt keine Presidenten-Wahl vor!");
- new string[256];
- format(string,256,"%s\t%d Votes\n%s\t%d Votes\n%s\t%d Votes",SpielerName(PW[S1]),PPW[S1][S1P],SpielerName(PW[S2]),PPW[S2][S2P],SpielerName(PW[S3]),PPW[S3][S3P]);
- ShowPlayerDialog(playerid,DIALOG_WAHLEN,DIALOG_STYLE_LIST,"Presidenten-Wahl",string,"Wählen","Abbrechen");
- return 1;
- }
- ocmd:newpresi(playerid)
- {
- if(!IsPlayerAdmin(playerid))return 1;
- if(vote == 0)
- {
- new string[128];
- format(string,128,"1. ID: %d\n2. ID: %d\n3. ID: %d",PW[S1],PW[S2],PW[S3]);
- ShowPlayerDialog(playerid,DIALOG_NEWPRESI,DIALOG_STYLE_LIST,"Presidenten-Wahl",/*"1. NIEMAND\n2. NIEMAND\n3. NIEMAND"*/string,"Bearbeiten","Abbrechen");
- }
- return 1;
- }
- ocmd:stopvote(playerid)
- {
- if(!IsPlayerAdmin(playerid))return 1;
- if(vote == 0)return SendClientMessage(playerid,Rot,"FEHLER: Die Wahl wurde nicht gestartet!");
- new npresi[32],string[128];
- if(PPW[S1][S1P] > PPW[S2][S2P] && PPW[S1][S1P] > PPW[S3][S3P])
- {
- format(npresi,32,"%s",SpielerName(PW[S1]));
- }
- else if(PPW[S2][S2P] > PPW[S1][S1P] && (PPW[S2][S2P] > PPW[S3][S3P]))
- {
- format(npresi,32,"%s",SpielerName(PW[S2]));
- }
- else
- {
- format(npresi,32,"%s",SpielerName(PW[S3]));
- }
- SendClientMessageToAll(Rot,"Die Wahl ist nun zu Ende!");
- format(string,128,"Der neue President ist... -> %s <- !",npresi);
- SendClientMessageToAll(Blau,string);
- vote = 0;
- PW[S1] = -1;
- PPW[S1][S1P] = 0;
- PW[S2] = -1;
- PPW[S2][S2P] = 0;
- PW[S3] = -1;
- PPW[S3][S3P] = 0;
- for(new i = 0; i<MAX_PLAYERS; i++)voted[i] = 0;
- return 1;
- }
- ocmd:startvote(playerid)
- {
- if(!IsPlayerAdmin(playerid))return 1;
- if(vote == 1)return SendClientMessage(playerid,Rot,"FEHLER: Die Wahl hat bereits begonnen!");
- if(PW[S1] == -1 || (PW[S2] == -1 || (PW[S3] == -1)))return SendClientMessage(playerid,Rot,"FEHLER: Bitte lege die Spieler vorher fest!");
- SendClientMessageToAll(Blau,"**Die Presidenten-Wahl wurde gestartet! Tippe /vote, um den neuen Presidenten zu voten!**");
- vote = 1;
- return 1;
- }
- stock SpielerName(playerid)
- {
- new name[MAX_PLAYERS];
- GetPlayerName(playerid,name,sizeof(name));
- return name;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement