HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Making a Frost Spell

08-09-2009, 08:29 PM#1
Mendel
Let's say i want to change the skill of the tauren that shockkwave.. so when it will hit an enemy it will cast another spell on it, how can i detect using triggers if a unit gets hit by that shockwave skill?
08-09-2009, 08:34 PM#2
Flame_Phoenix
Ha ...this time I am faster xD

You can use xecollider to make the shockwave:
http://www.wc3c.net/showthread.php?t=101150

Just have a look on the demo maps =)
08-09-2009, 10:53 PM#3
Mendel
is there anything in gui?
Edit
the problem is i already have this shockwave skill it's in the tauren, i just want to know when a unit get hit by this shockwave that's all
08-09-2009, 11:10 PM#4
thehellman
There is no easy way about it, especially in GUI.

If you have any experience with the PolarProjectionBJ you can create a 'line' of points (locations) and add all nearby enemy units to a group, then cast a spell on each.

I don't have WE open but it'd be like this:

Add all enemy units at ( PolarProjectionBJ(facing of hero, 100 * Loop Index A, ) )

Then you have a lot of groups and do a

For Each unit in group

.. create dummy and cast frost nova

or whatever.
08-09-2009, 11:25 PM#5
Mendel
How u said sounds to me glitchy..
it doesn't sound so hard,
a unit is attacked,
check if the damage source is from the shockwave skill,
create a dummy unit and order it to cast frost on attacked unit that's all :S
08-10-2009, 12:29 AM#6
Anitarf
Quote:
Originally Posted by Mendel
How u said sounds to me glitchy..
it doesn't sound so hard,
a unit is attacked,
check if the damage source is from the shockwave skill,
create a dummy unit and order it to cast frost on attacked unit that's all :S
First of all, the attack event is not the right event for this - it only runs when units begin a regular attack, not when a spell deals damage.

What you want is the unit takes damage event, however that is only a specific unit event so you need to first use a system to generalize it so it works for every unit.

Once you have that working, you hit the second problem of this solution: there's no way to check the cause of the damage, so you can't know whether it came from the shockwave skill or perhaps a different spell or even a regular attack. You could work around that by keeping a list of all units currently casting the spell - it would however be problematic if the casting unit began an attack (which would remove it from that list) before the projectile finished it's path.

As you can see, it is a lot less trouble to trigger a spell like that entirely instead of relying on the TaurenChieftain's Shockwave. xecollider is likely the best solution out there for such spells.