Вобщем такая ситуация, есть несколько движущихся объектов(юнитов) и когда они рядом они взаимодействуют.
Для отключения возможности взаимодействия я использовал Generic Unit event Боевая единица (назовем ее к примеру unit2) - leave region position of unit1 300 300
А вот сработает ли триггер если регион отдалился сам, а unit2 остался стоять на месте? и если сработает, то тогда кто будет этой боевой единицей (для редактора)? Тот кто двигался(unit1) (получается же что он ушел от самого себя), или Unit2 который не двигался(но смог отдалиться)?

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

ApEJI, ты не двигаешь регион
вроде бы уже тебе отвечали в похожем вопросе
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
18
8 лет назад
2
Если координаты региона не обновлять, то будет считаться, что этот регион остался на месте (то есть его начальные координаты, когда он создаётся) - тогда unit1 может выйти из своего региона.
Или придётся создавать регион каждые Х секунд для проверки.
А можно попробовать делать проверку логикой, добавляя и удаляя юнитов в группу (Units in Range 300 of unit1, к примеру). В вопросе вариант с областью. А в этом ответе граница взаимодействия будет выглядеть не как квадрат, а как круг, что равномернее. Минус в том, что придётся использовать периодическое событие, так что нужно быть внимательнее с утечками (точка-позиция unit1, группа и то, что есть в последующих действиях триггера).
0
48
8 лет назад
0
А если поставить реакцию на отлов приказа, скажем "move"
0
10
8 лет назад
Отредактирован ApEJI
0
А если поставить реакцию на отлов приказа, скажем "move"
а мув куда? мне же нужно что бы регион премещался в след за юнитом мерить дистанцию до юнита переодически? будут лаги
А можно попробовать делать проверку логикой, добавляя и удаляя юнитов в группу (Units in Range 300 of unit1, к примеру). В вопросе вариант с областью. А в этом ответе граница взаимодействия будет выглядеть не как квадрат, а как круг, что равномернее. Минус в том, что придётся использовать периодическое событие, так что нужно быть внимательнее с утечками (точка-позиция unit1, группа и то, что есть в последующих действиях триггера).
для данной ситуации это к сожалению не вариант 100% залагает=(
Maniac_91:
Или придётся создавать регион каждые Х секунд для проверки.
На сколько я знаю функция jass addrect будет за это отвечать, но в дажсе мои навыки гдето между 0 и 0.002, как в таком случае делать clear rect? и если можно плиз кастом скрипт с примером для 2х областей
0
48
8 лет назад
0
ApEJI,
Так, поэтапно можно? Нужно что бы когда БЕ двигался, двигался регион? Или когда регион двигается, БЕ двигался в регион?
0
10
8 лет назад
Отредактирован Uber
0
molot39:
ApEJI,
Так, поэтапно можно? Нужно что бы когда БЕ двигался, двигался регион? Или когда регион двигается, БЕ двигался в регион?
Когда БЕ двигается - двигается регион - сейчас реализовал через jass регион вроде как двигается, но у других триггеров которые начинаются с Unit enter/leave region 0 реакции. вот мой убогий jаss:
function Trig_Move_Region1_Conditions takes nothing returns nothing
endfunction

function Trig_Move_Region1_Actions takes nothing returns nothing
    set gg_rct_Tel1RECT = RectFromCenterSizeBJ(GetUnitLoc(gg_unit_h005_0060), 600.00, 600.00)
endfunction

//===========================================================================
function InitTrig_Move_Region1 takes nothing returns nothing
    set gg_trg_Move_Region1 = CreateTrigger(  )
    call TriggerRegisterTimerEventPeriodic( gg_trg_Move_Region1, 0.40 )
    call TriggerAddAction( gg_trg_Move_Region1, function Trig_Move_Region1_Actions )
endfunction

есть кто?
0
48
8 лет назад
0
Тебе наверно проще двигать область без движения БЕ, так как смысла я не вижу как сможет БЕ выйти из области, которая бежит за ним.
0
24
8 лет назад
0
Если вопрос состоит в том, будет ли считаться, что юнит Б, находившийся в регионе, привязанном к юниту А, покинул область в случае если юнит А вместе с областью сдвинется прочь - да, будет считаться что юнит Б покинул область, не двигаясь.
0
28
8 лет назад
0
ApEJI, ты не двигаешь регион
вроде бы уже тебе отвечали в похожем вопросе
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.