1. sayfa (Toplam 1 sayfa)

ClorChat.inc hatası

Gönderilme zamanı: Cum Şub 03, 2017 2:43 pm
gönderen ulyoS

Kod: Tümünü seç

/home/araclar/compiler/include/colorchat.inc(31) : error 021: symbol already defined: "client_print_color"
/home/araclar/compiler/include/colorchat.inc(34) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(36) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(39) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(45) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(49) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(56) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(58) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(62) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(67) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(70) : error 021: symbol already defined: "get_user_team"
/home/araclar/compiler/include/colorchat.inc(74) : error 021: symbol already defined: "id"
/home/araclar/compiler/include/colorchat.inc(74) : warning 218: old style prototypes used with optional semicolumns
/home/araclar/compiler/include/colorchat.inc(77) : error 021: symbol already defined: "id"
/home/araclar/compiler/include/colorchat.inc(77) : warning 218: old style prototypes used with optional semicolumns
/home/araclar/compiler/include/colorchat.inc(80) : error 021: symbol already defined: "id"
/home/araclar/compiler/include/colorchat.inc(80) : warning 218: old style prototypes used with optional semicolumns
/home/araclar/compiler/include/colorchat.inc(81) : error 054: unmatched closing brace
/home/araclar/compiler/include/colorchat.inc(82) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(84) : warning 218: old style prototypes used with optional semicolumns
/home/araclar/compiler/include/colorchat.inc(85) : error 054: unmatched closing brace
/home/araclar/compiler/include/colorchat.inc(89) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(95) : error 021: symbol already defined: "get_players"
/home/araclar/compiler/include/colorchat.inc(96) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(98) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(105) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(107) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(110) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(114) : error 010: invalid function or declaration
/home/araclar/compiler/include/colorchat.inc(115) : error 010: invalid function or declaration
Hata bu arkadaşlar clorchat.inc lazım ama bunu bulamadım hiçbir yerde forumda baktım atan olmuşta yükledim yine aynı hata verdi bunu nasıl düzeltebilirim güncel clorchat.inc verebilecek "YİĞİT" varmı :D

ClorChat.inc hatası

Gönderilme zamanı: Cum Şub 03, 2017 2:45 pm
gönderen caddegarge

Kod: Tümünü seç

#if defined _colorchat_included
  #endinput
#endif
#define _colorchat_included

enum Color
{
	NORMAL = 1, // clients scr_concolor cvar color
	GREEN, // Green Color
	TEAM_COLOR, // Red, grey, blue
	GREY, // grey
	RED, // Red
	BLUE, // Blue
}

new TeamName[][] = 
{
	"",
	"TERRORIST",
	"CT",
	"SPECTATOR"
}

ColorChat(id, Color:type, const msg[], {Float,Sql,Result,_}:...)
{
	if( !get_playersnum() ) return;
	
	new message[256];

	switch(type)
	{
		case NORMAL: // clients scr_concolor cvar color
		{
			message[0] = 0x01;
		}
		case GREEN: // Green
		{
			message[0] = 0x04;
		}
		default: // White, Red, Blue
		{
			message[0] = 0x03;
		}
	}

	vformat(message[1], 251, msg, 4);

	// Make sure message is not longer than 192 character. Will crash the server.
	message[192] = '^0';

	new team, ColorChange, index, MSG_Type;
	
	if(id)
	{
		MSG_Type = MSG_ONE;
		index = id;
	} else {
		index = FindPlayer();
		MSG_Type = MSG_ALL;
	}
	
	team = get_user_team(index);
	ColorChange = ColorSelection(index, MSG_Type, type);

	ShowColorMessage(index, MSG_Type, message);
		
	if(ColorChange)
	{
		Team_Info(index, MSG_Type, TeamName[team]);
	}
}

ShowColorMessage(id, type, message[])
{
	static bool:saytext_used;
	static get_user_msgid_saytext;
	if(!saytext_used)
	{
		get_user_msgid_saytext = get_user_msgid("SayText");
		saytext_used = true;
	}
	message_begin(type, get_user_msgid_saytext, _, id);
	write_byte(id)		
	write_string(message);
	message_end();	
}

Team_Info(id, type, team[])
{
	static bool:teaminfo_used;
	static get_user_msgid_teaminfo;
	if(!teaminfo_used)
	{
		get_user_msgid_teaminfo = get_user_msgid("TeamInfo");
		teaminfo_used = true;
	}
	message_begin(type, get_user_msgid_teaminfo, _, id);
	write_byte(id);
	write_string(team);
	message_end();

	return 1;
}

