dcmd_unban - Fehler

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
  • dcmd_unban(playerid, params[])
    {
    if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Du bist nicht eingeloggt.");
    if(PlayerInfo[playerid][pAdmin] < 1338) return SendClientMessage(playerid, COLOR_WHITE, "» Du besitzt nicht die benötigten Zugriffsrechte.");
    new accname[MAX_PLAYER_NAME];
    if(sscanf(params, "s", accname)) return SendClientMessage(playerid, COLOR_WHITE, "BENUTZUNG: /unban [Accountname]");
    new acc[MAX_PLAYER_NAME+20];
    format(acc,sizeof(acc),"/Accounts/%s.ini",accname);
    if(!fexist(acc)) {
    format(stringx,sizeof(stringx)," Der Account %s existiert nicht!",accname);
    SendClientMessage(playerid,COLOR_GRAD2,stringx);
    return 1;
    }
    new File:banaccount = fopen(acc,io_write);
    fwrite(banaccount,"Gebannt=0\n");
    fclose(banaccount);
    format(stringx, sizeof(stringx), "<< Administrator %s hat den Spieler %s entbannt. >>", MeinName(playerid), accname);
    SendClientMessageToAll(COLOR_LIGHTRED,stringx);
    return 1;
    }



    Die gesamte Dini Speicherung wird gelöscht und durch "Gebannt=0" gesetzt.
    Warum?

  • Du überschreibst die Datei (io_write = Datei leeren und zum schreiben öffnen).
    Mache es so:
    dcmd_unban(playerid, params[])
    {
    if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "Du bist nicht eingeloggt.");
    if(PlayerInfo[playerid][pAdmin] < 1338) return SendClientMessage(playerid, COLOR_WHITE, "» Du besitzt nicht die benötigten Zugriffsrechte.");
    new accname[MAX_PLAYER_NAME];
    if(sscanf(params, "s", accname)) return SendClientMessage(playerid, COLOR_WHITE, "BENUTZUNG: /unban [Accountname]");
    new acc[MAX_PLAYER_NAME+20];
    format(acc,sizeof(acc),"/Accounts/%s.ini",accname);
    if(!fexist(acc)) {
    format(stringx,sizeof(stringx)," Der Account %s existiert nicht!",accname);
    SendClientMessage(playerid,COLOR_GRAD2,stringx);
    return 1;
    }
    dini_Set(acc, "Gebannt", "0");
    format(stringx, sizeof(stringx), "<< Administrator %s hat den Spieler %s entbannt. >>", MeinName(playerid), accname);
    SendClientMessageToAll(COLOR_LIGHTRED,stringx);
    return 1;
    }