[Pomoc] Chat Log


Započeo System32, Jun 03, 2011, 10:24:31 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: iStunt
Detaljan opis problema: izvukao sam iz nekog bAdmina chat log, i sve to meni lijepo, nema errora warninga itd. ali chat log ne radi, ja pisem u chatu on ne radi
Dio skripte:
Kod: c
stock ChatLog(playerid, string[])
{
        new File: logfile, logtext[128];
        new fyear, fmonth, fday, fhour, fminute, fsecond;
        getdate(fyear, fmonth, fday);
        gettime(fhour, fminute, fsecond);
        logfile = fopen("Logs/Chat.txt", io_append);
        format(logtext, sizeof(logtext),"[%02d/%02d/%04d %02d:%02d:%02d] %s: %s \r\n", fday, fmonth, fyear, fhour, fminute, fsecond, PlayerName(playerid), string);
        fwrite(logfile, logtext);
        fclose (logfile);
}

pod OnPlayerText
Kod: c
ChatLog(playerid, text);

Neke slike/video za lakse dobivanje pomoci(neobavezno):
Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

Pa jesi napravio u scriptfiles folder Logs sa Chat.txt?

Moguce je da ga nemas kao ni taj folder posto nije napravljena funkcija da kreira ako ne postoji!

Citat: [AG] eXtreme poslato Jun 03, 2011, 12:44:59 POSLE PODNE
Pa jesi napravio u scriptfiles folder Logs sa Chat.txt?

Moguce je da ga nemas kao ni taj folder posto nije napravljena funkcija da kreira ako ne postoji!

napravio sam, folder i Chat.txt ali kad otvorim fajl nema nicega
Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

Kod: c
forward ChatLog(playerid, string[]);
public ChatLog(playerid, string[])
{
        new File: logfile, logtext[128];
        new fyear, fmonth, fday, fhour, fminute, fsecond;
        getdate(fyear, fmonth, fday);
        gettime(fhour, fminute, fsecond);
        logfile = fopen("Logs/Chat.txt", io_append);
        format(logtext, sizeof(logtext),"[%02d/%02d/%04d %02d:%02d:%02d] %s: %s \r\n", fday, fmonth, fyear, fhour, fminute, fsecond, PlayerName(playerid), string);
        fwrite(logfile, logtext);
        fclose (logfile);
}

a jesi li mozda forward Chatlog (string[]); ??

Haha dok je Extreme piso i ja sam xD
Poslednja Izmena: Jun 03, 2011, 13:04:42 POSLE PODNE od FireMan

Citat: _eXtreme_ poslato Jun 03, 2011, 13:03:16 POSLE PODNE
Kod: c
forward ChatLog(playerid, string[]);
public ChatLog(playerid, string[])
{
        new File: logfile, logtext[128];
        new fyear, fmonth, fday, fhour, fminute, fsecond;
        getdate(fyear, fmonth, fday);
        gettime(fhour, fminute, fsecond);
        logfile = fopen("Logs/Chat.txt", io_append);
        format(logtext, sizeof(logtext),"[%02d/%02d/%04d %02d:%02d:%02d] %s: %s \r\n", fday, fmonth, fyear, fhour, fminute, fsecond, PlayerName(playerid), string);
        fwrite(logfile, logtext);
        fclose (logfile);
}

ne radi
Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

Dude

*

zerocoolos

formatiraj si tekst koji upisujes u log prije otvaranja filea i zatvaranja...

znaci:
forward ChatLog(playerid, string[]);  
public ChatLog(playerid, string[])  
{  
        new File: logfile, logtext[128];  
        new fyear, fmonth, fday, fhour, fminute, fsecond;  
        getdate(fyear, fmonth, fday);  
        gettime(fhour, fminute, fsecond);  
        format(logtext, sizeof(logtext),"[%02d/%02d/%04d %02d:%02d:%02d] %s: %s \r\n", fday, fmonth, fyear, fhour, fminute, fsecond, PlayerName(playerid), string);  
        logfile = fopen("Logs/Chat.txt", io_append);  
        fwrite(logfile, logtext);  
        fclose (logfile);  
} 

Citat: Dude poslato Jun 03, 2011, 19:45:01 POSLE PODNE
formatiraj si tekst koji upisujes u log prije otvaranja filea i zatvaranja...

