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

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


ryancoolround
Перейти к решению Решено 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 пользователей онлайн

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

  • Лучшие авторы

    На этой неделе никто репутацию не получал

  • Последние достижения

    • Blacky получил значок
      Подмастерье
    • GAMADA повысил звание
      Lvl 1
    • Darya повысил звание
      Lvl 14
    • Mad.Eagle повысил звание
      Lvl 5
    • Mad.Eagle повысил звание
      Lvl 4
×
×
  • Создать...