HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Chain Incinerate

11-23-2007, 05:13 PM#1
JetFangInferno
I wanted to make a trigger that, when a unit dies under the incinerate buff, creates a dummy that damages nearby enemies. Basically, evertime a unit dies under the incenerate buff, another explosion appears on the dying unit and damages nearby enemies. The explosion damage is based on 2 dummy units: a half bomb and a full bomb. The full bomb does full damage in a smaller area while the half bomb does half damage in a larger area. My problem is it's not working. Here's what I got so far.

Trigger:
Bomb
Collapse Events
Unit - A unit Dies
Collapse Conditions
((Dying unit) has buff Incinerate) Equal to True
Collapse Actions
Set Number[(Level of Incinerate for (Killing unit))] = (Real((Level of Incinerate for (Killing unit))))
Set IncineratePoint = (Position of (Dying unit))
Set FullBombType[1] = Full Bomb [ 1 ]
Set FullBombType[2] = Full Bomb [ 2 ]
Set FullBombType[3] = Full Bomb [ 3 ]
Set HalfBombType[1] = Half Bomb [ 1 ]
Set HalfBombType[2] = Half Bomb [ 2 ]
Set HalfBombType[3] = Half Bomb [ 3 ]
Special Effect - Create a special effect at IncineratePoint using Abilities\Spells\Other\Incinerate\FireLordDeathExplode.mdl
Special Effect - Destroy (Last created special effect)
Unit - Create 1 FullBombType[(Level of Incinerate for (Killing unit))] for (Owner of (Killing unit)) at IncineratePoint facing Default building facing degrees
Unit - Order (Last restored unit) to Neutral - Slam
Unit - Create 1 HalfBombType[(Level of Incinerate for (Killing unit))] for (Owner of (Killing unit)) at IncineratePoint facing Default building facing degrees
Unit - Order (Last restored unit) to Neutral - Slam
Custom script: call RemoveLocation( udg_IncineratePoint )
11-23-2007, 05:24 PM#2
Fireeye
As far as i know a dying unit has no buff on it, so the condition will always return false and never fire.
In my oppinion there are 2 solutions.
1. You could use a dummy with black arrows and detect if a unit entered the map.
2. You could try using damage detection and compare its HP with .405 (not sure about this one).
11-23-2007, 05:28 PM#3
moyack
It's curious, lately many people are trying to get this effect :)

Unfortunately when the units with the buff die, the buff dissapears too. so You have to do the following: Create a periodic timer which stores the units with the buff and after a short time, check if the unit is dead.

This can be done easily with vJASS, in GUI.... I think is too much complicated.

EDIT: FireEye's first solution is a good one, and we can do it more specific: with the event summoned unit.
11-23-2007, 06:56 PM#4
JetFangInferno
how bout I do something like this?
event
- if a unit is attacked
conditions
- unit's hp is really low or something
- unit has buff
action
- ...

would that work?

another problem someone said was that I based the explosion off of neutral slam. Is that another reason why it's not working?
11-23-2007, 07:17 PM#5
Pyrogasm
No, the "Attacked" event fires before the damage happens. This would work, though:
Trigger:
Collapse Events
Time - Every 0.20 seconds of game-time
Conditions
Collapse Actions
Collapse Unit Group - Pick every unit in (IncinerateBuffGroup) and do (Actions)
Collapse Loop - Actions
Collapse If (All Conditions are true) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
((Picked Unit) has buff Incinerate) equal to false
Collapse Then - Actions
Unit Group - Remove (Picked Unit) from (IncinerateBuffGroup)
Else- Actions
Custom script: set bj_wantDestroyGroup = true
Collapse Unit Group - Pick every unit in (Units in (Playable Map Area) matching ((((Matching Unit) has buff Incinerate) equal to true) and ((Matching Unit) is in IncinerateBuffGroup) equal to false))) and do (Actions)
Collapse Loop - Actions
Unit Group - Add (Picked Unit) to (IncinerateBuffGroup)
Trigger:
Collapse Events
Unit - A unit dies
Collapse Conditions
((Triggering Unit) is in IncinerateBuffGroup) equal to true
Collapse Actions
----- Your Actions Here -----
11-23-2007, 08:01 PM#6
JetFangInferno
let me reword my question a bit. Lets say my hero is Hero A. There are 4enemy units: A, B, C, and D respectively. Hero A has Incinerate and successfully kills unit A. Because of Incinerate, Unit A explodes and does damage to Unit B, C, and D. Next, Hero A kills Unit B with incinerate and the resulting explosion kills B. Units C and D die because of the last explosion. I want the spell to detect when a unit dies by the Incinerate explosion and then creates a chain explosion on all units that die under the explosion. Is this possible in GUI?
11-23-2007, 09:59 PM#7
Pyrogasm
Yes. I'd tell you now, but I have no time.