ColorSelection(index, type, Color:Type)
{
	switch(Type)
	{
		case RED:
		{
			return Team_Info(index, type, TeamName[1]);
		}
		case BLUE:
		{
			return Team_Info(index, type, TeamName[2]);
		}
		case GREY:
		{
			return Team_Info(index, type, TeamName[0]);
		}
	}

	return 0;
}

FindPlayer()
{
	new i = -1;

	while(i <= get_maxplayers())
	{
		if(is_user_connected(++i))
			return i;
	}

	return -1;
}

Kod: Tümünü seç

#if defined _colorchat_included
  #endinput
#endif
#define _colorchat_included

/* ColorChat Support */
#define NORMAL DontChange
#define GREEN DontChange
#define TEAM_COLOR DontChange
#define RED Red
#define BLUE Blue
#define GREY Grey
#define ColorChat client_print_color
/* ColorChat Support */

enum _:Colors {
	DontChange,
	Red,
	Blue,
	Grey
}

stock const g_szTeamName[Colors][] = 
{
	"UNASSIGNED",
	"TERRORIST",
	"CT",
	"SPECTATOR"
}

stock client_print_color(id, iColor=DontChange, const szMsg[], any:...)
{
	// check if id is different from 0
	if( id && !is_user_connected(id) )
	{
		return 0;
	}

	if( iColor > Grey )
	{
		iColor = DontChange;
	}

	new szMessage[192];
	if( iColor == DontChange )
	{
		szMessage[0] = 0x04;
	}
	else
	{
		szMessage[0] = 0x03;
	}

	new iParams = numargs();
	// Specific player code
	if(id)
	{
		if( iParams == 3 )
		{
			copy(szMessage[1], charsmax(szMessage)-1, szMsg);
		}
		else
		{
			vformat(szMessage[1], charsmax(szMessage)-1, szMsg, 4);
		}

		if( iColor )
		{
			new szTeam[11]; // store current team so we can restore it
			get_user_team(id, szTeam, charsmax(szTeam));

			// set id TeamInfo in consequence
			// so SayText msg gonna show the right color
			Send_TeamInfo(id, id, g_szTeamName[iColor]);

			// Send the message
			Send_SayText(id, id, szMessage);

			// restore TeamInfo
			Send_TeamInfo(id, id, szTeam);
		}
		else
		{
			Send_SayText(id, id, szMessage);
		}
	} 

	// Send message to all players
	else
	{
		// Figure out if at least 1 player is connected
		// so we don't send useless message if not
		// and we gonna use that player as team reference (aka SayText message sender) for color change
		new iPlayers[32], iNum;
		get_players(iPlayers, iNum, "ch");
		if( !iNum )
		{
			return 0;
		}

		new iFool = iPlayers[0];

		new iMlNumber, i, j;
		new Array:aStoreML = ArrayCreate();
		if( iParams >= 5 ) // ML can be used
		{
			for(j=4; j<iParams; j++)
			{
				// retrieve original param value and check if it's LANG_PLAYER value
				if( getarg(j) == LANG_PLAYER )
				{
					i=0;
					// as LANG_PLAYER == -1, check if next parm string is a registered language translation
					while( ( szMessage[ i ] = getarg( j + 1, i++ ) ) ) {}
					if( GetLangTransKey(szMessage) != TransKey_Bad )
					{
						// Store that arg as LANG_PLAYER so we can alter it later
						ArrayPushCell(aStoreML, j++);

						// Update ML array saire so we'll know 1st if ML is used,
						// 2nd how many args we have to alterate
						iMlNumber++;
					}
				}
			}
		}

		// If arraysize == 0, ML is not used
		// we can only send 1 MSG_BROADCAST message
		if( !iMlNumber )
		{
			if( iParams == 3 )
			{
				copy(szMessage[1], charsmax(szMessage)-1, szMsg);
			}
			else
			{
				vformat(szMessage[1], charsmax(szMessage)-1, szMsg, 4);
			}

			if( iColor )
			{
				new szTeam[11];
				get_user_team(iFool, szTeam, charsmax(szTeam));
				Send_TeamInfo(0, iFool, g_szTeamName[iColor]);
				Send_SayText(0, iFool, szMessage);
				Send_TeamInfo(0, iFool, szTeam);
			}
			else
			{
				Send_SayText(0, iFool, szMessage);
			}
		}

		// ML is used, we need to loop through all players,
		// format text and send a MSG_ONE_UNRELIABLE SayText message
		else
		{
			new szTeam[11], szFakeTeam[10];
			
			if( iColor )
			{
				get_user_team(iFool, szTeam, charsmax(szTeam));
				copy(szFakeTeam, charsmax(szFakeTeam), g_szTeamName[iColor]);
			}

			for( i = 0; i < iNum; i++ )
			{
				id = iPlayers[i];

				for(j=0; j<iMlNumber; j++)
				{
					// Set all LANG_PLAYER args to player index ( = id )
					// so we can format the text for that specific player
					setarg(ArrayGetCell(aStoreML, j), _, id);
				}

				// format string for specific player
				vformat(szMessage[1], charsmax(szMessage)-1, szMsg, 4);

				if( iColor )
				{
					Send_TeamInfo(id, iFool, szFakeTeam);
					Send_SayText(id, iFool, szMessage);
					Send_TeamInfo(id, iFool, szTeam);
				}
				else
				{
					Send_SayText(id, iFool, szMessage);
				}
			}
			ArrayDestroy(aStoreML);
		}
	}
	return 1;
}