znaci:
forward ChatLog(playerid, string[]);  
public ChatLog(playerid, string[])  
{  
        new File: logfile, logtext[128];  
        new fyear, fmonth, fday, fhour, fminute, fsecond;  
        getdate(fyear, fmonth, fday);  
        gettime(fhour, fminute, fsecond);  
        format(logtext, sizeof(logtext),"[%02d/%02d/%04d %02d:%02d:%02d] %s: %s \r\n", fday, fmonth, fyear, fhour, fminute, fsecond, PlayerName(playerid), string);  
        logfile = fopen("Logs/Chat.txt", io_append);  
        fwrite(logfile, logtext);  
        fclose (logfile);  
} 

nažalost nece
Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

forward ChatLog(playerid, string[]);
public ChatLog(playerid, string[])
{
	print("1");
	new File: logfile, logtext[128];
	new fyear, fmonth, fday, fhour, fminute, fsecond;
	print("2");
	getdate(fyear, fmonth, fday);
	print("3");
	gettime(fhour, fminute, fsecond);
	print("4");
	format(logtext, sizeof(logtext),"[%02d/%02d/%04d %02d:%02d:%02d] %s: %s \r\n", fday, fmonth, fyear, fhour, fminute, fsecond, PlayerName(playerid), string);
    print("5");
	logfile = fopen("Logs/Chat.txt", io_append);
	print("6");
	fwrite(logfile, logtext);
	print("7");
	fclose (logfile);
	print("8");
}


ubaci to i napisi do kojeg ti je broja stiglo u konzolu



Ovako meni radi i zoranova i moja vidi pod onplayertext return ako je return 0; ti stavi return 1;

ahh neznam, evo ti moj cijeli OnPlayerText
nesto od toga radi nesto ne, chat log ne radi, Spam Kick ne radi, caps lock radi i mute radi, nego da pitam, koristim ZCMD, jel on mozda ima drugi public kao sto koristi OnPlayerCommandPreformed tako i ovo?
Kod: c
public OnPlayerText(playerid, text[])
{
	for(new i=0; i<MAX_WORDS; i++)
	{
	    if(IsPlayerConnected(i))
	    {
		    while (text[++i])
		    {
		        if ('A' <= text[i] <= 'Z') text[i] |= 0x20;
			}
		}
	}
	{
	if(PlayerMuted[playerid] == 1)
	{
	SendClientMessage(playerid, COLOR_YELLOW, "Nemozete pricati, usutkani ste!");
	return 0;
	}
	}
	/*if(IsChatOnOrOff == 0)
	{
	        SendClientMessage(playerid, COLOR_YELLOW, "Chat je ugaÅ¡en!");
	        return 0;
	}*/
    {
    if((strlen(text) < 3) || (text[0] == '/') || (text[0] == '#') || (text[0] == '!')) return 1;
	{
	new offset;
	new len;
 	for(new i=0; i<MAX_WORDS; i++)
	{
		offset = strfind(text, swear[i], true);
		if(offset > -1)
		{
			len = strlen(swear[i]);
			if(len < 3) break;
			for(new y=0; y<len; y++)
			{
				text[offset+y] = '*';
			}
			swearCount[playerid]++;
			new string[64];
			format(string, sizeof(string), "Zabranjeno je psovati i vrijeÄ'ati, upozorenje %d/%d", swearCount[playerid], MAX_SWEARCOUNT);
			SendClientMessage(playerid, COLOR_KRED, string);
   			if(swearCount[playerid] >= MAX_SWEARCOUNT)
			{
			    new name[24];
			    GetPlayerName(playerid, name, sizeof(name));
			    format(string, sizeof(string), "iStunt: Server je izbacio %s zbog psovanja i vrijeÄ'anja!", name);
			    SendClientMessageToAll(COLOR_KRED, string);
	   			TogglePlayerControllable(playerid, 0);
			    Kick(playerid);
			    break;
			}
			break;
		}
	}
	}
	}
	{
    new TCount, name[24], string[100];

    TCount = GetPVarInt(playerid, "TextSpamCount");

    TCount++;

    SetPVarInt(playerid, "TextSpamCount", TCount);

    if(TCount == 2)
	{
        SendClientMessage(playerid, COLOR_KRED, "JoÅ¡ jedna poruka i biti ćete izbačeni!");
    }
    else if(TCount == 3)
	{
        GetPlayerName(playerid, name, sizeof(name));
        format(string, sizeof(string), "iStunt: Server je izbacio %s zbog spamanja!", name);
        SendClientMessageToAll(COLOR_KRED, string);
        print(name);
        Kick(playerid);
        TogglePlayerControllable(playerid, 0);
    }

    SetTimerEx("ResetCount", SpamLimit, false, "i", playerid);
    }
    SetPlayerChatBubble(playerid, text, 0xFF0000FF, 100.0, 5000);
    ChatLog(playerid, text);
    return 1;
}

Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

