- Joined
- May 9, 2011
- Messages
- 37
Hello!
I try to study about mui spell making and i try to make one. plz help me fix this.
Triggers:
I want the spell to do something like this:
When caster casts holy bash, he smashes his hammer to the target and does knockback. If target is undead, he deals damage over time.
Sorry for my bad english...
- Tauren_009
I try to study about mui spell making and i try to make one. plz help me fix this.
Triggers:
-
Holy Bash Cast
-
Events
- Unit - A unit Starts the effect of an ability
-
Conditions
- (Ability being cast) Equal to Holy Bash
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- HB_Index[1] Equal to 0
-
Then - Actions
- Trigger - Turn on Holy Bash Loop <gen>
- Else - Actions
-
If - Conditions
- Set HB_Index[1] = (HB_Index[1] + 1)
- Set HB_Index[2] = (HB_Index[2] + 1)
- Set HB_Caster[HB_Index[2]] = (Triggering unit)
- Set HB_Target[HB_Index[2]] = (Target unit of ability being cast)
- Set HB_Interval[HB_Index[2]] = (0.50 x (Real((Level of Holy Bash for HB_Caster[HB_Index[2]]))))
- Set HB_DPS[HB_Index[2]] = (Real((3 x (Level of Holy Bash for HB_Caster[HB_Index[2]]))))
- Set HB_Initial_Damage[HB_Index[2]] = (Real(((Strength of HB_Caster[2] (Include bonuses)) x (Level of Holy Bash for HB_Caster[HB_Index[2]]))))
- Set HB_Duration[HB_Index[2]] = (15.00 + (Real((Hero level of HB_Caster[HB_Index[2]]))))
- Set HB_Interval_Check[HB_Index[2]] = 0.00
- Set HB_Point[HB_Index[2]] = (Position of HB_Caster[HB_Index[2]])
- Set HB_Counter[HB_Index[2]] = 0
- Set HB_MaxCounter[HB_Index[2]] = 15
- Set HB_Angle[HB_Index[2]] = (Facing of HB_Target[HB_Index[2]])
- Animation - Play HB_Caster[HB_Index[2]]'s attack 1 animation
- Unit - Cause HB_Caster[HB_Index[2]] to damage HB_Target[HB_Index[2]], dealing HB_Initial_Damage[HB_Index[2]] damage of attack type Spells and damage type Normal
- Special Effect - Create a special effect attached to the origin of HB_Target[HB_Index[2]] using Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl
- Special Effect - Destroy (Last created special effect)
- Animation - Reset HB_Caster[HB_Index[2]]'s animation
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Events
-
Holy Bash Loop
-
Events
- Time - Every 0.50 seconds of game time
- Conditions
-
Actions
-
For each (Integer HB_Counter[3]) from 1 to HB_Counter[2], do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- HB_Counter[HB_Index[3]] Less than HB_MaxCounter[HB_Index[3]]
-
Then - Actions
- Set HB_Counter[HB_Index[3]] = (HB_Counter[HB_Index[3]] + 1)
- Set HB_Point2[HB_Index[3]] = (HB_Point[HB_Index[3]] offset by 5.00 towards HB_Angle[HB_Index[3]] degrees)
- Set HB_Point[HB_Index[3]] = (Position of HB_Target[HB_Index[3]])
- Unit - Pause HB_Target[HB_Index[3]]
- Unit - Turn collision for HB_Target[HB_Index[3]] Off
- Unit - Move HB_Target[HB_Index[3]] instantly to HB_Point2[HB_Index[3]]
-
Destructible - Pick every destructible within 50.00 of HB_Point[HB_Index[3]] and do (Actions)
-
Loop - Actions
- Destructible - Kill (Picked destructible)
-
Loop - Actions
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Point-value of HB_Target[HB_Index[3]]) Equal to 1
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- HB_Duration[HB_Index[3]] Greater than 0.00
-
Then - Actions
- Set HB_Duration[HB_Index[3]] = (HB_Duration[HB_Index[3]] - 0.50)
- Set HB_Interval_Check[HB_Index[3]] = (HB_Interval_Check[HB_Index[3]] + 0.50)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- HB_Interval_Check[HB_Index[3]] Greater than or equal to HB_Duration[HB_Index[3]]
- (HB_Target[HB_Index[3]] is alive) Equal to True
-
Then - Actions
- Unit - Cause HB_Caster[HB_Index[3]] to damage HB_Target[HB_Index[3]], dealing HB_DPS[HB_Index[3]] damage of attack type Spells and damage type Divine
- Special Effect - Create a special effect attached to the chest of HB_Target[HB_Index[3]] using Abilities\Spells\Orc\Disenchant\DisenchantSpecialArt.mdl
- Special Effect - Destroy (Last created special effect)
-
Else - Actions
- Set HB_Duration[HB_Index[3]] = 0.00
-
If - Conditions
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Else - Actions
- Set HB_Duration[HB_Index[3]] = 0.00
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- HB_Duration[HB_Index[3]] Equal to 0.00
-
Then - Actions
- Set HB_Index[1] = (HB_Index[1] - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- HB_Index[1] Equal to 0
-
Then - Actions
- Set HB_Index[2] = 0
- Trigger - Turn off (This trigger)
- Else - Actions
-
If - Conditions
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
For each (Integer HB_Counter[3]) from 1 to HB_Counter[2], do (Actions)
-
Events
I want the spell to do something like this:
When caster casts holy bash, he smashes his hammer to the target and does knockback. If target is undead, he deals damage over time.
Sorry for my bad english...
- Tauren_009