Wie erstelle ich ein /makeleader für DINI
/makeleader dann soll er in die Skin Auswahl dann Spawnen im Int
/makeleader
- PizzaHaus
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Erstmal ne Frage welchen Umfang hat dein Fraktionssystem
-
Da gibt es einige Möglichkeiten, die du hast, um dies zu realisieren.
Ich erkläre dir mal die grundlegenden Teile, die du für den Befehl benötigst, damit du es dann selbstständig fertigstellen kannst.Also erstes brauchst du einen Befehl, ich nehme hier jetzt als Beispiel ocmd als Command Prozessor, falls du einen anderen Command-Prozessor nutzt, dann ändere das bitte entsprechend ab, das sollte aber klar sein.
C
Alles anzeigenocmd_makeleader(playerid, params[]) { //Spieler muss selbst Rang 5 sein: if(PlayerInfo[playerid][pRank] < 5) return SendClientMessage(playerid, 0xFF0000FF, "Error: Du musst mindestens Rang 5 sein."); //Deklaration der Variable, in der dann die eingegebene Spieler-ID steht new pID; //Splitten der Parameter: u = ID oder Name -> ID if(sscanf(params, "u", pID)) return SendClientMessage(playerid, 0xFF0000FF, "Error: /makeleader [ID/Name]"); //Anderer Spieler darf nicht bereits Leader sein: if(PlayerInfo[pID][pLeader] == 1) return SendClientMessage(playerid, 0xFF0000FF, "Error: Dieser Spieler ist bereits Leader."); //Spieler kann sich nichts selbst zum Leader machen: if(playerid == pID) return SendClientMessage(playerid, 0xFF0000FF, "Error: Du kannst dich nicht selbst zum Leader ernennen."); //Wenn nun alles passt, dann kannst du den Spieler als Leader setzen: PlayerInfo[pID][pLeader] = 1; new str[145], pname[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME]; GetPlayerName(pID, pname, MAX_PLAYER_NAME); GetPlayerName(playerid, aname, MAX_PLAYER_NAME); format(str, sizeof(str), "Server: %s hat den Spieler %s zum Leader ernannt.", aname, pname); SendClientMessageToAll(0xFFFFFFFF, str); //Hier dann den Spieler "pID" in die Skin-Auswahl setzen, je nach dem wie das bei dir //vom Code her aufgabaut ist, das weiß ich nicht. //... return 1; }
Alternativ kannst du anstatt sscanf auch strtok nutzen, je nach dem wie deine anderen Befehle aufgebaut sind.
Du musst natürlich bedenken, dass du obigen Code nicht einfach 1:1 kopieren kannst, sondern ihn an deine Variablen-Namen (etc) anpassen musst, aber das sollte klar sein, ich kenne ja deinen Code nicht, somit auch die Bezeichnungen nicht.
-
breadfish.de
Hat das Thema geschlossen.