Dude

*

zerocoolos

jel tebi uopce dodje komanda do ChatLog u onplayertext? stavi prije ChatLog linije ovo: printf("prije chat loga");
pogledaj zatim u konzolu jel ti printa to pod navodnicima kad upises neki tekst...

evo ja stavio ovo prije ChatLog u OnPlayerText
printf("%s: %s", playerid, text);

i nema ga u konzoli, mislim, samo kad pise onda bude [chat] [System32]: a (a je ono sto sam kucao)
Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

Kod: c
public OnPlayerText(playerid, text[])  
{  
   for(new i=0; i<MAX_WORDS; i++)  
   {  
       if(IsPlayerConnected(i))  
       {  
          while (text[++i])  
          {  
              if ('A' <= text<i> <= 'Z') text<i> |= 0x20;  
         }  
      }  
   }  
   ChatLog(playerid, text);   
   /*if(IsChatOnOrOff == 0) 
   { 
           SendClientMessage(playerid, COLOR_YELLOW, "Chat je ugaÅ¡en!"); 
           return 0; 
   }*/  
    {  
    if((strlen(text) < 3) || (text[0] == '/') || (text[0] == '#') || (text[0] == '!')) return 1;  
   {  
   new offset;  
   new len;  
    for(new i=0; i<MAX_WORDS; i++)  
   {  
      offset = strfind(text, swear<i>, true);  
      if(offset > -1)  
      {  
         len = strlen(swear<i>);  
         if(len < 3) break;  
         for(new y=0; y<len; y++)  
         {  
            text[offset+y] = '*';  
         }  
         swearCount[playerid]++;  
         new string[64];  
         format(string, sizeof(string), "Zabranjeno je psovati i vrijeÄ'ati, upozorenje %d/%d", swearCount[playerid], MAX_SWEARCOUNT);  
         SendClientMessage(playerid, COLOR_KRED, string);  
            if(swearCount[playerid] >= MAX_SWEARCOUNT)  
         {  
             new name[24];  
             GetPlayerName(playerid, name, sizeof(name));  
             format(string, sizeof(string), "iStunt: Server je izbacio %s zbog psovanja i vrijeÄ'anja!", name);  
             SendClientMessageToAll(COLOR_KRED, string);  
               TogglePlayerControllable(playerid, 0);  
             Kick(playerid);  
             break;  
         }  
         break;  
      }  
   }  
   }  
   }  
   {  
    new TCount, name[24], string[100];  
  
    TCount = GetPVarInt(playerid, "TextSpamCount");  
  
    TCount++;  
  
    SetPVarInt(playerid, "TextSpamCount", TCount);  
  
    if(TCount == 2)  
   {  
        SendClientMessage(playerid, COLOR_KRED, "JoÅ¡ jedna poruka i biti ćete izbačeni!");  
    }  
    else if(TCount == 3)  
   {  
        GetPlayerName(playerid, name, sizeof(name));  
        format(string, sizeof(string), "iStunt: Server je izbacio %s zbog spamanja!", name);  
        SendClientMessageToAll(COLOR_KRED, string);  
        print(name);  
        Kick(playerid);  
        TogglePlayerControllable(playerid, 0);  
    }  
  
    SetTimerEx("ResetCount", SpamLimit, false, "i", playerid);  
    }  
    SetPlayerChatBubble(playerid, text, 0xFF0000FF, 100.0, 5000);  
   if(PlayerMuted[playerid] == 1)  
   {  
   SendClientMessage(playerid, COLOR_YELLOW, "Nemozete pricati, usutkani ste!");  
   return 0;  
   }  
   }
    return 1;  
}

nekuzim sat fali??
Kod: c
D:\Private\Server\gamemodes\iStunt.pwn(920) : error 033: array must be indexed (variable "text")
D:\Private\Server\gamemodes\iStunt.pwn(920) : warning 215: expression has no effect
D:\Private\Server\gamemodes\iStunt.pwn(920) : error 001: expected token: ";", but found ")"
D:\Private\Server\gamemodes\iStunt.pwn(920) : error 029: invalid expression, assumed zero
D:\Private\Server\gamemodes\iStunt.pwn(920) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.


linija

if ('A' <= text <= 'Z') text |= 0x20;
>
Poslednja Izmena: Jun 03, 2011, 21:42:09 POSLE PODNE od [AG] System32
Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √