Hi,
I've got a spell which spawns a dummy unit which does 24-24 damage with its normal attack, is ranged, has a missile attack, etc, and receives the barrage ability with a trigger.
the multi target attacking part of the barrage works perfectly fine, however, the bonus damage which it is supposed to deal via the "damage per target" in the barrage ability does not get applied.
for testing purposes, I set tooltips for barrage ability lvl 1/2/3 to "1", "2" and "3" and the bonus damage it is supposed to deal to 1/25/99999
Level 1 is not even dealing 25 damage to targets with 0 armor, lvl 2 neither 49 and lvl 3 does not oneshot things.
the spell however does get correctly upgraded, since the tooltip changes from 1 to 2 to 3 and the number of attacked targets increases.
But the damage stays at the 24 dmg of the units base attack.
this is the trigger to spawn the unit and level the ability, but I don't think I could have messed something up with that:
I've got a spell which spawns a dummy unit which does 24-24 damage with its normal attack, is ranged, has a missile attack, etc, and receives the barrage ability with a trigger.
the multi target attacking part of the barrage works perfectly fine, however, the bonus damage which it is supposed to deal via the "damage per target" in the barrage ability does not get applied.
for testing purposes, I set tooltips for barrage ability lvl 1/2/3 to "1", "2" and "3" and the bonus damage it is supposed to deal to 1/25/99999
Level 1 is not even dealing 25 damage to targets with 0 armor, lvl 2 neither 49 and lvl 3 does not oneshot things.
the spell however does get correctly upgraded, since the tooltip changes from 1 to 2 to 3 and the number of attacked targets increases.
But the damage stays at the 24 dmg of the units base attack.
this is the trigger to spawn the unit and level the ability, but I don't think I could have messed something up with that:
JASS:
scope BoulderofDoerk initializer init
private function conditions takes nothing returns boolean
return GetSpellAbilityId() == 039;A00F039;
endfunction
private function actions takes nothing returns nothing
local unit dummy
local location spawnloc=GetSpellTargetLoc()
set dummy=CreateUnitAtLoc(GetOwningPlayer(GetTriggerUnit()), 039;e005039;, spawnloc, 270)
call SetUnitAbilityLevel(dummy, 039;A00E039;, GetUnitAbilityLevel(GetTriggerUnit(), 039;A00F039;))
call UnitApplyTimedLife(dummy, 0, (GetUnitAbilityLevel(GetTriggerUnit(), 039;A00F039;)*2+6))
set dummy=null
set spawnloc=null
endfunction
//===========================================================================
private function init takes nothing returns nothing
local trigger t = CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(t, EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(t, Condition(function conditions))
call TriggerAddAction(t, function actions)
endfunction
endscope