Делаю способность которая навешивает щит на окружающих союзников в зависимости от разума героя. Взял за основу свиток защиты, сделал ей определённое количество уровней. По итогу призываю дамика которому даётся способность уровень = разум героя и он должен её кастовать, но столкнулся с проблемой. Не могу заставить его кастовать именно эту способность. В интернете нашёл функцию IssueImmediateOrderById которая должна заставлять кастовать способность без уточнения цели, я вроде всё прописал как надо, но он не хочет этого делать. (я знаю что в способности "Рёв" можно подкрутить защиту, но я хотел бы понять, почему команда не работает)

Не у всех способностей приказ имеет строковой эквивалент, как например у рёва: "roar"=852164, способности предметов как раз к таким относятся, соответственно, как сказал quq_CCCP, нужно сначала узнать нужный id и использовать вышеупомянутую функцию в custom script или jass. Таким образом, для свитка защиты это будет IssueImmediateOrderById(unit, 852269)
`
ОЖИДАНИЕ РЕКЛАМЫ...
32
Код в студию, приказ способности можно узнать банальным дебагом, просто триггер с событием юнит отдал приказ, и дебаг сообщением с номером приказа, берем юзаем свиток защиты ручками и смотрим.
8
Не у всех способностей приказ имеет строковой эквивалент, как например у рёва: "roar"=852164, способности предметов как раз к таким относятся, соответственно, как сказал quq_CCCP, нужно сначала узнать нужный id и использовать вышеупомянутую функцию в custom script или jass. Таким образом, для свитка защиты это будет IssueImmediateOrderById(unit, 852269)
Принятый ответ
1
Всё заработало, большое спасибо, ниже частичка кода.

Код в студию, приказ способности можно узнать банальным дебагом, просто триггер с событием юнит отдал приказ, и дебаг сообщением с номером приказа, берем юзаем свиток защиты ручками и смотрим.
Я кстати пытался это сделать, но мне за все действия писало 0
Загруженные файлы
8
function Trig_gnmhd_Actions takes nothing returns nothing
  call BJDebugMsg(OrderId2String(GetIssuedOrderId()) + " " + I2S(GetIssuedOrderId()))
endfunction

function InitTrig_gnmhd takes nothing returns nothing
  set gg_trg_gnmhd = CreateTrigger()
  call TriggerRegisterAnyUnitEventBJ(gg_trg_gnmhd, EVENT_PLAYER_UNIT_ISSUED_ORDER)
  call TriggerAddAction(gg_trg_gnmhd, function Trig_gnmhd_Actions)
endfunction
Чтобы оставить комментарий, пожалуйста, войдите на сайт.