Редактирование движка X-Ray - Страница 163 - Скрипты / конфиги / движок - AMK Team
Перейти к контенту

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


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

27.02.2021 в 15:01, ARTLantist сказал(а):

а не одну с текстом х3

Если мне не изменяет память то за это отвечает параметр group_similar в XML файле инвентаря. Для ЗП это actor_menu(_16).xml.

Возможно, тут такой вопрос не совсем корректно задавать, но только тут сидят люди, которые с сурсами работают. В общем, попробовал собрать сдк. Версия - 0.7. Естественно, кроме горы ошибок мне ничего не прилетело. Исследуя код, я пришел к выводу, что код для С++ Билдера. Так вопрос - какого хрена он идет как решение Visual studio, ели его даже не переконвертировали, чтобы, соответственно, он компилился в VS?

14 минут назад, Марка демченков сказал(а):

Так вопрос - какого хрена он идет как решение Visual studio

Он не идет как решение VS. Он просто идет в комплекте с Исходным кодом движка, и связан с ним.

 

15 минут назад, Марка демченков сказал(а):

что код для С++ Билдера

Да. 6го или 7го. Точно не помню. Вообще инструкция по сборке есть в сети. Кажется на сайте gameru в сталкерском форуме. Если найду ссылочку прикреплю. 

 

16 минут назад, Марка демченков сказал(а):

он компилился в VS

Собирается он полностью (на самом деле нет, проекты сломаны частично) в билдере.

  • Полезно 1

@Марка демченков 

Странные у тебя претензии.

Разаработку движка и СДК люди делали, каждый знал что-то свое. Так у них получилось, что движок в Майкрософтовской студии собирали, а СДК в Борландовской. И что? Типа, тебя, оскорбленного, они забыли спосить, какими средствами разработки им пользоваться?

2 часа назад, Марка демченков сказал(а):

чтобы он компилился в VS?

Если хочешь СДК в студии, то тебе сюда.

  • Нравится 1
5 часов назад, AndreySol сказал(а):

Так у них получилось, что движок в Майкрософтовской студии собирали, а СДК в Борландовской

Ну, вообще-то словосочетание "унификация средств разработки", далеко не вчера придумали.

Так что, "так получилось" - слабовато оправдание.

  • Согласен 1

@Zander_driver на тот момент когда этот сдк писался в VS не было нормальных окон на плюсах, а в билдере - были, вот и всё, писать свои для сдк не стали, им и игры для этого хватило)

  • Полезно 1

Приветствую!

Пытаюсь прикрутить к гранатами рандом задержки до взрыва.

Собственно вопрос - куда в grenade.cpp корректно воткнуть вызов рандомайзера, чтобы он один раз отрабатывал по каждой заспавненной в игре гранате и задержка именно для этой гранаты сохранялась до новой игры?

Только что, xer-urg сказал(а):

и задержка именно для этой гранаты сохранялась до новой игры?

Тогда ее и сохранять надо.

Добавить сохраняемую переменную и хранить ее в нетпакете и/или серверном объекте.

Только что, xer-urg сказал(а):

куда в grenade.cpp корректно воткнуть вызов рандомайзера

Можно в net_Spawn. И там же обязательно проверять, был ли параметр установлен ранее. Если был - загружать из серверного объекта/нетпакета, то что было. Если не был, значит это для этой гранаты ее первый нет-спавн, и можно вызывать рандомайзер и сохранять полученное значение.

  • Спасибо 1

ЗП. Какие строчки нужно убрать/заменить в weaponMagazined.cpp, чтобы убрать автоперезарядку оружия? Или, если я неправильно всё понимаю, то подскажите, в какой файл мне направиться

Изменено пользователем ARTLantist
6 часов назад, ARTLantist сказал(а):

автоперезарядку оружия?

А об чем идет речь?

12 часов назад, ARTLantist сказал(а):

чтобы убрать автоперезарядку оружия?

Здесь можешь посмотреть, хотя там про ТЧ, для ЗП будет примерно так же.

  • Нравится 1

@Zander_driver когда ты достреливаешь с калаша очередь и расходуешь все патроны, ГГ сам его перезаряжает

Это будет тяжело объяснить, но я попробую. Платформа СоР.

