xer-urg 0 Опубликовано 23 Декабря 2012 Господа, обращаюсь за помощью. Есть правленая длл-ка от Kolmogor'a для 4 патча ТЧ: Правленная dll от Колмогора, возраст - чуть больше года, специально для NewLife и "Хроник S.T.A.L.K.E.R. ТЧ": - консольная команда fov - динамически меняется fov в игре; - консольная команда k_ammo_on_belt (k_ammo_off_belt) - перезарядка оружия только патронами с пояса. Включается, отключается через консоль. Чтобы патроны можно было положить на пояс, нужно раскомментировать (или дописать) в weapons.ltx в секции ammo_base строчку belt = true; - артефакты работают только из рюкзака, на поясе не действуют на ГГ - пояс теперь по сути контейнер артефактов. Из инвентаря действуют абсолютно все свойства артефактов (радизлучение, пулестойкость, хим. защита и т.д.). http://narod.ru/disk...e_edit.rar.html Вопрос: может ли кто-нибудь адаптировать чудо сие для 1.0006 патча? Заранее благодарен. Прошу прощения, если не в тему. https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение
xer-urg 0 Опубликовано 11 Мая 2019 День добрый! Собрал 201 ревизию движка с репо xp-dev и столкнулся с необычной проблемой - такое ощущение, что действия контекстного меню в инвентаре (положить в слот/выбросить и проч.) отрабатываются не для того предмета, щелчком на котором вызвано меню, а для предмета слева от целевого. Как пример: имеем в инвентаре аптечку и куртку (слева направо) - при щелчке пкм на куртке и выборе "одеть" в слот костюма становится аптечка. При даблклике на куртке она надевается штатно. Грешил на систему новых слотов, но пересобрав движок с закомментированными дефайнами этих самых слотов, увидел что проблема сохраняется. Буду признателен за помощь. https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение
xer-urg 0 Опубликовано 12 Апреля 2020 Господа, а сориентируйте на репозиторий, в котором можно подсмотреть движковую реализацию грант с пояса на ТЧ? То что умудрился соорудить сам на базе xp-dev уж больно неказистое вышло. https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение
xer-urg 0 Опубликовано 6 Марта 2021 Приветствую! Пытаюсь прикрутить к гранатами рандом задержки до взрыва. Собственно вопрос - куда в grenade.cpp корректно воткнуть вызов рандомайзера, чтобы он один раз отрабатывал по каждой заспавненной в игре гранате и задержка именно для этой гранаты сохранялась до новой игры? https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение
xer-urg 0 Опубликовано 3 Апреля 2021 Приветствую! Прикручивал на движок ТЧ (форк xp-dev) отображение миникарты по зажатию клавиши. Соорудил работающую проверку: UIMainIngameWnd.cpp void CUIMainIngameWnd::Draw() { ... if (Level().IR_GetKeyState(DIK_TAB)) UIZoneMap->Render(); ... } Вопрос - подскажите как проверять не хардкодную клавишу (TAB в моём примере) а некое действие к которому забиндена кнопка в настройках, типа kSCORES ? Попытка проверять в духе if (Level().IR_GetKeyState(get_binded_action(kSCORES))) результатов не дала https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение
xer-urg 0 Опубликовано 25 Апреля 2021 Приветствую! Подскажите, реализовывал ли кто у себя группировку предметов на худовой панели артефактов (group_similar) ? Сам крайне не силён во всей это XML-магии. Буду признателен за ссылку на репозиторий с целью самообразовательно подсмотреть решение. https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение
xer-urg 0 Опубликовано 29 Апреля 2021 В "наследниках" репозитория 1.0007 Rc1 @alpetи @KD87 (XP-DEV) не работает контекстное меню по правой кнопке мыши в окнах обыска ящиков/трупов (не ручаюсь за оригинальные исходники). Сей вопрос кратко упоминался в теме "Мелкие правки движка", но итоговое решение для XP-DEV озвучено не было. Буду признателен за подсказку: что является причиной и как исправлять такое поведение. https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение
xer-urg 0 Опубликовано 26 Мая 2021 ТЧ 1.0007rc1 (xp-dev 190 rev) Задача: обрабатывать нажатие кнопок, отвечающих за разделы ПДА, если в слоте ПДА предмет с CLS_ID == CLSID_DEVICE_PDA Реализация: Скрытый текст bool CUIGameSP::IR_OnKeyboardPress(int dik) { if(inherited::IR_OnKeyboardPress(dik)) return true; if( Device.Paused() ) return false; CInventoryItem *PDA = smart_cast<CInventoryItem*>(pActor->inventory().ItemFromSlot(PDA_SLOT)); //<-Предмет в слоте ПДА if(!pActor) return false; if( pActor && !pActor->g_Alive() ) return false; switch ( get_binded_action(dik) ) { ... if (PDA->object().CLS_ID == CLSID_DEVICE_PDA) //<-проверяем есть ли PDA в слоте { case kACTIVE_JOBS: if (!MainInputReceiver() || MainInputReceiver() == PdaMenu){ PdaMenu->SetActiveSubdialog(eptQuests); m_game->StartStopMenu(PdaMenu, true); return true; }break; case kMAP: if (!MainInputReceiver() || MainInputReceiver() == PdaMenu){ PdaMenu->SetActiveSubdialog(eptMap); m_game->StartStopMenu(PdaMenu, true); return true; }break; case kCONTACTS: if (!MainInputReceiver() || MainInputReceiver() == PdaMenu){ PdaMenu->SetActiveSubdialog(eptContacts); m_game->StartStopMenu(PdaMenu, true); return true; }break; case kSCORES: { SDrawStaticStruct* ss = AddCustomStatic("main_task", true); SGameTaskObjective* o = pActor->GameTaskManager().ActiveObjective(); if (!o) ss->m_static->SetTextST("st_no_active_task"); else ss->m_static->SetTextST(*(o->description)); } break; } } return false; } Проблема: разделы ПДА открываются даже если в слоте ПДА находится предмет на соврешенно ином классе - аптечка, фонарь, etc. Если в слоте ПДА вообще нет предмета - кнопки не срабатывают, как и ожидается. Собственно вопрос - что я делаю не так? https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение
xer-urg 0 Опубликовано 2 Июня 2021 @DoberBull, спасибо за предложение - с "CPda *PDA =... " так и сделал. Также было неправильно обрамлять в проверку несколько case - добавил условие "PDA" в каждый case и всё заработало. В итоговой реализации как-то так: Скрытый текст CPda* PDA = smart_cast<CPda*>(pActor->inventory().ItemFromSlot(PDA_SLOT)); ... case kACTIVE_JOBS: if ((!MainInputReceiver() || MainInputReceiver() == PdaMenu) && PDA) { ... } https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение
xer-urg 0 Опубликовано 27 Июня 2021 Приветствую. Насколько знаю в NLC 7 (и, вероятно, любом проекте, движок которого основан на репозитории Alpet&KD) есть баг со звуком дождя - если двигаться удерживая камеру ровно по линии горизонта, то звук дождя скачет поочерёдно то в левый то в правый канал. Буду признателен за наводку куда копать чтобы это исправить. https://github.com/xer-urg/xray-1.0007rc1 Поделиться этим сообщением Ссылка на сообщение