fly
Суббота, 02 Марта 2013 21:41

Сложности с главным меню.

Автор
Оцените материал
(0 голосов)

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

 

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

  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",


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

Прочитано 3855 раз Последнее изменение Суббота, 02 Марта 2013 21:51
AnnTenna

Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript

4 комментарии

  • Комментировать Cerberus Воскресенье, 03 Марта 2013 14:53 написал Cerberus

    А нельзя ли написать mm_root=somestringvariable, а выше её определить в зависимости от языка?

    Пожаловаться
  • Комментировать AnnTenna Вторник, 05 Марта 2013 23:49 написал AnnTenna

    Знаешь, странно, но похоже, что нет. Выбор языка идет в блоке, который вызывается позже, чем объявляется картинка для меню.

    Пожаловаться
  • Комментировать AnnTenna Четверг, 07 Марта 2013 00:29 написал AnnTenna

    Проблема решена:

    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"

    Большое спасибо Алексу!

    Пожаловаться
  • Комментировать AnnTenna Пятница, 08 Марта 2013 18:34 написал AnnTenna

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

    Пожаловаться
Авторизуйтесь, чтобы получить возможность оставлять комментарии

Панель входа

Добро пожаловать!

Заходите. Чувствуйте себя как дома.

Мы в контакте

(скорее всего это пойдёт на хостинг)

Опрос о героях сказки.

Какой герой сказки вам больше всего нравится?
 

Это из галереи!

  • heroes_1

Наша игра "Приключения котёнка в городском парке" есть в Стиме бесплатно!

А знаете ли вы...

ste2

сайт другаСветлая зона и Академия РПГ Мейкераkn4kn5Плагины для RPG MakerДневник одной нэкоknНовая Реальность Топ Разработка игр