• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!

[Trigger] 2 Spells, Incinerate and Voodoo Aura

Status
Not open for further replies.
Level 13
Joined
Jul 26, 2008
Messages
1,009
  • Dragonic Explosion
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Draconic Lance (Troll Dragoon)
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Triggering unit) Equal to (Dying unit)
          • (Real((Level of Draconic Lance (Troll Dragoon) for (Casting unit)))) Greater than or equal to 4.00
          • (Percentage life of (Targeted unit)) Less than or equal to 1.00
        • Then - Actions
          • Unit - Cause (Dying unit) to damage circular area after 1.00 seconds of radius 700.00 at (Center of (Region centered at (Position of (Dying unit)) with size (300.00, 300.00))), dealing (1000.00 x (((Real((Level of Draconic Lance (Troll Dragoon) for (Casting unit)))) - 3.00) x 750.00)) damage of attack type Spells and damage type Normal
          • Special Effect - Create a special effect attached to the origin of (Dying unit) using Megaflare_squished.mdx
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Triggering unit) Equal to (Dying unit)
            • Then - Actions
              • Unit - Cause (Dying unit) to damage circular area after 0.65 seconds of radius 300.00 at (Center of (Region centered at (Position of (Dying unit)) with size (300.00, 300.00))), dealing (50.00 + (40.00 x (Real((Level of Draconic Lance (Troll Dragoon) for (Casting unit)))))) damage of attack type Spells and damage type Normal
              • Special Effect - Create a special effect attached to the origin of (Dying unit) using Abilities\Spells\Other\Incinerate\FireLordDeathExplode.mdl
            • Else - Actions
This is the first skill, and it's still missing a condition in the if statements. I'm looking for any way to improve it, if it'll work properly, and how to add the If pieces I want. I can do JASS as well, I'm just not familiar with JASS spell making.

What I'm going for here is that the hero, a Troll Dragoon, blows Dragon's Breath onto a unit. The unit takes damage over five seconds and has a buff attached to it called Dragon's Breath.

If the hero throws Draconic Lance at the enemy (It's a Searing Arrow variant) and kills it, just like incinerate the unit explodes in a 300 radius and deals damage to all nearby enemies. I think I left out an If statement to control who the damage goes to.

However, if the hero skill is over level 4, and the target has less than 1% HP when it dies, then the dying unit will erupt into a Megaflare, dealing heavier damage in a larger area.

I can't figure out how to make it so it only works if the unit is under the effects of Dragon's Breath, and am wondering if there's a more efficient way to do this.

My other spell is a Voodoo spell for a healing hero.

  • Yoodu Voodoo
    • Events
      • Unit - A unit Begins channeling an ability
    • Conditions
      • (Ability being cast) Equal to Yoodu Voodoo (Troll Witchdoctor)
    • Actions
      • Unit - Set life of (Target unit of ability being cast) to ((Percentage life of (Target unit of ability being cast)) + (20.00 x (Real((Level of Yoodu Voodoo (Troll Witchdoctor) for (Casting unit))))))%
      • Wait 1.00 seconds
      • Unit - Set life of (Target unit of ability being cast) to ((Percentage life of (Target unit of ability being cast)) + (20.00 x (Real((Level of Yoodu Voodoo (Troll Witchdoctor) for (Casting unit))))))%
      • Wait 1.00 seconds
      • Unit - Set life of (Target unit of ability being cast) to ((Percentage life of (Target unit of ability being cast)) + (20.00 x (Real((Level of Yoodu Voodoo (Troll Witchdoctor) for (Casting unit))))))%
      • Wait 1.00 seconds
      • Unit - Set life of (Target unit of ability being cast) to ((Percentage life of (Target unit of ability being cast)) + (20.00 x (Real((Level of Yoodu Voodoo (Troll Witchdoctor) for (Casting unit))))))%
      • Wait 1.00 seconds
      • Unit - Set life of (Target unit of ability being cast) to ((Percentage life of (Target unit of ability being cast)) + (20.00 x (Real((Level of Yoodu Voodoo (Troll Witchdoctor) for (Casting unit))))))%
I couldn't figure out how to get a loop in, and am worried that the Wait function can be interrupted by any other wait functions. How would I set this up in a more appropriate manner, or better yet, just cause it to stop if the hero stops channeling?

I'm dealing with multiple like heroes and skills being on the map at the same time, too, so I gotta be wary of that. I was thinking of gandering at Vexorian's Spell System, to see if I could use that, but I haven't opened it up yet.

Help is appreciated and +rep will ensue.
 
Level 6
Joined
Dec 28, 2007
Messages
178
1st spell:
-you must not use the dying unit response if theres no unit dies event
-triggering unit equal to dying unit.. wth? o_O
-and theres no cond. like that: target unit of ability being cast has dragon breath buff equal to true
-and so on
 
Level 13
Joined
Jul 26, 2008
Messages
1,009
Ehh, unfortunately the advice here isn't exactly what I was looking for.

I guess I wasn't really reading the (dying unit) condition correctly. At least I know now.

Well there's no trigger for "If Unit Has Buff then," but I'm more than positive there's a solution to setting off something like that.

Thanks for the info kewl, but it doesn't solve my problem of the healing ending when the channeling ends.
 
Status
Not open for further replies.
Top