- Joined
- May 27, 2012
- Messages
- 116
Well im not realy the best mapper in the world and i just wanna know how bad my triggers is.
Yes i do use a knockback system.
No wont make a attached map ^^.
Dont want to make it that easy to steal my spells.
-
FireBall Cast
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to FireBall
-
-
Actions
-
Set FB_Max_Index = (FB_Max_Index + 1)
-
Set FB_Caster[FB_Max_Index] = (Triggering unit)
-
Set TempPoint[1] = (Position of FB_Caster[FB_Max_Index])
-
Set TempPoint[2] = (Target point of ability being cast)
-
Set FB_DMG[FB_Max_Index] = (4.00 x (Real((Intelligence of (Triggering unit) (Include bonuses)))))
-
Set FB_Range[FB_Max_Index] = (Distance between TempPoint[1] and TempPoint[2])
-
Set FB_Angel[FB_Max_Index] = (Angle from TempPoint[1] to TempPoint[2])
-
Set FB_Speed[FB_Max_Index] = 45.00
-
Unit - Create 1 Dummy_FireBall for Neutral Passive at TempPoint[1] facing FB_Angel[FB_Max_Index] degrees
-
Animation - Change FB_Ball[FB_Max_Index]'s animation speed to 300.00% of its original speed
-
Set FB_Ball[FB_Max_Index] = (Last created unit)
-
Unit - Turn collision for FB_Ball[FB_Max_Index] Off
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
FB_Max_Index Equal to 1
-
-
Then - Actions
-
Trigger - Turn on FireBall Loop <gen>
-
-
Else - Actions
-
-
Custom script: call RemoveLocation (udg_TempPoint[1])
-
Custom script: call RemoveLocation (udg_TempPoint[2])
-
-
-
IceBolt Cast
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Ice Bolt
-
-
Actions
-
Set FB_Max_Index = (FB_Max_Index + 1)
-
Set FB_Caster[FB_Max_Index] = (Triggering unit)
-
Set TempPoint[1] = (Position of FB_Caster[FB_Max_Index])
-
Set TempPoint[2] = (Target point of ability being cast)
-
Set FB_DMG[FB_Max_Index] = (4.00 x (Real((Intelligence of (Triggering unit) (Include bonuses)))))
-
Set FB_Range[FB_Max_Index] = (Distance between TempPoint[1] and TempPoint[2])
-
Set FB_Angel[FB_Max_Index] = (Angle from TempPoint[1] to TempPoint[2])
-
Set FB_Speed[FB_Max_Index] = 45.00
-
Unit - Create 1 Dummy_IceBolt for Neutral Passive at TempPoint[1] facing FB_Angel[FB_Max_Index] degrees
-
Animation - Change FB_Ball[FB_Max_Index]'s animation speed to 300.00% of its original speed
-
Set FB_Ball[FB_Max_Index] = (Last created unit)
-
Unit - Turn collision for FB_Ball[FB_Max_Index] Off
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
FB_Max_Index Equal to 1
-
-
Then - Actions
-
Trigger - Turn on FireBall Loop <gen>
-
-
Else - Actions
-
-
Custom script: call RemoveLocation (udg_TempPoint[1])
-
Custom script: call RemoveLocation (udg_TempPoint[2])
-
-
-
FireBall Loop
-
Events
-
Time - Every 0.03 seconds of game time
-
-
Conditions
-
Actions
-
For each (Integer FB_Index) from 1 to FB_Max_Index, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
FB_Range[FB_Index] Greater than 0.00
-
-
Then - Actions
-
Set TempPoint[1] = (Position of FB_Ball[FB_Index])
-
Set TempUG[1] = (Units within 70.00 of TempPoint[1] matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of FB_Caster[FB_Index])) Equal to True)))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of units in TempUG[1]) Greater than or equal to 1
-
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Unit-type of FB_Ball[FB_Index]) Equal to Dummy_FireBall
-
-
Then - Actions
-
Special Effect - Create a special effect at TempPoint[1] using war3mapImported\FireGroundExplo.mdx
-
Special Effect - Destroy (Last created special effect)
-
-
Else - Actions
-
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Unit-type of FB_Ball[FB_Index]) Equal to Dummy_IceBolt
-
-
Then - Actions
-
Special Effect - Create a special effect at TempPoint[1] using Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl
-
Special Effect - Destroy (Last created special effect)
-
-
Else - Actions
-
-
Set TempUG[2] = (Units within 200.00 of TempPoint[1] matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of FB_Caster[FB_Index])) Equal to True)))
-
Unit Group - Pick every unit in TempUG[2] and do (Actions)
-
Loop - Actions
-
Unit - Cause FB_Caster[FB_Index] to damage (Picked unit), dealing FB_DMG[FB_Index] damage of attack type Spells and damage type Fire
-
-
-
Custom script: call DestroyGroup (udg_TempUG[2])
-
-------- DeIndex --------
-
Unit - Kill FB_Ball[FB_Index]
-
Set FB_Angel[FB_Index] = FB_Angel[FB_Max_Index]
-
Set FB_Angel[FB_Max_Index] = 0.00
-
Set FB_Ball[FB_Index] = FB_Ball[FB_Max_Index]
-
Set FB_Ball[FB_Max_Index] = No unit
-
Set FB_Caster[FB_Index] = FB_Caster[FB_Max_Index]
-
Set FB_Caster[FB_Max_Index] = No unit
-
Set FB_DMG[FB_Index] = FB_DMG[FB_Max_Index]
-
Set FB_DMG[FB_Max_Index] = 0.00
-
Set FB_Range[FB_Index] = FB_Range[FB_Max_Index]
-
Set FB_Range[FB_Max_Index] = 0.00
-
Set FB_Speed[FB_Index] = FB_Speed[FB_Max_Index]
-
Set FB_Speed[FB_Max_Index] = 0.00
-
Set FB_Max_Index = (FB_Max_Index - 1)
-
Set FB_Index = (FB_Index - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
FB_Max_Index Equal to 0
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-
Else - Actions
-
Set FB_Range[FB_Index] = (FB_Range[FB_Index] - FB_Speed[FB_Index])
-
Set TempPoint[2] = (TempPoint[1] offset by FB_Speed[FB_Index] towards FB_Angel[FB_Index] degrees)
-
Unit - Move FB_Ball[FB_Index] instantly to TempPoint[2]
-
Custom script: call RemoveLocation (udg_TempPoint[2])
-
-
-
Custom script: call DestroyGroup (udg_TempUG[1])
-
Custom script: call RemoveLocation (udg_TempPoint[1])
-
-
Else - Actions
-
Set TempPoint[1] = (Position of FB_Ball[FB_Index])
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Unit-type of FB_Ball[FB_Index]) Equal to Dummy_FireBall
-
-
Then - Actions
-
Special Effect - Create a special effect at TempPoint[1] using war3mapImported\FireGroundExplo.mdx
-
Special Effect - Destroy (Last created special effect)
-
-
Else - Actions
-
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Unit-type of FB_Ball[FB_Index]) Equal to Dummy_IceBolt
-
-
Then - Actions
-
Special Effect - Create a special effect at TempPoint[1] using Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl
-
Special Effect - Destroy (Last created special effect)
-
-
Else - Actions
-
-
Set TempUG[2] = (Units within 200.00 of TempPoint[1] matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of FB_Caster[FB_Index])) Equal to True)))
-
Unit Group - Pick every unit in TempUG[2] and do (Actions)
-
Loop - Actions
-
Unit - Cause FB_Caster[FB_Index] to damage (Picked unit), dealing FB_DMG[FB_Index] damage of attack type Spells and damage type Fire
-
-
-
Custom script: call DestroyGroup (udg_TempUG[2])
-
Custom script: call RemoveLocation (udg_TempPoint[1])
-
-------- DeIndex --------
-
Unit - Kill FB_Ball[FB_Index]
-
Set FB_Angel[FB_Index] = FB_Angel[FB_Max_Index]
-
Set FB_Angel[FB_Max_Index] = 0.00
-
Set FB_Ball[FB_Index] = FB_Ball[FB_Max_Index]
-
Set FB_Ball[FB_Max_Index] = No unit
-
Set FB_Caster[FB_Index] = FB_Caster[FB_Max_Index]
-
Set FB_Caster[FB_Max_Index] = No unit
-
Set FB_DMG[FB_Index] = FB_DMG[FB_Max_Index]
-
Set FB_DMG[FB_Max_Index] = 0.00
-
Set FB_Range[FB_Index] = FB_Range[FB_Max_Index]
-
Set FB_Range[FB_Max_Index] = 0.00
-
Set FB_Speed[FB_Index] = FB_Speed[FB_Max_Index]
-
Set FB_Speed[FB_Max_Index] = 0.00
-
Set FB_Max_Index = (FB_Max_Index - 1)
-
Set FB_Index = (FB_Index - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
FB_Max_Index Equal to 0
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-
-
-
-
-
-
Gravity Bolt
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Sonic Bolt
-
-
Actions
-
Set GB_Index_Max = (GB_Index_Max + 1)
-
Set TempPoint[1] = (Position of (Triggering unit))
-
Set TempPoint[2] = (Target point of ability being cast)
-
Set GB_Caster[GB_Index_Max] = (Triggering unit)
-
Set GB_Dmg[GB_Index_Max] = (2.00 x (Real((Intelligence of (Triggering unit) (Include bonuses)))))
-
Set GB_Range[GB_Index_Max] = 800.00
-
Set GB_Angel[GB_Index_Max] = (Angle from TempPoint[1] to TempPoint[2])
-
Unit - Create 1 Dummy_GravityBolt for Neutral Passive at TempPoint[1] facing GB_Angel[GB_Index_Max] degrees
-
Unit - Turn collision for GB_Bolt[GB_Index_Max] Off
-
Set GB_Bolt[GB_Index_Max] = (Last created unit)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
GB_Index_Max Equal to 1
-
-
Then - Actions
-
Trigger - Turn on Gravity Bolt Loop <gen>
-
-
Else - Actions
-
-
Custom script: call RemoveLocation (udg_TempPoint[1])
-
Custom script: call RemoveLocation (udg_TempPoint[2])
-
-
-
Gravity Bolt Loop
-
Events
-
Time - Every 0.03 seconds of game time
-
-
Conditions
-
Actions
-
For each (Integer GB_Index) from 1 to GB_Index_Max, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
GB_Range[GB_Index] Greater than 0.00
-
-
Then - Actions
-
Set TempPoint[1] = (Position of GB_Bolt[GB_Index])
-
Set TempUG[1] = (Units within 70.00 of TempPoint[1] matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of GB_Caster[GB_Index])) Equal to True)))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of units in TempUG[1]) Greater than or equal to 1
-
-
Then - Actions
-
Set TempPoint[1] = (Position of GB_Bolt[GB_Index])
-
Special Effect - Create a special effect at TempPoint[1] using Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl
-
Special Effect - Destroy (Last created special effect)
-
Set TempUG[2] = (Units within 200.00 of TempPoint[1] matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of GB_Caster[GB_Index])) Equal to True)))
-
Unit Group - Pick every unit in TempUG[2] and do (Actions)
-
Loop - Actions
-
Unit - Cause GB_Caster[GB_Index] to damage (Picked unit), dealing GB_Dmg[GB_Index] damage of attack type Spells and damage type Sonic
-
-------- KB --------
-
-------- ------------------------- --------
-
Set CKBS_NewSFX = Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl
-
Set CKBS_NewAngle = GB_Angel[GB_Index]
-
Set CKBS_NewSpeed = 50.00
-
Set CKBS_NewUnit = (Picked unit)
-
Set CKBS_NewVerticalSpeed = 15.00
-
Set CKBS_NewDestroyTrees = True
-
Set CKBS_NewCollides = False
-
Set CKBS_NewTransferKnockback = True
-
Trigger - Run CKBS New <gen> (ignoring conditions)
-
-------- ------------------------- --------
-
-
-
Custom script: call RemoveLocation (udg_TempPoint[1])
-
Custom script: call DestroyGroup (udg_TempUG[2])
-
-------- DeIndex --------
-
Unit - Kill GB_Bolt[GB_Index]
-
Set GB_Angel[GB_Index] = GB_Angel[GB_Index_Max]
-
Set GB_Angel[GB_Index_Max] = 0.00
-
Set GB_Bolt[GB_Index] = GB_Bolt[GB_Index_Max]
-
Set GB_Bolt[GB_Index_Max] = No unit
-
Set GB_Caster[GB_Index] = GB_Caster[GB_Index_Max]
-
Set GB_Caster[GB_Index_Max] = No unit
-
Set GB_Dmg[GB_Index] = GB_Dmg[GB_Index_Max]
-
Set GB_Dmg[GB_Index_Max] = 0.00
-
Set GB_Range[GB_Index] = GB_Range[GB_Index_Max]
-
Set GB_Range[GB_Index_Max] = 0.00
-
Set GB_Index_Max = (GB_Index_Max - 1)
-
Set GB_Index = (GB_Index - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
GB_Index_Max Equal to 0
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-
Else - Actions
-
Set GB_Range[GB_Index] = (GB_Range[GB_Index] - 80.00)
-
Set TempPoint[3] = (TempPoint[1] offset by 80.00 towards GB_Angel[GB_Index] degrees)
-
Unit - Move GB_Bolt[GB_Index] instantly to TempPoint[3]
-
Special Effect - Create a special effect at TempPoint[3] using Abilities\Spells\Orc\Purge\PurgeBuffTarget.mdl
-
Special Effect - Destroy (Last created special effect)
-
Custom script: call RemoveLocation (udg_TempPoint[3])
-
-
-
Custom script: call DestroyGroup (udg_TempUG[1])
-
Custom script: call RemoveLocation (udg_TempPoint[1])
-
-
Else - Actions
-
Unit - Kill GB_Bolt[GB_Index]
-
-------- DeIndex --------
-
Set GB_Angel[GB_Index] = GB_Angel[GB_Index_Max]
-
Set GB_Angel[GB_Index_Max] = 0.00
-
Set GB_Bolt[GB_Index] = GB_Bolt[GB_Index_Max]
-
Set GB_Bolt[GB_Index_Max] = No unit
-
Set GB_Caster[GB_Index] = GB_Caster[GB_Index_Max]
-
Set GB_Caster[GB_Index_Max] = No unit
-
Set GB_Dmg[GB_Index] = GB_Dmg[GB_Index_Max]
-
Set GB_Dmg[GB_Index_Max] = 0.00
-
Set GB_Range[GB_Index] = GB_Range[GB_Index_Max]
-
Set GB_Range[GB_Index_Max] = 0.00
-
Set GB_Index_Max = (GB_Index_Max - 1)
-
Set GB_Index = (GB_Index - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
GB_Index_Max Equal to 0
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-
-
-
-
-
-
DeepFreeze Cast
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Deep Freeze
-
-
Actions
-
Set A_DF_Index_Max = (A_DF_Index_Max + 1)
-
Set A_DF_Caster[A_DF_Index_Max] = (Triggering unit)
-
Set A_DF_Time[A_DF_Index_Max] = 5.00
-
Set A_DF_Dmg[A_DF_Index_Max] = (0.03 x (Real((Intelligence of A_DF_Caster[A_DF_Index_Max] (Include bonuses)))))
-
Set A_DF_FU[A_DF_Index_Max] = (Units within 200.00 of TempPoint[1] matching (((Matching unit) is alive) Equal to True))
-
Set TempPoint[1] = (Target point of ability being cast)
-
Unit - Create 1 Dummy_Ice for Neutral Passive at TempPoint[1] facing (Random angle) degrees
-
Set A_DF_Dummy[A_DF_Index_Max] = (Last created unit)
-
Unit - Turn collision for A_DF_Dummy[A_DF_Index_Max] Off
-
Unit - Move A_DF_Dummy[A_DF_Index_Max] instantly to TempPoint[1]
-
Sound - Play DeepFreezSound <gen> at 100.00% volume, located at TempPoint[1] with Z offset 0.00
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
A_DF_Index_Max Equal to 1
-
-
Then - Actions
-
Trigger - Turn on DeepFreeze Loop <gen>
-
-
Else - Actions
-
-
Custom script: call RemoveLocation (udg_TempPoint[1])
-
-
-
DeepFreeze Loop
-
Events
-
Time - Every 0.03 seconds of game time
-
-
Conditions
-
Actions
-
For each (Integer A_DF_Index) from 1 to A_DF_Index_Max, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
A_DF_Time[A_DF_Index] Greater than 0.00
-
-
Then - Actions
-
Set A_DF_Time[A_DF_Index] = (A_DF_Time[A_DF_Index] - 0.03)
-
Set TempPoint[1] = (Position of A_DF_Dummy[A_DF_Index])
-
Set TempUG[1] = (Units within 200.00 of TempPoint[1] matching (((Matching unit) is alive) Equal to True))
-
Unit Group - Pick every unit in TempUG[1] and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
((Picked unit) is in A_DF_FU[A_DF_Index]) Equal to False
-
-
Then - Actions
-
Unit - Pause (Picked unit)
-
Animation - Change (Picked unit)'s animation speed to 0.00% of its original speed
-
Unit Group - Add (Picked unit) to A_DF_FU[A_DF_Index]
-
-
Else - Actions
-
-
-
-
Unit Group - Pick every unit in A_DF_FU[A_DF_Index] and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
((Picked unit) is in TempUG[1]) Equal to True
-
-
Then - Actions
-
Unit - Cause A_DF_Caster[A_DF_Index] to damage (Picked unit), dealing A_DF_Dmg[A_DF_Index] damage of attack type Spells and damage type Cold
-
-
Else - Actions
-
Unit Group - Remove (Picked unit) from A_DF_FU[A_DF_Index]
-
Unit - Unpause (Picked unit)
-
Animation - Change (Picked unit)'s animation speed to 100.00% of its original speed
-
-
-
-
-
Custom script: call DestroyGroup (udg_TempUG[1])
-
Custom script: call RemoveLocation (udg_TempPoint[1])
-
-
Else - Actions
-
Unit - Kill A_DF_Dummy[A_DF_Index]
-
Unit Group - Pick every unit in A_DF_FU[A_DF_Index] and do (Actions)
-
Loop - Actions
-
Unit Group - Remove (Picked unit) from A_DF_FU[A_DF_Index]
-
Unit - Unpause (Picked unit)
-
Animation - Change (Picked unit)'s animation speed to 100.00% of its original speed
-
-
-
Unit Group - Remove all units from A_DF_FU[A_DF_Index_Max]
-
Unit Group - Add all units of A_DF_FU[A_DF_Index_Max] to A_DF_FU[A_DF_Index]
-
Custom script: call DestroyGroup (udg_A_DF_FU[udg_A_DF_Index_Max])
-
Set A_DF_Caster[A_DF_Index] = A_DF_Caster[A_DF_Index_Max]
-
Set A_DF_Caster[A_DF_Index_Max] = No unit
-
Set A_DF_Dmg[A_DF_Index] = A_DF_Dmg[A_DF_Index_Max]
-
Set A_DF_Dmg[A_DF_Index_Max] = 0.00
-
Set A_DF_Dummy[A_DF_Index] = A_DF_Dummy[A_DF_Index_Max]
-
Set A_DF_Dummy[A_DF_Index_Max] = No unit
-
Set A_DF_Time[A_DF_Index] = A_DF_Time[A_DF_Index_Max]
-
Set A_DF_Time[A_DF_Index_Max] = 0.00
-
Set A_DF_Index_Max = (A_DF_Index_Max - 1)
-
Set A_DF_Index = (A_DF_Index - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
A_DF_Index_Max Equal to 0
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-
-
-
-
-
No wont make a attached map ^^.
Dont want to make it that easy to steal my spells.