Hey,
ich habe ein Problem mit meinem Offlineban-Command.
Und zwar werden die Werte zwar in die Userdatei geschrieben, ich möchte allerdings, dass die bereits vorhandenen Werte aus der Datei ausgelesen werden und sich die Werte: Banned, BanFrom, BanReason nur aktualisieren.
Denn jetzt wird die ganze File gelöscht und nur die neuen Dateien werden reingeschrieben.
ocmd:alock(playerid,params[])
{
if (PlayerInfo[playerid][pAdmin] < 4) return SendClientMessage(playerid,COLOR_GREY,"Du bist kein Administrator!");
new acc[64], string[256],giveplayer[32],reason[128], sendername[MAX_PLAYER_NAME];
if(sscanf(params,"s[32]s[128]",giveplayer,reason)) return SendClientMessage(playerid, COLOR_GREY,"[Benutzung]: /alock [Spieler] [Grund]");
format(acc,sizeof(acc),"/Accounts/%s.ini",giveplayer);
if(!fexist(acc)) {
format(string,sizeof(string)," Der Account von %s existiert nicht!",giveplayer);
SendClientMessage(playerid,COLOR_GRAD2,string);
return 1;
}
new File:banaccount = fopen(acc,io_write);
fwrite(banaccount,"Banned=1\n");
GetPlayerName(playerid,sendername,sizeof(sendername));
format(string, sizeof(string), "BanFrom=%s\n",sendername);
fwrite(banaccount,string);
format(string, sizeof(string), "BanReason=%s\n",reason);
fwrite(banaccount,string);
fclose(banaccount);
format(string, sizeof(string), "AdmCmd: %s wurde von %s gebannt, Grund: %s",giveplayer,sendername, reason);
SendClientMessageToAll(COLOR_LIGHTRED,string);
format(string, sizeof(string), "[Bann:A]: Der Account von %s wurde durch %s gesperrt, Grund: %s", giveplayer, sendername, reason);
SaveToFile("Adminlog",string);
return 1;
}
}
Kann mir jemand helfen?
//Edit: Unnötige Zeile entfernt
Grüße,
tonyalva