Вопрос

Как использовать localize в скриптах я понял, а как его использовать, например, в extra_rc.hpp?

Такая конструкция не работает:

	class ItemToolbox {
		class BuildBike {
			text = localize "WSTR_DEPLOY_BIKE";
			script = "execVM 'custom\deploy\deploybike.sqf'";
			};

Скриншот: https://yadi.sk/i/x6oPw4Gsrx5DH

 

Сам stringtable.xml естессно присутствует.

		<Key ID="WSTR_DEPLOY_BIKE">
			<Original>Deploy a bike</Original>
			<English>Deploy a bike</English>
			<Russian>Собрать велосипед</Russian>
		</Key>	

 

Изменено пользователем W0LF (история изменений)

Поделиться сообщением


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

15 ответов на этот вопрос

Забронировать это рекламное место


Пример stringtable.xml:

<Key ID="STR_sexyful_korobka">
     <English>You're in luck, flare in your inventory, the box is removed</English>
     <Russian>Вам повезло, фальшфейер у вас в инвентаре, коробка удалена</Russian>
</Key>
Пример extra_rc.hpp:
class ItemSigareti {        
     class Sigareta_1 {
          text = $STR_Sigareta_1_extra_rc;
          script = "execVM 'Sigareta_1.sqf'";
     };
};
Убедись что в блоке ui_selectSlot.sqf связанным с extra_rc данные строки кода имеют такой вид:
_text = getText (_config >> "text");
_menu ctrlSetText _text;
Изменено пользователем hekut144 (история изменений)

Поделиться сообщением


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

Ты производишь локализацию именно extra_rc или click_actions (у click_actions другой подход к этому делу), пример:

[
     "ItemSodaRabbit",
     (localize "STR_Drink_beer_click_actions"),
     "execVM 'scripts\drinkbeer.sqf';",
     "true"  
],

Не подключено ли 22 файла ui_selectSlot.sqf (когда последний только исп. а ты редактируешь 1-ый), верно ли в ui_selectSlot.sqf (блок DZE_CLICK_ACTIONS):

_text = _x select 1;
_menu ctrlSetText _text

Или другая постановка вопроса, у тебя верно вообще считывается перевод из файла? попробуй вывести в чат, пример:

systemChat (localize "STR_Drink_beer_click_actions");

А у тебя вообще верно создан stringtable.xml, в нем есть такого рода код? в корне ли миссии\аддона лежит файл?

<?xml version="1.0" encoding="utf-8"?>
<Project name="HaPoDHa9I_CoJI9IHKa">
    <Package name="HaPoDHa9I_CoJI9IHKa">
        <Key ID="STR_Drink_beer_click_actions">
            <English>Drink beer</English>
            <Russian>Выпить пива</Russian>
        </Key>
    </Package>
</Project>

Если ты все таки пытаешься с extra_rc то попробуй не знаю в скобке оберни, я помню тоже когда локализацией мода своего занимался, ступарился с extra_rc, пример (вроде ка как раз так работать не должно, верно как я указал в после выше, но попробуй):

class ItemJgut {
     class ItemJgut {
          text = (localize "STR_Ostanovit_krov_extra_rc");
          script = "closeDialog 0;execVM 'medical\ItemJgut.sqf'";
     };
};
Изменено пользователем hekut144 (история изменений)

Поделиться сообщением


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

Не, я понял в чём дело.

ID "$WSTR_DEPLOY_BIKE" почему-то не воспринимается, но, если убрать первую "W" (т.е. "$STR_DEPLOY_BIKE"), то всё работает. Только не понимаю почему, это же всего-лишь, что-то вроде имени переменной, а не её тип...

Поделиться сообщением


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

Не думаю что в этом проблема, т.к. я когда занимался локализацией (вышло где-то под 16к строк перевода) я пару тройку раз ошибался и забывал добавлять STR в ид транслейта, вообщем все прекрасно работало, не понимаю только на кой ты черт суешь символ доллара в ид локализаци... там кстати если воткнуть какие нибудь символы в перевод, каюкнится вся часть файла перевода после твоего символа левого...

Изменено пользователем hekut144 (история изменений)

Поделиться сообщением


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

Это я знаю, я тебе про твой пост говорю ID "$WSTR_DEPLOY_BIKE", ид из стрингтейбла

Изменено пользователем hekut144 (история изменений)

Поделиться сообщением


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

Это я знаю, я тебе про твой пост говорю ID "$WSTR_DEPLOY_BIKE", ид из стрингтейбла

$ используется в hpp файлах

Поделиться сообщением


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

(facepalm), а еще земля круглая, у него в посте так написано, ему и говорю что в стринге символ $ зачем сдался, он мне не в кассу в ответ сообщение выдал, что это в конфигах пишется $, зачем тогда твой ID, раз в конфигах, зачем кавычки?

Изменено пользователем hekut144 (история изменений)

Поделиться сообщением


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

Еще можно было в классах просто текст, а при наложение на контрол локализировать

Поделиться сообщением


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

И снова я.

Можно как-то локализовать "message of the day" - motd={"bla-bla"} в config.cfg?

Поделиться сообщением


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

И снова я.

Можно как-то локализовать "message of the day" - motd={"bla-bla"} в config.cfg?

Локалайз там нет вроде.

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

systemChat

Поделиться сообщением


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

Создайте аккаунт или войдите в него для комментирования

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

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

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас