fly

В общем, удалось сделать смену языка, но тут другая проблема появилась. Дело в том, что картинка главного меню никак не хочет меняться в зависимости от выбора языка. И вот в связи с этим есть два варианта: либо искать и думать, как эту самую картинку менять, или же второй вариант - сделать универсальную картинку без признаков языка. Но тогда на титульнике не будет названия игры, а будет только меню "Начать загрузить выйти настройки". И вот я думаю, может, правда, проще переделать картинку для меню, чем тыкаться дальше неизвестно сколько времени с этой проблемой...

 

У меня сделано так, что сначала выбирается язык на метке 

  label splashscreen: то есть перед началом игры

$ result = renpy.imagemap("1.jpg", "2.jpg", [
(0, 0, 480, 160, "Rus"),     
(0, 160, 480, 320, "Eng"),
])

if result == "Rus":
$ England = False
jump lang
elif result == "Eng":
$ England = True          
jump lang


Затем идет перевод меню в случае, если оно русское

label lang:   
if England:      
jump nenado
$ config.translations = {
"Skip Mode" : u"Режим прокрутки",
"Empty Slot." : u"Здесь пусто!",
"Yes" : u"Да",
"No" : u"Нет",
"Are you sure you want to quit?" : u"Точно хочешь выйти?",
"Quit" : u"Выход",
"Main Menu" : u"В главное меню",
"Load Game" : u"Загрузить",
"Save Game" : u"Сохранить",
"Preferencest" : u"Настройки",
# etc.
}
label nenado:
return

Затем мы, собственно, и попадаем в инит, где это меню появляется.Меню будет печататься на английском, если английская версия, а если русская, то на русском.  Однако, тут есть проблемка - сама картинка на титульном экране имеет название игры, различное для русской и английской версии, то есть две разные картинки. Как сделать, чтобы картинка тоже загружалась разная в зависимости от языка?

В опциях как картинку в меню менять нашла

 
## The background of the main menu. This can be a color
## beginning with '#', or an image filename. The latter
## should take up the full height and width of the screen.

mm_root = "beginE.jpg",


Но там никакие ифы не помогают, а в других местах движок ругается на эту операцию. Вот..как-то так.

Комментарии  
В общем, вылезла бага, но разобрались, чтоб работало, нужно переименовать переменную England в persistent.england
Проблема решена:

screen main_menu:

# This ensures that any other menu screen is replaced.
tag menu

# The background of the main menu.
window:
style "mm_root"
if England:
add "beginE.jpg"
else:
add "begin.jpg"

Большое спасибо Алексу!
Знаешь, странно, но похоже, что нет. Выбор языка идет в блоке, который вызывается позже, чем объявляется картинка для меню.
А нельзя ли написать mm_root=somestringvariable, а выше её определить в зависимости от языка?

сайт друга Светлая зона и Академия РПГ Мейкера Коленка Chrono Series iFiction DK Plugins Дневник нэко PDP-11 Новая Реальность Топ Разработки игр