Перейти к контенту
Rolan

Редактирование движка X-Ray

Рекомендуемые сообщения

Ссылку на commit в репозиторий.

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

Надумал сделать не торгуемость для предметов в слотах(для всех). Нашел вроде подходящее место - CInventoryItem::CanTrade(), ну и правочка получилась такая:

bool CInventoryItem::CanTrade() const 
{
    bool res = true;
    if(m_pCurrentInventory)
        res = inventory_owner().AllowItemToTrade(this,m_eItemPlace);

    if (m_pCurrentInventory->InSlot((PIItem)this))
        res = false;

    return (res && m_flags.test(FCanTrade) && !IsQuestItem());
}

Лучше приведения к типу PIItem ничего не придумалось, все вроде нормально работает. Я в этих приведениях\преобразованиях типов не силен, по этому вопрос: так нормально будет, или могут быть проблемы ?

Изменено пользователем AndreySol

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 21.04.2019 в 17:53, AndreySol сказал:

 

Лучше приведения к типу PIItem ничего не придумалось, все вроде нормально работает. Я в этих приведениях\преобразованиях типов не силен, по этому вопрос: так нормально будет, или могут быть проблемы ?

vSgIsG11yW8.jpg

 

Не, ну ты серьёзно? 

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, krop сказал:

Не, ну ты серьёзно?

Ты синими овалами не все обвел. const справа от CanTrade() тоже надо было обвести. Тогда бы все вопросы снялись.

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кстати, насчет CInventoryItem::CanTrade() - оказалось, что это не самое правильное место для того, что я хотел сделать. Выяснилось. что эта ф-ция вызывается не только при построении списков торговли, но и при обычном шмоне инв. ящиков\нычек. Типа, даже фича получилась: хочешь выложить предмет из слота в ящик - сначала сними из слота:). Но для моей похотелки все же нашлось более правильное место...

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

День добрый!

Собрал 201 ревизию движка с репо xp-dev и столкнулся с необычной проблемой - такое ощущение, что действия контекстного меню в инвентаре (положить в слот/выбросить и проч.) отрабатываются не для того предмета, щелчком на котором вызвано меню, а для предмета слева от целевого.

Как пример: имеем в инвентаре аптечку и куртку (слева направо) - при щелчке пкм на куртке и выборе "одеть" в слот костюма становится аптечка. При даблклике на куртке она надевается штатно.

Грешил на систему новых слотов, но пересобрав движок с закомментированными дефайнами этих самых слотов, увидел что проблема сохраняется.

Буду признателен за помощь.

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

Есть ли среди проектов по изменению движка такой, где только исправляются баги того функционала, который есть, без добавления нового? Такой,  чтобы на выходе был обычный "чистый" движок с исправлением вылетов, подвисаий, визуальных дефектов в UI и т.п.

Изменено пользователем Полтергейст

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Полтергейст. Если в движке будет баг, то это уже не движок. Да его бы и не релизили с игрой. Все баги то уже возникают от совмещения движка и ресурсов.

andreyholkin.gif

rod_cccp.gif

 

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Expropriator, не очень понял это сообщение. Разве в оригинальном (релизном) движке нет багов?

 

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Полтергейст, кому баги, а кому нереализованные возможности.

Вообще баг движка подразумевает - ошибки ерроры. Если код скомпилирован, это уже не баги движка, а на совести геймдизайнеров.

 

Назови баг движка. Если в авто Г не садится в ЗП и вылетает игра после смерти ГГ в авто - это не баг движка. Тут вся эта ситуация, не рассматривалась разрабами, так как они надеялись на прямые руки скриптёров, которые смогли бы реализовать авто правильно.

andreyholkin.gif

rod_cccp.gif

 

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Expropriator

По существу же понятно о чём я спросил? Ищу проект модификации движка ТЧ, где из изменений есть только исправление вылетов, зависаний, фризов, глюков рендера и UI. Без добавления нового функционала, без геймплейных нововведений, без экспорта новых функций (кроме тех, которые были экспортированы в ЧН и ЗП). Наиболее похожий это OpenXRay, но он на движке ЗП. На движке ТЧ нет таких проектов?

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Полтергейст, не смотрел OpenXRay, но что то мне говорит о том, что это не в ту степь.

В ТЧ исправление вылетов в движке? Не пихайте всякую ерунду в игру, меньше будет печали.

Тебе нужен апгрейд движка короче.

andreyholkin.gif

rod_cccp.gif

 

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Expropriator, в существующих проектах модифицированных движков от ТЧ такие исправления есть, только кроме них там ещё много всякого нового, не всем нужного.

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Полтергейст OGSR https://github.com/OGSR/OGSR-Engine/releases

Целиком совместим с оригинальной игрой. Все новые возможности отключены по умолчанию

  • Нравится 1
  • Согласен 1
  • Полезно 2

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

Такой скромный вопрос, вот закрылся сайт codeplex.com, и теперь read-only.

 

Можно некий архив скачать, однако, например вот X-Ray Engine Toolset: https://archive.codeplex.com/?p=xray

 

Искал по всему архиву, не смог найти данных о коммитах. Т.е. то что было тут раньше: https://web.archive.org/web/20171226063841/http://xray.codeplex.com/SourceControl/list/changesets

 

Хотелось бы понять, действительно в архиве нет записей о коммитах или я не нашёл?

3af419dd35e81a0.png

 

Те кто играют уже не забудут © Алексей Сытянов

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

@aka_sektor это репозиторий перенесли на github https://github.com/abramcumner/xray_re-tools

Там есть история

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

Подскажите, где в движке сделано изменение веса оружия в зависимости от кол-ва заряженых в него патронов? А то чет роюсь в Weapon-классах, не попадается никак это место.

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поделиться этим сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Недавно просматривали   1 пользователь

AMK-Team.ru

×
×
  • Создать...