JASS:
I used bribe's damage detection for this... basically what im trying to do is create a ministun over time in the shape of breathe of fire.
-
Set Damage Copy
-
Events
- Game - DamageModifierEvent becomes Equal to 1.00
-
Conditions
- DamageEventOverride Equal to False
-
Actions
-
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ((Triggering unit) Equal to (Random unit from g)) and ((Triggering unit) Equal to DamageEventTarget)
-
Then - Actions
- Set Point = (Position of (Triggering unit))
- Set TriggCheck = (TriggCheck + 1)
- Set DamageEventAmount = (DamageEventAmount - DamageEventAmount)
- Unit - Create 1 Dummy for (Owner of DamageEventSource) at Point facing (Position of (Triggering unit))
- Set DummyTemp = (Last created unit)
- Wait until ((DummyTemp is alive) Equal to True), checking every 0.10 seconds
- Unit - Add Dummy Storm Bolt to DummyTemp
- Unit - Add a 2.00 second Generic expiration timer to (Triggering unit)
- Custom script: call RemoveLocation (udg_Point)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
- For each (Integer A) from 1 to 60, do (Set timer = (timer + 1))
- Wait until (timer Equal to 60), checking every 1.00 seconds
- Set timer = 0
-
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ((Triggering unit) Equal to (Random unit from g)) and ((Triggering unit) Equal to DamageEventTarget)
-
Then - Actions
- Set Point = (Position of (Triggering unit))
- Set TriggCheck = (TriggCheck + 1)
- Unit - Create 1 Dummy for (Owner of DamageEventSource) at Point facing (Position of (Triggering unit))
- Set DummyTemp = (Last created unit)
- Wait until ((DummyTemp is alive) Equal to True), checking every 0.10 seconds
- Unit - Add Dummy Storm Bolt to DummyTemp
- Custom script: call RemoveLocation (udg_Point)
- Unit - Add a 2.00 second Generic expiration timer to (Triggering unit)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
- For each (Integer A) from 1 to 60, do (Set timer = (timer + 1))
- Wait until (timer Equal to 60), checking every 1.00 seconds
- Set timer = 0
-
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ((Triggering unit) Equal to (Random unit from g)) and ((Triggering unit) Equal to DamageEventTarget)
-
Then - Actions
- Set Point = (Position of (Triggering unit))
- Set TriggCheck = (TriggCheck + 1)
- Unit - Create 1 Dummy for (Owner of DamageEventSource) at Point facing (Position of (Triggering unit))
- Set DummyTemp = (Last created unit)
- Wait until ((DummyTemp is alive) Equal to True), checking every 0.10 seconds
- Unit - Add Dummy Storm Bolt to DummyTemp
- Custom script: call RemoveLocation (udg_Point)
- Unit - Add a 2.00 second Generic expiration timer to (Triggering unit)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
- For each (Integer A) from 1 to 60, do (Set timer = (timer + 1))
- Wait until (timer Equal to 60), checking every 1.00 seconds
- Set timer = 0
- Custom script: call DestroyGroup (udg_g)
-
Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
-
Events
-
Setup
-
Events
- Unit - A unit Starts the effect of an ability
-
Conditions
- (Ability being cast) Equal to Breath of Gloom (Neutral Hostile)
-
Actions
-
Unit Group - Pick every unit in (Units owned by (Triggering player)) and do (Actions)
-
Loop - Actions
- Unit Group - Add (Triggering unit) to g
-
Loop - Actions
-
Unit Group - Pick every unit in (Units owned by (Triggering player)) and do (Actions)
-
Events