задумка такая, юнит строит здание("врата"), здание("врата") создает "портал"(полагаю юнита со способностью москиты) в любую точку карты (догадываюсь через скил врата архимонда), и при ПКМ на "врата", юниты появляются у "портала", как это реализовать(мб как-то связано со стандартным скилом "перемещение через портал" но ведь по умолчанию он только к областям тпшит)?

  1. Как триггерно переместить воинов через портал?
Awrp (Перемещение через портал)
Эта способность может быть добавлена в любой момент любой боевой единице. Затем при помощи функций WaygateSetDestination и WaygateActivate настраивается перемещение. Блокираторы пути могут использоваться для запрета перемещения летающих боевых единиц.
function SetupWaygate takes unit u, unit target returns nothing
call UnitAddAbility(u, <waygate ability>)
call UnitAddAbility(u, 'Aivs')
call UnitAddAbility(u, 'Agho')
call UnitAddAbility(u, 'Aloc')
call WaygateSetDestination(u, GetUnitX(target), GetUnitY(target))
call WaygateActivate(u, true)
endfunction

function ConnectRects takes rect left, rect right returns nothing
local unit lu = CreateUnit(Player(15), 'ncop', GetRectCenterX(left), GetRectCenterY(left), 0)
local unit ru = CreateUnit(Player(15), 'ncop', GetRectCenterX(right), GetRectCenterY(right), 0)
call SetupWaygate(lu, ru)
call SetupWaygate(ru, lu)
endfunction
немного подправил код: удалил утечки и оптимизировал – прим. alexkill
Из раздела Проводник по способностям, в общем, можно, и не обязательно в область. Для запрета на перемещение воздушных, можно не обязательно добавлять блокираторы, а можно нарисовать порталу большую сине-зеленую карту пути.
`
ОЖИДАНИЕ РЕКЛАМЫ...
26
Стандартный портал вроде как не сможешь генерировать в карте (как те нейтральные порталы, что стоят заранее).
А вот портал со скилом вполне возможно, если использовать телепорт на подобии призыва как у предмета... не помню как называется, как в кампании за Артеса, когда он взял Фростморн и с наемниками корабли уничтожал и там был предмет с телепортом из области к себе. Тут же можно ту-же фишку использовать думаю. При этом система может быть спрятана от игрока, типа в порталах будет только кнопка "телепортировать" а дальше ты спавнишь даммика, который и телепортирует юнитов от одного портала в другой. Но надо контролировать в переменных, какой портал с каким связан и где что нажали.
Ответы (1)
2
konvan5, способность зов тьмы если правильно понял (зеленая кнопка и эффект) , окей а как ее спрятать, чтоб от пкм работала на "вратах", хотя скил только у дамми "портала"?
23
  1. Как триггерно переместить воинов через портал?
Awrp (Перемещение через портал)
Эта способность может быть добавлена в любой момент любой боевой единице. Затем при помощи функций WaygateSetDestination и WaygateActivate настраивается перемещение. Блокираторы пути могут использоваться для запрета перемещения летающих боевых единиц.
function SetupWaygate takes unit u, unit target returns nothing
call UnitAddAbility(u, <waygate ability>)
call UnitAddAbility(u, 'Aivs')
call UnitAddAbility(u, 'Agho')
call UnitAddAbility(u, 'Aloc')
call WaygateSetDestination(u, GetUnitX(target), GetUnitY(target))
call WaygateActivate(u, true)
endfunction

function ConnectRects takes rect left, rect right returns nothing
local unit lu = CreateUnit(Player(15), 'ncop', GetRectCenterX(left), GetRectCenterY(left), 0)
local unit ru = CreateUnit(Player(15), 'ncop', GetRectCenterX(right), GetRectCenterY(right), 0)
call SetupWaygate(lu, ru)
call SetupWaygate(ru, lu)
endfunction
немного подправил код: удалил утечки и оптимизировал – прим. alexkill
Из раздела Проводник по способностям, в общем, можно, и не обязательно в область. Для запрета на перемещение воздушных, можно не обязательно добавлять блокираторы, а можно нарисовать порталу большую сине-зеленую карту пути.
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.