Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
I tried to make a simple spell with sweet eye-candy. A simple to understand and use spell.
Fires a projectile at a unit and apon impact it deals damage to units an a smalle area around the target.
HB Settings
Events
Time - Elapsed game time is 0.20 seconds
Conditions
Actions
-------- --------- --------
-------- Leave This (changing them might cause problems) --------
Hashtable - Create a hashtable
Set HB_Table = (Last created hashtable)
-------- --------- --------
-------- Damage (Scaling is the ammount increased per level) --------
Set HB_DamageBase = 25.00
Set HB_DamageScaling = 50.00
-------- --------- --------
-------- Speed (Pro speed is for the projectile / Eff speed is the circling bolts) --------
Set HB_Eff_Speed = 20.00
Set HB_Pro_Speed = 15.00
-------- --------- --------
-------- Area of Effect (Range of area on impact) --------
Set HB_AoE = 200.00
-------- --------- --------
-------- Bolt Size (Influence Lesser bolts distance to main bolt and impact radius) --------
Set HB_Range = 40.00
HB Cast
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Holy Bolt
Actions
-------- --------- --------
-------- Setting initial Variables (do not change anything in this trigger) --------
Set HB_Caster = (Triggering unit)
Set HB_Target = (Target unit of ability being cast)
Set HB_Point[2] = (Position of HB_Caster)
-------- --------- --------
-------- Creating Dummies (do not change anything in this trigger) --------
Unit - Create 1 Holy Projectile for (Owner of HB_Caster) at HB_Point[2] facing Default building facing degrees
Set HB_HPUnit = (Last created unit)
Unit Group - Add HB_HPUnit to HB_HPGroup[1]
Set HB_Handle = (Last created unit)
For each (Integer HB_Integer) from 1 to 6, do (Actions)
Loop - Actions
Set HB_Point[(HB_Integer + 2)] = (HB_Point[2] offset by HB_Range towards ((Real(HB_Integer)) x 60.00) degrees)
Unit - Create 1 Lesser Projectile for (Owner of HB_Caster) at HB_Point[(HB_Integer + 2)] facing Default building facing degrees
Set HB_LPUnit[HB_Integer] = (Last created unit)
Hashtable - Save Handle OfHB_LPUnit[HB_Integer] as HB_Integer of (Key HB_Handle) in HB_Table
Hashtable - Save Handle OfHB_Caster as 7 of (Key HB_Handle) in HB_Table
Hashtable - Save Handle OfHB_Target as 8 of (Key HB_Handle) in HB_Table
-------- --------- --------
-------- Removing Leaks and starts loop (do not change anything in this trigger) --------
Trigger - Turn on HB Loop <gen>
For each (Integer HB_Integer) from 2 to 8, do (Actions)
-------- Checking Impact (You can change the number (2) to 1 if you want the bolt to impact at a longer distance) --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between HB_Point[1] and HB_Point[9]) Less than or equal to (HB_Range / 2.00)
Then - Actions
-------- --------- --------
-------- Damage and Removing units (do not change anything in this trigger) --------
Set HB_HPGroup[2] = (Units within HB_AoE of HB_Point[9] matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and (((Matching unit) belongs to an enemy of (Owner of HB_Caster)) Equal to True))))
Unit Group - Pick every unit in HB_HPGroup[2] and do (Actions)
Loop - Actions
Unit - Cause HB_Caster to damage (Picked unit), dealing (HB_DamageBase + (HB_DamageScaling x (Real((Level of Holy Bolt for HB_Caster))))) damage of attack type Spells and damage type Normal
Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Items\StaffOfPurification\PurificationTarget.mdl
Special Effect - Destroy (Last created special effect)
Unit - Remove HB_HPUnit from the game
For each (Integer HB_Integer) from 1 to 6, do (Actions)
Loop - Actions
Unit - Remove HB_LPUnit[HB_Integer] from the game
Special Effect - Create a special effect at HB_Point[9] using Abilities\Spells\Items\StaffOfPurification\PurificationCaster.mdl
Special Effect - Destroy (Last created special effect)
-------- --------- --------
-------- Removing leaks and ends loop (do not change anything in this trigger) --------
Spell v1.0 | Reviewed by Maker | 29th Sep 2013
APPROVED
The bolt looks good but the triggering could be a bit better
[tr]
Don't use two loops in HB Cast
Put the dummy SetUnitX/Y actions into a loop
Merge the two...
•All leaks is now removed with loops •All integerA is now replaced with a custom Variable (HB_Integer) •All movement for dummies/effects are now done with coordinates
i'd rather not copy something i don't understand and i do not understand any jazz-code you write (though i am working on learning it) but as 'Daffa the Mage' said i can do something about the integer
i'd rather not copy something i don't understand and i do not understand any jazz-code you write (though i am working on learning it) but as 'Daffa the Mage' said i can do something about the integer
Ofc, It is a polar projection in GUI and this is recommended in moving units, but as you said you don't understant JASS then It's okay but this can be written in GUI custom script lines. Having a little knowledge in custom scripts must be needed not just by removing leaks.
@jakeZinc
working hard on learning the "move unit"-scrips you showed me.
your link didn't work but i found it in the tutorial section (that is ofc if it was deathismyfriend's tutorial), even so it is helpfull and i will see if i can make it today
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.