GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Szkript kérések => A témát indította: TylerDaSilva - 2014. Május 07. - 07:42:11

Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 07:42:11
Helló.
Olyan scripy kellene nekem, ami lement egy logot a különbözö parancsokról és a chatröl külön fájlokban (chatet nem tudom pontosan hogy kéne lementse mert RPre kell)
Elöre is köszönöm a segítséget.
Cím: Parancsról LOG készítés
Írta: skyLine - 2014. Május 07. - 08:09:25
printf
print
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 11:41:25
Hát.ezzel nem lettem okosabb xd majd gépen megtekintem de nem biztos hogy jobb lesz azért köszi
Cím: Parancsról LOG készítés
Írta: Dfoglalo - 2014. Május 07. - 11:45:38
Pedig csak azt a két függvényt használva tudsz logba menteni.
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 11:59:11
Sose használtam még azokat
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 07. - 12:22:40
Szia!
 
public OnPlayerCommandText(playerid, cmdtext[])
{
    new Nev[MAX_PLAYER_NAME+1];
    GetPlayerName(playerid, Nev, sizeof(Nev));
    printf(\"%s beírta: %s.\", Nev, cmdtext);
    return 1;
}
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 15:34:40
Na ez már jó csak lenne pár kérdésem. MAX_PLAYER_NAME-hez miért kell +1?  Ha dini_createt hozzáteszem akkor már abba a fájlba menti? RP szerón chatet hogy mentsem? Ha megvan a válasz, menni fog a + :)
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 07. - 16:13:51
OnPlayerTextnél a textet printf-eld, ugyanígy. A MAX_PLAYER_NAME 24, és a stringnél az utolsó mindig plusz egy üres karakter (lezárás asszem), és ha simán lenne ott, akkor a 24 betûs neveknél az utolsót nem írná. Amit printf-elsz, (vagy printelsz), írja a szerver ablakába és a szerver logba, így mentened felesleges.
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 17:38:02
Menteni akarom mert szerver resikor nullázza a logot így akármikor kellhet, legyen meg szóval azért érdekelne hogy kell lementeni de a MAX_PLAYER_NAME-nél mi az a +1? És hogy mentem akkor dini-vel? csak create meg dini_IntSet-el vagy hogy?
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 07. - 23:43:32
A szerver nem resizi a logot resikor, a kliens esetleg, relogkor. A +1-et pedig már elmondtam.
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 08. - 05:57:07
Ja értem de akkor is jobb volna külön menteni mert majdnem minden parancsról akarok és úgy átláthatóbb amikor pont keresek valamit.
akkor már csak két kérdés.
dinivel hogy mentsem külön fájlba?
Dátumot és idöt hogy tegyem hozzá?
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 08. - 07:29:10
stock Logol(szvg[])
{
    new ido[6], nszvg[1500];
    getdate(ido[0], ido[1], ido[2]);
    gettime(ido[3], ido[4], ido[5]);
    new File:Naplo = fopen(\"/Naplo.txt\", io_write);
    if(!Naplo) return 0;
    format(nszvg, strlen(szvg)+27, \"[%04d-%02d-%02d %02d:%02d:%02d] %s\\r\\n\", ido[0], ido[1], ido[2], ido[3], ido[4], ido[5], szvg);
    fwrite(Naplo, nszvg);
    fclose(log);
    return 1;
}

 
Dinivel még sosem csináltam hasonlót, mivel MySQL-be logolok, ez pedig itt az akap SAMPos fájlkezelõ. Ha berakod a fixes.incet és beállítod benne, hogy a fájlokat is javítsa, akkor nem fog crashelni a szerver, ha nincs ott a fájl ;)
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 08. - 11:31:48
Köszi este ha hazaérek megnézem ha jó akkor megy a plusz. Amúgy ez mindent ment vagy mit ment le bele?
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 08. - 14:39:34
Ahova berakod, és amit megadsz, azt menti. A dátumot idõt alapból eléírja.
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 08. - 16:43:11
Akkor minden parancshoz másoljam be és csak a txt-t kell átírni? Este kipróbálom
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 08. - 19:00:31
Nem minden parancshoz, csak OnPlayerCommandTexthez, az úgy minden parancs. És ott formázd bele a cmstextet, és úgy logold.
Cím: Parancsról LOG készítés
Írta: Flash - 2014. Május 24. - 15:16:52
[mod]Témát zártam! Ha mégsem oldódott meg a problémád, kérlek jelezd PÜ-be, és megnyitom a témát![/mod]
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 07:42:11
Helló.
Olyan scripy kellene nekem, ami lement egy logot a különbözö parancsokról és a chatröl külön fájlokban (chatet nem tudom pontosan hogy kéne lementse mert RPre kell)
Elöre is köszönöm a segítséget.
Cím: Parancsról LOG készítés
Írta: skyLine - 2014. Május 07. - 08:09:25
printf
print
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 11:41:25
Hát.ezzel nem lettem okosabb xd majd gépen megtekintem de nem biztos hogy jobb lesz azért köszi
Cím: Parancsról LOG készítés
Írta: Dfoglalo - 2014. Május 07. - 11:45:38
Pedig csak azt a két függvényt használva tudsz logba menteni.
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 11:59:11
Sose használtam még azokat
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 07. - 12:22:40
Szia!
 
public OnPlayerCommandText(playerid, cmdtext[])
{
    new Nev[MAX_PLAYER_NAME+1];
    GetPlayerName(playerid, Nev, sizeof(Nev));
    printf(\"%s beírta: %s.\", Nev, cmdtext);
    return 1;
}
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 15:34:40
Na ez már jó csak lenne pár kérdésem. MAX_PLAYER_NAME-hez miért kell +1?  Ha dini_createt hozzáteszem akkor már abba a fájlba menti? RP szerón chatet hogy mentsem? Ha megvan a válasz, menni fog a + :)
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 07. - 16:13:51
OnPlayerTextnél a textet printf-eld, ugyanígy. A MAX_PLAYER_NAME 24, és a stringnél az utolsó mindig plusz egy üres karakter (lezárás asszem), és ha simán lenne ott, akkor a 24 betûs neveknél az utolsót nem írná. Amit printf-elsz, (vagy printelsz), írja a szerver ablakába és a szerver logba, így mentened felesleges.
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 07. - 17:38:02
Menteni akarom mert szerver resikor nullázza a logot így akármikor kellhet, legyen meg szóval azért érdekelne hogy kell lementeni de a MAX_PLAYER_NAME-nél mi az a +1? És hogy mentem akkor dini-vel? csak create meg dini_IntSet-el vagy hogy?
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 07. - 23:43:32
A szerver nem resizi a logot resikor, a kliens esetleg, relogkor. A +1-et pedig már elmondtam.
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 08. - 05:57:07
Ja értem de akkor is jobb volna külön menteni mert majdnem minden parancsról akarok és úgy átláthatóbb amikor pont keresek valamit.
akkor már csak két kérdés.
dinivel hogy mentsem külön fájlba?
Dátumot és idöt hogy tegyem hozzá?
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 08. - 07:29:10
stock Logol(szvg[])
{
    new ido[6], nszvg[1500];
    getdate(ido[0], ido[1], ido[2]);
    gettime(ido[3], ido[4], ido[5]);
    new File:Naplo = fopen(\"/Naplo.txt\", io_write);
    if(!Naplo) return 0;
    format(nszvg, strlen(szvg)+27, \"[%04d-%02d-%02d %02d:%02d:%02d] %s\\r\\n\", ido[0], ido[1], ido[2], ido[3], ido[4], ido[5], szvg);
    fwrite(Naplo, nszvg);
    fclose(log);
    return 1;
}

 
Dinivel még sosem csináltam hasonlót, mivel MySQL-be logolok, ez pedig itt az akap SAMPos fájlkezelõ. Ha berakod a fixes.incet és beállítod benne, hogy a fájlokat is javítsa, akkor nem fog crashelni a szerver, ha nincs ott a fájl ;)
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 08. - 11:31:48
Köszi este ha hazaérek megnézem ha jó akkor megy a plusz. Amúgy ez mindent ment vagy mit ment le bele?
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 08. - 14:39:34
Ahova berakod, és amit megadsz, azt menti. A dátumot idõt alapból eléírja.
Cím: Parancsról LOG készítés
Írta: TylerDaSilva - 2014. Május 08. - 16:43:11
Akkor minden parancshoz másoljam be és csak a txt-t kell átírni? Este kipróbálom
Cím: Parancsról LOG készítés
Írta: KovaNovik - 2014. Május 08. - 19:00:31
Nem minden parancshoz, csak OnPlayerCommandTexthez, az úgy minden parancs. És ott formázd bele a cmstextet, és úgy logold.
Cím: Parancsról LOG készítés
Írta: Flash - 2014. Május 24. - 15:16:52
[mod]Témát zártam! Ha mégsem oldódott meg a problémád, kérlek jelezd PÜ-be, és megnyitom a témát![/mod]