[SA-MP] [Scripting] Chat Log
Results 1 to 1 of 1
  1. #1
    Senior Member Array
    Join Date
    Mar 2011
    Location
    Banja Luka
    Karma
    17

    Default [Scripting] Chat Log

    Pozdrav svima! Danas ću vam pokazati kako kreirati chat log za vaš server!
    Vrlo je jednostavno, ima nekoliko koraka!

    1.Otiđite u vaš scriptfiles folder i tu napravite folder zvan Logs, u njemu napravite textualni fajl zvan Chat.txt (Desni klik>New>Text Document)

    2.Kopirajte ovo negdje na dno vašeg gamemoda!
    Code:
    stock ChatLog(playerid, text[])
    {
    	new
    	    File:lFile = fopen("Logs/Chat.txt", io_append),
    	    logData[178],
    		fyear, fmonth, fday,
    		fhour, fminute, fsecond;
    		
     	getdate(fyear, fmonth, fday);
    	gettime(fhour, fminute, fsecond);
    	
    	format(logData, sizeof(logData),"[%02d/%02d/%04d %02d:%02d:%02d] %s: %s \r\n", fday, fmonth, fyear, fhour, fminute, fsecond, GetName(playerid), text);
    	fwrite(lFile, logData);
    
    	fclose(lFile);
    	return 1;
    }
    Da objasnim.

    Code:
    File:lFile = fopen("Logs/Chat.txt", io_append)
    - Sa ovim kodom pravimo novi fajl u folderu Logs zvan Chat.txt!

    Code:
    logData[178]
    - Onoliko koliko će imati znakova u tom logu!

    Code:
    fyear, fmonth, fday, fhour, fminute, fsecond
    Varijable s kojim ćemo moći vidjeti kad otvorimo log godinu, mjesec, dan, sat, minute i sekund kad je to napisano!

    Code:
    getdate(fyear, fmonth, fday);
    gettime(fhour, fminute, fsecond);
    - Sa ove dvije funkcije ćemo doznati vrijeme kad je napisao, godina,mjesec,dan,sat,minuta i sekunda!

    Code:
    format(logData, sizeof(logData),"[%02d/%02d/%04d %02d:%02d:%02d] %s: %s \r\n", fday, fmonth, fyear, fhour, fminute, fsecond, GetName(playerid), text);
    - Sa ovom funckijom ćemo formatirati podatke za log (Neznam kako da bolje objasnim)!

    Code:
    logData
    -Ona varijabla za dužinu (Veličinu) znakova u logu!

    Code:
    fday, fmonth, fyear, fhour, fminute, fsecond
    - Dan, mjesec, godina, sat, minuta i sekunda!

    Code:
    GetName(playerid)
    - Sa ovom funkcijom ćemo doznati ime igrača koji je nešto napisao!

    Code:
    text
    - Text koji je igrač napisao!

    Code:
    fwrite(lFile, logData);
    - Sa tim upisuje podatke u log

    Code:
    fclose(lFile);
    - Sa ovim zatvara (Neznan ni ja čemu ovo)!
    Još jednu funkciju morate dodati negdje na dno vašeg moda a to je:


    Code:
    stock GetName(playerid)
    {
    	new
    	    pName[MAX_PLAYER_NAME];
    	    
    	GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
    	return pName;
    }
    3. Samo ovo dodajte u OnPlayerText callback:
    Code:
    ChatLog(playerid, text);
    Ako ste sve dobro uradili, odite na server, napišite nešto u chat i otvorite vaš Chat.txt, trebali biste dobiti nešto ovako

    Code:
    [17/06/2011 09:20:15] k@lu : test  [ lupam datum i sate ]
    Normalno vama će pisati vaše ime i vaš tekst!
    Last edited by k@lu^; 04-07-2011 at 16:25. Reason: Gramaticka greska

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •