Hallo Community,
Ich hab folgendes Problem, ich möchte gerne Logs erstellen, bis dahin garkein Problem. Jeden Tag eine neue log, auch das müsste in der Theorie klappen.. Allerdings stoße ich nun vor ein Rätsel.. Mein Server crasht/geht aus, wenn ich eine Log erstellen will.
Hier der code:
ocmd:kick(playerid,params[])
{
new pID, pidname[MAX_PLAYER_NAME],adminname[MAX_PLAYER_NAME],grund[64],string[300],logname[50];
if(!isAdmin(playerid,1337))return SendClientMessage(playerid,FARBE_Rot,"Dein Adminrang is zu niedrig!");
if(sscanf(params,"us[64]",pID,grund))return SendClientMessage(playerid,FARBE_Rot,"Benutzung: /kick [ID] [Grund]");
if(sInfo[pID][eingeloggt] ==0) return SendClientMessage(playerid,FARBE_Rot,"Dieser Spieler ist nicht eingeloggt!");
// if(sInfo[pID][alevel]>0) return SendClientMessage(playerid,FARBE_Rot,"Du kannst keine Anderen Admins kicken!");
new year,month,day;
getdate(year,month,day);
format(string, sizeof(string), "AdmCmd: %s wurde von %s gekickt, Grund: %s",pidname,adminname,grund);
format(logname,sizeof(logname),"Kicklog_%d_%d_%d",year,month,day);
Kicklog(logname,string);
format(string, sizeof(string), "AdmCmd: %s wurde von %s gekickt, Grund: %s",pidname,adminname,grund);
SendClientMessageToAll(FARBE_Hellrot, string);
Kick(pID);
return 1;
}
{
new pID, pidname[MAX_PLAYER_NAME],adminname[MAX_PLAYER_NAME],grund[64],string[300],logname[50];
if(!isAdmin(playerid,1337))return SendClientMessage(playerid,FARBE_Rot,"Dein Adminrang is zu niedrig!");
if(sscanf(params,"us[64]",pID,grund))return SendClientMessage(playerid,FARBE_Rot,"Benutzung: /kick [ID] [Grund]");
if(sInfo[pID][eingeloggt] ==0) return SendClientMessage(playerid,FARBE_Rot,"Dieser Spieler ist nicht eingeloggt!");
// if(sInfo[pID][alevel]>0) return SendClientMessage(playerid,FARBE_Rot,"Du kannst keine Anderen Admins kicken!");
new year,month,day;
getdate(year,month,day);
format(string, sizeof(string), "AdmCmd: %s wurde von %s gekickt, Grund: %s",pidname,adminname,grund);
format(logname,sizeof(logname),"Kicklog_%d_%d_%d",year,month,day);
Kicklog(logname,string);
format(string, sizeof(string), "AdmCmd: %s wurde von %s gekickt, Grund: %s",pidname,adminname,grund);
SendClientMessageToAll(FARBE_Hellrot, string);
Kick(pID);
return 1;
}
und der Callback:
Kicklog(logname[],string[])
{
new stunde,minute,sekunde;
gettime(stunde,minute,sekunde);
new Chatstring[300],fName[50];
format(Chatstring, sizeof(Chatstring), "%s | Zeit: %d:%d.%d\n",string,stunde,minute,sekunde);
format(fName,50,"Logs/%s.txt",logname);
new File:hFile = fopen(fName, io_append);
fwrite(hFile, Chatstring);
fclose(hFile);
return 1;
}
{
new stunde,minute,sekunde;
gettime(stunde,minute,sekunde);
new Chatstring[300],fName[50];
format(Chatstring, sizeof(Chatstring), "%s | Zeit: %d:%d.%d\n",string,stunde,minute,sekunde);
format(fName,50,"Logs/%s.txt",logname);
new File:hFile = fopen(fName, io_append);
fwrite(hFile, Chatstring);
fclose(hFile);
return 1;
}
Hoffe auf baldige hilfe
Liebe Grüße
Flo