stock Send_TeamInfo(iReceiver, iPlayerId, szTeam[])
{
	static iTeamInfo = 0;
	if( !iTeamInfo )
	{
		iTeamInfo = get_user_msgid("TeamInfo");
	}
	message_begin(iReceiver ? MSG_ONE_UNRELIABLE : MSG_BROADCAST, iTeamInfo, .player=iReceiver);
	write_byte(iPlayerId);
	write_string(szTeam);
	message_end();
}

stock Send_SayText(iReceiver, iPlayerId, szMessage[])
{
	static iSayText = 0;
	if( !iSayText )
	{
		iSayText = get_user_msgid("SayText");
	}
	message_begin(iReceiver ? MSG_ONE_UNRELIABLE : MSG_BROADCAST, iSayText, .player=iReceiver);
	write_byte(iPlayerId);
	write_string(szMessage);
	message_end();
}

stock register_dictionary_colored(const filename[])
{
	if( !register_dictionary(filename) )
	{
		return 0;
	}

	new szFileName[256];
	get_localinfo("amxx_datadir", szFileName, charsmax(szFileName));
	format(szFileName, charsmax(szFileName), "%s/lang/%s", szFileName, filename);
	new fp = fopen(szFileName, "rt");
	if( !fp )
	{
		log_amx("Failed to open %s", szFileName);
		return 0;
	}

	new szBuffer[512], szLang[3], szKey[64], szTranslation[256], TransKey:iKey;

	while( !feof(fp) )
	{
		fgets(fp, szBuffer, charsmax(szBuffer));
		trim(szBuffer);

		if( szBuffer[0] == '[' )
		{
			strtok(szBuffer[1], szLang, charsmax(szLang), szBuffer, 1, ']');
		}
		else if( szBuffer[0] )
		{
			strbreak(szBuffer, szKey, charsmax(szKey), szTranslation, charsmax(szTranslation));
			iKey = GetLangTransKey(szKey);
			if( iKey != TransKey_Bad )
			{
				while( replace(szTranslation, charsmax(szTranslation), "!g", "^4") ){}
				while( replace(szTranslation, charsmax(szTranslation), "!t", "^3") ){}
				while( replace(szTranslation, charsmax(szTranslation), "!n", "^1") ){}
				AddTranslation(szLang, iKey, szTranslation[2]);
			}
		}
	}
	
	fclose(fp);
	return 1;
}
Üsttekini yani 1.'yi kullanabilirsin 2. ise daha geniş kapsamlı bir colorchat :)

ClorChat.inc hatası

Gönderilme zamanı: Cum Şub 03, 2017 2:46 pm
gönderen ulyoS
nasıl yapayım ben pluginleri not defteri ile açıp düzeltiyorumda oraya farklı kaydetten clorchat.inc olarakmı kaydediyim? yoksa clorchat.sma olarakmı

ClorChat.inc hatası

Gönderilme zamanı: Cum Şub 03, 2017 2:48 pm
gönderen caddegarge
1. Not defterine tüm kodları yapıştırın, farklı kaydetten dosyanın ismini colorchat.inc yapıp kayıt türünden tüm dosyaları seçin panelinize yükleyin.

ClorChat.inc hatası

Gönderilme zamanı: Cum Şub 03, 2017 2:50 pm
gönderen ulyoS
Teşekkürler

ClorChat.inc hatası

Gönderilme zamanı: Cum Şub 03, 2017 3:29 pm
gönderen TunnS[C]
Yapamdıysan al :D

ClorChat.inc hatası

Gönderilme zamanı: Cum Şub 03, 2017 3:56 pm
gönderen ulyoS
yaptım aga :D AmelClan'ın Serverini Yapıyordumda Clorchat sıkıntısı vardı :D