Как можно реализовать такой коллбек, который будет "отлавливать" перемещение предмета из одной ячейки инвентаря в другую (именно в рюкзаке). И нужно, чтобы он возвращал, какой предмет мы перемещаем (item1), и какой предмет(item2) находится в ячейке инвентаря (если его нет, то, соответственно, возвращает nil), в которую мы переместили наш предмет (item1). Все названия в скобках условные (это чисто для переменных уже в скриптах, а не движке). Надеюсь, объяснил довольно понятно:rolleyes:

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

@ARTLantist 

Объясненние то понятное, но зачем это тебе? Просто поясни, зачем???

5 часов назад, ARTLantist сказал(а):

перемещение предмета из одной ячейки инвентаря в другую (именно в рюкзаке)

Начнем с того, что в инвентаре нет ячеек. Инвентарь (класс CInventory) просто содержит список предметов, и методы работы с ним.

Интерфейс инвентаря (класс CUIInventoryWnd) - так же никаких ячеек не содержит, в нем есть элемент CUIDragDropListEx, "сетка инвентаря".

Который в себе содержит список (опять :) ) элементов-иконок, и поле на котором они рисуются... ячеек нет, даже в нем.

Есть просто нарисованная сетка... И список иконок, каждая со своими координатами. Перебирая этот список, и сравнивая координаты каждой, с некими искомыми координатами, можно найти совпадения-пересечения... ) А класс CUIDragDropListEx так называется не случайно, а в том числе потому что уже умеет отслеживать всяческие перемещения иконок с одного места на другое. И в принципе способен добыть координаты одного и другого события.

Но возвращаемся мы все к тому же. В инвентаре нет ячеек... Ты можешь отследить, что какой-то итем перетащили на другой какой-то итем или в какой-то другой слот/другое окно. Но отследить перетаскивание на ячейку, нельзя. Нет такой сущности.

 

Можно конечно, создать... если зачем-то надо. Но тут я присоединяюсь к вопросу постом выше.

2 часа назад, Zander_driver сказал(а):

Ты можешь отследить, что какой-то итем перетащили на другой какой-то итем или в какой-то другой слот/другое окно

ну в принципе я этого и хотел в конечном итоге)

 

7 часов назад, AndreySol сказал(а):

Просто поясни, зачем???

Посмотри на тот же СоС, в котором арты кладутся в СИМК и другие контейнеры с помощью перетягивания арта на контейнер в инвентаре (про доп.кнопки на них я вообще молчу), или возьмём ДА, в котором убрано объединение одинаковых предметов в инвентаре, да и в принципе многие "съедобные" предметы имеют несколько использований, и их тоже можно объединять, чтобы не засорять инвентарь (например две водки на одно использование объединить в одну на 2). Вот для подобного мне и нужно.

2 часа назад, Zander_driver сказал(а):

ячеек нет, даже в нем.

Есть просто нарисованная сетка

Ну это уже прелести моего объяснения

4 часа назад, Zander_driver сказал(а):

Начнем с того, что в инвентаре нет ячеек

Вынужден оспорить это утверждение. Все классы с наличием Cell(ячейка) в названии - это тогда что по вашему?

Только что, AndreySol сказал(а):

Все классы с наличием Cell(ячейка) в названии - это тогда что по вашему?

Не знаете, серьезно? :) А из наблюдения содержимого-кода, этих классов, не видно?

Это иконка. Некого итема, имеющая координаты и размеры. О том, что иконка может иметь размеры в сколько угодно, в принципе, клеток по вертикали и горизонтали, надеюсь напоминать не нужно.

Ячейкой же, в этом контексте, следовало бы называть нечто, всегда имеющее размер в 1 х 1 клетку сетки инвентаря. И где же такой класс? нет такого.

1 час назад, ARTLantist сказал(а):

арты кладутся в СИМК и другие контейнеры с помощью перетягивания арта на контейнер в инвентаре (про доп.кнопки на них я вообще молчу), или возьмём ДА, в котором убрано объединение одинаковых предметов в инвентаре

Перетягивание итема на итем - по-моему, уже и так есть. Метод EqualTo и возможность его переписать, тем более есть. Никаких новых колбеков создавать для всего перечисленного, не требуется. Во всяком случае не обязательно :rolleyes:

Кнопки дополнительные тоже можно при желании добавить на что угодно.

 

Хотя, опять же - зачем кнопки, на иконке? PropertiesBox же есть.

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

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

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...