Сборка из нескольких предметов одного вида

Я знаю как сделать обычную сборку, типа перчатки скорости + сфера огня = перчатки огня. Это я знаю, а как сделать из двух одинаковых предметов, к примеру боевые когти (3) + боевые когти (3) = боевые когти (6), нет.
Кто может объяснить? Желательно с картой-наработкой или скринами.

Ответ

делай наработку, прошу тебя)
Ну что за народ.
Ладно, попытка - не пытка. Жди.

Ну вот, готово.
Здесь:
  • ItemCombine1 - то, чего достаточно для разных предметов.
  • ItemСombine2 - учитывает, что предметы могут бить одинаковы.
Минусом подобного на GUI есть то, что на каждый рецепт нужен отдельный триггер.
nvc123 здесь однозначно прав.
Примеры подобного на JASS есть на сайте или могу потом показать коды собственного производства.


Views: 5 693

nvc123 #1 - 7 years ago -2
Голосов: +0 / -2
считаем количество когтей+3 у юнита
если их 2 то удаляем эти 2 итема и создаём новый итем(когти+6)
на гуи подобная вещь смотрится очень не красиво
и работает также
так что юзай джасс
а то вы там понаделаете по триггеру на каждый итем
а потом ноете что карта лагает
Локен #2 - 7 years ago 0
Голосов: +0 / -0
nvc123, а нельзя сделать на ГУИ пример?
nvc123 #3 - 7 years ago -2
Голосов: +0 / -2
SAGOR0, нет
я не знаю гуи
да и мои глаза не выдержат подобного
могу скинуть пример сиджасс
Локен #4 - 7 years ago 0
Голосов: +0 / -0
nvc123, не надо джасса)
PhysCraft #5 - 7 years ago 0
Голосов: +0 / -0
SAGOR0, не тупи.
Поменяй в примере, какой знаешь, оба предмета на боевые когти (+3) и результат рецепта на боевые когти (+6) и будет тебе хорошо. Ибо в них один принцип: А + Б = В. Просто как двери.
nvc123 #6 - 7 years ago 0
Голосов: +0 / -0
PhysCraft, а вот и нет
в примере идёт проверка
есть ли итем у юнита
у юнита 1 когти+3
проверка 1 итем есть
проверка 2 итем есть
следовательно он скрафтит когти+6 из одних когтей+3
PhysCraft #7 - 7 years ago 0
Голосов: +0 / -0
Просто проверяй на наличие ингредиенты. При поиске похожих проверяй, разные ли номера ячеек инвентаря.
Да и примера он не показал, хз как он себе сборку представляет, можно по всякому проверять.
Локен #8 - 7 years ago 0
Голосов: +0 / -0
Я ничего не понял. Кроме ячеек, но это плохой вариант, PhysCraft, сделай наработку, прошу тебя)
PhysCraft #9 - 7 years ago 1
Голосов: +1 / -0

делай наработку, прошу тебя)
Ну что за народ.
Ладно, попытка - не пытка. Жди.

Ну вот, готово.
Здесь:
  • ItemCombine1 - то, чего достаточно для разных предметов.
  • ItemСombine2 - учитывает, что предметы могут бить одинаковы.
Минусом подобного на GUI есть то, что на каждый рецепт нужен отдельный триггер.
nvc123 здесь однозначно прав.
Примеры подобного на JASS есть на сайте или могу потом показать коды собственного производства.
Прикрепленные файлы
nvc123 #10 - 7 years ago 0
Голосов: +0 / -0
PhysCraft, на гуи тоже можно сделать 1 триггером
но мне страшно представить как это будет выглядеть
PhysCraft #11 - 7 years ago (изм. ) 0
Голосов: +0 / -0
Ну почему, можно сделать рекурсивный перебор массива рецептов, то есть:
  • добавить еще одну переменную - индекс элемента массива
  • в конце триггера увеличивать индекс на 1 и снова вызывать этот же триггер без условий.
  • и так пока не дойдем до конца массива.
Но теперь если предмети подбирать бистро, то варик офигеет от кучи циклов проверки.
nvc123 #12 - 7 years ago 1
Голосов: +1 / -0
PhysCraft, не так делается
делаем бд
ищем все предметы которые можно скрафтить из того что мы подняли
и проверяем каждый из этих рецептов
того получаем не более 10 рецептов при более чем 100 предметах которые нужно крафтить
PhysCraft #13 - 7 years ago 0
Голосов: +0 / -0
Да, ты прав, nvc123. Сразу видно, кто настоящий программист!
nvc123 #14 - 7 years ago 1
Голосов: +1 / -0
а если предмет используется лишь в 1 сборке то вообще проверяем лишь 1 предмет вместо того чтобы проверять все 100