Добавлен
call GroupEnumUnitsInRange(g,GetUnitX(u),GetUnitY(u),250,null) 
loop 
	set n = FirstOfGroup(g)
	exitwhen n == null 
	if IsUnitEnemy(n,GetOwningPlayer(u)) == true then
		call UnitDamageTarget(u,n,true,false,attack,damage,weapon) 
		set ef = AddSpecialEffectTarget("Objects\\Spawnmodels\\Critters\\Albatross\\CritterBloodAlbatross.mdl", n ,"origin")
		call DestroyEffect(ef)
	endif 
	call GroupRemoveUnit(g,n)
	set n = FirstOfGroup(g)
endloop
использую эту схему для внесения врагов в группу юнитов но баг в том что спецэфекты и на трупиках появляются как избежать такого (желательно без проверки мертв не мёртв)

function IsUnitDead takes unit u returns boolean
return GetUnitTypeId(u) == 0 or IsUnitType(u, UNIT_TYPE_DEAD)
endfunction
function IsTarget takes unit u,unit d returns boolean
return not IsUnitType(u,UNIT_TYPE_ANCIENT) and not IsUnitDead(u) and not IsUnitType(u, UNIT_TYPE_STRUCTURE) and not IsUnitType(u, UNIT_TYPE_MAGIC_IMMUNE) and IsUnitEnemy(u, GetOwningPlayer(d))
endfunction
всё таки без проверок не обойтись
`
ОЖИДАНИЕ РЕКЛАМЫ...
24
Для начала яснее скажи, что хочешь сделать.
В общем виде.
2
короче пасивка при ударе с процентным шансом я наношу урон от силы и на юнитах вокруг от меня в 250 получают урон + над ними появляется эфект крови но вот незадача эфект появляется на разлагающихся юнитах как мне сделать так чтобы мертвяки не получали этот эфект и желательно без лишних проверок
15
и желательно без лишних проверок
нда.
function IsUnitDead takes unit u returns boolean
return GetUnitTypeId(u) == 0 or IsUnitType(u, UNIT_TYPE_DEAD)
endfunction
function IsTarget takes unit u,unit d returns boolean
return not IsUnitType(u,UNIT_TYPE_ANCIENT) and not IsUnitDead(u)  and not IsUnitType(u, UNIT_TYPE_STRUCTURE) and not IsUnitType(u, UNIT_TYPE_MAGIC_IMMUNE) and IsUnitEnemy(u, GetOwningPlayer(d))
endfunction
Пользуйтесь на здоровье.
2
function IsUnitDead takes unit u returns boolean
return GetUnitTypeId(u) == 0 or IsUnitType(u, UNIT_TYPE_DEAD)
endfunction
function IsTarget takes unit u,unit d returns boolean
return not IsUnitType(u,UNIT_TYPE_ANCIENT) and not IsUnitDead(u) and not IsUnitType(u, UNIT_TYPE_STRUCTURE) and not IsUnitType(u, UNIT_TYPE_MAGIC_IMMUNE) and IsUnitEnemy(u, GetOwningPlayer(d))
endfunction
всё таки без проверок не обойтись
Принятый ответ
11
Ээх.. Вот если бы можно было свои условия создавать, чтобы не добавлять каждые по отдельности.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.