Перейти к содержанию

Оповещение о подключении игрока для L4D2


Перейти к решению Решено Shadow,

Рекомендуемые сообщения

2 часа назад, Ryancoolround сказал:

Ну и славно что все так быстро решилось, удалю напоминание у себя на телефоне тогда. А @BLOODY BLADE, он очень редко заходит, но заходит, когда придет обязательно поправит свой плагин, я уверен.

было бы не плохо, если бы ты добавил языковый файл,что бы не только на русском было

Ссылка на комментарий
Поделиться на другие сайты

  • Ответов 60
  • Создана
  • Последний ответ

Топ авторов темы

  • Администратор
20.12.2020 в 11:36, Shadow сказал:

было бы не плохо, если бы ты добавил языковый файл,что бы не только на русском было

Я сейчас попробовал, у меня получилось подключить файл перевода. Спасибо, научился благодаря тебе еще кое чему.

Но есть одно но, когда я делаю перевод, как я понял теряется формат. То есть строчки которые будут браться из файла перевода, будут идти обычным текстом, не цветным.

«Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон

Ссылка на комментарий
Поделиться на другие сайты

37 минут назад, Ryancoolround сказал:

Я сейчас попробовал, у меня получилось подключить файл перевода. Спасибо, научился благодаря тебе еще кое чему.

Но есть одно но, когда я делаю перевод, как я понял теряется формат. То есть строчки которые будут браться из файла перевода, будут идти обычным текстом, не цветным.

Это решаемо
В переводах прописывают так 

 

"Phrases"
{
	"Campaign finished"
	{
		"#format"		"{1:s}"
		"en"			"Campaign {1} finished"
	}
	"Switching campaign to"
	{
		"#format"		"{1:s}"
		"en"			"Switching campaign to {1}."
	}
	"Switching map to"
	{
		"#format"		"{1:s}"
		"en"			"Switching map to {1}."
	}	
	"The next map is currently"
	{
		"#format"		"{1:s}"
		"en"			"The next map is currently: {1}."
	}
	"The next campaign is currently"
	{
		"#format"		"{1:s}"
		"en"			"The next campaign is currently: {1}."
	}
}

а в плагине так если я правильно понял 

	ACS_GetLocalizedMissionName(g_iGameMode, cycleIndex, client, localizedName, sizeof(localizedName));
					Format(colorizedname, sizeof(colorizedname), "\x04%s\x05", localizedName);
					PrintToChat(client, "\x03[ACS]\x05 %t", "Campaign finished", colorizedname);

 

Ссылка на комментарий
Поделиться на другие сайты

  • Администратор
4 минуты назад, Shadow сказал:

{
    "Campaign finished"
    {
        "#format"        "{1:s}"
        "en"            "Campaign {1} finished"
    }
    "Switching campaign to"
    {
        "#format"        "{1:s}"
        "en"            "Switching campaign to {1}."
    }
    "Switching map to"
    {
        "#format"        "{1:s}"
        "en"            "Switching map to {1}."
    }    
    "The next map is currently"
    {
        "#format"        "{1:s}"
        "en"            "The next map is currently: {1}."
    }
    "The next campaign is currently"
    {
        "#format"        "{1:s}"
        "en"            "The next campaign is currently: {1}."
    }
}

Да с форматами я кое как разобрался. Я имею ввиду цвета сообщений. Что бы строчка отображалась разными цветами, как в плагине, ее код в плагине выглядит так:

PrintToChatAll("\x03* \x04[!!!]\x01: \x05SteamID\x01: \x04[%s]\x03*", authid);

А в файле перевода она будет выглядеть проще:

"Phrases"
{
	"nikname"
	{
		"#format"	"{1:s}"
		"en"		"[L4D2Noob]: Player {1} is with us!"
		"ru"		"[L4D2Noob]: Игрок {1} с нами!"
	}
}

И из за этого "Проще", сообщение будет идти обычным текстом, не цветным.

«Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон

Ссылка на комментарий
Поделиться на другие сайты

8 минут назад, Ryancoolround сказал:

Да с форматами я кое как разобрался. Я имею ввиду цвета сообщений. Что бы строчка отображалась разными цветами, как в плагине, ее код в плагине выглядит так:


PrintToChatAll("\x03* \x04[!!!]\x01: \x05SteamID\x01: \x04[%s]\x03*", authid);

А в файле перевода она будет выглядеть проще:


"Phrases"
{
	"nikname"
	{
		"#format"	"{1:s}"
		"en"		"[L4D2Noob]: Player {1} is with us!"
		"ru"		"[L4D2Noob]: Игрок {1} с нами!"
	}
}

И из за этого "Проще", сообщение будет идти обычным текстом, не цветным.

а если так 
 

PrintToChat(client, "\x03[ACS]\x05 %t", "Player {1} is with us", colorizedname);

 

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Shadow сказал:

а если так 
 


PrintToChat(client, "\x03[!!!]\x05 %t", "Player is with us", colorizedname);

 

а в языковом файле пропиши так
 

"Phrases"
{
	"Player is with us"
	{
		"#format"	"{1:s}"
		"en"		"[L4D2Noob]: Player {1} is with us!"
		"ru"		"[L4D2Noob]: Игрок {1} с нами!"
	}
}

