Lmfaocj
Active Member
- Reaction score
- 1
Is there away to make Divine Storm from world of warcraft.
Thank you so muchDivine Storm is an area of effect spell that causes damage to 4 nearby enemy units and heals 3 nearby friendly units for 25% of the damage caused.
For the effect, use this: http://www.hiveworkshop.com/forums/models-530/bladestorm-50265/?prev=search=bladestorm&d=list&r=20
For the trigger, you will need to count how many units you actually hit to get the right amount of healing.
Trigger:
- Divine Storm
- Events
- Unit - A unit Starts the effect of an ability
- Conditions
- (Ability being cast) Equal to Divine Storm
- Actions
- Set Temp_Location = (Target point of ability being cast)
- Set Temp_Group = (Random 4 units from (Units within 400.00 of Temp_Location matching ((((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True) and ((((Matching unit) is alive) Equal to True) and (Add more conditions...)
- Set Temp_Integer = (Number of units in Temp_Group)
- Unit Group - Pick every unit in Temp_Group and do (Actions)
- Loop - Actions
- Unit - Cause (Triggering unit) to damage (Picked unit), dealing 100.00 damage of attack type Spells and damage type Normal
- Custom script: call DestroyGroup(udg_Temp_Group)
- Set Temp_Group = (Random 3 units from (Units within 400.00 of Temp_Location matching ((((Matching unit) belongs to an ally of (Owner of (Triggering unit))) Equal to True) and ((((Matching unit) is alive) Equal to True) and (Add more conditions...)
- Unit Group - Pick every unit in Temp_Group and do (Actions)
- Loop - Actions
- Unit - Set life of (Picked unit) to ((Life of (Picked unit)) + (25.00 x (Real(Temp_Integer))))
- Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Human\Heal\HealTarget.mdl
- Special Effect - Destroy (Last created special effect)
- Custom script: call DestroyGroup(udg_Temp_Group)
- Custom script: call RemoveLocation(udg_Temp_Location)
Adjust the values to your liking.
FYI, I believe those leak unit groups because Units within... creates a unit group of its own.Set Temp_Group = (Random 4 units from (Units within 400.00 of Temp_Location matching ((((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True) and ((((Matching unit) is alive) Equal to True) and (Add more conditions...)
[...]
Set Temp_Group = (Random 3 units from (Units within 400.00 of Temp_Location matching ((((Matching unit) belongs to an ally of (Owner of (Triggering unit))) Equal to True) and ((((Matching unit) is alive) Equal to True) and (Add more conditions...)