Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //----------------Gamemode für Anfänger by Oktabius-----------------------------
- #include <a_samp>
- #include <dini>
- #include <Dudb>
- //Farben
- #define COLOR_GREY 0xAFAFAFAA // mache eine Farbe namens COLOR_GREY der Farbcode ist 0xAFAFAFAA
- #define COLOR_GREEN 0x33AA33AA
- #define COLOR_RED 0xAA3333AA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_DARKRED 0x660000AA
- #define COLOR_BLUE 0x0000BBAA
- #define COLOR_ORANGE 0xFF9900AA
- #define COLOR_PINK 0xFF66FFAA
- #define COLOR_LIGHTBLUE 0x33CCFFAA
- #define COLOR_CYAN 0x00BFF3AA
- #define COLOR_BLACK 0x000000AA
- #define COLOR_BROWN 0XA52A2AAA
- #define COLOR_GOLD 0xB8860BAA
- #define COLOR_INDIGO 0x4B00B0AA
- #define COLOR_LAWNGREEN 0x7CFC00AA
- #define COLOR_LIMEGREEN 0x32CD32AA
- #define COLOR_OLIVE 0x808000AA
- #define COLOR_SEAGREEN 0x2E8B57AA
- #define COLOR_TOMATO 0xFF6347AA
- #define COLOR_YELLOWGREEN 0x9ACD32AA
- #define COLOR_MEDIUMAQUA 0x83BFBFAA
- #define COLOR_FLBLUE 0x6495EDAA
- #define COLOR_MAGENTA 0xFF00FFFF
- #define COLOR_PURPLE 0x800080AA
- #define COLOR_GRELLRED 0xFF000000
- #define COLOR_LIGHTGREEN 0x86FF59FF
- #define COLOR_LIGHTBLUE 0x33CCFFAA
- #pragma unused ret_memcpy
- #pragma tabsize 0
- #define WAFFENMENU 1 // #Definiere [Name] [Zahl] Namen könnt ihr euch ausdenken und Zahl ist die ID, des GUI, das nächste wäre dann 2
- #define persomenu 2
- enum Info
- {
- passwort[128],
- alevel,
- autos,
- motorrad,
- boot,
- kfz,
- flug,
- mofa,
- fRank,
- gTeam,
- gLeader,
- skin,
- pmoney,
- Fraktion,
- Member,
- Leader
- };
- //neues
- new bool:loggedin[MAX_PLAYERS];
- //Fraktionen
- new pInfo[MAX_PLAYERS][Info];
- // wenn ihr es so wie ich es oben gemacht habe aufstappelt, sparrt dies viele Ressourcen, wodurch euer Server eine geringere Chance hat
- // Laggs zu verursachen.
- #define Groove 1 //Die Zahlen hinter den Namen mache ich nur so als Gedächnisstütze
- #define Ballas 2 // Mache eine Fraktion Namens Ballas
- #define SAPD 3 // Mache eine Fraktion Names Fahrlehrer
- #define Vagos 4
- #define Fahrlehrer 5
- #define Sanitäter 6
- //Pickups
- new pickuptest, pickupeingangtest, jailpickup;
- main()
- {
- print("----------------------------------");
- print(" BY Dark_Morakes ");
- print("----------------------------------");
- }
- forward gesundheit(); // Erstelle ein Forward für unser Public gesundheit()
- forward hartz4();
- public OnGameModeInit() // Skins sind hier zu finden http://wiki.sa-mp.com/wiki/Skins
- {
- EnableStuntBonusForAll(0); // Hier wird gesagt, das wenn man einen Stunt gemacht hat (EnableStuntBonusForAll), kein Geld bekommt (0)
- UsePlayerPedAnims(); // Hier wird gesagt, dass der Spieler normal laufen soll und nicht so komisch
- ShowPlayerMarkers(0); // ZeigeSpielerMarkierung(0) hier wird angegeben, dass man keinen Spieler auf der Karte durch ein Farbpickment sieht.
- DisableInteriorEnterExits(); // Hier wird gesagt, dass die Interioreingänge weggemacht werden sollen, damit wir unsere eigenen Biz´s erstellen können
- SetGameModeText("Beast 4Life"); // Der Name des Gamemodes
- AddPlayerClass(1,1762.1776,-1896.7717,13.5623,272.5351,0,0,0,0,0,0); // position // Füge eine Charakterauswahl hinzu( mit dem Skin 101, auf die Kordinaten x, y, z, angle, waffe 1, waffe 1 munition, waffe 2, waffe 2 munition, waffe 3, waffe munition 3=;
- AddPlayerClass(2,1762.1776,-1896.7717,13.5623,272.5351,0,0,0,0,0,0); // position
- AddPlayerClass(3,1762.1776,-1896.7717,13.5623,272.5351,0,0,0,0,0,0); // position
- AddStaticVehicle(560,-452.5457,412.5452,4.1573,273.4572,1,2); //Füge ein Auto hinzu(Auto Nummer 522, auf die Kordinaten x, y, z, Farbe 1, Farbe 2);
- SetTimer("gesundheit",301521,1); // Setze einen Timer für unseren Public "gesundheit", 301521 bedeutet er soll nach 5 Minuten etwas machen, man rechnet 1000 millisekunden x gewünschte zeit (1000 Millisekunden entsprechen 1 sek), die 1 bedeutet, der Timer soll sich wiederholen.
- pickuptest = CreatePickup(1239, 23, 0,0,0);// 1318 = Pickupzeichen i ; 23 = bedeutet das das Pickup für immer bleibt ; 0,0,0 = Kordinten x,y,z
- pickupeingangtest = CreatePickup(1318, 23, 0,0,0); // die 3 Nullen auf x, y, z Kordinaten umschreiben
- jailpickup = CreatePickup(1239, 23, 0, 0, 0); // ""
- return 1;
- }
- public OnGameModeExit()
- {
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid,1762.1776,-1896.7717,13.5623); // Setz die Positon( Vom Spieler auf, x, y, z);
- SetPlayerCameraPos(playerid, 1769.6549,-1896.5348,13.5640); // Richte die Kamera( Vom Spieler auf, x, y,z);
- SetPlayerCameraLookAt(playerid, 1762.1776,-1896.7717,13.5623); // Setze die Blickrichtung der Kamera( des Spielers auf, x, y, z);
- SetPlayerFacingAngle(playerid,272.5351);
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- return 1;
- }
- public OnPlayerConnect(playerid)
- { // ID BEIM EINLOGGEN //
- new nachricht [128];
- format(nachricht,sizeof(nachricht),"Du bist mit der ID %i verbunden.",playerid);
- SendClientMessage(playerid,COLOR_RED,nachricht);
- if(dini_Exists(Datei(playerid)))
- {
- SendClientMessage(playerid, COLOR_YELLOW, "*** Willkommen Zurück, Logge dich mit /login [Passwort] ein");
- }
- if(!dini_Exists(Datei(playerid)))
- {
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "~Ich sehe du bist neu, bitte registriere dich mit /register [Passwort]");
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- if(dini_Exists(Datei(playerid))) // steht
- {
- dini_IntSet(Datei(playerid),"Geld",GetPlayerMoney(playerid));
- dini_IntSet(Datei(playerid),"Wanteds",GetPlayerWantedLevel(playerid));
- dini_IntSet(Datei(playerid),"Skin",GetPlayerSkin(playerid));
- dini_IntSet(Datei(playerid),"Autoführerschein",pInfo[playerid][autos]);
- dini_IntSet(Datei(playerid),"Flugführerschein",pInfo[playerid][flug]);
- dini_IntSet(Datei(playerid),"Mofaführerschein",pInfo[playerid][mofa]);
- dini_IntSet(Datei(playerid),"Lkwführerschein",pInfo[playerid][kfz]);
- dini_IntSet(Datei(playerid),"Motorradführerschein",pInfo[playerid][motorrad]);
- dini_IntSet(Datei(playerid),"Bootsführerschein",pInfo[playerid][boot]);
- dini_IntSet(Datei(playerid),"Adminlevel",pInfo[playerid][alevel]);
- dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[playerid][fRank]);
- }
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- if(loggedin[playerid] == false)
- {
- Kick(playerid);
- }
- //Zeige die Gangzone(dem Spieler playerid, der oben definierte Name, Farbe);
- SetPlayerSkin(playerid,dini_Int(Datei(playerid),"Skin"));
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- SetPlayerPos(playerid,1176.5500,-1323.9135,14.0268); // Setz die Positon( Vom Spieler auf, x, y, z);
- SendClientMessage(playerid,COLOR_RED,"Dein Arztbesuch kostet dich $700"); // Sende eine Nachricht( An Spieler, mit der Farbe Rot, "und dem Text");
- SetPlayerHealth(playerid, 100.0);
- gebespielergeld(playerid,-700); // Ziehe dem (Spieler, 200 $ ab
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new spieler[MAX_PLAYER_NAME]; // Den Begriff "spieler" können wir jetzt immer benutzen, wenn wir den Namen des Spielers bzw. playerid brauchen
- new gegner[MAX_PLAYER_NAME]; // Den Begriff "gegner" können wir jetzt immer benutzen, wenn wir den Namen des Gegners bzw. ziel brauchen
- //----------------register---------------------------------
- if(strcmp(strget(cmdtext,0), "/register", true) == 0)
- {
- if(!dini_Exists(Datei(playerid))) // wenn der Spieler sich regestriert und es noch keine .ini Datei mit seinem Namen gibt
- {
- dini_Create(Datei(playerid)); // Erstelle eine Neue .ini Datei
- dini_IntSet(Datei(playerid),"passwort",udb_hash(strget(cmdtext,1))); // Setze in die .ini Datei(save,"dass passwort", welches er eingegebne hat)
- SendClientMessage(playerid, COLOR_GREEN, "***Dein Account wurde erfolgreich registriert***");
- SendClientMessage(playerid, COLOR_GREEN, "***Nutze /login [Passwort] um dich einzuloggen***");
- }
- else
- {
- if(dini_Exists(Datei(playerid))) // Wenn beim regestrieren die Datei schon besteht
- {
- SendClientMessage(playerid, COLOR_RED, "Der Account ist bereits registriert");
- Kick(playerid); // Kick den Spieler
- }}
- return 1;
- }
- if(strcmp(strget(cmdtext,0), "/stats", true) == 0) // wenn man /stats eingibt
- {
- new string[100], string2[50], geld = GetPlayerMoney(playerid); // definiere
- format(string, sizeof(string), "Name: %s\nBargeld: %d", Spielername(playerid), geld); // setzt dem String "Name: (des Spielers) Bargeld(des Spielers)
- //format(string,sizeof(string), das /n steht für einen Zeilenbruch sprich Enter ;) %s nimmt man wenn man Buchstaben herrausfinden will, %d für Zahlen
- format(string2, sizeof(string2), "Personalausweis von %s", Spielername(playerid));
- ShowPlayerDialog(playerid, persomenu, DIALOG_STYLE_MSGBOX, string2 , string, "Ok", "Verlassen");
- return 1;
- }
- if(strcmp(strget(cmdtext,0), "/login", true) == 0)
- {
- new s2[256];
- if(dini_Exists(Datei(playerid)))
- {
- s2=dini_Get(Datei(playerid),"passwort");
- if(strval(s2)==udb_hash(strget(cmdtext,1))) // wenn die Eingabe nach /login mit dem Passwort übereinstimmt
- {
- loggedin[playerid] = true;
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "***Du hast dich erfolgreich eingeloggt***");
- gebespielergeld(playerid,dini_Int(Datei(playerid),"Geld"));
- SetPlayerWantedLevel(playerid,dini_Int(Datei(playerid),"Wanteds"));
- SetPlayerSkin(playerid,dini_Int(Datei(playerid),"Skin"));
- pInfo[playerid][autos] =dini_Int(Datei(playerid),"Autoführerschein");
- pInfo[playerid][flug] =dini_Int(Datei(playerid),"Flugführerschein");
- pInfo[playerid][mofa] =dini_Int(Datei(playerid),"Mofaführerschein");
- pInfo[playerid][kfz] =dini_Int(Datei(playerid),"Lkwführerschein");
- pInfo[playerid][motorrad] =dini_Int(Datei(playerid),"Motorradführerschein");
- pInfo[playerid][boot] =dini_Int(Datei(playerid),"Bootsführerschein");
- pInfo[playerid][alevel] =dini_Int(Datei(playerid),"Adminlevel");
- pInfo[playerid][fRank] =dini_Int(Datei(playerid),"Fraktionsrank");
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "Falsches PW! Versuch es nocheinmal!");
- }}
- return 1;
- }
- //-------Autoschein vergabe----------------
- if(strcmp(strget(cmdtext,0), "/autoschein", true) == 0)
- {
- new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
- {
- if(IsPlayerConnected(ziel)) return SendClientMessage(playerid, COLOR_RED, "Ziel ist nicht Online");
- {
- if(IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_RED, "Du musst Online sein");
- {
- if(pInfo[playerid][gTeam] == Fahrlehrer || pInfo[playerid][gLeader] == Fahrlehrer) // wenn der Fahrlehrer der Leader oder im Team der Fahrschule ist
- {
- pInfo[ziel][autos] = 1;
- dini_IntSet(Datei(playerid),"Autoführerschein",1); // Speichere das Passwort in der .ini Datei unter passwort
- gebespielergeld(ziel, -3500); // entziehe dem Ziel 3500 €
- gebespielergeld(playerid, 3500); // gebe dem Fahrleher 3500 €
- SendClientMessage(ziel, COLOR_GREEN, "TEXT"); // Sende dem Ziel den Text, das er einen Autsoschein bekommen hat
- SendClientMessage(playerid, COLOR_GREEN, "TEXT"); // Sende dem Fahrleher den Text, das er einen Autoschein verkauft hat
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "TEXT!"); // Wenn jemand einer anderen Fraktion außer Fahrlehrer diesen befehl eingibt, sende ihm die Nachricht...
- }}}}
- return 1;
- }
- //----------------Fraktions Ränge vergeben------------------
- if(strcmp(strget(cmdtext,0), "/rank", true) == 0)
- {
- if(pInfo[playerid][gLeader] == Groove || pInfo[playerid][gLeader] == Ballas || pInfo[playerid][gLeader] == Fahrlehrer) return SendClientMessage(playerid, COLOR_RED, "Du bist kein Leader einer Fraktion");
- {
- new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
- new rank = strval(strget(cmdtext,2)); // rank = das Ranklevel
- {
- if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /rank [ID] [Rank]");
- {
- if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /rank [ID] [Rank]");
- {
- if(rank==1){ pInfo[ziel][fRank] = 1; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du hast soeben den Fraktions Rank (Neuling) bekommen");} // wenn rank 1 ) Gebe dem ziel rank 1 ) Speichere das Level ) Sende nachricht
- if(rank==2){ pInfo[ziel][fRank] = 2; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du hast soeben den Fraktions Rank (Amateur) bekommen");}
- if(rank==3){ pInfo[ziel][fRank] = 3; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du hast soeben den Fraktions Rank (Fortgeschrittener) bekommen");}
- if(rank==4){ pInfo[ziel][fRank] = 4; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du hast soeben den Fraktions Rank (Profi) bekommen");}
- if(rank==5){ pInfo[ziel][fRank] = 5; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du bist nun der Co Leader dieser Fraktion");}
- if(rank==6){ pInfo[ziel][fRank] = 6; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du bist nun der Leader dieser Fraktion");}}}}}
- return 1;
- }
- if(strcmp(cmdtext,"/f",true,2) == 0)
- {
- new string[128],name[24]; // "string" und "name" definieren
- GetPlayerName(playerid,name,sizeof name); // Bekomme den Spieler name(spieler, "name", größe von "name")
- format(string,sizeof string,"[Fraktion]%s: %s",name,cmdtext[3]); // Hier bilden wir einen satz, wo wir den Namen und das,was der spieler eingegeben hat zusammengefügt wird.
- if(!strlen(cmdtext[2])) //wenn der cmd /f falsch eingegeben wird
- {
- SendClientMessage(playerid,COLOR_RED,"Benutze: /f [Text]");
- return 1;
- }
- for(new i=0 ; i <GetMaxPlayers() ; i++) // definiere alle Spieler
- {
- if(pInfo[i][gTeam] == pInfo[playerid][gTeam] || pInfo[i][gLeader] == pInfo[playerid][gLeader]) // wenn spieler i in der selben fraktion ist wie playerid, sende ihm die Nachricht
- {
- SendClientMessage(i,COLOR_LIGHTBLUE,string);
- }}
- return 1;
- }
- if(strcmp(cmdtext,"/o",true,2) == 0 || strcmp(cmdtext,"/occ",true,2) == 0)
- {
- new string[128],name[24]; // "string" und "name" definieren
- GetPlayerName(playerid,name,sizeof name); // Bekomme den Spieler name(spieler, "name", größe von "name")
- format(string,sizeof string,"[OCC]%s: %s",name,cmdtext[3]); // Satz bilden
- if(!strlen(cmdtext[2])) //wenn der cmd /f falsch eingegeben wird
- {
- SendClientMessage(playerid,COLOR_RED,"Benutze: /o [Text] oder /occ [Text]");
- return 1;
- }
- if(pInfo[playerid][alevel] >= 1)
- {
- SendClientMessageToAll(COLOR_WHITE,string);
- }
- return 1;
- }
- // Aond
- new aond[128], aonda[128];
- format(aond, sizeof(aond), "%s hat sich als Supporter angemeldet.", Spielername(playerid)); // Supporter Xy anmeldung
- format(aonda, sizeof(aonda), "%s hat sich als Admin angemeldet.", Spielername(playerid)); // Admin Xy anmeldung
- if (strcmp(cmdtext, "/aonduty", true) == 0) // Befehl um Admin on Duty zu gehen!
- {
- if(pInfo[playerid][alevel] == 1) // Sende folgendes mit Admin Stufe 1
- {
- SendClientMessage(playerid, COLOR_PINK, "|___________Supporter___________|");
- SendClientMessage(playerid, COLOR_PINK, "Du hast dich nun Als Supporter angemeldet.");
- SendClientMessage(playerid, COLOR_PINK, "Achtung! Missbrauch des befehles wird bestraft!");
- SendClientMessageToAll(COLOR_PINK, aond); // Sende die Nachricht an alle
- SetPlayerAmmo(playerid,3,1000);
- SetPlayerColor(playerid, COLOR_PINK);
- return 1;
- }
- if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
- {
- SendClientMessage(playerid, COLOR_PINK, "|___________Admin___________|");
- SendClientMessage(playerid, COLOR_PINK, "Du hast dich nun als Admin angemeldet.");
- SendClientMessageToAll(COLOR_PINK, aonda); // Sende die Nachricht wieder an alle
- SetPlayerColor(playerid, COLOR_PINK);
- return 1;
- }
- else
- { // Sende folgendes wenn er admin lvl 0 ist (Zivilist)
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______KeinAdmin!______|");
- SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
- SendClientMessage(playerid, COLOR_GREY, "Deine Admin Stufe ist 0");
- SendClientMessage(playerid, COLOR_GREY, "Und kannst somit keine Admin befehle ausführen!");
- }
- return 1; // Cmd zu Ende
- }
- // Aoffd
- new aoffd[128], aoffda[128];
- format(aoffd, sizeof(aoffd), "%s hat sich als Supporter abgemeldet.", spieler); // Befehl um Sup off Duty zu gehen!
- format(aoffda, sizeof(aoffda), "%s hat sich als Admin abgemeldet.", spieler); // Befehl um Admin off Duty zu gehen!
- if (strcmp(cmdtext, "/aoffduty", true) == 0)
- {
- if(pInfo[playerid][alevel] == 1) // Sende folgendes mit Admin Stufe 1
- {
- SendClientMessage(playerid, COLOR_PINK, "|___________Supporter___________|");
- SendClientMessage(playerid, COLOR_PINK, "Du hast dich nun Als Supporter angemeldet.");
- SendClientMessage(playerid, COLOR_PINK, "Achtung! Missbrauch des befehles wird bestraft!");
- SendClientMessageToAll(COLOR_PINK, aoffd); // Sende die Nachricht an alle
- SetPlayerColor(playerid, COLOR_WHITE);
- return 1;
- }
- if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
- {
- SendClientMessage(playerid, COLOR_PINK, "|___________Admin___________|");
- SendClientMessage(playerid, COLOR_PINK, "Du hast dich nun als Admin abgemeldet.");
- SendClientMessage(playerid, COLOR_PINK, "Achtung! Du hast nun wieder Normale HP");
- SendClientMessageToAll(COLOR_PINK, aoffda); // Sende die Nachricht wieder an alle
- SetPlayerColor(playerid, COLOR_WHITE);
- return 1;
- }
- else
- { // Sende folgendes wenn er admin lvl 0 ist (Zivilist)
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______KeinAdmin!______|");
- SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
- SendClientMessage(playerid, COLOR_GREY, "Deine Admin Stufe ist 0");
- SendClientMessage(playerid, COLOR_GREY, "Und kannst somit keine Admin befehle ausführen!");
- }
- return 1; // Cmd zu Ende
- }
- //--------------makeadmin-----------------------------------
- if(strcmp(cmdtext,"/makeadmin", true) == 0)
- {
- if(pInfo[playerid][alevel] == 6) // Wenn die pInfo vom Spieler level 6 ist
- {
- new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
- new level= strval(strget(cmdtext,2)); // level = die Levelzahl
- {
- if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeadmin [ID] [Fraktion]");
- {
- if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeadmin [ID] [Fraktion]");
- {
- if(level==0) // wenn er /makeadmin 1 macht
- {
- GetPlayerName(ziel,gegner,sizeof(gegner));
- new save[45];
- format(save,sizeof(save),"/Spieler/%s.ini",gegner);
- pInfo[ziel][alevel] = 0; // Gebe dem ziel das Adminlevel (alevel) 0
- dini_IntSet(save,"Adminlevel",0); // Schreibe in seine Datei Adminlevel = 0
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Zivi___________|");
- SendClientMessage(playerid, COLOR_GREY, "Du bist nun wieder Zivilist!");
- SendClientMessage(playerid, COLOR_GREY, "Admin Level: 0");
- if(level==1) // wenn er /makeadmin 1 macht
- {
- GetPlayerName(ziel,gegner,sizeof(gegner));
- format(save,sizeof(save),"/Spieler/%s.ini",gegner);
- pInfo[ziel][alevel] = 1; // Gebe dem ziel das Adminlevel (alevel) 1
- dini_IntSet(save,"Adminlevel",1); // Schreibe in seine Datei Adminlevel = 1
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Supporter___________|");
- SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Supportern gestuft/gekickt.");
- SendClientMessage(playerid, COLOR_GREY, "Admin Level: 1");
- }
- if(level==2) // wenn er /makeadmin 2 macht
- {
- GetPlayerName(ziel,gegner,sizeof(gegner));
- format(save,sizeof(save),"/Spieler/%s.ini",gegner);
- pInfo[ziel][alevel] = 2; // Gebe dem Ziel das Adminlevel 2
- dini_IntSet(save,"Adminlevel",2); // Schreibe in seine Datei Adminlevel 2
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Moderator___________|");
- SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Moderatoren gestuft/gekickt.");
- SendClientMessage(playerid, COLOR_GREY, "Admin Level: 2");
- }
- if(level==3) // wenn er 3 eintippt
- {
- GetPlayerName(ziel,gegner,sizeof(gegner));
- format(save,sizeof(save),"/Spieler/%s.ini",gegner);
- pInfo[ziel][alevel] = 3; // Gebe dem Ziel das Adminlevel 3
- dini_IntSet(save,"Adminlevel",3); //schreibe in seine Datei Adminlevel 3
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________A-Admin___________|");
- SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Azubi Admins gestuft/gekickt.");
- SendClientMessage(playerid, COLOR_GREY, "Admin Level: 3");
- }
- if(level==4) // wenn er 4 eintippt
- {
- GetPlayerName(ziel,gegner,sizeof(gegner));
- format(save,sizeof(save),"/Spieler/%s.ini",gegner);
- pInfo[ziel][alevel] = 4; // Gebe dem Ziel Adminlevel 4
- dini_IntSet(save,"Adminlevel",4); // schreibe in seine Datei Adminlevel 4
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Admin___________|");
- SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Admin's gestuft/gekickt.");
- SendClientMessage(playerid, COLOR_GREY, "Admin Level: 4");
- }
- if(level==5) // wenn er 5 eintippt
- {
- GetPlayerName(ziel,gegner,sizeof(gegner));
- format(save,sizeof(save),"/Spieler/%s.ini",gegner);
- pInfo[ziel][alevel] = 5; // Gebe dem Ziel Adminlevel 5
- dini_IntSet(save,"Adminlevel",5); // schreibe in seine Datei Adminlevel 5
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________FAdmin___________|");
- SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Full-Admins gestuft/gekickt.");
- SendClientMessage(playerid, COLOR_GREY, "Admin Level: 5");
- }
- if(level==6) // wenn er 6 eintippt
- {
- GetPlayerName(ziel,gegner,sizeof(gegner));
- format(save,sizeof(save),"/Spieler/%s.ini",gegner);
- pInfo[ziel][alevel] = 6; // Gebe dem Ziel Adminlevel 6
- dini_IntSet(save,"Adminlevel",6); // schreibe in seine Datei Adminlevel 6
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______HAdmin/Scripter______|");
- SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Head-Admins/Scriptern gestuft/gekickt.");
- SendClientMessage(playerid, COLOR_GREY, "Admin Level: 6");
- }
- else
- {
- SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______KeinAdmin!______|");
- SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
- SendClientMessage(playerid, COLOR_GREY, "Deine Admin Stufe ist 0");
- SendClientMessage(playerid, COLOR_GREY, "Und kannst somit keine Admin befehle ausführen!");
- }}}}}}
- return 1;
- }
- //------------------invite------------------------------------
- if(strcmp(strget(cmdtext,0), "/invite", true) == 0)
- {
- if(pInfo[playerid][gLeader] == Groove || pInfo[playerid][gLeader] == Ballas || pInfo[playerid][gLeader] == Fahrlehrer) return SendClientMessage(playerid, COLOR_RED, "Du bist kein Leader einer Fraktion");
- {
- new ziel = strval(strget(cmdtext,1)), team = strval(strget(cmdtext,2)),save[45];
- {
- if(team==1){ pInfo[ziel][gTeam] = 1; SetPlayerSkin(ziel,107); dini_IntSet(save,"Fraktion",pInfo[ziel][gTeam]);}
- if(team==2){ pInfo[ziel][gTeam] = 2; SetPlayerSkin(ziel,104); dini_IntSet(save,"Fraktion",pInfo[ziel][gTeam]);}
- if(team==3){ pInfo[ziel][gTeam] = 3; SetPlayerSkin(ziel,50); dini_IntSet(save,"Fraktion",pInfo[ziel][gTeam]);}}}
- return 1;
- }
- //----------------------ban--------------------------------
- new string[128], Grund[128], save[45];
- new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
- Grund = strget(cmdtext,2);
- GetPlayerName(ziel,gegner,sizeof(gegner));
- format(save,sizeof(save),"/Bans/%s.ini",gegner);//mache einen neuen Ornder Namens Ban und füge die ini Datei vom Spieler ein
- format(string, sizeof(string), "*** %s wurde von %s gebannt. Grund:%s ***", gegner, Spielername(playerid), Grund); //Mache ein String. In einem String mit Namen etc. muss man %s schreiben und hinter der Nachricht wo für das %s stehen soll. Muss in exakter reihenfolge sein!
- if(strcmp(strget(cmdtext,0), "/adminban", true) == 0)
- {
- if(pInfo[playerid][alevel] == 2) // wenn der spieler Adminlevel 2 ist
- {
- if(!strlen(strget(cmdtext,1))) // wenn der cmd falsch ist
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Benutze: /ban [id] [Grund] "); return 1; // Nachricht senden
- }
- if(!strlen(strget(cmdtext,2)))// wenn der cmd falsch ist
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Benutzung: /ban [id] [Grund] "); return 1;// Nachricht senden
- }
- Ban(ziel); // Ban ziel
- SendClientMessageToAll(COLOR_ORANGE, string); // Sende Allen eine Nachricht
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "Du bist kein Adminlevel 2 !");
- }
- return 1;
- }
- //jail
- if(!strcmp(strget(cmdtext,0),"/jail")) //Hier wird wieder beschrieben das wenn man den /jail befehl eingibt
- {
- new name[20], sstring[64]; // dernieren der Namen
- GetPlayerName(ziel, name, sizeof name);// Bekomme den Namen des Ziels
- format(string, sizeof(string), "%s wurde von %s eingebuchtet", name, Spielername(playerid)); // Satz bilden
- ziel = strval(strget(cmdtext,1)); // /jail [ziel]
- {
- if(IsPlayerConnected(playerid))// spieler muss online sein
- {
- if(IsPlayerConnected(ziel)) return SendClientMessage(playerid, COLOR_RED, "Spieler ist nich Online");// ziel muss online sein
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.0, 0, 0, 0)) return SendClientMessage(playerid, COLOR_RED, "Du bist vor keiner Zelle");
- {
- SetPlayerPos(ziel,0,0,0); // Setze Spieler auf Kordinaten
- SendClientMessageToAll(COLOR_LIGHTBLUE, sstring);
- }}}}
- return 1;
- }
- //jail
- if(!strcmp(strget(cmdtext,0),"/unjail")) //Hier wird wieder beschrieben das wenn man den /unjail befehl eingibt
- {
- new Float:x, Float: y, Float:z, name[20], jstring[80]; // definieren der Cords und der namen
- GetPlayerName(ziel, name, sizeof name); // Bekomme den Namen des Ziels
- format(string, sizeof(string), "%s wurde von %s aus dem Gefängnis entlassen", name, Spielername(playerid)); // Satz bilden
- ziel = strval(strget(cmdtext,1)); // /unjail [ziel]
- GetPlayerPos(playerid, x, y, z); // Spieler Pos heraus bekommen
- {
- if(IsPlayerConnected(playerid))// spieler muss online sein
- {
- if(IsPlayerConnected(ziel)) return SendClientMessage(playerid, COLOR_RED, "Spieler ist nich Online");// ziel muss online sein
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.0, 0, 0, 0)) return SendClientMessage(playerid, COLOR_RED, "Du bist vor keiner Zelle");
- {
- SetPlayerPos(ziel,x,y,z); // Setze Spieler auf Kordinaten
- SendClientMessageToAll(COLOR_LIGHTBLUE, jstring);
- }}}}
- return 1;
- }
- //----Makeleader Funktion-------------------
- if(!strcmp(strget(cmdtext,0),"/makeleader"))
- {
- new target = strval(strget(cmdtext,1)), fraktion = strval(strget(cmdtext,2)), saves[32], name[20];
- format(saves,sizeof(saves),"Spieler/%s.ini",name);
- GetPlayerName(target, name, sizeof(name));
- if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeleader [ID] [1-8]");
- {
- if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeleader [ID] [1-8]");
- {
- if(fraktion == SAPD)
- {
- SetPlayerSkin(target, 288);
- SendClientMessage(target, COLOR_BLUE, "Du wurdest zum Leader der SAPD gemacht");
- pInfo[target][gLeader] = fraktion;
- dini_IntSet(save,"Fraktionsleader",pInfo[target][gLeader]);
- }
- if(fraktion == Ballas)
- {
- SetPlayerSkin(target, 103);
- SendClientMessage(target, COLOR_PURPLE, "Du wurdest zum Ledader der Ballas ernannt");
- pInfo[target][gLeader] = fraktion;
- dini_IntSet(save,"Fraktionsleader",pInfo[target][gTeam]);
- dini_IntSet(save,"Skin",pInfo[target][skin]);
- }
- if(fraktion == Fahrlehrer)
- {
- SetPlayerSkin(target, 163);
- SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Leader der Fahrlehrer ernannt");
- pInfo[target][gLeader] = fraktion;
- dini_IntSet(save,"Fraktionsleader",pInfo[target][gLeader]);
- dini_IntSet(save,"Skin",pInfo[target][skin]);
- }}}
- return 1;
- }
- if(strcmp(cmdtext, "/waffenkaufen", true) == 0) // wenn /waffenkaufen eingegeben wird
- {
- ShowPlayerDialog(playerid, WAFFENMENU, DIALOG_STYLE_LIST, "Waffenshop", "M4: 4000$\nDesert_Eagle: 1500$\nAk47: 3500$\nShotgun: 2000$", "kaufen", "schließen");
- // Zeige Dialog ( spieler, unser Menu, der Style (http://wiki.sa-mp.com/wiki/Dialog_Styles), der oben stehende Text, dann gebt ihr die erste Zeile ein, die nächste
- // Zeile müsst ihr \n eingeben und den Namen dahinter z.B. \nM4, Linker Button, Rechter Button
- return 1;
- }
- //--------waffen für ballas------------------
- if(strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffenb eingegeben wird
- {
- if(pInfo[playerid][gTeam] == Ballas || pInfo[playerid][gLeader] == Ballas) // wenn der Spieler ein Teammitglieder oder Leader der Fraktion Ballas ist
- {
- GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 15
- GivePlayerWeapon(playerid, 24, 50); // Gib ihm die Waffe mit der ID 32 und 150 Munition
- GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 28 und 150 Munition
- }
- return 1; // Cmd zu Ende
- }
- //---------waffen für groove----------------
- if (strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffeng eingegeben wird
- {
- if(pInfo[playerid][gTeam] == Groove || pInfo[playerid][gLeader] == Groove)// wenn der Spieler ein Teammitglieder oder Leader der Fraktion Groove ist
- {
- GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 1
- GivePlayerWeapon(playerid, 24, 50);// Gib ihm die Waffe mit der ID 32 und 150 Munition
- GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 29 und 150 Munition
- }
- return 1; // Cmd zu Ende
- }
- //---------waffen für Vagos----------------
- if (strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffeng eingegeben wird
- {
- if(pInfo[playerid][gTeam] == Vagos || pInfo[playerid][gLeader] == Vagos)// wenn der Spieler ein Teammitglieder oder Leader der Fraktion Groove ist
- {
- GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 1
- GivePlayerWeapon(playerid, 24, 50);// Gib ihm die Waffe mit der ID 32 und 150 Munition
- GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 29 und 150 Munition
- }
- return 1; // Cmd zu Ende
- }
- return 0;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- if(pInfo[playerid][autos] == 0)
- {
- SendClientMessage(playerid, COLOR_RED, " Du hast noch keinen Führerschein! Vorsicht vor der Polizei!");
- }
- else
- {
- return 1;
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- new money = GetPlayerMoney(playerid); // hier beschreibe ich das Wort "money" soll dafür stehen, das Geld des Spielers herauszubekommen
- if(dialogid == WAFFENMENU) // wenn der Spieler den Dialog WAFFENMENU aufruft
- {
- if(response)
- {
- if(listitem == 0) // Die Erste Zeile
- {
- if(money <= 1500) // wenn sein Geld unter 1500 ist,
- {
- SendClientMessage(playerid, COLOR_RED, "Du hast nicht genug Geld"); // Sende ihm eine Nachricht, dass er zu wenig Geld hat
- return 1;
- }
- GivePlayerWeapon(playerid, 24, 50); // Gebe ihm die Waffe(spieler, Waffe, Munition
- gebespielergeld(playerid, -1500); // Ziehe ihm 1500 $ ab
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du hast eine Deagle gekauft"); // Sende eine Nachricht, was er getan hat
- }
- if(listitem == 1) // Die zweite Zeile
- {
- if(money <= 3500) // wenn sein Geld unter 3500 ist,
- {
- SendClientMessage(playerid, COLOR_RED, "Du hast nicht genug Geld"); // Sende ihm eine Nachricht, dass er zu wenig Geld hat
- return 1;
- }
- GivePlayerWeapon(playerid, 25, 50); // Gebe ihm die Waffe(spieler, Waffe, Munition
- gebespielergeld(playerid, -2000); // Ziehe ihm 2000 $ ab
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du hast eine Shotgun gekauft"); // Sende eine Nachricht, was er getan hat
- }}}
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerEnterRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnRconCommand(cmd[])
- {
- return 1;
- }
- public OnObjectMoved(objectid)
- {
- return 1;
- }
- public OnPlayerObjectMoved(playerid, objectid)
- {
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid) // Pickup Objektlisten findet ihr hier http://wiki.sa-mp.com/wiki/Pickup_help
- {
- if(pickupid == pickuptest) // Bedeutet wenn(das pickup == namens pickuptest aufgehoben wird)
- {
- SendClientMessage(playerid, COLOR_GREEN, "Hello World"); // Sendet einen Text an ( Spieler, mit der Farbe Grün, "und den Text Hello World");
- }
- if(pickupid == pickupeingangtest)
- {
- SetPlayerInterior(playerid, 3); // Hier geben wir den Innenraum an (Interior = Innenraum). Die 3 gibt den Innenraum an, die Id´s findet ihr hier http://wiki.sa-mp.com/wiki/Interior oder wenn ihr in einen Raum geht und /interior eingebt. Wird in Savedposition.txt in eurem GTA verzeichnis gespeichert.
- SetPlayerPos(playerid, 235.508994,1189.169897,1080.339966); // Hier wird angegeben wo der Spieler hinkommt wenn er in den Pickup geht. Geht auf einem Gf server oder Debug Modus und geht in ein Haus und gibt /save ein. Kordinaten wie bei interior zu finden.
- SetPlayerFacingAngle( playerid, 360.0 ); // Setzt die Schaurichtung des Spielers auf den Angel wert.
- GameTextForPlayer(playerid, "~w~Text1~n~~r~text2", 3000, 3); // Wenn jemand jetzt in dem Gebäude ist wird ein Text über ihm erscheinen. ~w~ sagt es soll eine weiße Shrift sein und ~r~ soll rot sein. http://wiki.sa-mp.com/wiki/Colors_List
- }
- if(pickupid == jailpickup)
- {
- GameTextForPlayer(playerid, "~w~/jail [Zeit][Kosten]", 4000, 3);
- }
- return 1;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- return 1;
- }
- public gesundheit()
- {
- for(new i=0 ; i <GetMaxPlayers() ; i++) // für( neue definition 1, 1 ist = 0, i ist kleiner als die Online spielenden, i++)
- {
- new Float:health; // einer neuer Float: health
- GetPlayerHealth(i,health); // bekomme die Gesundheit vom Spieler( i, health) hier kommt unser i in den Einsatz, i bedeutet jeder Spieler nach unserer Definition
- SetPlayerHealth(i, health-0); // Wenn unser Timer nun Nach 5 Minuten wieder anfängt zu ticken, ziehe dem Spieler 1 hp ab.
- }
- return 1;
- }
- public hartz4()
- {
- for(new i=0 ; i <GetMaxPlayers() ; i++) // für( neue definition 1, 1 ist = 0, i ist kleiner als die Online spielenden, i++)
- {
- //#define Groove 1
- //#define Ballas 2
- //#define Fahrlehrer 3
- if(pInfo[i][gTeam] == Groove || pInfo[i][gLeader] == Groove) // wenn jemand im Team Groove ist
- {
- gebespielergeld(i, 2400);
- GameTextForPlayer(i, "~w~Pay~g~day", 3000, 2); // zeige einen Gametext "Payday" ~w~ bedeutet die Farbe weiß, ~g~ die farbe grün ;)
- }
- if(pInfo[i][gTeam] == Ballas || pInfo[i][gLeader] == Ballas)
- {
- gebespielergeld(i, 2400);
- GameTextForPlayer(i, "~w~Pay~g~day", 3000, 2);
- }
- if(pInfo[i][gTeam] == Fahrlehrer || pInfo[i][gLeader] == Fahrlehrer)
- {
- gebespielergeld(i, 2400);
- GameTextForPlayer(i, "~w~Pay~g~day", 3000, 2);
- }}
- return 1;
- }
- stock gebespielergeld(playerid,summe) // erstelle ein stock
- {
- pInfo[playerid][pmoney] = pInfo[playerid][pmoney] +summe; // das Geld = geld + die summe
- dini_IntSet(Datei(playerid),"Geld",pInfo[playerid][pmoney]); //schreibe in seine Datei das neue Geld
- return 1;
- }
- stock Datei(playerid)
- {
- new Save[128];
- format(Save, sizeof(Save), "/Spieler/%s.ini", Spielername(playerid));
- return Save;
- }
- stock Spielername(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- return name;
- }
- 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;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement