Пользуюсь этой функцией --> call GroupEnumUnitsInRange(), пикаю юнитов в радиусе, ну и пикает вполне себе, всех кроме москитов. Есть ли другая функция, с помощью которой можно решить этот вопрос?

LainMikoroso, ты совсем нуб? Или хочешь меня извести? На jass пишет блин....
Да ты чертовски догадлив, 1 триггер куда мы суем события на каждого созданного даммика, события сидят на юнитах - нет юнита, нет события... (кароче если у вас меньше 10000+событий это неважно), так же это событие требует фильтр, создай фильтр, такой же как я предложил выше, только с проверкой что даммик не сдох...
`
ОЖИДАНИЕ РЕКЛАМЫ...
32
native TriggerRegisterUnitInRange takes trigger whichTrigger, unit whichUnit, real range, boolexpr filter returns event
14
quq_CCCP:
native TriggerRegisterUnitInRange takes trigger whichTrigger, unit whichUnit, real range, boolexpr filter returns event
TriggerRegisterUnitInRangeSimple
А вот это что такое?
>Simple
LainMikoroso:
TriggerRegisterUnitInRange
Что мне с этим терь делать?При инициализации создать триггер и туда добавлять события при каждом создавании юнита?(А можно потом событие удалить потом будет?)
32
Принятый ответ
LainMikoroso, ты совсем нуб? Или хочешь меня извести? На jass пишет блин....
Да ты чертовски догадлив, 1 триггер куда мы суем события на каждого созданного даммика, события сидят на юнитах - нет юнита, нет события... (кароче если у вас меньше 10000+событий это неважно), так же это событие требует фильтр, создай фильтр, такой же как я предложил выше, только с проверкой что даммик не сдох...
14
ты совсем нуб? Или хочешь меня извести? На jass пишет блин....
Да ты чертовски догадлив, 1 триггер куда мы суем события на каждого созданного даммика, события сидят на юнитах - нет юнита, нет события... (кароче если у вас меньше 10000+событий это неважно), так же это событие требует фильтр, создай фильтр, такой же как я предложил выше, только с проверкой что даммик не сдох...
У меня 10000+ событий, будет...Что делать?
14
да ну тебя нафиг....
Всмысле, я серьезно. Как очистить события?
quq_CCCP:
LainMikoroso, да ну тебя нафиг....
Или потом просто триггер ремувнуть и новый создать?
32
LainMikoroso, не надо, нет юнита = нет события, юнита надо удалить...
14
не надо, нет юнита = нет события, юнита надо удалить...
Если юнит удаляется, то и событие автоматически, верно?
27
есть еще один способ (это мне пришло в голову, вообще-то давно, но я это не реализовывал)
пример
  1. берем GroupPickUnitsOfPlayer про которую сказал бедный quq_CCCP,
  2. в этой функции прописываем фильтр
  3. в фильтре проверяем попала ли точка юнита Caster в круг
function Find_Dummy takes nothing returns nothing
local real x1 = GetUnitX(Caster)
local real y1 = GetUnitY(Caster)
local real x2 = GetUnitX(GetFilterUnit())
local real y2 = GetUnitY(GetFilterUnit())

local real dx = x2 - x1
local real dy = y2 - y1

local real r = 500. //здесь указываем радиус (сами укажите) !!!

return (dx*dx + dy*dx < r*r)
endfunction
...
set Caster = GetTriggerUnit() //эта глобалка юнита
call GroupEnumUnitsOfPlayer( grp, pl, Condition( function Find_Dummy ))
...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.