Добавлен
Для механики одного спела нужно чтобы дамик юзал спел на того кто использует спел.
Я так понимаю это триггерно надо делать через Order.
Но там в значении нет мне нужной способности (там где выбирается какую способность юнит будет юзать на другого).
Как быть?

Принятый ответ

Сделал наработку. Так как у этой способности нет своего строчного приказа, то она применяется через цифру 852274.
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
19
5 лет назад
2
Похожие вопросы:

ответ
А касательно остальной части, если UnitUserData нигде не используется, создаешь массив юнитов и отрядов. Массив юнитов забиваешь своими капитанами. В UnitUserData капитана пихаешь его порядковый номер в массиве. Создаешь группу юнитов для этого капитана.
  1. Добавление через каст способности.
Я бы делал через 2 разные абилки с одной и той же позицией в интерфейсе. Пока нужный тебе юнит не является частью отряда - у него таргетная абилка при касте которой на капитана он добавляется в группу соответствующего капитана и получает 2ю абилку взамен первой.
Касательно выделения этих пехотинцев - можно намутить что-то с передачей контроля или создать триггер, который будет снимать выделение с юнитов у которых есть 2я абилка. Если ты хочешь чтобы по одиночке можно было выделять пехотинцев - можешь создать переменную для каждого игрока с капитанами, куда будет просто записываться последний выбранный юнит. При снятии выделения - проверять не выбран ли этот же юнит, в случае чего не снимать выделение. Правда не уверен будет ли корректно работать :> В крайнем случае - будет работать в три клика вместо двух. Если я не ошибаюсь.
Касательно поведения этих пехотинцев - что-то реально стоящее сделать сложно. Возможно, но мне не с руки все расписывать :> Простейший вариант - приказывать пехотинцам после добавления в группу следовать за капитаном.
  1. Добавление через атаку капитана
Триггер, проверяющий что капитан получил урон или атакован, как угодно. Далее любым способом проверяешь есть ли в группе этого капитана юниты. Если нет - выбираешь всех пехотинцев N радиусе, добавляешь в отряд, заменяешь абилку/либо просто приказываешь кастануть в капитана первую абилку.
ответ
Разобрался сам.
ответ
native UnitHasItem takes unit whichUnit, item whichItem returns boolean
function UnitHasItemOfTypeBJ takes unit whichUnit, integer itemId returns boolean
    return GetInventoryIndexOfItemTypeBJ(whichUnit, itemId) > 0
endfunction

// Данная функция утечна, так как indexItem не обнуляется
function GetInventoryIndexOfItemTypeBJ takes unit whichUnit, integer itemId returns integer
    local integer index
    local item    indexItem

    set index = 0
    loop
        set indexItem = UnitItemInSlot(whichUnit, index)
        if (indexItem != null) and (GetItemTypeId(indexItem) == itemId) then
            return index + 1
        endif

        set index = index + 1
        exitwhen index >= bj_MAX_INVENTORY
    endloop
    return 0
endfunction
function UnitHasItemOfType takes unit whichUnit, integer itemId returns boolean
    local integer index = 0
    loop
        if GetItemTypeId(UnitItemInSlot(whichUnit, index)) == itemId then
            return true
        endif
        set index = index + 1
        exitwhen index == bj_MAX_INVENTORY
    endloop
    return false
endfunction

// Можно ещё так написать
function UnitHasItemOfType takes unit whichUnit, integer itemId returns boolean
    local integer index = 0
    loop
        exitwhen GetItemTypeId(UnitItemInSlot(whichUnit, index)) == itemId
        set index = index + 1
        exitwhen index == bj_MAX_INVENTORY
    endloop
    return index < bj_MAX_INVENTORY
endfunction
ответ
Разобрался, может кому-то пригодится

0
26
5 лет назад
0
ищите на основе чего делали способность
0
13
5 лет назад
0
Hate:
ищите на основе чего делали способность
Способность - двойник. (способность жезла иллюзий)
0
27
5 лет назад
0
Все способности триггерно кастуются через приказ, смотрим Order ID способности и указываем в триггере
0
4
5 лет назад
0
Сделал наработку. Так как у этой способности нет своего строчного приказа, то она применяется через цифру 852274.
Загруженные файлы
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.