Tron 53 Опубликовано 26 Августа 2015 Поделиться Опубликовано 26 Августа 2015 В движке используется MFC? Просто сейчас ставлю новую студию, и хотелось бы знать, что бы не ставить слишком много (мне MFC не нужен, но может двиг без него не скомплится?)? нет, не используется 1 Ссылка на комментарий
-StalkMen- 159 Опубликовано 26 Августа 2015 Поделиться Опубликовано 26 Августа 2015 (изменено) нет, не используетсяВроде как окошечки компилей используют MFC. нетА на чём тогда? Изменено 5 Сентября 2015 пользователем Dennis_Chikin 1 Ссылка на комментарий
Полтергейст 37 Опубликовано 27 Августа 2015 Поделиться Опубликовано 27 Августа 2015 (изменено) abramcumner, я уже разобрался. Работать будет, т.к. в этом же классе делается smart_cast из CObject в CInventoryItem напрямую. Вообще в клиентских классах приведение типов как-то странно используется. Например, в net_Spawn можно увидеть приведение типа к самому себе. Нашёл один баг, связанный с записью killer_id и game_death_time в серверные объекты. В существующем варианте она делается через клиентский класс CEntity, то есть только тогда, когда объект в онлайне. Если же серверный коллбек on_death вызывается в оффлайне, то ничего не записывается. Намного лучше было бы дописать такой метод void CSE_ALifeCreatureAbstract::on_death(CSE_Abstract *killer) { m_game_death_time = alife().time_manager().game_time(); if (IsGameTypeSingle()) { NET_Packet P; u_EventGen(P,GE_ASSIGN_KILLER,ID); P.w_u16(u16(killer->id)); u_EventSend (P); } } и вырезать из класса CEntity целую кучу кода, которая отвечает за то же самое. Оставить можно разве что смену модели на corpse_visual, но если благодаря правкам будет (или уже) реализована смена модели из скрипта, то и это не имеет смысла. Изменено 27 Августа 2015 пользователем Полтергейст Ссылка на комментарий
Shredder 49 Опубликовано 27 Августа 2015 Поделиться Опубликовано 27 Августа 2015 А где можно посмотреть правку по смене модели из скрипта? 1 Ссылка на комментарий
HESH 64 Опубликовано 27 Августа 2015 Поделиться Опубликовано 27 Августа 2015 @-StalkMen-, Borland C++ Builder, не? Ссылка на комментарий
-StalkMen- 159 Опубликовано 27 Августа 2015 Поделиться Опубликовано 27 Августа 2015 компилей нет, компили xrLC xrAI и тп. А не LevelEditorЫ всякие Ссылка на комментарий
RayTwitty 492 Опубликовано 27 Августа 2015 Поделиться Опубликовано 27 Августа 2015 Тут попросили спросить - в LA перенесли из ЗП апгрейд оружия, но никак не могут допилить до окончательного вида. dezodor спрашивает, может ли кто помочь с допилкой? Как я понял, там по LA DC осталось немного - допилить вот этот апгрейд и еще расставить гулаги по локациям. Если кто заинтересован, напишите в ЛС, дам контакты. Естественно, все привилегии члена команды, как я понял включены)) Ссылка на комментарий
UnLoaded 313 Опубликовано 28 Августа 2015 Поделиться Опубликовано 28 Августа 2015 Если же серверный коллбек on_death вызывается в оффлайне, то ничего не записывается. Сначала-бы наверное стоит разобраться в ценности кэллбэка на смерть в офф-лайне... Хотя-бы начиная с того, как вообще возможно кого-то в офф-лайне убить ? Не релизнуть, а именно "убить". 1 1 Ссылка на комментарий
HESH 64 Опубликовано 28 Августа 2015 Поделиться Опубликовано 28 Августа 2015 Всем доброго. Решил вот покапать чуток движок. Интересует вопрос: можно ли сделать так, что бы количество слотов на поясе не зависело от костюма, а сам пояс сделать отдельным предметом? И пояс в слот детектора, например. Возможно такое на исходниках? Если да, то можно хоть примерный код? (Начал осваивать С++ три дня назад, пока мало что понимаю). Спасибо. @UnLoaded, а как же скриптовые схемы логики, дописанные xStream? Там ведь NPC воюют в offline, или я неправильно понимаю? Конечно, когда объект не загружен, его нельзя убить, но наличие таковой функции повергает меня в сомнения... Ссылка на комментарий
Shredder 49 Опубликовано 28 Августа 2015 Поделиться Опубликовано 28 Августа 2015 @HESH, конечно можно, но это не 2 строчки кода. Я тоже никогда не писал на C++, раньше на php, теперь на ruby. Но вот тоже залез в исходники. Получилось добавить слот под (нож/пистолет), (бинокль/нож/пистолет), слот под рюкзак, отдельные слоты под патроны, иконку в полный рост, как в ТЧ. Как бы там не хаили разработчиков, код вполне читабельный и разобраться можно. https://yadi.sk/i/cWE8vVEViiWdN 2 Ссылка на комментарий
HESH 64 Опубликовано 28 Августа 2015 Поделиться Опубликовано 28 Августа 2015 (изменено) @Shredder, а сам код можно? Или где искать? Изменено 28 Августа 2015 пользователем HESH Ссылка на комментарий
Shredder 49 Опубликовано 28 Августа 2015 Поделиться Опубликовано 28 Августа 2015 отображение в инвентаре смотри в файлах xrGame/ui/UIActorMenu* хранение предметов смотри в xrGame/Inventory.cpp 2 Ссылка на комментарий
Tron 53 Опубликовано 28 Августа 2015 Поделиться Опубликовано 28 Августа 2015 А на чём тогда? winapi 1 Ссылка на комментарий
-StalkMen- 159 Опубликовано 28 Августа 2015 Поделиться Опубликовано 28 Августа 2015 (изменено) @Tron, Может я чего то не понял, но разве это не MFC ? В моём понимании WinAPI (в чистом виде), это всякие CreateWindow и тп. Изменено 28 Августа 2015 пользователем -StalkMen- Ссылка на комментарий
HESH 64 Опубликовано 28 Августа 2015 Поделиться Опубликовано 28 Августа 2015 (изменено) m_LeftBackground = xr_new();m_LeftBackground->SetAutoDelete (true);AttachChild (m_LeftBackground);xml_init.InitStatic (uiXml, "left_background", 0, m_LeftBackground); - отвечает за автоматическое выбрасывание предмета из рюкзака при переносе предмета в левую часть экрана (при открытом рюкзаке)? @-StalkMen-, в WinAPI тоже классы есть. Может это они? Изменено 28 Августа 2015 пользователем HESH Ссылка на комментарий
Это популярное сообщение. Карлан 1 049 Опубликовано 29 Августа 2015 Это популярное сообщение. Поделиться Опубликовано 29 Августа 2015 Кто сидит на xr-dev еще микрокосяк нашел. Файл script_game_object.script, строку: value("on_before_save", int(GameObject::ePostSave)), заменить на: value("on_before_save", int(GameObject::eBeforeSave)) 1 1 3 Ссылка на комментарий
Tron 53 Опубликовано 29 Августа 2015 Поделиться Опубликовано 29 Августа 2015 @Tron, Может я чего то не понял, но разве это не MFC ? В моём понимании WinAPI (в чистом виде), это всякие CreateWindow и тп. Выходит я ошибся, признаю. Я по-моему собирал его без установленных MFC либ, на основании чего сделал этот вывод. Ссылка на комментарий
Полтергейст 37 Опубликовано 29 Августа 2015 Поделиться Опубликовано 29 Августа 2015 Сначала-бы наверное стоит разобраться в ценности кэллбэка на смерть в офф-лайне... Хотя-бы начиная с того, как вообще возможно кого-то в офф-лайне убить ? Не релизнуть, а именно "убить". Прямо так взять и вызвать on_death у "убиваемого" серверного объекта. Перед этим желательно установить ему здоровье в 0 через update-пакет, но вроде как не обязательно. Ссылка на комментарий
abramcumner 1 141 Опубликовано 29 Августа 2015 Поделиться Опубликовано 29 Августа 2015 (изменено) Выходит я ошибся, признаю. Я по-моему собирал его без установленных MFC либ, на основании чего сделал этот вывод.Нет, ты не ошибся, компиляторы не используют MFC. Это скрин из редактора ресурсов. Потом окно окно можно передать в чистую winapi функцию CreateDialog. Изменено 29 Августа 2015 пользователем abramcumner 1 Ссылка на комментарий
Tron 53 Опубликовано 29 Августа 2015 Поделиться Опубликовано 29 Августа 2015 ах,да диалоги,я и забыл,что их можно в редакторе ресурсов создавать Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти