imcrazyhoudini 208 Опубликовано 6 Ноября 2022 Поделиться Опубликовано 6 Ноября 2022 На ЧН, как известно, самая деревянная система квестов. Вопрос - как можно реализовать (с примером желательно, а то и вовсе готовую) систему разделения квестов на подквесты как в ТЧ/ЗП? ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 В ТЧ можно было спавнить и удалять предметы через стори ид и спавн ид. Скрытый текст function delete_pribor() local lc = alife():story_object(story_ids.dead_zapiska) alife():release(lc, true) end function spawn_pribor() local spawn_id = alife():spawn_id(spawn_story_ids.zapiska) alife():create(spawn_id) end В ЧН не работает. Есть аналог какой? ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Norman Eisenherz 310 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 Объект: Кордон, Сидорович, esc_trader, sid = 410, spawn_id = 3026. Удаление по указанному выше шаблону: успешно. Переспавн: нет реакции уже на стадии чтения spawn_id(sid). Более того, до перезагрузки сбиваются все последующие скрипты, привязанные на тот же триггер (в моем случае расход предмета). При прямом вводе alife():create(3026) скрипты не сбиваются, но и спавна нет. Проверка в ТЧ: story_id = 3, spawn_id = 2263, удаление успешно, переспавн работает только при прямом вводе значения spawn_id – при чтении spawn_id(sid) зависание скриптов. Методы в ЧН точно не удалены и код в ТЧ/ЧН у них полностью одинаковый. Ждем следующего знатока… Spoiler [xrGame\alife_simulator_script.cpp] void CALifeSimulator::script_register (lua_State *L) .def("create", &CALifeSimulator__create) … .def("spawn_id", &CALifeSimulator__spawn_id) … CSE_ALifeDynamicObject *CALifeSimulator__create (CALifeSimulator *self, ALife::_SPAWN_ID spawn_id) { const CALifeSpawnRegistry::SPAWN_GRAPH::CVertex *vertex = ai().alife().spawns().spawns().vertex(spawn_id); THROW2 (vertex,"Invalid spawn id!"); CSE_ALifeDynamicObject *spawn = smart_cast<CSE_ALifeDynamicObject*>(&vertex->data()->object()); THROW (spawn); CSE_ALifeDynamicObject *object; self->create (object,spawn,spawn_id); return (object); } ALife::_SPAWN_ID CALifeSimulator__spawn_id (CALifeSimulator *self, ALife::_SPAWN_STORY_ID spawn_story_id) { return (((const CALifeSimulator *)self)->spawns().spawn_id(spawn_story_id)); } Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 (изменено) 57 минут назад, Norman Eisenherz сказал: spawn_id = 3026 Что подразумевает под собой в твоём видении spawn_id? Ибо в оригинале не используется файл game_spawn_story_id.ltx Может ты сам назначил его, не знаю. Мало ли. Изменено 19 Ноября 2022 пользователем imcrazyhoudini ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Norman Eisenherz 310 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 Буквально spawn_id из секции объекта в [all.spawn] Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 @Norman Eisenherz ну я имел ввиду тот, что назначается вручную. Думаю в них есть разница. Или нет. Не знаю. ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Norman Eisenherz 310 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 Вот старый пост, в котором указан порядок "номер в [all.spawn], строковое обозначение в [game_spawn_story_ids.ltx]": https://www.amk-team.ru/forum/topic/7450-spravochnik-po-funkciyam-i-klassam/page/23/#comment-803687 У тебя в обоих местах новые spawn_id прописаны? Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 (изменено) @Norman Eisenherz я по этому посту и делал эти функции. Как понять в обоих местах? Я записал номер в game_spawn_story_ids.ltx и назначил его предмету через СДК. Собрал спавн, закинул в игру да и всё собственно. Изменено 19 Ноября 2022 пользователем imcrazyhoudini ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Norman Eisenherz 310 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 В архиве и в конфиге; по описанию у тебя так и есть. Может, формат записи в конфиге неправильный? Процитируй [game_spawn_story_ids.ltx]. Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 @Norman Eisenherz Скрытый текст [spawn_story_ids] 1 = "yan_pribor" Скрытый текст [spawn_story_ids] 1 = "zapiska" ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Norman Eisenherz 310 Опубликовано 19 Ноября 2022 Поделиться Опубликовано 19 Ноября 2022 Формат правильный. Добавить нечего. Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 20 Ноября 2022 Поделиться Опубликовано 20 Ноября 2022 Кто знает, где указываются шевроны для группировки? ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Norman Eisenherz 310 Опубликовано 20 Ноября 2022 Поделиться Опубликовано 20 Ноября 2022 Шевроны "ранг" или "лого"? В любом случае, это общее окно [configs\ui\talk_character.xml] с движковым наполнением: Spoiler [xrGame\ui\UICharacterInfo.cpp] void CUICharacterInfo::InitCharacterInfo(Fvector2 pos, Fvector2 size, CUIXml* xml_doc) … Init_IconInfoItem( *xml_doc, "rank_icon", eRankIcon ); … Init_IconInfoItem( *xml_doc, "commumity_icon", eCommunityIcon ); void CUICharacterInfo::InitCharacter(u16 id) … if ( m_icons[eRankIcon ] ) { m_icons[eRankIcon ]->InitTexture( chInfo.Rank().id().c_str() ); } … if ( m_icons[eCommunityIcon ] ) { m_icons[eCommunityIcon ]->InitTexture( community1 ); } … strcat_s( community1, sizeof(community1), "_icon" ); … strcat_s( community2, sizeof(community2), "_wide" ); Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 20 Ноября 2022 Поделиться Опубликовано 20 Ноября 2022 1 час назад, Norman Eisenherz сказал: "лого" Лого. То бишь я не смогу актёру дать своё лого без правок движка? ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Norman Eisenherz 310 Опубликовано 20 Ноября 2022 Поделиться Опубликовано 20 Ноября 2022 (изменено) Да. В пределах группировки иконки для всех одинаковые. Дальше или делать новую группировку, или выводить свой статик поверх имеющегося в диалоге и инвентаре. Изменено 20 Ноября 2022 пользователем Norman Eisenherz Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 20 Ноября 2022 Поделиться Опубликовано 20 Ноября 2022 36 минут назад, Norman Eisenherz сказал: или выводить свой статик поверх имеющегося в диалоге и инвентаре. В ГГ его и нет. Лишь если он вступит в группировку. ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Norman Eisenherz 310 Опубликовано 20 Ноября 2022 Поделиться Опубликовано 20 Ноября 2022 Если картинка постоянная, то в своем инвентаре ее можно вывести поверх движковой иконки тегом auto_static. С диалогом сложнее: описание окна используется для обоих участников – тут только ссылаться на активный диалог и ставить свое окно поверх. Еще раз, в чем задача: выводить постоянную картинку вместо лого группировки или выводить картинку действующей группировки, но с вензелями? Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 20 Ноября 2022 Поделиться Опубликовано 20 Ноября 2022 @Norman Eisenherz выводить лого группировки для группировки ГГ, Поясняю:ГГ состоит в своей группировке (actor), у него нет своего лого. Я хочу чтобы у него было лого одиночек. Якобы он так же одиночка, но тем не менее не состоит в группировке stalker. ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Norman Eisenherz 310 Опубликовано 21 Ноября 2022 Поделиться Опубликовано 21 Ноября 2022 Тебе в шпионы можно идти… Требуется выводить отдельное лого, пока ГГ не состоит ни в одной группировке. Тот же тег auto_static, привязка к базовому окну или первой текстуре и наложение движкового окна community_icon поверх, если ГГ вступил в какую-либо группировку. Для расчета координат было бы проще использовать вложенные окна actor_ch_info, но в них (и еще много где) тег auto_static не учитывается. Ниже код для конфигов 5:4, в 16:9 править аналогично. Иконки какие надо подставишь. Spoiler • инвентарь [configs\ui\actor_menu.xml] <main x="0" y="0" width="1024" height="768"> <auto_static x="299" y="0" width="725" height="768"> <texture>ui_inGame2_inventory_back</texture> </auto_static> (+) координаты actor_ch_info + community_big_icon <auto_static x="751" y="59" width="106" height="46" stretch="1" > <texture> ui\new_logo_wide </texture> </auto_static> • диалог […\talk.xml] <right_character_icon x="803" y="0" width="224" height="197"> <texture>ui_actor_back</texture> (+) координаты community_icon из [talk_character.xml] <auto_static x="15" y="73" width="48" height="48" stretch="1" > <texture> ui\new_logo </texture> </auto_static> • статистика […\pda_ranking.xml] <background x="35" y="89" width="955" height="620" vertical="1"> <texture>ui_pda2_fr2</texture> (+) координаты actor_ch_info + community_big_icon - background (и ширина чуть меньше) <auto_static x="181" y="51" width="118" height="56" stretch="1" > <texture> ui\new_logo_wide </texture> </auto_static> • исходные иконки для справки […\textures_descr\ui_pda2_noice.xml] community _wide 125x54 community _icon 56x54 1 Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 21 Ноября 2022 Поделиться Опубликовано 21 Ноября 2022 (изменено) @Norman Eisenherz исходя из кода под спойлером могу предположить такое: Движок берёт название группировки (dolg например), ищет в xml _icon и _wide + название группировки и отображает картинку, верно? А почему в ГГ такого нет? У него судя по всему так же есть подобное: ui_pda2_noice.xml: Скрытый текст <texture id="dolg_wide" x="1" y="793" width="125" height="54" /> <texture id="merc_wide" x="1" y="956" width="125" height="54" /> <texture id="killer_wide" x="1" y="956" width="125" height="54" /> <texture id="freedom_wide" x="128" y="956" width="125" height="54" /> <texture id="stalker_wide" x="255" y="956" width="125" height="54" /> <texture id="trader_wide" x="255" y="956" width="125" height="54" /> <texture id="bandit_wide" x="382" y="956" width="125" height="54" /> <texture id="csky_wide" x="509" y="956" width="125" height="54" /> <texture id="renegade_wide" x="636" y="956" width="125" height="54" /> <texture id="monolith_wide" x="751" y="847" width="125" height="54" /> <texture id="army_wide" x="889" y="847" width="125" height="54" /> <texture id="ecolog_wide" x="889" y="781" width="125" height="54" /> <!--temp --> <texture id="actor_wide" x="255" y="956" width="125" height="54" /> <!-- communities --> <texture id="dolg_icon" x="36" y="793" width="56" height="54" /> <texture id="merc_icon" x="36" y="956" width="56" height="54" /> <texture id="killer_icon" x="36" y="956" width="56" height="54" /> <texture id="freedom_icon" x="162" y="956" width="56" height="54" /> <texture id="stalker_icon" x="289" y="956" width="56" height="54" /> <texture id="trader_icon" x="289" y="956" width="56" height="54" /> <texture id="bandit_icon" x="416" y="956" width="56" height="54" /> <texture id="csky_icon" x="543" y="956" width="56" height="54" /> <texture id="renegade_icon" x="670" y="956" width="56" height="54" /> <texture id="monolith_icon" x="785" y="847" width="56" height="54" /> <texture id="army_icon" x="922" y="847" width="56" height="54" /> <texture id="ecolog_icon" x="923" y="781" width="56" height="54" /> <!--temp --> <texture id="actor_icon" x="289" y="956" width="56" height="54" /> При чём со сталкерами одинаковое, но не отображает чего-то. P.S. Хочется по нормальному сделать, ибо авто-статиками малость кривовато выходит. Изменено 21 Ноября 2022 пользователем imcrazyhoudini ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти