[ Обновленные темы · Новые сообщения · Участники · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Worms 4: Mayhem » 5.2. Вопросы по скриптингу » Чтение строк локализации в переменную
Чтение строк локализации в переменную
firsacho
Админы
Сообщений: 3738
Репутация: 76
Инвентарь: 15
Статус: Offline
Видать я дико туплю, но че то не могу сообразить, как это правильно написать. Скриптеры отзовитесь, что называется)

Короче мне надо получить текстовую строку из language файла локализации в переменную луа скрипта.
По-идее это должно выглядеть как
Код
local myText = GetData("Lang.TestText")

, но в данном случае он воспринимает ссылку не как адрес в файле локализации, а непосредственно текст, то есть в переменной оказывается текст "Lang.TestText", а не содержимое соответсвующей переменной.
При этом обратная функция
Код
SetData("Lang.TestText", "HelloWorld")

работает стабильно и текст в память пишется...





Смысл жизни в том, чтобы жизнь имела смысл... (firsacho 2005)
Рай придуман, чтобы не страшно было умирать. Ад придуман, чтобы не страшно было жить. (firsacho 2007)
Мир делиться на два типа людей: Бездарные трудоголики и Талантливые лентяи. (firsacho 2008)

mod.worms.pro - мод Worms Renewation для Worms4
 
Joker
Проверенные
Сообщений: 191
Репутация: 13
Инвентарь: 3
Статус: Offline
firsacho, пробовал писать Lang.TestText без этих штуковин?

Добавлено (08.03.2016, 22:34)
---------------------------------------------
Да и вообще, ты назначил переменной вот это - local myText
Может, я и ошибаюсь


I've heard of unisex but never had it
 
PROFILE
Модераторы
Сообщений: 1017
Репутация: 107
Инвентарь: 7
Статус: Offline
firsacho, а с другими текстовыми строками (например, названиями оружий) пробовал? Просто мб ссылка вида Lang.TestText не совсем верная и во втором случае воспринимается просто как переменная. Ну или её содержимое действительно "Lang.TestText"

 
PROFILE
Модераторы
Сообщений: 1017
Репутация: 107
Инвентарь: 7
Статус: Offline
Посмотрел, GetData с текстовыми строками из language файлов все-таки работает. Вот пример:
Код
     prev=GetData("Comment.Sdeath.1")
     SetData("Comment.Sdeath.1", "Double damage activated" )
     SetData("CommentaryPanel.Comment", "Comment.Sdeath.1" )
     SendMessage("CommentaryPanel.ScriptText")
     SetData("Comment.Sdeath.1", prev)

Кусок скрипта запоминает значение контейнера Comment.Sdeath.1, потом меняет его на желаемое и выводит на экран, а потом возвращает контейнеру исходное значение.
Скорее всего в твоем примере ссылка на строку неправильная


 
firsacho
Админы
Сообщений: 3738
Репутация: 76
Инвентарь: 15
Статус: Offline
Тьфу ты... я походу допер в чем трабла! Оказывается lua скрипт внутри игры не может обрабатывать текстовые переменные из EngFe.xom - он для меню, обмен идет только с English.xom




Смысл жизни в том, чтобы жизнь имела смысл... (firsacho 2005)
Рай придуман, чтобы не страшно было умирать. Ад придуман, чтобы не страшно было жить. (firsacho 2007)
Мир делиться на два типа людей: Бездарные трудоголики и Талантливые лентяи. (firsacho 2008)

mod.worms.pro - мод Worms Renewation для Worms4
 
Форум » Worms 4: Mayhem » 5.2. Вопросы по скриптингу » Чтение строк локализации в переменную
  • Страница 1 из 1
  • 1
Поиск:
Новый ответ
Имя:
Опции сообщения:
Код безопасности: