Голосование

Как вы оцениваете Смуту?












Оформление



Пользователей
  • Всего: 28869
  • Последний: Adr3naline
Сейчас на форуме
Пользователи: 6
Гостей: 545
Всего: 551

0 Пользователей и 1 Гость просматривают эту тему.

Тема: [MS] Девятая часть. Модульная система, файл game_menus.  (Прочитано 11783 раз)

  • Сообщений: 143
    • Просмотр профиля
   Девятая часть.
  Следующим файлом, требующим нашего внимания, станет module_game_menus.py. Он содержит все игровые меню МиБа. Игровые меню служат для интеракции между игроком и возникающей сценой. Кроме того игровые меню представляют из себя достаточно гибкий инсрумент, способный послужить в самым целям. Внутригровая система переходов также использует игровые меню для реализации своих функций.


9.1 Файл module_game_menus.py.

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

Пример игрового меню :
(прим: У него талант выбирать примеры, которых нет в оригинальной версии МиБа. Этот не исключение)
(прим2: зато есть в Варбанде)

    (
    "salt_mine",mnf_auto_enter,
    "You enter the salt mine.",
    "none",
    [(reset_price_rates,0),(set_price_rate_for_item,"itm_salt",55)],
    [
      ("enter",[],"Enter.",[[set_jump_mission,"mt_visit_town_horseback"],[jump_to_scene,"scn_salt_mine"],[change_screen_mission]]),
      ("leave",[],"Leave.",[[leave_encounter],[change_screen_return]]),
    ]
  ),



Это меню появляется при входе в соляные шахты. Оно очень простое, обладает меткой mnf_auto_enter. Любое меню с такой меткой автоматически активирует первую опцию меню, для всех игровых ситуаций, не ожидая выбора игрока. В случае соляных шахт, этой опцией является  “войти”.


Описание полей записи игрового меню.

1) Идентификатор игрового меню. Используется для ссылки на игровое меню.
2) Метки игрового меню.
3) Текст игрового меню. Это текст, который игрок увидит в игровом меню в кнопке.
4) Идентификатор 3D модели. В настоящий момент не используется, потому в таких полях везде должно стоять значение "none".
5) Блок операций. Блок операций, выполняющихся когда активируется меню.
6) Список опций меню. Каждая опция игрового меню, состоит из следующих элементов:
             6.1) Идентификатор опции меню. Используется для ссылок на опцию игрового меню из других файлов.
             6.2) Блок условий. Условия, оговоривающие когда будет выведенна на экран данная опция игрового меню.
             6.3) Текст игровго меню. Кликабельный текст опций игрового меню. Подстановка подчёркивающей линии ("_") - изящный трюк для того, чтобы сделать кнопку некликабельной.
             6.4) Блок последствий. Блок последствий, активируемый при выборе данной опции игрового меню.


Разбор записи меню соляных шахт.

1) Идентификатор игрового меню = "salt_mine"
2) Метки игрового меню = mnf_auto_enter
2) Текст игрового меню = "You enter the salt mine."
3) Идентификатор 3D модели = "none"
4) Блок операций = (reset_price_rates,0),(set_price_rate_for_item,"itm_salt",55)
5) Список опций меню
             6.1) Идентификатор опции меню = "enter", "leave"
             6.2) Блок условий = нет условий
             6.3) Текст игровго меню = "Enter.", "Leave."
             6.4) Блок последствий = [set_jump_mission,"mt_visit_town_horseback"],[jump_to_scene,"scn_salt_mine"],[change_screen_mission], [leave_encounter],[change_screen_return]
                                                                                   # в Варбанде такой метки нет
                                                                                   # вместо неё mt_town_center


Первое, что делает это меню – сброс всех торговых ставок на 0 (не обнуление цен, а сброс именно наценки торговца и установление настоящей цены вещам) и затем установка цены соли в 55% от обычной (то есть соль будет продаваться не за 100 динаров, а за 55). Следущее действие, реализованнное с помощью метки mnf_auto_enter, это то, что меню автоматически, за игрока, выберет первую (и единственную) опцию в меню. В данном случае ("enter") и выполнит ее, переместив игрока в солянные шахты, не ожидая клика мышки.


В следуещем разделе мы используем соляные шахты, как шаблон для меню города, который мы создали во 2 части, таким образом завершив его создание.
« Последнее редактирование: 29 Июня, 2011, 13:21 от Leon473 »
  • Сообщений: 10
    • Просмотр профиля
В следуещем разделе мы используем соляные шахты, как шаблон для меню города, который мы создали во 2 части, таким образом завершив его создание.
Здравствуйте. Подскажите пожалуйста, где можно найти следующий раздел по данной теме или уроки по module_game_menus в МС. Благо дарю.
  • Сообщений: 2084
  • За создание крупных модов и других особо сложных проектов
    • Просмотр профиля
Добромир, на английском есть http://mbmodwiki.ollclan.eu/Category:Official_Documentation
На TW много найдете, надо только с языком дружить http://forums.taleworlds.com/index.php/board,171.0.html
  • Фракция: Свады
  • Сообщений: 10
    • Просмотр профиля
Van, Благо дарю.

СиЧЪ Total War СиЧЪ Total War
Сайт "Всадники Кальрадии" не является СМИ. Администрация не несет ответственность за высказывания и публикацию каких-либо материалов, сделанные любыми пользователями форума, в том числе посредством личных и публичных сообщений. Материалы, размещенные на ресурсе третьими лицами, могут содержать информацию, не предназначенную для лиц, не достигнувших совершеннолетия. При обнаружении на ресурсе материалов, нарушающих законодательство Российской Федерации, необходимо обращаться к администрации.
Сайт работает на быстром VPS/VDS хостинге от FASTVPS


Powered by SMF 2.0 | SMF © Simple Machines LLC