-
Sziasztok! Azt szeretném megkérdezni, hogy dinivel hogy tudom lementeni a reportot egy reportok.ini fájlba, hogy ne irja felül az elõzõt?
-
Akár törölheted is, ha új report van.
-
De úgy szeretném hogy az összes report nyomon követhetõ és visszaolvasható legyen. Szóval akkor is lássuk, ha nincs fent a szerón egy admin sem.
-
Bocsi, a \"ne írja felül az elõzõt\" úgy értettem, hogy van 2 report, felül a régi, alul az új, és a felsõt törölje :D.
Ha addig nem írja le senki, megcsinálom neked.
Írd le a /report parancsod.
-
CMD:report(playerid, params[])
{
new adottid, panasz[256], strdate[20], year, month, day, report[512];
if(sscanf(params, \"us\", adottid, panasz)) return SendClientMessage(playerid, piros, \"[ ! ] Használat: /report [iD] [PANASZ]\");
if(adottid == INVALID_PLAYER_ID) return SendClientMessage(playerid, piros,\"[ ! ] Nincs ilyen játékos a szerveren!\");
if(!dini_Exists(\"reportok.ini\")) dini_Create(\"reportok.ini\");
getdate(year, month, day);
format(strdate, sizeof(strdate), \"%d/%d/%d\",day,month,year);
format(report, sizeof(report), \"|| [ %s ][bejelentõ: %s][bejelentett: %s] Panasz: %s ||\", strdate, GetName(playerid), GetName(adottid), panasz);
return 1;
}
-
Telóról írok. Holnap leszek géprõl.
Ha reggelig nem csinálja meg más, megcsinálom.
-
Nem szükséges a dini, viszont neked kell létrehozni a reportok.ini fájlt.
CMD:report(playerid, params[])
{
new File: reportfile = fopen(\"reportok.ini\", io_write);
new adottid, panasz[256], strdate[20], year, month, day, report[512];
if(sscanf(params, \"us\", adottid, panasz)) return SendClientMessage(playerid, piros, \"[ ! ] Használat: /report [iD] [PANASZ]\");
if(adottid == INVALID_PLAYER_ID) return SendClientMessage(playerid, piros,\"[ ! ] Nincs ilyen játékos a szerveren!\");
getdate(year, month, day);
format(strdate, sizeof(strdate), \"%d/%d/%d\",day,month,year);
format(report, sizeof(report), \"|| [ %s ][bejelentõ: %s][bejelentett: %s] Panasz: %s ||\\r\\n\", strdate, GetName(playerid), GetName(adottid), panasz);
fwrite(reportfile, report);
fclose(reportfile);
return 1;
}
-
Meg kell adnod a \"panasz\" hosszúságát az sscanf használatánál, tehát:
CMD:report(playerid, params[])
{
new File: reportfile = fopen(\"reportok.ini\", io_write);
new adottid, panasz[256], strdate[20], year, month, day, report[512];
if(sscanf(params, \"us[256]\", adottid, panasz)) return SendClientMessage(playerid, piros, \"[ ! ] Használat: /report [iD] [PANASZ]\");
if(adottid == INVALID_PLAYER_ID) return SendClientMessage(playerid, piros,\"[ ! ] Nincs ilyen játékos a szerveren!\");
getdate(year, month, day);
format(strdate, sizeof(strdate), \"%d/%d/%d\",day,month,year);
format(report, sizeof(report), \"|| [ %s ][bejelentõ: %s][bejelentett: %s] Panasz: %s ||\\r\\n\", strdate, GetName(playerid), GetName(adottid), panasz);
fwrite(reportfile, report);
fclose(reportfile);
return 1;
}
-
Nagyon szépen köszönöm! ment a +