Мож, кому нужно будет.
Это добавляет поддержку цветов в файлы перевода:
stock void CPrintToChatColor(int client, const char[] format, any ...)
{
char buffer[192];
SetGlobalTransTarget(client);
VFormat(buffer, sizeof(buffer), format, 3);
ReplaceColor(buffer, sizeof(buffer));
PrintToChat(client, "\x01%s", buffer);
}
stock void CPrintToChatAllColor(const char[] format, any ...)
{
char buffer[192];
for( int i = 1; i <= MaxClients; i++ )
{
if( IsClientInGame(i) && !IsFakeClient(i) )
{
SetGlobalTransTarget(i);
VFormat(buffer, sizeof(buffer), format, 2);
ReplaceColor(buffer, sizeof(buffer));
PrintToChat(i, "\x01%s", buffer);
}
}
}
void ReplaceColor(char[] message, int maxLen)
{
ReplaceString(message, maxLen, "{white}", "\x01", false);
ReplaceString(message, maxLen, "{cyan}", "\x03", false);
ReplaceString(message, maxLen, "{orange}", "\x04", false);
ReplaceString(message, maxLen, "{green}", "\x05", false);
}
В исходнике нужно сделать автозамену:
PrintToChat на CPrintToChatColor
PrintToChatAll на CPrintToChatAllColor
Пример использования:
// {white} - белый
// {cyan} - голубой
// {orange} - оранжевый
// {green} - зелёный
"Phrases"
{
"word"
{
"ru" "{green}Зелёный {white}Белый {cyan}Голубой {orange}Оранжевый"
"en" "{green}green {white}white {cyan}cyan {orange}orange"
}
}