если ты там правильно все сделал то этот код должен сработать 

Ссылка на комментарий
Поделиться на другие сайты

  • Администратор
20.12.2020 в 11:36, Shadow сказал:

было бы не плохо, если бы ты добавил языковый файл,что бы не только на русском было

Сделал новую версию. Пока так.

Скрытый текст

 

20201221173026_1.jpg

20201221173104_1.jpg

 

Для Яндекса: В новой версии реализована мультиязычность через файл Connect_Announce.phrases.

Connect_Announce.rar

«Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон

Ссылка на комментарий
Поделиться на другие сайты

18 часов назад, Ryancoolround сказал:

Сделал новую версию. Пока так.

  Показать содержимое

 

20201221173026_1.jpg

20201221173104_1.jpg

 

Для Яндекса: В новой версии реализована мультиязычность через файл Connect_Announce.phrases.

Connect_Announce.rar 5 \u041a\u0431 · 1 скачивание

Да пофиг и так сойдёт 

Ссылка на комментарий
Поделиться на другие сайты

Если прописать так то цвет меняется, но вот только надпись, локация и страна будут одним цветом...
 

PrintToChatAll("\x03*********************************");
		PrintToChatAll("\x03* \x04[L4D2]\x01: %t", "nikname", name);
		PrintToChatAll("\x03* \x04[L4D2]\x01: \x05SteamID\x01: \x04[%s]", authid);
		PrintToChatAll("\x03* \x04[L4D2]\x01: \x03%t", "Country",       \x03*", Country);
		PrintToChatAll("\x03**********************************");

 

Ссылка на комментарий
Поделиться на другие сайты

  • Администратор
31 минуту назад, Shadow сказал:

Если прописать так то цвет меняется, но вот только надпись, локация и страна будут одним цветом...
 


PrintToChatAll("\x03*********************************");
		PrintToChatAll("\x03* \x04[L4D2]\x01: %t", "nikname", name);
		PrintToChatAll("\x03* \x04[L4D2]\x01: \x05SteamID\x01: \x04[%s]", authid);
		PrintToChatAll("\x03* \x04[L4D2]\x01: \x03%t", "Country",       \x03*", Country);
		PrintToChatAll("\x03**********************************");

 

Тебе не надо дожидаться меня что бы я проверил. Наоборот, будет даже полезнее, если сам протестируешь. Потому что, я до создания этого форума вообще, сам ничего не понимал в этом, а сейчас скажем так уже базовый уровень есть. Но я обязательно попробую, только чуть позже.

«Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон

Ссылка на комментарий
Поделиться на другие сайты

14 часов назад, Ryancoolround сказал:

Тебе не надо дожидаться меня что бы я проверил. Наоборот, будет даже полезнее, если сам протестируешь. Потому что, я до создания этого форума вообще, сам ничего не понимал в этом, а сейчас скажем так уже базовый уровень есть. Но я обязательно попробую, только чуть позже.

Я и не дожидаюсь тебя,а поделился тем что выяснил.
Ты посмотрел то что  тебе кидал?

Ссылка на комментарий
Поделиться на другие сайты

  • Администратор
31 минуту назад, Shadow сказал:

Ты посмотрел то что  тебе кидал?

Как же посмотрел... Я встаю в 7:30, что бы выехать на работу. Приезжаю на работу к десяти утра, работаю до 22:00, после чего еду домой два часа. Приезжаю если повезет, где то без 15 12, полностью морально убитый. И так до 31 декабря...

Так что, будет время все посмотрю. А пока сам. Спасибо за терпение.

«Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон

Ссылка на комментарий
Поделиться на другие сайты

Только что, Ryancoolround сказал:

Как же посмотрел... Я встаю в 7:30, что бы выехать на работу. Приезжаю на работу к десяти утра, работаю до 22:00, после чего еду домой два часа. Приезжаю если повезет, где то без 15 12, полностью морально убитый. И так до 31 декабря...

Так что, будет время все посмотрю. А пока сам. Спасибо за терпение.

ну ты сам сказал то посмотришь сегодня,я по этому и спросил 

Ссылка на комментарий
Поделиться на другие сайты

  • Администратор
PrintToChatAll("\x03*********************************");
		PrintToChatAll("\x03* \x04[L4D2]\x01: %t", "nikname", name);
		PrintToChatAll("\x03* \x04[L4D2]\x01: \x05SteamID\x01: \x04[%s]", authid);
		PrintToChatAll("\x03* \x04[L4D2]\x01: \x03%t", "Country",       \x03*", Country);
		PrintToChatAll("\x03**********************************");

Если прописать именно так, то плагин не скомпилируется. Он выдаст две ошибки:

// D:\Sourcemod\addons\sourcemod\scripting\Connect_Announce.sp(53) : error 029: invalid expression, assumed zero
// D:\Sourcemod\addons\sourcemod\scripting\Connect_Announce.sp(53) : error 017: undefined symbol "x03"

 

«Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон

Ссылка на комментарий
Поделиться на другие сайты

  • Администратор

Отличается от предыдущей версии только тем, что я изменил тег L4D2Noob на IP-G. Просто привычка такая исходники выкладывать.

 

Connect_Announce.rar

«Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...