I will admit, I do not understand hashtables what so ever. I am trying to use Simple Spell Power system in my map. I am trying to make an AoE ability do extra damage based on spell power. It does not do anything that I can tell, though...I followed a tutorial on how to do this for AoE abilities, but...I dunno...I can't really explain. I will post my triggers, and hopefully someone can help me with my problem.
Edit: For reference, Simple Spell Power System and Hashtables Tutorial that I tried to follow and modify/use.
Edit: For reference, Simple Spell Power System and Hashtables Tutorial that I tried to follow and modify/use.
-
Rain of Fire SP
-

Events
-


Unit - A unit Starts the effect of an ability
-
-

Conditions
-


Or - Any (Conditions) are true
-



Conditions
-




(Ability being cast) Equal to Rain of Fire Level 1
-




(Ability being cast) Equal to Rain of Fire Level 2
-




(Ability being cast) Equal to Rain of Fire Level 3
-
-
-
-

Actions
-


-------- ////////// --------
-


-------- Set SP_Unit --------
-


Set SP_Unit = (Triggering unit)
-


Hashtable - Save Handle OfSP_Unit as 4 of RoFCaster in SP_Hashtable
-


-------- ////////// --------
-


-------- Run the SP Get Trigger to get SP_CurrentValue from SP_Unit --------
-


Trigger - Run SP Get <gen> (ignoring conditions)
-


-------- ////////// --------
-


-------- Use the SP_CurrentValue --------
-


Set SP_CurrentValue = (SP_CurrentValue / 2.00)
-


Unit Group - Pick every unit in (Units within 600.00 of (Target point of ability being cast) matching (((Matching unit) belongs to an enemy of (Triggering player)) Equal to True)) and do (Actions)
-



Loop - Actions
-




Unit Group - Add (Picked unit) to AoEDMG
-




Set RemainingTime = 8.00
-




Hashtable - Save RemainingTime as 5 of (Key (Picked unit)) in SP_Hashtable
-
-
-
-
-
Rain of Fire Damage
-

Events
-


Time - Elapsed game time is 1.00 seconds
-
-

Conditions
-

Actions
-


Unit Group - Pick every unit in AoEDMG and do (Actions)
-



Loop - Actions
-




Set SP_Unit = (Load 4 of RoFCaster in SP_Hashtable)
-




Set RemainingTime = (Load 5 of (Key (Picked unit)) from SP_Hashtable)
-




Custom script: set udg_SP_Key = GetHandleId(udg_SP_Unit)
-




Trigger - Run SP Get <gen> (ignoring conditions)
-




Set SP_CurrentValue = (SP_CurrentValue / 2.00)
-
-
-


If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-



If - Conditions
-




RemainingTime Greater than 0.00
-
-



Then - Actions
-




Unit - Cause SP_Unit to damage (Picked unit), dealing SP_CurrentValue damage of attack type Spells and damage type Normal
-




Floating Text - Create floating text that reads (String((Integer(SP_CurrentValue)))) above (Picked unit) with Z offset 0.00, using font size 10.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
-




Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
-




Floating Text - Change (Last created floating text): Disable permanence
-




Floating Text - Change the lifespan of (Last created floating text) to 1.50 seconds
-




Floating Text - Change the fading age of (Last created floating text) to 0.75 seconds
-




Set RemainingTime = (RemainingTime - 1.00)
-
-



Else - Actions
-




Hashtable - Clear all child hashtables of child (Key (Picked unit)) in SP_Hashtable
-




Unit Group - Remove (Picked unit) from AoEDMG
-
-
-
-
-
SP Get
-

Events
-

Conditions
-

Actions
-


Custom script: set udg_SP_Key = GetHandleId(udg_SP_Unit)
-


Set SP_CurrentValue = (Load 1 of SP_Key from SP_Hashtable)
-
-






