Hallo, habe leider nichts bei google gefunden.
Wie kann ich verschiedene Adminränge erstellen ?
ich benötige 7 stück, wäre nett wenn mir das jemand erklären könnte.
Danke im vorraus.
Hallo, habe leider nichts bei google gefunden.
Wie kann ich verschiedene Adminränge erstellen ?
ich benötige 7 stück, wäre nett wenn mir das jemand erklären könnte.
Danke im vorraus.
Wie hast du deinen Spieler erstellt?
Enum?
Wie speicherst du ihn?
MySQL , Dini ?
Poste mal die Spieler Datei!
Meinst du so etwas?
stock AdminName(playerid)
{
new name[32];
if(PlayerInfo[playerid][pAdmin] == 1) format(name, sizeof(name), "Adminrang 1");
else if(PlayerInfo[playerid][pAdmin] == 2) format(name, sizeof(name), "Adminrang 2");
else if(PlayerInfo[playerid][pAdmin] == 3) format(name, sizeof(name), "Adminrang 3");
else if(PlayerInfo[playerid][pAdmin] == 4) format(name, sizeof(name), "Adminrang 4");
else if(PlayerInfo[playerid][pAdmin] == 5) format(name, sizeof(name), "Adminrang 5");
else if(PlayerInfo[playerid][pAdmin] == 6) format(name, sizeof(name), "Adminrang 6");
else if(PlayerInfo[playerid][pAdmin] == 7) format(name, sizeof(name), "Adminrang 7");
else if(PlayerInfo[playerid][pAdmin] == 8) format(name, sizeof(name), "Adminrang 8");
return name;
}
format(string, sizeof(string), "** %s %s: %s", AdminName(playerid), SpielerName(playerid), text);
Da ich nicht weiß, auf was Du speziell eine Antwort haben möchtest, eben mal ein kleines Tutorial:
Adminränge sind genauso wie Fraktionen: Du nimmst verschiedene ID's für die Ränge (bspw. Supporter = 1, Admin = 2, Head Admin = 3).
Das sind dann die numerischen Ränge, welche Du bei Adminabfragen in bspw. Befehlen brauchst.
Du fragst dann ab, welchen numerischen Rang der Spieler hat und wenn er bspw. = 1 ist, ist er Suporter.
Du kannst diese numerischen Ränge aber auch leicht in Rangnamen umwandeln, dafür gebe ich Dir mal eine Beispielfunktion, welche ich selbst verwende und auch definitiv funktioniert.
stock GetRankName(rank){
new rankname[20]; //Variable definieren, welche den Rangnamen beinhaltet
switch(rank){ //Switch...Case Abfrage, nichts Anderes als eine Alternative zur gewöhnlichen if Abfrage
case 0: format(rankname, sizeof(rankname), "User") //Case 0 - wenn rank == 0 ist, wird der Variable rankname der Wert "User" zugewiesen.
case 1: format(rankname, sizeof(rankname), "Supporter")
case 2: format(rankname, sizeof(rankname), "Admin")
case 3: format(rankname, sizeof(rankname), "Head Admin")
}
return rankname; //Rückgabe des endgültigen Rangnamens
}
Danke mr resse,
wird das jetzt automatisch geschpeichert ? und wie ist jetzt die admin abfrage ?
Wie meinst Du das mit "automatisch gespeichert"? Du musst den Rang des Spielers (als numerischen Rang) natürlich noch in der Spielerdatei / MySQL Tabelle speichern.
Einfach eine normale If Abfrage verwenden.
if(GetPVarInt(playerid, "adminlevel") == 1){
SendClientMessage(playerid, "Du darfst diesen Befehl verwenden.");
}else{
SendClientMessage(playerid, "Du darfst diesen Befehl nicht verwenden.");
}
klapt alles danke, geschpeichert wird der rang jetzt automatisch bei den scriptfiles oder muss ich das hinzufügen ?
geschpeichert wird der rang jetzt automatisch bei den scriptfiles oder muss ich das hinzufügen
Das musst Du natürlich noch machen.