Clearchat Befehl nur als Admin ausführbar

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
  • Nabend wieder mal ein problem....


    und zwar geht es um dieses Problem das ich den Clearchat Befehl nur als Admin ausführbar machen möchte und ich nun die IstSpielerAdmin abfrage gemacht habe und ich,
    nun immer wenn ich Ingame bin bin ich angeblich kein Admin trotz Set in der Spieler ,,Config" eingetragen habe das ich Adminlevel 5 haben soll
    aber immer nach Serverstart bin ich Level 0 wieder in der ,,Config".
    Trotz
    SpielerLaden
    SpielerSpeichern
    usw


    Quellcode um den es sich Handelt
    if(strcmp("/clearchat", cmdtext, true) == 0)
    {
    if(IstSpielerAdmin(playerid, 1))
    {
    for(new i = 0; i < 100; i++) SendClientMessageToAll(HELLBLAU," ");
    new string[128];
    GetPlayerName(playerid, string, MAX_PLAYER_NAME);
    format(string, sizeof(string), "Der NGR´ler %s (ID: %d) hat den Chat gecleart.", string, playerid);
    SendClientMessageToAll(ROT,string);
    return 1;
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist kein Admin");
    return 1;
    }
    }
    return 0;
    }

  • //AdminSytsem
    stock IstSpielerAdmin(playerid,p_level)
    {
    if(sSpieler[playerid][Adminlevel] >= p_level) return 1;
    return 0;
    }


    stock SpielerSpeichern(playerid)
    {
    new Spieler[64];
    new Sname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Sname,sizeof(Sname));
    format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
    if(dini_Exists(Spieler))
    {
    dini_IntSet(Spieler,"Adminlevel",sSpieler[playerid][Adminlevel]);
    dini_IntSet(Spieler,"level",sSpieler[playerid][level]);
    dini_IntSet(Spieler,"Fraktion",sSpieler[playerid][Fraktion]);
    dini_IntSet(Spieler,"Rang",sSpieler[playerid][Rang]);



    }
    return 1;
    }

  • ein normaler gmx hat wohl nicht gereicht also hab ich einfach mal den server ,,ganz" neu gestartet danke für eure Hilfsversuche!

    Pack doch einfach dein "SpielerSpeichern" unter OnGameModeExit rein, dann müsste alles gespeichert werden, nach einem gmx.



    Gruß Kevin

    Mit freundlichen Grüßen,


    Keslo