Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //========================================================================================================//
- //========================================================================================================//
- //============================================ Grove Vs Vagos ============================================//
- //============================================ Gamemode ==================================================//
- //============================================ by WarF ===================================================//
- //========================================================================================================//
- //========================================================================================================//
- /*
- ----------------- Version 0.1 ----------------- ----------------- ----------------- ----------------- ----------------- -----------------
- - 2 Teams ( Grove Street & Vagos )
- - Beide Teams besitzen eine eigene Base mit Fahrzeugen
- - Score/Punktezähler!
- - Server Textdraw unten Links!
- - Connect und Disconnect Nachrichten
- - Gangfight TIME --> Dauer 15 Minuten!
- - Waffenspawn beider Teams jeweils eine Deagle und M4
- - Bei KILL [ GANGZONEKILL] Funktion
- - Wetter System (verschiedenes Wetter in LS/SF/LV) mit Wechsel!
- - 1 nicht Offiziele Gangfight Zone! mit TeleportBefehl /gangfight
- Grove Spawn unv Vagos Gebiet Spawn ist Unterschiedlich!
- - GANGZONEKILLS sind überall machbar, nicht nur im Gebiet, das Gebiet dient dazu damit das ganze Schneller geht!
- - Die ersten Gang die 30 Kills erreicht gewinnt das Gangfight und der Server wird neu gestartet!
- ----------------- ----------------- ----------------- ----------------- ----------------- ----------------- -----------------
- Version 0.2
- - Kills nur in der Zone machbar ( FERTIG )
- - Adminsystem ( FERTIG ) 5 Adminlevel
- - Login/Register System ( FERTIG )
- - Gangzonenen für die Basen und die Gangfightzone erstellt!
- - Während Gangfight blinkt die Gangfightzone!
- - Beim Kill geht man 10 Sekunden auf TV von dem du gekillt wurdest
- - /buy deagle/shotgun/messer/m4 Vorhanden!
- ----------------- ----------------- ----------------- ----------------- ----------------- ----------------- -----------------*/
- #include <a_samp>
- #include <ocmd>
- #include <dini>
- // ENUMS //
- enum sInfo
- {
- Adminlevel,
- Score,
- Banned,
- LoggedIn
- }
- new SpielerInfo[MAX_PLAYERS][sInfo];
- // DIALOGE //
- #define DIALOG_REGISTER 0
- #define DIALOG_LOGIN 1
- // FARBEN DEFINIERUNG //
- #define COLOR_LIGHTGREEN 0x9ACD32AA
- #define COLOR_YELLOW 0xFFFF00AA
- #define GREEN 0x21DD00FF
- #define GROVE_COLOR 0x00D900C8
- #define VAGOS_COLOR 0xFFC801C8
- #define COLOR_GREEN 0x008000FF
- #define COLOR_ORANGE 0xFF9900AA
- #define COLOR_RED2 0xFF0000FF
- #define COLOR_GRAD2 0xBFC0C2FF
- #define COLOR_LIGHTBLUE 0x33CCFFAA
- #define COLOR_WHITE 0xFFFFFFAA
- #define ROT 0xAA3333AA
- // TEAM / GANGS //
- static gTeam[MAX_PLAYERS];
- #define TEAM_GROVE 0
- #define TEAM_VAGOS 1
- // VARIABLEN //
- new Grovescore;
- new Vagosscore;
- // NEWS //
- new Text:Textdraw;
- new Text:scores;
- new DasWetter[3];
- new WetterRandomLS[] = { 1,2,3,15 };
- new WetterRandomSF[] = { 5,6,16 };
- new WetterRandomLV[] = { 1,2,3,4,5,18 };
- new GroveStreetBase;
- new VagosBase;
- new Gangfightzone;
- new KillerID[MAX_PLAYERS];
- new bool: SpielerTot[MAX_PLAYERS];
- // GAMEMODE ZEIT --> Restart! //
- #define MAX_GM_TIME 900000 // 15 Minuten
- // FORWARDS //
- forward PunkteUpdate();
- forward PunkteCheck(playerid);
- forward SetupPlayerForClassSelection(playerid);
- forward KillUpdate(playerid);
- forward GameTime();
- forward Finish();
- forward Wetter();
- forward SetWetter();
- forward SendAdminMessage(color, string[]);
- // STOCKS //
- stock Grove(playerid)
- {
- SetPlayerColor(playerid,GROVE_COLOR);
- }
- stock Vagos(playerid)
- {
- SetPlayerColor(playerid,VAGOS_COLOR);
- }
- stock strget(strx[], pos, search = ' ') {
- new arg, ret[128], idxx;
- for (new i = 0; i < strlen(strx); i++) {
- if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10) {
- arg++;
- if (arg == pos + 1){
- ret[i-idxx] = EOS;
- return ret;
- } else if (arg == pos)
- idxx= i+1;
- }
- else if (arg == pos)
- ret[i - idxx] = strx[i];
- }
- return ret;
- }
- stock Register(playerid,key[])
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
- dini_Create(Spielerdatei);
- dini_Set(Spielerdatei,"Passwort",key);
- dini_IntSet(Spielerdatei,"Geld",50000);
- dini_IntSet(Spielerdatei,"Adminlevel",0);
- dini_IntSet(Spielerdatei,"Banned",0);
- SendClientMessage(playerid,COLOR_WHITE,"Du wurdest Erfolgreich registriert! Viel Spaß!");
- return 1;
- }
- stock Login(playerid,key[])
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
- if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
- {
- if(SpielerInfo[playerid][Banned] == 1)
- {
- SendClientMessage(playerid, COLOR_RED2, "Dein Account wurde gebannt!");
- Kick(playerid);
- }
- SendClientMessage(playerid,COLOR_WHITE,"Du hast dich Erfolgreich eingeloggt!");
- SpielerInfo[playerid][LoggedIn] = 1;
- LoadAccount(playerid);
- return 1;
- }
- else
- {
- SendClientMessage(playerid,COLOR_LIGHTBLUE,"Passwort Falsch! Versuch es erneut!");
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Passwort eingeben:","Einloggen","Abbrechen");
- return 1;
- }
- }
- stock LoadAccount(playerid)
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
- SpielerInfo[playerid][Adminlevel]=dini_Int(Spielerdatei,"Adminlevel");
- SetPlayerScore(playerid,dini_Int(Spielerdatei,"Score"));
- SpielerInfo[playerid][Banned]=dini_Int(Spielerdatei,"Banned");
- SpielerInfo[playerid][LoggedIn]=dini_Int(Spielerdatei,"LoggedIn");
- return 1;
- }
- stock SpielerSpeichern(playerid)
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
- dini_IntSet(Spielerdatei,"Adminlevel",SpielerInfo[playerid][Adminlevel]);
- dini_IntSet(Spielerdatei,"Score",GetPlayerScore(playerid));
- dini_IntSet(Spielerdatei,"Banned",SpielerInfo[playerid][Banned]);
- dini_IntSet(Spielerdatei,"LoggedIn",SpielerInfo[playerid][LoggedIn]);
- return 1;
- }
- stock sscanf(sstring[], format[], {Float,_}:...)
- {
- #if defined isnull
- if (isnull(sstring))
- #else
- if (sstring[0] == 0 || (sstring[0] == 1 && sstring[1] == 0))
- #endif
- {
- return format[0];
- }
- #pragma tabsize 4
- new
- formatPos = 0,
- sstringPos = 0,
- paramPos = 2,
- paramCount = numargs(),
- delim = ' ';
- while (sstring[sstringPos] && sstring[sstringPos] <= ' ')
- {
- sstringPos++;
- }
- while (paramPos < paramCount && sstring[sstringPos])
- {
- switch (format[formatPos++])
- {
- case '\0':
- {
- return 0;
- }
- case 'i', 'd':
- {
- new
- neg = 1,
- num = 0,
- ch = sstring[sstringPos];
- if (ch == '-')
- {
- neg = -1;
- ch = sstring[++sstringPos];
- }
- do
- {
- sstringPos++;
- if ('0' <= ch <= '9')
- {
- num = (num * 10) + (ch - '0');
- }
- else
- {
- return -1;
- }
- }
- while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
- setarg(paramPos, 0, num * neg);
- }
- case 'h', 'x':
- {
- new
- num = 0,
- ch = sstring[sstringPos];
- do
- {
- sstringPos++;
- switch (ch)
- {
- case 'x', 'X':
- {
- num = 0;
- continue;
- }
- case '0' .. '9':
- {
- num = (num << 4) | (ch - '0');
- }
- case 'a' .. 'f':
- {
- num = (num << 4) | (ch - ('a' - 10));
- }
- case 'A' .. 'F':
- {
- num = (num << 4) | (ch - ('A' - 10));
- }
- default:
- {
- return -1;
- }
- }
- }
- while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
- setarg(paramPos, 0, num);
- }
- case 'c':
- {
- setarg(paramPos, 0, sstring[sstringPos++]);
- }
- case 'f':
- {
- new changestr[16], changepos = 0, strpos = sstringPos;
- while(changepos < 16 && sstring[strpos] && sstring[strpos] != delim)
- {
- changestr[changepos++] = sstring[strpos++];
- }
- changestr[changepos] = '\0';
- setarg(paramPos,0,_:floatstr(changestr));
- }
- case 'p':
- {
- delim = format[formatPos++];
- continue;
- }
- case '\'':
- {
- new
- end = formatPos - 1,
- ch;
- while ((ch = format[++end]) && ch != '\'') {}
- if (!ch)
- {
- return -1;
- }
- format[end] = '\0';
- if ((ch = strfind(sstring, format[formatPos], false, sstringPos)) == -1)
- {
- if (format[end + 1])
- {
- return -1;
- }
- return 0;
- }
- format[end] = '\'';
- sstringPos = ch + (end - formatPos);
- formatPos = end + 1;
- }
- case 'u':
- {
- new
- end = sstringPos - 1,
- id = 0,
- bool:num = true,
- ch;
- while ((ch = sstring[++end]) && ch != delim)
- {
- if (num)
- {
- if ('0' <= ch <= '9')
- {
- id = (id * 10) + (ch - '0');
- }
- else
- {
- num = false;
- }
- }
- }
- if (num && IsPlayerConnected(id))
- {
- setarg(paramPos, 0, id);
- }
- else
- {
- #if !defined foreach
- #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
- #define __SSCANF_FOREACH__
- #endif
- sstring[end] = '\0';
- num = false;
- new
- name[MAX_PLAYER_NAME];
- id = end - sstringPos;
- foreach (Player, playerid)
- {
- GetPlayerName(playerid, name, sizeof (name));
- if (!strcmp(name, sstring[sstringPos], true, id))
- {
- setarg(paramPos, 0, playerid);
- num = true;
- break;
- }
- }
- if (!num)
- {
- setarg(paramPos, 0, INVALID_PLAYER_ID);
- }
- sstring[end] = ch;
- #if defined __SSCANF_FOREACH__
- #undef foreach
- #undef __SSCANF_FOREACH__
- #endif
- }
- sstringPos = end;
- }
- case 's', 'z':
- {
- new
- i = 0,
- ch;
- if (format[formatPos])
- {
- while ((ch = sstring[sstringPos++]) && ch != delim)
- {
- setarg(paramPos, i++, ch);
- }
- if (!i)
- {
- return -1;
- }
- }
- else
- {
- while ((ch = sstring[sstringPos++]))
- {
- setarg(paramPos, i++, ch);
- }
- }
- sstringPos--;
- setarg(paramPos, i, '\0');
- }
- default:
- {
- continue;
- }
- }
- while (sstring[sstringPos] && sstring[sstringPos] != delim && sstring[sstringPos] > ' ')
- {
- sstringPos++;
- }
- while (sstring[sstringPos] && (sstring[sstringPos] == delim || sstring[sstringPos] <= ' '))
- {
- sstringPos++;
- }
- paramPos++;
- }
- do
- {
- if ((delim = format[formatPos++]) > ' ')
- {
- if (delim == '\'')
- {
- while ((delim = format[formatPos++]) && delim != '\'') {}
- }
- else if (delim != 'z')
- {
- return delim;
- }
- }
- }
- while (delim > ' ');
- return 0;
- }
- //==========================================================================================================================================================
- //==========================================================================================================================================================
- //==========================================================================================================================================================
- //==========================================================================================================================================================
- //==========================================================================================================================================================
- //==========================================================================================================================================================
- public OnGameModeInit()
- {
- SetGameModeText("Grove Vs Vagos");
- AddPlayerClass(271,2495.4700,-1691.1353,14.7656,88.7245,24,999,31,1000,0,0); // Groveskin
- AddPlayerClass(108,2526.5800,-1033.9400,69.5800,255.1027,24,999,31,1000,0,0); // Vagosskin
- Gangfightzone = GangZoneCreate(2382.454101, -1450.863281, 2574.454101, -1290.863281);
- VagosBase = GangZoneCreate(2457.985595, -1120.892456, 2593.985595, -984.892456);
- GroveStreetBase = GangZoneCreate(2408.423339, -1735.679077, 2560.423339, -1607.679077);
- // TIMER //
- SetTimer("Finish",600000,true);
- SetTimer("KillUpdate", 1000, true);
- SetTimer("PunkteUpdate", 1000, true);
- SetTimer("PunkteCheck", 1000, true);
- SetTimer("Wetter",900000, 1);
- SetTimer("SetWetter",1000, 1);
- // SONSTIGES //
- ShowNameTags(1);
- SetWorldTime(0);
- UsePlayerPedAnims();
- ShowPlayerMarkers(0);
- // TEXTDRAWS //
- Textdraw = TextDrawCreate(86.000000,427.000000,"Gangfight Version 0.1");
- TextDrawAlignment(Textdraw,2);
- TextDrawBackgroundColor(Textdraw,0x000000AA);
- TextDrawFont(Textdraw,2);
- TextDrawLetterSize(Textdraw,0.3000000,1.500000);
- TextDrawColor(Textdraw,0xffffffff);
- TextDrawSetOutline(Textdraw,1);
- TextDrawSetProportional(Textdraw,1);
- TextDrawSetShadow(Textdraw,1);
- // AUTOS //
- //-------------------------------------[Groove Autos]--------------------------------------------
- CreateVehicle(567,2499.7290,-1654.8717,13.3254,71.0974,86,86,600);
- CreateVehicle(521,2516.6213,-1662.9662,13.7545,90.7617,86,86,600);
- CreateVehicle(521,2516.5188,-1666.5355,13.7126,83.6155,86,86,600);
- CreateVehicle(521,2516.2712,-1672.2604,13.6695,63.1034,86,86,600);
- CreateVehicle(480,2508.1079,-1676.7578,13.3137,332.5577,86,86,600);
- CreateVehicle(560,2510.8142,-1686.6290,13.3836,46.0711,86,86,600);
- CreateVehicle(560,2490.7900,-1683.3960,13.2661,267.7853,86,86,600);
- CreateVehicle(560,2474.8696,-1691.6924,13.3387,358.5612,86,86,600);
- CreateVehicle(581,2528.3508,-1669.9441,14.7634,90.3716,86,86,600);
- CreateVehicle(581,2528.5940,-1669.9423,14.7675,90.3665,86,86,600);
- CreateVehicle(581,2528.4438,-1665.1663,14.7650,89.4413,86,86,600);
- CreateVehicle(581,2528.5955,-1667.4940,14.7663,91.0834,86,86,600);
- //-------------------------------------[Vagos Autos]--------------------------------------------
- CreateVehicle(560,2530.3804,-1060.4600,69.2794,1.1289,6,6,600);
- CreateVehicle(560,2542.5305,-1033.3461,69.2811,179.9033,6,6,600);
- CreateVehicle(560,2551.0547,-1033.8213,69.2879,178.7793,6,6,600);
- CreateVehicle(480,2535.2632,-1035.0022,69.3542,178.9464,6,6,600);
- CreateVehicle(567,2543.4131,-1059.4493,69.4406,0.5185,6,6,600);
- CreateVehicle(461,2523.4219,-1036.8049,69.1395,181.9150,6,6,600);
- CreateVehicle(461,2521.9907,-1036.8163,69.1395,183.8141,6,6,600);
- CreateVehicle(461,2520.6208,-1036.8464,69.1593,183.9953,6,6,600);
- CreateVehicle(461,2519.1287,-1036.9431,69.1559,177.9429,6,6,600);
- CreateVehicle(461,2517.6431,-1036.8402,69.1237,175.1526,6,6,600);
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetupPlayerForClassSelection(playerid);
- switch (classid)
- {
- case 0:
- {
- GameTextForPlayer(playerid, "~g~Groves", 1200, 3);
- }
- case 1:
- {
- GameTextForPlayer(playerid, "~COLOR_YELLOW~Vagos", 1200, 3);
- }
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- SendClientMessage(playerid, COLOR_YELLOW, "Bitte Warten...");
- new string[64];
- SendClientMessage(playerid, COLOR_LIGHTGREEN, " ");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, " ");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, " ");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, " ");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, " ");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, " ");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, " ");
- SendClientMessageToAll(0xFFFFFFAA,string);
- GameTextForPlayer(playerid,"~r~ Wilkommen waehle dein Team!",6000,5);
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
- if(dini_Exists(Spielerdatei))
- {
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"{FFCC33}Login","Passwort eingeben:","Einloggen","Abbrechen");
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{FFCC33}Registrieren","Bitte gib dein gewünschtes Passwort ein:","Registrieren","Abbrechen");
- }
- if(IsPlayerConnected(playerid))
- {
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "SERVER: Wilkommen auf dem Grove vs Vagos Server!");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "SERVER: Auf dem Server kannst du Fighten und durch Kills Punkte erzielen!");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "SERVER: Die erste Gang die 30 Punkte erzielt, gewinnt somit diese Runde!!");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "SERVER: Anschließend folgt ein kleiner Restart und es kann die nächste Runde beginnen!");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "SERVER: Wir wünschen dir viel Spaß!!");
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == DIALOG_LOGIN)
- {
- if(response == 0)
- {
- SendClientMessage(playerid,ROT,"Du wurdest gekickt, da du dich nicht eingeloggt hast!");
- Kick(playerid);
- }
- if(response == 1)
- {
- if(!strlen(inputtext))
- {
- SendClientMessage(playerid,ROT,"Du hast nichts eingegeben!");
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Passwort eingeben:","Einloggen","Abbrechen");
- }
- else
- {
- Login(playerid,inputtext);
- return 1;
- }
- }
- }
- if(dialogid == DIALOG_REGISTER)
- {
- if(response == 0)
- {
- SendClientMessage(playerid,COLOR_WHITE,"Du wurdest gekickt,da du dich nicht registriert hast!");
- Kick(playerid);
- }
- if(response == 1)
- {
- if(!strlen(inputtext))
- {
- SendClientMessage(playerid,COLOR_RED2,"Du hast nichts eingegeben!");
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registration","Bitte gib dein gewünschtes Passwort ein:","Registrieren","Abbrechen");
- }
- else
- {
- Register(playerid,inputtext);
- }
- }
- }
- return 1;
- }
- public SendAdminMessage(color, string[])
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(SpielerInfo[i][Adminlevel] >= 1)
- {
- SendClientMessage(i, color, string);
- }
- }
- }
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- if(SpielerInfo[playerid][LoggedIn] == 1)
- {
- SpielerSpeichern(playerid);
- SpielerInfo[playerid][LoggedIn] = 0;
- }
- return 1;
- }
- public SetupPlayerForClassSelection(playerid)
- {
- SetPlayerInterior(playerid,11);
- SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
- SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
- SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
- SetPlayerFacingAngle(playerid,0.0);
- new string[64], pName[MAX_PLAYER_NAME];
- GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
- format(string,sizeof string,"%s hat den Server betreten!",pName);
- }
- public OnPlayerSpawn(playerid)
- {
- GangZoneShowForPlayer(playerid, Gangfightzone, -66);
- GangZoneShowForPlayer(playerid, GroveStreetBase, 16711888);
- GangZoneShowForPlayer(playerid, VagosBase, -65332);
- GangZoneFlashForAll(Gangfightzone,COLOR_RED2);
- if(gTeam[playerid] == TEAM_GROVE)
- {
- GivePlayerWeapon(playerid,24,600);
- GivePlayerWeapon(playerid,31,999);
- SetPlayerTeam(playerid,0);
- Grove(playerid);
- SetPlayerInterior(playerid,0);
- TextDrawShowForPlayer(playerid, Textdraw);
- }
- else if(gTeam[playerid] == TEAM_VAGOS)
- {
- GivePlayerWeapon(playerid,24,600);
- GivePlayerWeapon(playerid,31,999);
- SetPlayerTeam(playerid,0);
- SetPlayerInterior(playerid,0);
- Vagos(playerid);
- TextDrawShowForPlayer(playerid, Textdraw);
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(IsPlayerInRangeOfPoint(playerid, 75.0, 2478.4541,-1370.8633,28.5406))
- {
- if(killerid == TEAM_VAGOS)
- {
- GameTextForPlayer(playerid, "~g~GANGZONE~r~KILL", 5000, 5);
- Vagosscore += 1;
- }
- else if(killerid == TEAM_GROVE)
- {
- GameTextForPlayer(playerid, "~g~GANGZONE~r~KILL", 5000, 5);
- Grovescore += 1;
- return 1;
- }
- }
- if(SpielerTot[playerid] == true)
- {
- SpielerTot[playerid] = false;
- if(KillerID[playerid] != INVALID_PLAYER_ID)
- TogglePlayerSpectating(playerid,1);
- PlayerSpectatePlayer(playerid,killerid);
- SetTimerEx("spawn",10000,1, "i", playerid);
- }
- else
- {
- TogglePlayerSpectating(playerid, 0);
- }
- SendDeathMessage(killerid,playerid,reason);
- SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if (strcmp(cmdtext, "/buy deagle", true) == 0)
- {
- GivePlayerWeapon(playerid, WEAPON_DEAGLE, 999);
- GivePlayerMoney(playerid, -1000);
- return 1;
- }
- if (strcmp(cmdtext, "/buy m4", true) == 0)
- {
- GivePlayerWeapon(playerid, WEAPON_M4, 999);
- GivePlayerMoney(playerid, -1000);
- return 1;
- }
- if (strcmp(cmdtext, "/buy shotgun", true) == 0)
- {
- GivePlayerWeapon(playerid, WEAPON_SHOTGUN, 999);
- GivePlayerMoney(playerid, -1000);
- return 1;
- }
- if (strcmp(cmdtext, "/buy messer", true) == 0)
- {
- GivePlayerWeapon(playerid, WEAPON_KNIFE, 1);
- GivePlayerMoney(playerid, -1000);
- return 1;
- }
- if(!strcmp(cmdtext, "/ah", true))
- {
- SendClientMessage(playerid,ROT,"|===================Adminhelp===========================|!");
- SendClientMessage(playerid,COLOR_WHITE,"|Adminlevel 1 : /kick /admin /setweather /occ|!");
- SendClientMessage(playerid,COLOR_WHITE,"|Adminlevel 2/3/4 : /ban /setskin /veh /explode /getip|!");
- SendClientMessage(playerid,COLOR_WHITE,"|Adminlevel 5 : /makeadmin |!");
- SendClientMessage(playerid,ROT,"|=======================================================|!");
- return 1;
- }
- if(!strcmp(cmdtext, "/gangfight", true))
- {
- if(gTeam[playerid] == TEAM_GROVE)
- {
- SetPlayerPos(playerid, 2478.4541,-1370.8633,28.5406);
- }
- else if(gTeam[playerid] == TEAM_VAGOS)
- {
- SetPlayerPos(playerid, 2478.5095,-1351.6801,27.0582);
- }
- return 1;
- }
- return 0;
- }
- public PunkteUpdate()
- {
- new string[100];
- TextDrawHideForAll(Text:scores);
- format(string,sizeof(string),"~y~Vagos:%d ~w~--------~g~Grove:%d", Vagosscore,Grovescore);
- scores = TextDrawCreate(271.000000,400.000000,string);
- TextDrawTextSize(scores,200.000000,0.000000);
- TextDrawSetOutline(scores,1);
- TextDrawSetShadow(scores,1);
- TextDrawShowForAll(Text:scores);
- }
- public PunkteCheck(playerid)
- {
- if (Grovescore >= 30) {
- Grovescore = 0;
- Vagosscore = 0;
- GameTextForAll("~g~Grove haben Gewonnen",6000,5);
- SetPlayerHealth(playerid, 0);
- GangZoneStopFlashForAll(Gangfightzone);
- SetTimer("Finish",MAX_GM_TIME,true);
- }
- if (Vagosscore >= 30) {
- Grovescore = 0;
- Vagosscore = 0;
- GameTextForAll("~y~Vagos haben Gewonnen",6000,5);
- SetPlayerHealth(playerid, 0);
- GangZoneStopFlashForAll(Gangfightzone);
- SetTimer("Finish",MAX_GM_TIME,true);
- }
- }
- public Wetter()
- {
- DasWetter[0] = WetterRandomLS[random(sizeof(WetterRandomLS))];
- DasWetter[1] = WetterRandomSF[random(sizeof(WetterRandomSF))];
- DasWetter[2] = WetterRandomLV[random(sizeof(WetterRandomLV))];
- }
- public SetWetter()
- {
- new Float:xx, Float:yy, Float:zz;
- for(new i=0; i< GetMaxPlayers(); i++)
- {
- if(IsPlayerConnected(i))
- {
- GetPlayerPos(i, xx, yy, zz);
- if((xx > -992.5172 && xx < 4000.0000) && (yy < 528.0000 && yy > -4000.0000)) //Los Santos
- {
- SetPlayerWeather(i, DasWetter[0]);
- }
- if((xx > -4000.0000 && xx< -992.5172) && (yy < 4000.0000 && yy > -4000.0000)) //San Fierro
- {
- SetPlayerWeather(i, DasWetter[1]);
- }
- if((xx > -992.5172 && xx< 4000.0000) && (yy < 4000.0000 && yy > 528.0000)) //Las Venturas
- {
- SetPlayerWeather(i, DasWetter[2]);
- }
- }
- }
- return 1;
- }
- public Finish()
- {
- SendRconCommand("gmx");
- return 1;
- }
- ocmd:makeadmin(playerid,params[])
- {
- if(SpielerInfo[playerid][Adminlevel] == 5)
- {
- new pID, rank, string[128],string2[128],ziel[MAX_PLAYER_NAME],sender[MAX_PLAYER_NAME];
- GetPlayerName(pID,ziel,sizeof(ziel));
- GetPlayerName(playerid,sender,sizeof(sender));
- if(sscanf(params,"ui",pID,rank))return SendClientMessage(playerid, COLOR_GRAD2, "/makeadmin [ID/NAME] [Level 1-5]");
- SpielerInfo[pID][Adminlevel] = rank;
- format(string,sizeof(string),"Du wurdest zum Adminlevel %d ernannt! Glückwunsch!",rank);
- SendClientMessage(pID,COLOR_RED2,string);
- format(string2,sizeof(string2),"AdmCMD: %s hat %s Admin %d gegeben!!",sender,ziel,rank);
- print(string2);
- }
- else
- {
- SendClientMessage(playerid, COLOR_GRAD2, "Du bist kein Admin!");
- }
- return 1;
- }
- ocmd:kick(playerid,params[])
- {
- new name1[MAX_PLAYER_NAME], name2[MAX_PLAYER_NAME], pID, reason[128], string[128];
- if(SpielerInfo[playerid][Adminlevel] >= 1)
- {
- GetPlayerName(playerid,name1,sizeof(name1));
- GetPlayerName(pID,name2,sizeof(name2));
- if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid, COLOR_GRAD2, "/kick [ID/NAME] [GRUND]");
- format(string,sizeof(string),"AdmCmd: Spieler %s wurde von Admin %s gekickt. Grund: %s",name1,name2,reason);
- SendClientMessageToAll(COLOR_RED2,string);
- Kick(pID);
- }
- return 1;
- }
- ocmd:ban(playerid,params[])
- {
- new name1[MAX_PLAYER_NAME];
- new name2[MAX_PLAYER_NAME];
- if(SpielerInfo[playerid][Adminlevel]>=2)
- {
- new pID, reason[128], string[128];
- GetPlayerName(playerid,name1,sizeof(name1));
- GetPlayerName(pID,name2,sizeof(name2));
- if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid, COLOR_GRAD2, "/ban [ID/NAME] [GRUND]");
- format(string,sizeof(string),"AdmCmd: Spieler %s wurde von Admin %s gebannt. Grund: %s",name1,name2,reason);
- SendClientMessageToAll(COLOR_RED2,string);
- SpielerInfo[pID][Banned] = 1;
- Ban(pID);
- }
- else
- {
- SendClientMessage(playerid, COLOR_GRAD2,"Du bist kein Admin!");
- }
- return 1;
- }
- ocmd:setskin(playerid,params[])
- {
- new skinid1,pID,string[128];
- if(sscanf(params,"ud",pID,skinid1))return SendClientMessage(playerid, COLOR_GRAD2,"/setskin [PLAYERID] [SKINID]");
- if(SpielerInfo[playerid][Adminlevel] >= 2)
- {
- SetPlayerSkin(pID,skinid1);
- format(string,sizeof(string),"Ein Admin hat dir den Skin %d zugewiesen!",skinid1);
- SendClientMessage(pID,COLOR_ORANGE,string);
- }
- else
- {
- SendClientMessage(playerid, COLOR_GRAD2,"Du bist kein Admin!");
- }
- return 1;
- }
- ocmd:admin(playerid,params[])
- {
- if(SpielerInfo[playerid][Adminlevel] >=1)
- {
- new name1[MAX_PLAYER_NAME];
- new nachricht,string[128];
- GetPlayerName(playerid,name1,sizeof(name1));
- if(sscanf(params,"s",nachricht))return SendClientMessage(playerid, COLOR_GRAD2,"/admin [TEXT]");
- format(string,sizeof(string),"[a]%s:%s",name1,nachricht);
- SendAdminMessage(COLOR_LIGHTBLUE, string);
- }
- else
- {
- SendClientMessage(playerid, COLOR_GRAD2, "Du bist kein Admin!");
- }
- return 1;
- }
- ocmd:veh(playerid,params[])
- {
- new Float:vehx,Float:vehy,Float:vehz;
- new vehid,cc1,cc2,string[128];
- if(sscanf(params,"iii",vehid,cc1,cc2))return SendClientMessage(playerid, COLOR_GRAD2,"INFO: /veh [VEHID] [COLOR 1] [COLOR 2]");
- if(SpielerInfo[playerid][Adminlevel] >= 2)
- {
- GetPlayerPos(playerid,vehx,vehy,vehz);
- AddStaticVehicle(vehid,vehx,vehy,vehz,3,cc1,cc2);
- format(string,sizeof(string),"Du hast das Auto mit der ID %d gespawnt!",vehid);
- SendClientMessage(playerid,COLOR_GRAD2,string);
- }
- else
- {
- SendClientMessage(playerid, COLOR_GRAD2,"Du bist kein Admin");
- }
- return 1;
- }
- ocmd:setweather(playerid,params[])
- {
- new weatherid1,string[80];
- if(sscanf(params,"i",weatherid1))return SendClientMessage(playerid, COLOR_GRAD2,"INFO: /setweather [WEATHERID]");
- if(SpielerInfo[playerid][Adminlevel] >= 1)
- {
- SetWeather(weatherid1);
- format(string,sizeof(string),"Du hast das Wetter in die ID %d geändert!",weatherid1);
- SendClientMessage(playerid,COLOR_GRAD2,string);
- }
- else
- {
- SendClientMessage(playerid, COLOR_GRAD2,"Du bist kein Admin");
- }
- return 1;
- }
- ocmd:explode(playerid,params[])
- {
- new Float:pidx;
- new Float:pidy;
- new Float:pidz;
- new pID;
- if(sscanf(params,"u",pID))return SendClientMessage(playerid, COLOR_GRAD2, "INFO: /explode [PLAYERID]");
- if(SpielerInfo[playerid][Adminlevel] >= 2)
- {
- GetPlayerPos(pID,pidx,pidy,pidz);
- CreateExplosion(pidx,pidy,pidz,5,2);
- SendClientMessage(pID,COLOR_ORANGE,"Ein Admin hat dich explodieren lassen!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GRAD2,"Du bist kein Admin!");
- }
- return 1;
- }
- ocmd:getip(playerid,params[])
- {
- new string[60],ziel[MAX_PLAYER_NAME],zielip[MAX_PLAYERS],pID;
- if(sscanf(params,"u",pID))return SendClientMessage(playerid, COLOR_GRAD2,"INFO: /getip [PLAYERID/NAME]");
- if(SpielerInfo[playerid][Adminlevel] >= 2)
- {
- GetPlayerName(pID,ziel,sizeof(ziel));
- GetPlayerIp(pID,zielip,sizeof(zielip));
- format(string,sizeof(string),"Name: %s IP: %s",ziel,zielip);
- SendClientMessage(playerid,COLOR_WHITE,string);
- }
- else
- {
- SendClientMessage(playerid, COLOR_GRAD2,"Du bist kein Admin!");
- }
- return 1;
- }
- ocmd:ooc(playerid,params[])
- {
- new string[128],nachricht,sender[MAX_PLAYER_NAME];
- if(sscanf(params,"s",nachricht))return SendClientMessage(playerid,COLOR_GRAD2,"INFO: /ooc [NACHRICHT]");
- if(SpielerInfo[playerid][Adminlevel] > 1)
- {
- GetPlayerName(playerid, sender, sizeof(sender));
- format(string,sizeof(string),"(( Admin: %s: %s ))",sender,nachricht);
- SendClientMessageToAll(COLOR_WHITE,string);
- }
- else
- {
- SendClientMessage(playerid, COLOR_GRAD2,"Du bist kein Admin!");
- }
- return 1;
- }
- forward spawn(playerid);
- public spawn(playerid)
- {
- TogglePlayerSpectating(playerid, 0);
- }
- #if defined FILTERSCRIPT
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement