-
Are you planning to upload your awesome spell or system to Hive? Please review the rules here.Dismiss Notice
-
Find your way through the deepest dungeon in the 18th Mini Mapping Contest Poll.Dismiss Notice
-
A brave new world lies beyond the seven seas. Join the 34th Modeling Contest today!Dismiss Notice
-
Check out the Staff job openings thread.Dismiss Notice
Dismiss Notice
Hive 3 Remoosed BETA - NOW LIVE. Go check it out at BETA Hive Workshop! Post your feedback in this new forum BETA Feedback.
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.
Circle of Healing Whispers v1.01
Submitted by
Pharaoh_
- Tags:
- No Target, GUI / Triggers
- Filesize:
- 83.62 KB
- Rating:
-
(3 votes)
- Downloads:
- 3440
- Uploaded:
- Jan 19, 2010
- Updated:
- Jun 17, 2010
- Resources:
- 1
- Author(s):
- Pharaoh_
- State:
- Approved

This bundle is marked as approved. It works and satisfies the submission rules.
Circle of Healing Whispers
The hero practises death magic and gains the ability of manipulating spiritual and living energies. Ally units around the hero will get their hit points or mana healed, up to the point of the circle they step into.
Level 1 - Lasts 5 seconds.
Level 2 - Lasts 10 seconds.
Level 3 - Lasts 15 seconds.
The hero practises death magic and gains the ability of manipulating spiritual and living energies. Ally units around the hero will get their hit points or mana healed, up to the point of the circle they step into.
Level 1 - Lasts 5 seconds.
Level 2 - Lasts 10 seconds.
Level 3 - Lasts 15 seconds.
I'm actually very proud of this spell, because I really liked the result.
Please, credit me for my work, if you are going to use it!
Thank you for taking the time to download this resource and test it.
Comments appreciated.
Triggers
-
SL1
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Circle of Healing Whispers
-
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Load (Key alreadyhealing) of (Key (Triggering unit)) from SL_Hash) Equal to False
-
-
Then - Actions
-
Set SL_Points[1] = (Position of (Triggering unit))
-
Ubersplat - Create ubersplat at SL_Points[1] of type Undead Uber Splat with color (100.00%, 0.00%, 0.00%) and 0.00% transparency (Enable paused state, Enable skipping birth time)
-
Ubersplat - Change (Last created ubersplat): Enable render always state
-
Hashtable - Save Handle Of(Last created ubersplat) as (Key splat) of (Key (Triggering unit)) in SL_Hash
-
Hashtable - Save True as (Key alreadyhealing) of (Key (Triggering unit)) in (Last created hashtable)
-
Hashtable - Save 320.00 as (Key towards) of (Key (Triggering unit)) in SL_Hash
-
Hashtable - Save 10.00 as (Key distancetick) of (Key (Triggering unit)) in SL_Hash
-
Unit Group - Add (Triggering unit) to SL_Group
-
Custom script: call RemoveLocation (udg_SL_Points[1])
-
Trigger - Turn on SL2 <gen>
-
Trigger - Turn on SL5 <gen>
-
-
Else - Actions
-
-------- In case you change the cooldown --------
-
Game - Display to (Player group((Owner of (Triggering unit)))) the text: |c00ffcc33The hero ...
-
-
-
-
-
SL2
-
Events
-
Time - Every 0.70 seconds of game time
-
-
Conditions
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(SL_Group is empty) Equal to True
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
Unit Group - Pick every unit in SL_Group and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Load (Key alreadyhealing) of (Key (Picked unit)) from SL_Hash) Equal to True
-
-
Then - Actions
-
Set SL_Points[2] = (Position of (Picked unit))
-
Set SL_Real = (Load (Key towards) of (Key (Picked unit)) from SL_Hash)
-
Set SL_DistanceTick = (Load (Key distancetick) of (Key (Picked unit)) from SL_Hash)
-
-------- Dummy wisps creation --------
-
For each (Integer SL_PointsInteger) from 1 to 5, do (Actions)
-
Loop - Actions
-
Set SL_Points[3] = (SL_Points[2] offset by SL_Real towards (36.00 x (Real(SL_PointsInteger))) degrees)
-
Unit - Create 1 Dummy (COHW) for (Owner of (Picked unit)) at SL_Points[3] facing (Angle from SL_Points[3] to SL_Points[2]) degrees
-
Hashtable - Save True as (Key health) of (Key (Last created unit)) in SL_Hash
-
-------- Adding expiration timer to Dummy. Formula: Distance you choose * 2 (or how many times you want the dummy to move further) --------
-
-------- / SL_DistanceTick (this affects the offset distance the dummies are moved in the "SL3" trigger = how fast they move) --------
-
-------- * 0.05 = The time event of "SL3" trigger. --------
-
-------- So, this formula will calculate in how much time the dummies will move the double distance (SL_Real * 2) --------
-
Unit - Add a (((SL_Real x 2.00) / SL_DistanceTick) x 0.05) second Generic expiration timer to (Last created unit)
-
-------- Changing the Wisp's color to green, so as to represent "Health" --------
-
Unit - Change color of (Last created unit) to Green
-
-------- Saving the casting unit on the dummy, in order to perform specific actions in "SL3" trigger. --------
-
Hashtable - Save Handle Of(Picked unit) as (Key mainunit) of (Key (Last created unit)) in SL_Hash
-
-------- Adding the dummies into the SL_DummyGroup, to keep the moving in "SL3" trigger. --------
-
Unit Group - Add (Last created unit) to SL_DummyGroup
-
-------- Saving the path of the models used for the healing effect. --------
-
Hashtable - Save Abilities\Spells\Items\StaffOfPurification\PurificationTarget.mdl as (Key sfx1) of (Key (Last created unit)) in SL_Hash
-
Hashtable - Save Abilities\Spells\Items\AIma\AImaTarget.mdl as (Key sfx2) of (Key (Last created unit)) in SL_Hash
-
-------- Leak removal --------
-
Custom script: call RemoveLocation (udg_SL_Points[3])
-
-
-
Custom script: call RemoveLocation (udg_SL_Points[2])
-
Trigger - Turn on SL3 <gen>
-
Trigger - Turn on SL6 <gen>
-
-
Else - Actions
-
-
-
-
-
-
-
-
SL3
-
Events
-
Time - Every 0.05 seconds of game time
-
-
Conditions
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(SL_DummyGroup is empty) Equal to True
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
Unit Group - Pick every unit in SL_DummyGroup and do (Actions)
-
Loop - Actions
-
Set SL_DistanceTick = (Load (Key distancetick) of (Key (Load (Key mainunit) of (Key (Picked unit)) in SL_Hash)) from SL_Hash)
-
Set SL_Points[4] = (Position of (Picked unit))
-
Set SL_Points[5] = (Position of (Load (Key mainunit) of (Key (Picked unit)) in SL_Hash))
-
Set SL_Points[6] = (SL_Points[4] offset by SL_DistanceTick towards (Facing of (Picked unit)) degrees)
-
Unit - Move (Picked unit) instantly to SL_Points[6]
-
Set SL_Healer[1] = (Picked unit)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Distance between SL_Points[4] and SL_Points[5]) Less than or equal to (SL_DistanceTick + 2.00)
-
-
Then - Actions
-
Unit - Change color of (Picked unit) to Blue
-
Hashtable - Save False as (Key health) of (Key SL_Healer[1]) in SL_Hash
-
-
Else - Actions
-
-
Custom script: call DestroyGroup (udg_SL_HealGroups)
-
Custom script: call RemoveLocation (udg_SL_Points[4])
-
Custom script: call RemoveLocation (udg_SL_Points[5])
-
Custom script: call RemoveLocation (udg_SL_Points[6])
-
-
-
-
-
-
-
SL4
-
Events
-
Unit - A unit Stops casting an ability
-
Unit - A unit Finishes casting an ability
-
-
Conditions
-
(Load (Key alreadyhealing) of (Key (Triggering unit)) from SL_Hash) Equal to True
-
-
Actions
-
Ubersplat - Destroy (Load (Key splat) of (Key (Triggering unit)) in SL_Hash)
-
Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in SL_Hash
-
-
-
SL5
-
Events
-
Unit - A unit Dies
-
-
Conditions
-
(Unit-type of (Triggering unit)) Equal to Dummy (COHW)
-
-
Actions
-
Unit Group - Remove (Triggering unit) from SL_DummyGroup
-
Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in SL_Hash
-
Unit - Remove (Triggering unit) from the game
-
-
-
SL6
-
Events
-
Time - Every 1.00 seconds of game time
-
-
Conditions
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(SL_DummyGroup is empty) Equal to True
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
Unit Group - Pick every unit in SL_DummyGroup and do (Actions)
-
Loop - Actions
-
Set SL_Points[6] = (Position of (Picked unit))
-
Set SL_Healer[2] = (Picked unit)
-
Set SL_HealGroups = (Units within 128.00 of SL_Points[6] matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) belongs to an ally of (Owner of (Picked unit))) Equal to True) and ((Matching unit) Not equ
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of units in SL_HealGroups) Not equal to 0
-
-
Then - Actions
-
Unit Group - Pick every unit in SL_HealGroups and do (Actions)
-
Loop - Actions
-
Set SL_HealthBoolean = (Load (Key health) of (Key SL_Healer[2]) from SL_Hash)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
SL_HealthBoolean Equal to True
-
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Life of (Picked unit)) Less than (Max life of (Picked unit))
-
-
Then - Actions
-
Set SL_SFXHeal[1] = (Load (Key sfx1) of (Key SL_Healer[2]) from SL_Hash)
-
Unit - Set life of (Picked unit) to ((Life of (Picked unit)) + 3.00)
-
Special Effect - Create a special effect attached to the chest of (Picked unit) using SL_SFXHeal[1]
-
Special Effect - Destroy (Last created special effect)
-
-
Else - Actions
-
-
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Mana of (Picked unit)) Less than (Max mana of (Picked unit))
-
-
Then - Actions
-
Set SL_SFXHeal[2] = (Load (Key sfx2) of (Key SL_Healer[2]) from SL_Hash)
-
Unit - Set mana of (Picked unit) to ((Mana of (Picked unit)) + 1.00)
-
Special Effect - Create a special effect attached to the chest of (Picked unit) using SL_SFXHeal[2]
-
Special Effect - Destroy (Last created special effect)
-
-
Else - Actions
-
-
-
-
-
-
-
Else - Actions
-
-
Custom script: call DestroyGroup (udg_SL_HealGroups)
-
Custom script: call RemoveLocation (udg_SL_Points[6])
-
-
-
-
-
-
Magic, Summon, Invoke, Death, Heal, Health, Mana, Soul, Blue, Green, Wisp, Circle, Ubersplat
Contents