- Joined
- Jan 16, 2017
- Messages
- 110
I was trying to create some system that would enable and disable abilities based on training specific unit.
For some reason when i disable some spell then it should change the value in hashtables and make it not work, but the unit still casts the spell.
Note: I am begginer at using hashtables so i am not sure if i setted up the hashtable correctly
For some reason when i disable some spell then it should change the value in hashtables and make it not work, but the unit still casts the spell.
Note: I am begginer at using hashtables so i am not sure if i setted up the hashtable correctly
-
Hashtable
-

Events
-


Map initialization
-
-

Conditions
-

Actions
-


Hashtable - Create a hashtable
-


Set SpellBookHashtable = (Last created hashtable)
-


For each (Integer B) from 1 to 8, do (Actions)
-



Loop - Actions
-




For each (Integer A) from 1 to 48, do (Actions)
-





Loop - Actions
-






Hashtable - Save True as (Integer A) of (Integer B) in SpellBookHashtable
-
-
-
-
-
-
-
EnableDisable
-

Events
-


Unit - A unit Finishes training a unit
-
-

Conditions
-


(Unit-type of (Triggering unit)) Equal to Spell Book
-
-

Actions
-


Player - Make (Unit-type of (Trained unit)) Unavailable for training/construction by (Owner of (Triggering unit))
-


-------- Disable --------
-


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



If - Conditions
-



Then - Actions
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Defend
-
-





Then - Actions
-






Hashtable - Save False as 1 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Defend Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Heal
-
-





Then - Actions
-






Hashtable - Save False as 2 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Heal Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Inner Fire
-
-





Then - Actions
-






Hashtable - Save False as 3 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Inner Fire Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Dispel Magic
-
-





Then - Actions
-






Hashtable - Save False as 4 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Dispel Magic Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Invisibility
-
-





Then - Actions
-






Hashtable - Save False as 5 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Invisibility Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Polymorph
-
-





Then - Actions
-






Hashtable - Save False as 6 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Polymorph Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Slow
-
-





Then - Actions
-






Hashtable - Save False as 7 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Slow Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Spell Steal
-
-





Then - Actions
-






Hashtable - Save False as 8 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Spell Steal Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Cloud
-
-





Then - Actions
-






Hashtable - Save False as 9 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Cloud Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Disable Aerial Shackles
-
-





Then - Actions
-






Hashtable - Save False as 10 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Enable Aerial Shackles Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-
-



Else - Actions
-
-


-------- Enable --------
-


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



If - Conditions
-



Then - Actions
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Defend
-
-





Then - Actions
-






Hashtable - Save True as 1 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Defend Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Heal
-
-





Then - Actions
-






Hashtable - Save True as 2 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Heal Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Inner Fire
-
-





Then - Actions
-






Hashtable - Save True as 3 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Inner Fire Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Dispel Magic
-
-





Then - Actions
-






Hashtable - Save True as 4 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Dispel Magic Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Invisibility
-
-





Then - Actions
-






Hashtable - Save True as 5 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Invisibility Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Polymorph
-
-





Then - Actions
-






Hashtable - Save True as 6 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Polymorph Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Slow
-
-





Then - Actions
-






Hashtable - Save True as 7 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Slow Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Spell Steal
-
-





Then - Actions
-






Hashtable - Save True as 8 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Spell Steal Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Cloud
-
-





Then - Actions
-






Hashtable - Save True as 9 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Cloud Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(Unit-type of (Trained unit)) Equal to Enable Aerial Shackles
-
-





Then - Actions
-






Hashtable - Save True as 10 of (Player number of (Owner of (Triggering unit))) in SpellBookHashtable
-






Player - Make Disable Aerial Shackles Available for training/construction by (Owner of (Triggering unit))
-






Unit - Remove (Trained unit) from the game
-






Skip remaining actions
-
-





Else - Actions
-
-
-



Else - Actions
-
-
-
-
Cast
-

Events
-


Unit - A unit Begins casting an ability
-
-

Conditions
-

Actions
-


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



If - Conditions
-




((Casting unit) is A Hero) Equal to False
-
-



Then - Actions
-




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





If - Conditions
-






(1 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Defend
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(2 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Heal
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(3 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Inner Fire
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(4 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Dispel Magic
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(5 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Invisibility
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(6 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Polymorph
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(7 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Slow
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(8 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Spell Steal
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(9 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Cloud
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-




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





If - Conditions
-






(10 is stored as a Boolean of (Custom value of (Casting unit)) in SpellBookHashtable) Equal to False
-






(Ability being cast) Equal to Aerial Shackles
-
-





Then - Actions
-






Unit - Remove (Ability being cast) from (Casting unit)
-






Skip remaining actions
-
-





Else - Actions
-
-
-



Else - Actions
-
-
-
