Beiträge von PlayEasy

    Danke für die Erklärung.
    Habe es jetzt soweit hinbekommen das es Klappt.
    Das einzige was noch nicht Funktioniert ist, das es richtig Gespeichert wird.


    Und zwar soll es in MySqL in der Kategorie: Fraktion gespeichert werden.
    Leider funktioniert das nicht richtig.


    SavefToDB(playerid)

    SaveFToDB(playerid)
    {
    new string[128];
    //mysql_format(handle, string, sizeof(string), "INSERT INTO fraktion(Leader, Admin, Member, eingeladen, id, fraktion) VALUES('%d', '%d, '%s','%d','%d','%d')", fInfo[playerid][fLeader], fInfo[playerid][fAdmin],fInfo[playerid][fMember],fInfo[playerid][eingeladen],fInfo[playerid][f_ID],fInfo[playerid][fFraktion]);
    mysql_format(handle, string, sizeof(string), "INSERT INTO `fraktion`(`leader`, `admin`, `Member`, `eingeladen`, `id`, `fraktion`) VALUES ([value-1],[value-2],[value-3],[value-4],[value-5],[value-6])",fInfo[playerid][fLeader], fInfo[playerid][fAdmin],fInfo[playerid][fMember],fInfo[playerid][eingeladen],fInfo[playerid][f_ID],fInfo[playerid][fFraktion]);
    mysql_pquery(handle, string);
    return 1;
    }


    Habe extra zum Speicher einen Stock erstellt. Leider werden die Daten nicht Gespeichert.
    Die Struktur der Datenbank sieht so aus: db.PNG
    SafeUserStats(playerid)

    stock SaveUserStats(playerid)
    {
    //Wenn der Spieler nicht eingeloggt ist, dann speichere seine Statistiken nicht
    if(!PlayerInfo[playerid][pLoggedIn]) return 1;


    //Ansonsten speichere sie
    new query[1024];
    mysql_format(handle, query, sizeof(query), "UPDATE `users` SET `level` = '%d', `money` = '%d', `kills` = '%d', `deaths` = '%d',`ban` = '%d', `admin` = '%d', `fraktion` = '%d' WHERE `id` = '%d'",
    PlayerInfo[playerid][pLevel], PlayerInfo[playerid][pMoney], PlayerInfo[playerid][pKills], PlayerInfo[playerid][pDeaths], PlayerInfo[playerid][p_id], PlayerInfo[playerid][pBan], PlayerInfo[playerid][pAdmin], PlayerInfo[playerid][pFraktion]);
    SaveFToDB(playerid);


    //Das Query wird abgesendet
    mysql_pquery(handle, query);
    return 1;
    }


    Gespeichert wird aber nix...
    Weiß einer wo der Fehler liegt?


    Keine Sorge ich weiß das diese Art von Variante INSERT INTO `fraktion`(`leader`, `admin`, `Member`, `eingeladen`, `id`, `fraktion`) VALUES ([value-1],[value-2],[value-3],[value-4],[value-5],[value-6])",fInfo[playerid][fLeader], fInfo[playerid][fAdmin],fInfo[playerid][fMember],fInfo[playerid][eingeladen],fInfo[playerid][f_ID],fInfo[playerid][fFraktion]); Komisch ist ^^

    hey,
    Ich arbeite derzeit an meinem Skripten. Und möchte es in nächster Zeit verkaufen wenn es weit genug Entwickelt ist.


    Derzeit hat das Script um die 500 Zeilen und läuft über MySqL.
    Derzeit sind folgende Dinge enthalten:
    - Login / Register System
    - Adminbefehle: /setlevel | /setadmin | /makeleader | /admin(zeigt an welcher Admin online ist) | 


    Was derzeit in Entwicklung ist.
    - Fraktionssystem- AdminSystem Erweiterung- Stats Profil- Befehle für Fraktionen- Jobs und Nebenjobs- und eventuell noch mehr dinge


    Falls du fragen oder Interesse hast kannst du mich gerne Kontaktieren.
    Das Skript sollte eigentlich für meinen eigenen Server sein. Aber überlege es zu Verkaufen oder eventuell in ein neues Projekt einzusteigen.

    Ich hab mal die gröbsten Fehler aus deinem /makeleader Befehl entfernt.


    CMD:makeleader(playerid,params[]){ if(PlayerInfo[playerid][pAdmin]>=1 && PlayerInfo[playerid][pFraktion]>=1) { new frakid, p_ID, name[MAX_PLAYER_NAME], string[128]; if(sscanf(params,"ui", p_ID, frakid))return SendClientMessage(playerid, 0x00FF00FF, "[ Info ]Benutzung: /makeleader [id][frakid]"); GetPlayerName(playerid, string, MAX_PLAYER_NAME); GetPlayerName(p_ID, name, MAX_PLAYER_NAME); PlayerInfo[p_ID][pFraktion] = frakid; mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `fraktion` = '%d' WHERE `id` = '%d'", frakid, PlayerInfo[p_ID][p_id]); mysql_pquery(handle, string); format(string, sizeof(string), "[ ! ]Admin: %s hat %s zum Leader einer Fraktion: %d gemacht!", string, name, GetFraktionRang(p_ID)); SendClientMessage(playerid, -1, string); } else SendClientMessage(playerid, 0x00FF00FF,"Du kannst diesen Befehl nicht ausführen"); return 1;}

    Werde es später mal testen.
    Wo hatte ich den genau da Fehler ?
    Damit ich das für die Zukunft weiß.

    Nabend.
    Ich habe jetzt mal ein Fraktion System angefangen.
    Habe es so Versucht umzusetzen:



    Fraktion #Define
    //Fratkionen//#define FRAKTION_NAME_1 "LSPD"#define FRAKTION_NAME_2 "Sanitäter"


    Fraktion Enum
    enum fDaten{f_ID,fLeader, ///Erstellt die Spielervariable pLeaderfMember,fAdmin,eingeladen}new fInfo[MAX_PLAYERS][fDaten]


    Makeleader Befehl
    CMD:makeleader(playerid,params[])
    {
    if(PlayerInfo[playerid][pAdmin]>=1 && PlayerInfo[playerid][pFraktion]>=1)return SendClientMessage(playerid, 0x00FF00,"Du kannst diesen Befehl nicht ausführen");
    {
    new frakid, p_ID, name[MAX_PLAYER_NAME], string[128];
    if(sscanf(params,"us", p_ID, frakid))return SendClientMessage(playerid, 0x00FF00, "[ Info ]Benutzung: /makeleader [id][frakid]");
    GetPlayerName(playerid, string, MAX_PLAYER_NAME);
    GetPlayerName(p_ID, name, MAX_PLAYER_NAME);
    PlayerInfo[p_ID][pFraktion] = frakid;
    format(string, sizeof(string), "[ ! ]Admin: %s hat %s zum Leader einer Fraktion: %d gemacht!", string, name, GetFraktionRang(p_ID));
    mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `fraktion` = '%d' WHERE `id` = '%d'", frakid, PlayerInfo[p_ID][p_id]);
    mysql_pquery(handle, string);
    SendClientMessage(playerid, -1, string);
    }
    return 1;
    }


     OnUserRegister(playerid)
    forward OnUserRegister(playerid);
    public OnUserRegister(playerid)
    {
    //Der Spieler wurde in die Datenbank eingetragen, es wird die id ausgelesen
    PlayerInfo[playerid][p_id] = cache_insert_id();
    PlayerInfo[playerid][pLoggedIn] = true;
    PlayerInfo[playerid][pAdmin] = 0;
    PlayerInfo[playerid][pKills] = 0;
    PlayerInfo[playerid][pBan] = 0;
    PlayerInfo[playerid][pMoney] = 10000;
    GivePlayerMoney(playerid, 10000);
    PlayerInfo[playerid][pLevel] = 1;
    PlayerInfo[playerid][pDeaths] = 0;
    //PlayerInfo[playerid][pFraktion] = 0;
    fInfo[playerid][f_ID] = 0;
    fInfo[playerid][fLeader] = 0;
    fInfo[playerid][fMember] = 0;
    fInfo[playerid][fAdmin] = 0;
    fInfo[playerid][eingeladen] = 0;
    SendClientMessage(playerid, 0x00FF00FF, "[Konto] Registration erfolgreich.");
    return 1;
    }


    OnUserLogin

    public OnUserLogin(playerid)
    {
    //Query wurde ausgeführt und das Ergebnis im Cache gespeichert
    new rows;
    cache_get_row_count(rows);
    if(rows == 0)
    {
    //Der Spieler hat ein falsches Passwort eingegeben
    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Anmeldung", "Bitte logge Dich ein:\n{FF0000}Falsches Passwort!", "Ok", "Abbrechen");
    }
    else
    {
    //Es existiert ein Ergebnis, das heißt der Spieler hat das richtige Passwort eingegeben
    //Wir lesen nun die erste Zeile des Caches aus (ID 0)
    cache_get_value_name_int(0, "id", PlayerInfo[playerid][p_id]);
    cache_get_value_name_int(0, "level", PlayerInfo[playerid][pLevel]);
    cache_get_value_name_int(0, "money", PlayerInfo[playerid][pMoney]);
    cache_get_value_name_int(0, "kills", PlayerInfo[playerid][pKills]);
    cache_get_value_name_int(0, "deaths", PlayerInfo[playerid][pDeaths]);
    cache_get_value_name_int(0, "ban", PlayerInfo[playerid][pBan]);
    cache_get_value_name_int(0, "admin", PlayerInfo[playerid][pAdmin]);
    //cache_get_value_name_int(0, "fraktion", PlayerInfo[playerid][pFraktion]);
    cache_get_value_name_int(0, "ID", fInfo[playerid][f_ID]);
    cache_get_value_name_int(0, "Leader", fInfo[playerid][fLeader]);
    cache_get_value_name_int(0, "Admin", fInfo[playerid][fAdmin]);
    cache_get_value_name_int(0, "Member", fInfo[playerid][fMember]);
    cache_get_value_name_int(0, "eingeladen", fInfo[playerid][eingeladen]);
    PlayerInfo[playerid][pLoggedIn] = true;
    SendClientMessage(playerid, 0x00FF00FF, "[Konto] Eingeloggt.");
    GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]);
    }
    return 1;
    }


    SafeUserStats

    stock SaveUserStats(playerid)
    {
    //Wenn der Spieler nicht eingeloggt ist, dann speichere seine Statistiken nicht
    if(!PlayerInfo[playerid][pLoggedIn]) return 1;


    //Ansonsten speichere sie
    new query[1024];
    mysql_format(handle, query, sizeof(query), "UPDATE `users` SET `level` = '%d', `money` = '%d', `kills` = '%d', `deaths` = '%d',`ban` = '%d', `admin` = '%d', `fraktion` = '%d' WHERE `id` = '%d'",
    PlayerInfo[playerid][pLevel], PlayerInfo[playerid][pMoney], PlayerInfo[playerid][pKills], PlayerInfo[playerid][pDeaths], PlayerInfo[playerid][p_id], PlayerInfo[playerid][pBan], PlayerInfo[playerid][pAdmin], PlayerInfo[playerid][pFraktion]);
    mysql_format(handle, query, sizeof(query), "UPDATE `fraktion` SET `Leader` = '%d', `Admin` = '%d', `Member` = '%d', `eingeladen` = '%d' WHERE `id` = '%d'",fInfo[playerid][fLeader], fInfo[playerid][fAdmin], fInfo[playerid][fMember], fInfo[playerid][eingeladen], fInfo[f_ID]);


    //Das Query wird abgesendet
    mysql_pquery(handle, query);
    return 1;
    }
    Hab auch extra eine Datenbank für Fratkion erstellt
    Leider wird dort nix Gespeichert und der Befehl CMD:makeleader scheint auch nicht richtig zu Funktioniere.


    Findet ihr dort irgendwo einen Fehler?

    Schreib es so:


    Danke für den Tipp / Hinweiß.


    #Edit
    Hab es jetzt über eine andere Funktion hin bekommen und es wird ohne Probleme wiedergegeben.

    Abend,
    Wie gebe ich am besten wieder wenn Admin %s den Rang/Level von %s geändert hat?
    Also gemeint ist  Admin: %s hat den Rang von Spieler: %s zu %s geändert


    Ich habe es versucht über eine else Funktion zu machen.
    new p_ID;format(string,sizeof(string),"Admin %s hat den Rang von Spieler: %s zu %s geändert",PlayerInfo[pID][p_ID],PlayerInfo[playerid][pLevel]);}}


    Leider kriege ich dort 1 Warning:
    selfmade1.p(369): warning 213: tag mismatch


    Wo hab ich den Fehler produziert?
    Ich weiß das er sagt das pID eine Variable ist wenn ich nicht Falsch liege ^^


    Der befehlt sieht folgendermaßen aus:
    CMD:setlevel(playerid,params[])
    {
    if(!PlayerInfo[playerid][pAdmin]) return SendClientMessage(playerid, 0x00FF00, "[ ! ] Du besitzt keine Rechte um diesen Befehl zu nutzen!");
    new string[128], pID, level; // 'level' ist eine neue Variable für [pLevel]
    if(sscanf(params,"ui",pID,level))return SendClientMessage(playerid, 0x00FF00,"[Info] /setlevel [playerid][level]");
    else
    {
    new p_ID;
    format(string,sizeof(string),"Admin %s hat den Rang von Spieler: %s zu %s geändert",PlayerInfo[pID][p_ID],PlayerInfo[playerid][pLevel]);
    }
    PlayerInfo[pID][pLevel] = level;
    format(string,sizeof(string),"Spieler ist Levelrank: %s",GetLevelRank(pID));
    SendClientMessage(playerid, -1, string);
    mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `level` = '%d' WHERE `id` = '%d'", level, PlayerInfo[pID][p_id]);
    mysql_pquery(handle, string);
    return 1;
    }

    Ich hatte es so ins Skript geschrieben gehabt. aber trotzdem kam dort der Fehler.
    Ich versuche es nochmals ^^


    #Edit
    So das klappt schon mal ^^
    Jetzt habe ich die selbe Funktion für /setlevel gemacht
    Jetzt wird mir aber Ingame einfach nur Spieler ist Level: s Angezeigt.


    Der Befehl:

    CMD:setlevel(playerid,params[])
    {
    if(!PlayerInfo[playerid][pAdmin]) return SendClientMessage(playerid, 0x00FF00, "[ ! ] Du besitzt keine Rechte um diesen Befehl zu nutzen!");
    new string[128], pID, level; // 'level' ist eine neue Variable für [pLevel]
    if(sscanf(params,"ui",pID,level))return SendClientMessage(playerid, 0x00FF00,"[Info] /setlevel [playerid][level]");
    PlayerInfo[pID][pLevel] = level;
    format(string,sizeof(string),"Spieler ist Levelrank: %s",GetLevelRank(pID));
    SendClientMessage(playerid, -1, string);
    mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `level` = '%d' WHERE `id` = '%d'", level, PlayerInfo[pID][p_id]);
    mysql_pquery(handle, string);
    return 1;
    }


    Und der GetLevelRank

    GetLevelRank(playerid)
    {
    new levelrank[128];
    switch(PlayerInfo[playerid][pLevel])
    {
    case 2: levelrank = USER_LEVEL_2_NAME;
    case 1: levelrank = USER_LEVEL_1_NAME;
    }
    return levelrank;
    }


    Wieso wird mir dort nur S wiedergegeben?^^

    Danke nochmals für die Hilfe.
    Sollte ich noch ein Problem haben werde ich mich melden.


    #Edit


    Hab ein anderes Problem.
    Und zwar wird es jetzt wieder Angezeigt die Ausgabe, aber dort steht der normale Benutzername.


    Hier mal mein GetAdminRank:
    GetAdminRank(playerid)
    {
    new arank[64];
    switch(PlayerInfo[playerid][pAdmin])
    {
    case 3: arank = ADMIN_LEVEL_3_NAME;
    case 2: arank = ADMIN_LEVEL_2_NAME;
    case 1: arank = ADMIN_LEVEL_1_NAME;
    }
    return arank;
    }


    Hier mal der Befehl:
    CMD:setadmin(playerid,params[])
    {
    if(!PlayerInfo[playerid][pAdmin]) return SendClientMessage(playerid,0x00FF00, "[ ! ] Du besitzt keine Rechte um diesen Befehl auszuführen!"); // Keine Rechte
    new string[128], pID, admin;
    if(sscanf(params,"ui",pID ,admin))return SendClientMessage(playerid,0x00FF00,"[Info] /setadmin [playerid][adminlevel]");
    PlayerInfo[pID][pAdmin] = admin;
    format(string,sizeof(string),"Spieler ist Adminrank: %d",GetAdminRank(pID));
    SendClientMessage(playerid, -1, string);
    mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `admin` = '%d' WHERE `id` = '%d'", admin, PlayerInfo[pID][p_id]);
    mysql_pquery(handle, string);
    return 1;
    }


    Und hier mal die Defines
    //Admin-Level//#define ADMIN_LEVEL_1_NAME "Supporter"#define ADMIN_LEVEL_2_NAME "Administrator"#define ADMIN_LEVEL_3_NAME "User"//Admin-Level Ende//


    Mir wird bei der Ausführung immer der normale Benutzername angezeigt.
    Ich möchte aber gerne wie in den #Defines definiert die Festgelegten Ränge angezeigt bekommen.
    @Kaliber

    Aber wieso Verwendest du jetzt 'admin' anstatt 'pAdmin'? Da ich 'pAdmin' im Enum stehen habe ^^

    Sehe gerade, du nutzt ja p_id.
    Schreibe das mal so:
    PlayerInfo[p_id][pAdmin], PlayerInfo[p_id][p_id]

    Habe es grade Geändert.
    Leider wird mir die Nachricht: Spieler ist Adminrank: %s Ingame nicht angezeigt.


    Habe es so Eingefügt:

    CMD:setadmin(playerid,params[])
    {
    new string[128];
    if(PlayerInfo[playerid][pAdmin] >= 1)
    {
    if(sscanf(params,"ui",p_id ,pAdmin))return SendClientMessage(playerid,0x00FF00,"[Info] /setadmin [playerid][adminlevel]");
    PlayerInfo[p_id][pAdmin] = pAdmin;
    format(string,sizeof(string),"Spieler ist Adminrank: %s",GetAdminRank(PlayerInfo[playerid][pAdmin]));
    mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `admin` = '%d' WHERE `id` = '%d'", PlayerInfo[p_id][pAdmin], PlayerInfo[p_id][p_id]);
    mysql_pquery(handle, string);
    }
    else
    {
    SendClientMessage(playerid,0x00FF00, "[ ! ] Du besitzt keine Rechte um diesen Befehl auszuführen!"); // Keine Rechte
    }
    return 1;


    }

    Wieso würdest du das wollen?
    Es reicht doch, nur die ID in der Datenbank zu speichern und die Namen im Skript zu hinterlegen, so wie du es gemacht hast in deiner Funktion.


    Und dann kannst du das einfach so nutzen:


    format(string,sizeof(string), "Spieler ist Adminrank: %s", GetAdminRank(PlayerInfo[playerid][pAdmin]);

    Heute ist meine Denkweise nicht sehr Hilfreich.
    Noch eine andere Frage bezüglich der Speicherung meiner Daten über MySqL.
    Ich hab es jetzt hinbekommen, das bei /setadmin die Daten in die DB geschrieben werden.
    Leider wird es nicht Überschrieben sondern einfach hinzugefügt.
    Sodas z.b dann in der DB unter admin 31 Steht obwohl ich dem User Adminrang 3 gegeben habe.
    Hier wird die Query an den Server geschickt.


    mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `admin` = '%d' WHERE `id` = %d", PlayerInfo[playerid][pAdmin], PlayerInfo[playerid][p_id]);

    Hallo,
    Ich sitze derzeit an meinem Adminsystem und habe eine Frage.
    Und zwar würde ich gerne die Adminränge mit in der Datenbank speicher lassen.
    Also nicht das z.b bei
    /setadmin player adminlevel Nur die 1 Ausgegeben wird.


    Ich habe derzeit folgendes angefangen umzusetzen.
    Die Adminränge werden per #Define dekladiert:

    #define ADMIN_LEVEL_1_NAME "Supporter"
    #define ADMIN_LEVEL_2_NAME "Admin"


    Dafür hab ich eine Funktion geschrieben:

    GetAdminRank(playerid)
    {
    new arank[64];
    switch(PlayerInfo[playerid][pAdmin])
    {
    case 2: arank = ADMIN_LEVEL_2_NAME;
    case 1: arank = ADMIN_LEVEL_1_Name;
    }
    return arank;
    }


    Und würde gerne die Funktion in meinem Befehl nutzen:

    CMD:setadmin(playerid,params[])
    {
    new string[128];
    if(PlayerInfo[playerid][pAdmin] >= 1)
    {
    if(sscanf(params,"ui",p_id ,pAdmin))return SendClientMessage(playerid,0x00FF00,"[Info] /setadmin [playerid][adminlevel]");
    PlayerInfo[p_id][pAdmin] = pAdmin;
    mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `admin` = '%d' WHERE `id` = %d", PlayerInfo[playerid][pAdmin], PlayerInfo[playerid][p_id]);
    mysql_pquery(handle, string);
    SendClientMessage(playerid,0x00FF00,"Du hast den Adminrang geändert");
    }
    else
    {
    SendClientMessage(playerid,0x00FF00, "[ ! ] Du besitzt keine Rechte um diesen Befehl auszuführen!"); // Keine Rechte
    }
    return 1;
    }


    Ich weiß man könnte es über die Funktion / Variable Case :  probieren.


    Nur leider weiß ich nicht genau wie ich da Ansetzen soll.
    Habe derzeit nur folgende Idee im Kopf:

    switch(PlayerInfo[playerid][pAdmin])
    {
    case 1: format(string, sizeof(string), "%s (%d) - Level %d (%s)", pName(i), i, PlayerInfo[i][pAdmin], ADMIN_LEVEL_1_NAME);


    }


    Leider komme ich nicht bei der Umsetzung weiter.

    Danke für den Tipp.
    Kann ich generell die Mysql Funktionen in einem Befehl raus lassen, und es einfach bei einem Logout speichern lassen?
    Und ich möchte gerne, anstatt das in der DB '1' steht das dort Steht: Supporter usw.
    Kann ich das durch eine Case Funktion ermöglichen?


    Funktioniert diese Variante die ich Angefangen habe zu Scripten?

    //Admin-Level//
    #define ADMIN_LEVEL_1_NAME "Supporter"
    #define ADMIN_LEVEL_2_NAME "Admin"
    Hier sind die Admin Level defeniert



    GetAdminRank(playerid)
    {
    new arank[64];
    switch(PlayerInfo[playerid][pAdmin])
    {
    case 2: arank = ADMIN_LEVEL_2_NAME;
    case 1: arank = ADMIN_LEVEL_1_Name;
    }
    return arank;
    }
    Hier ist die Funktion


    Nur weiß ich nicht, wie ich es im Code umsetzen kann.

    Du kannst nicht einfach hinter das WHERE noch mehr dran hängen, dass muss alles zwischen das SET und dem WHERE, nicht danach.
    Musst es so anordnen:


    UPDATE `users` SET `level` = '%d', `money` = '%d', `kills` = '%d', `deaths` = '%d', `ban` = '%d', `admin` = '%d' WHERE `id` = '%d'


    Und kein Komma vor das WHERE ;)

    danke für den Hinweis :D


    Leider werden die Daten durch den Befehl /setadmin nicht richtig gespeichert.

    CMD:setadmin(playerid,params[])
    {
    new string[128];
    if(PlayerInfo[playerid][pAdmin] >= 1)
    {
    if(sscanf(params,"ui",p_id ,pAdmin))return SendClientMessage(playerid,0x00FF00,"[Info] /setadmin [playerid][adminlevel]");
    PlayerInfo[p_id][pAdmin] = pAdmin;
    mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `admin` = '1' WHERE `id` = %d;", PlayerInfo[playerid][pAdmin]);
    mysql_pquery(handle, string);
    SendClientMessage(playerid,0x00FF00,"Du hast den Adminrang geändert");
    }
    else
    {
    SendClientMessage(playerid,0x00FF00, "[ ! ] Du besitzt keine Rechte um diesen Befehl auszuführen!"); // Keine Rechte
    }
    return 1;
    }


    Also ich gebe Ingame z.b /setadmin Id:0 Adminlevel = 3 ein und es wird trotzdem 1 Eingespeichert.
    Es kann sein das ich einen Denkfehler habe, aber weiß nicht wo..
    @Kaliber