• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток! Спешите принять участие в голосовании на конкурсе квент 2025!
    Ждем именно вас!

    Ссылка на конкурсную тему с работами- тык

Результаты поиска

  1. Gratt

    Gothic ½ Union (патч для Gothic)

    Усложнение - это вынуждение пользователя производить лишние действия. В действительности параметр встанет в секцию debug где будет скрыт от ненужного взора. Насчёт этого подумаю.
  2. Gratt

    Gothic ½ Union (патч для Gothic)

    Да нет, все работает по задумке. Тома делятся на группы vdf и mod (потому что предполагается что запускаемые модификации имеют высший приоритет), а внутри групп по временной метке. Если тут идёт перекрытие данных mod файлами, то нужно просто выключить группировку и оставить только стем. Вечером...
  3. Gratt

    Gothic ½ Union (патч для Gothic)

    Можно чуть подробнее? У меня все как и должно быть. Еще попробуй использовать библиотеку ниже со включенным параметром в Union.ini ShowDebugWindow = true При использовании DX11 рекомендую выключить параметр [MOUSE] ApplyFix в Union.ini.
  4. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    В маленьком коде - да, удобно. В большом - ухудшает читаемость и восприятие кода
  5. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    В данном контексте - да. Но лучше стараться избегать таких объявлений.
  6. Gratt

    1. Настройка и компиляция плагина / Configuring and compiling a plugin

    Ну вариантов полно. Самый короткий что пришел в голову. В свойствах ярлыка указываешь номер слота и передаешь его в загрузчик. Прим.: Второй аргумент LoadSavegame определяет будут ли загружены значения глобальных переменный.
  7. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    Абсолютно. Вьюхи работают с относительными координатами. Для перевода пиксельных величин в относительные используется метод view->anx/any. А из относительных в пиксельные - nax/nay.
  8. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    Не совсем. Этот параметр определяет размер объекта zView относительно родителя. У screen родителя нет, так как это вьюпорт. Поэтому да, screen будет выводить 8192. А вот для потомков такое не прокатит.
  9. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    В AST были, а тут не думал даже. Просто знай что 8192 это максимум
  10. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    Да, высота шрифта в готишных попугаях. Ширина и высота исчисляется как объект 8192 на 8192. Есть еще функция FontSize. В нее передаешь строку и он считает ее ширину.
  11. Gratt

    Готика 2: НВ Готика 1

    Просто надо автору пинка дать чтобы нормально мод собрал.
  12. Gratt

    Готика 2: НВ Готика 1

    Если ты внимательно посмотришь в описание мода, то увидишь графу Union. Так вот Union несовместим с системным паком. Но он его содержит. Плюс дополнительно прочитай посты ранее, там в ини файле надо покрутить кое-что.
  13. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    neromont Вот заодно сверь чтобы цикл перебора списка был таким же zCListSort<oCItem>* lstItems = focusContainer->containList.GetNextInList(); while( lstItems ) { oCItem* pItem = lstItems->GetData(); zSTRING firstItemName = pItem->GetName( 0 ); lstItems =...
  14. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    Вариант при наличии указателя на item if( !focusContainer->IsIn( pItem->GetInstance() ) ) focusContainer->CreateContents( pItem->GetInstanceName() ); Вариант через имя инстанции int instance = parser->GetIndex( "ITMI_GOLD" ); if( instance != -1 && !focusContainer->IsIn( instance...
  15. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    Могу такой вариант предложить. // CastTo для производных от zObject эквивалентен zDYNAMIC_CAST oCMobContainer* focusContainer = player->GetFocusVob()->CastTo<oCMobContainer>(); if( focusContainer ) { zCListSort<oCItem>* lstItems = focusContainer->containList.GetNextInList()...
  16. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    Нет, ты все сделал правильно :)
  17. Gratt

    2. Создание и запуск плагина / Creating and running a plugin

    Game_Exit происходит в момент завершения WinMain движка и начале отключения Union от процесса. Деструкторы плагинов будут вызываться раньше, поэтому для твоей задачи имеет смысл добавить код в DllMain в условие DLL_PROCESS_DETACH.
  18. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    Передохну сначала. Дальше напишу про виртуальные таблицы, будем наследовать класс oCNpc.
  19. Gratt

    4. Работа с Gothic API. Кроссплатформенный плагин. Выводим текст на экран.

    Я слишком часто контактирую со студентами программистами и, к сожалению, знаю о чем говорю. Им действительно проще вникнуть в более емкий, но примитивный код, чем в более короткий, но извилистый в реализации. Все придет с опытом, а пока важно дать базовое представление о механике плагинов.
Сверху Снизу