-
Публикаций
124 -
Зарегистрирован
-
Посещение
Репутация
7 НейтральнаяИнформация о RomaL23
-
Звание
Бывалый
Дополнительная информация
-
Имя
Рома
-
Пол
Мужчина
-
Любимые моды
Возвращение в зону, Путь во мгле, Пространственная аномалия, Плохая компания 2: Масон
Посетители профиля
Блок последних пользователей отключён и не показывается другим пользователям.
-
RomaL23 подписался на Рандомные менюшки при заходе в игру (CoP)
-
Чтобы при заходе в игру мы видели рандомные менюшки, нам нужно создать три xml блока и немного изменить скрипт ui_main_menu.script. Для начала сделаем три xml блока. ui_mm_main.xml: <w> <!-- Фон 1 --> <background1> <auto_static x="0" y="0" width="1024" height="768" stretch="1"> <texture>ui\mm_background1</texture> </auto_static> </background1> <!-- Фон 2 --> <background2> <auto_static x="0" y="0" width="1024" height="768" stretch="1"> <texture>ui\mm_background2</texture> </auto_static> </background2> <!-- Фон 3 --> <background3> <auto_static x="0" y="0" width="1024" height="768" stretch="1"> <texture>ui\mm_background3</texture> </auto_static> </background3> <!-- Главное меню (одинаковая разметка, меняется только фон через секцию) --> <menu_main btn_height="34" font="letterica18"> <btn name="btn_new_game" caption="ui_mm_newgame" /> <btn name="btn_load" caption="ui_mm_load_game" /> <btn name="btn_net_game" caption="ui_mm_network_game" /> <btn name="btn_options" caption="ui_mm_options_n" /> <btn name="btn_credits" caption="ui_mm_credits" /> <btn name="btn_quit" caption="ui_mm_quit2windows" /> </menu_main> </w> С профилями думаю не у кого не возникнет проблем, поэтому переходим к скрипту. В нём нас интересует эта строка --> xml:InitStatic("background", self) заменяем эту строку на: -- выбираем случайный фон (1..3) local rand_bg = math.random(3) local section_name = "background" .. rand_bg -- инициализация выбранного фона xml:InitStatic(section_name, self) Вот и всё. Больше нас ничего не интересует, кнопки и шниага работают по оригиналу, скрипт особо не задет. В контексте этого скрипта, InitControls будет выглядеть так: function main_menu:InitControls() self:SetWndRect(Frect():set(0,0,1024,768)) local xml = CScriptXmlInit() xml:ParseFile("ui_mm_main.xml") -- случайный выбор одного из трёх фонов local rand_bg = math.random(3) local section_name = "background" .. rand_bg xml:InitStatic(section_name, self) self.shniaga = xml:InitMMShniaga("shniaga_wnd", self) self.message_box = CUIMessageBoxEx() self:Register(self.message_box, "msg_box") local _ver = xml:InitStatic("static_version", self) local mm = _G.main_menu.get_main_menu() _ver:TextControl():SetText("ver. " .. mm:GetGSVer()) self.l_mgr = mm:GetLoginMngr() self.acc_mgr = mm:GetAccountMngr() self.profile_store = mm:GetProfileStore() self.gs_profile = self.l_mgr:get_current_profile() if (self.gs_profile and not(level.present())) then self.shniaga:ShowPage(CUIMMShniaga.epi_new_network_game) --fake self.shniaga:SetPage(CUIMMShniaga.epi_main, "ui_mm_main.xml", "menu_main_logout") self.shniaga:ShowPage(CUIMMShniaga.epi_main) end end !Фон выбирается случайно из уже существующих секций XML. Этот урок для людей которые хотя-бы немного понимают, как прописать путь к своим текстурам в xml... Если что-то не понятно, задавайте вопросы, решим.
-
denis2000 Да. АИ сетка вроде не кривая, но нпс часто спавнятся боком. Дополнено 8 минуты спустя столкнулся с таким вылетом при попытке заспавнить эксклюзивного нпса Expression : 0 Function : ErrorLog File : D:\prog_repository\sources\trunk\xrServerEntities\script_engine_script.cpp Line : 49 Description : Couldnt find sounds fight\post_combat_wait\relax_ with prefix не пойму откуда такой лог, всё нормально работало, да и звук я никакой не пытаюсь вызвать. с чем связано? может из за скриптов каких то кривых (я в скриптах ноль)
-
Почему логика walker у нпса работает только с таким названием путей? другой нпс с такой же логикой работает только с последних слов в названии, т.е не просто walk и look, а вот так: Дополнено 1 минуту спустя если написать первому нпсу аналогично так же как и второму, то получаю вот такой вылет: Expression : 0 Function : ErrorLog File : D:\prog_repository\sources\trunk\xrServerEntities\script_engine_script.cpp Line : 49 Description : there is no patrol path red_forest_smart_npc_bylava_bylava_1_walk
-
WolfHeart не нашёл там ответа на свой вопрос, так всё же повторюсь: как убрать это?
