Привет народ. на всех сборках перестало определять мобцов рядом по условию "количество панелей существ в радиусе"
Всё остальное работает исправно( Подскажите куда копать? в сборках ничего не менялось. Новые создавал для проверки- не помогло.
Определение количесва врагов в радиусе
Определение количесва врагов в радиусе
- Вложения
-
- Снимок экрана 2023-11-25 003749.png (17.03 КБ) 1628 просмотров
Re: Определение количесва врагов в радиусе
Привет. Это приколюха от близов, итемы в бою теперь не возвращают дистанцию.
Можно конечно сделать проверку через какой нибудь из своих спеллов до неймплейтов, но у вара такого спелла вроде нету. Если тебя устроит, то могу предложить сделать наоборот, проверить сколько неймплейтов в бою не попадают в радиус твоего спелла ("Героический бросок" 8-30м). Получается условие будет срабатывать когда мобы находятся возле тебя до 8 метров или если дальше 30. Не думаю что сильно часто будет ситуация встречаться когда второй моб на такой большой дистанции будет стоять.
UPD
если к этому добавить второе условие с проверкой дистанции до неймплейтов спелла ("Провокация" 0-30м) тогда будет всё нормально работать в любой ситуации.
Можно конечно сделать проверку через какой нибудь из своих спеллов до неймплейтов, но у вара такого спелла вроде нету. Если тебя устроит, то могу предложить сделать наоборот, проверить сколько неймплейтов в бою не попадают в радиус твоего спелла ("Героический бросок" 8-30м). Получается условие будет срабатывать когда мобы находятся возле тебя до 8 метров или если дальше 30. Не думаю что сильно часто будет ситуация встречаться когда второй моб на такой большой дистанции будет стоять.
Код: Выделить всё
function CheckUnitsIsNotInRange(spellid)
local UnitsInRange = 0
for i = 1,40 do
if UnitExists("nameplate"..i) then
if MyIsSpellInRange(spellid, "nameplate"..i) == 0 and UnitAffectingCombat("nameplate"..i) then
UnitsInRange = UnitsInRange + 1
end
end
end
return UnitsInRange
end
если к этому добавить второе условие с проверкой дистанции до неймплейтов спелла ("Провокация" 0-30м) тогда будет всё нормально работать в любой ситуации.
Код: Выделить всё
function CheckUnitsInSpellRange(spellid)
local UnitsInRange = 0
for i = 1,40 do
if UnitExists("nameplate"..i) then
if MyIsSpellInRange(spellid, "nameplate"..i) == 1 and UnitAffectingCombat("nameplate"..i) then
UnitsInRange = UnitsInRange + 1
end
end
end
return UnitsInRange
end
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость