Sirroelivan
Gunnerkrigg Court
- Reaction score
- 95
I've made a passive skill called sunder armor. Whenever the hero attacks, the target gains an amor debuff that gets stronger with every time the hero hits the target. To do this I've made a dummy passive ability for the skill and a faerie fire with 30 lvl (debuff improves up to 5 times, skill has 6 levels) with a different buff for each level. I've put the buffs in an array and am using this trigger.
The problem is, whenever the hero with sunder armor attack for the first time in the game, the screen freezes for a moment, how can i prevent this.
Code:
Sunder Armor
Events
Unit - A unit Is attacked
Conditions
(Unit-type of (Attacking unit)) Equal to Fighter
(Level of Sunder Armor for (Attacking unit)) Greater than 0
Actions
Set Has_Sunder = False
For each (Integer A) from 1 to 30, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Attacked unit) has buff Sunder_Armor[(Integer A)]) Equal to True
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Integer A) Less than ((Level of Sunder Armor for (Attacking unit)) x 5)
Then - Actions
Set Point = (Position of (Attacking unit))
Unit - Create 1 Dummy Caster for (Owner of (Attacking unit)) at Point facing Default building facing degrees
Custom script: call RemoveLocation(udg_Point)
Unit - Add Sunder Armor (Buff) to (Last created unit)
Unit - Set level of Sunder Armor (Buff) for (Last created unit) to ((Integer A) + 1)
Unit - Order (Last created unit) to Night Elf Druid Of The Talon - Faerie Fire (Attacked unit)
Unit - Add a 2.00 second Generic expiration timer to (Last created unit)
Set Has_Sunder = True
Else - Actions
Set Has_Sunder = True
Else - Actions
Do nothing
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Has_Sunder Equal to False
Then - Actions
Set Point = (Position of (Attacking unit))
Unit - Create 1 Dummy Caster for (Owner of (Attacking unit)) at Point facing Default building facing degrees
Custom script: call RemoveLocation(udg_Point)
Unit - Add Sunder Armor (Buff) to (Last created unit)
Unit - Set level of Sunder Armor (Buff) for (Last created unit) to ((Level of Sunder Armor for (Attacking unit)) - 4)
Unit - Order (Last created unit) to Night Elf Druid Of The Talon - Faerie Fire (Attacked unit)
Unit - Add a 2.00 second Generic expiration timer to (Last created unit)
Set Has_Sunder = True
Else - Actions
Do nothing
The problem is, whenever the hero with sunder armor attack for the first time in the game, the screen freezes for a moment, how can i prevent this.