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!
You are using an out of date browser. It may not display this or other websites correctly. You should upgrade or use an alternative browser.
Triggers
The Banisher.w3x
Variables
Initialization
Melee Initialization
Call The Banisht
Finish Cast
Banisht Spell
Banisher Move
Stop Call
Enter map-specific custom script code below. This text will be included in the map script after variables are declared and before any trigger code.
Name
Type
is_array
initial_value
Banisht
unit
Yes
Banisht_Caster
unit
No
Banisht_Group
group
No
Banisht_Position
location
Yes
Bansht_Cast_Position
location
No
Default melee game initialization for all players
Melee Initialization
Events
Map initialization
Conditions
Actions
Melee Game - Use melee time of day (for all players)
Melee Game - Set starting resources (for all players)
Melee Game - Run melee AI scripts (for computer players)
Finish Cast
Events
Unit - A unit Finishes casting an ability
Conditions
(Ability being cast) Equal to Call The Banisht
Actions
Set Variable Set Banisht_Caster = (Casting unit)
Unit - Create 1 Banisht (Banshee) for Player 1 (Red) at (Random point in (Region(((Position of Banisht_Caster) offset by (300.00, -300.00)), ((Position of Banisht_Caster) offset by (-300.00, 300.00))))) facing (Position of (Triggering unit))
Set Variable Set Banisht[0] = (Last created unit)
Unit Group - Add Banisht[0] to Banisht_Group
Unit - Create 1 Banisht (Banshee) for Player 1 (Red) at (Random point in (Region(((Position of Banisht_Caster) offset by (300.00, -300.00)), ((Position of Banisht_Caster) offset by (-300.00, 300.00))))) facing (Position of (Triggering unit))
Set Variable Set Banisht[1] = (Last created unit)
Unit Group - Add Banisht[1] to Banisht_Group
Unit - Create 1 Banisht (Banshee) for Player 1 (Red) at (Random point in (Region(((Position of Banisht_Caster) offset by (300.00, -300.00)), ((Position of Banisht_Caster) offset by (-300.00, 300.00))))) facing (Position of (Triggering unit))
Set Variable Set Banisht[2] = (Last created unit)
Unit Group - Add Banisht[2] to Banisht_Group
Unit - Create 1 Banisht (Banshee) for Player 1 (Red) at (Random point in (Region(((Position of Banisht_Caster) offset by (300.00, -300.00)), ((Position of Banisht_Caster) offset by (-300.00, 300.00))))) facing (Position of (Triggering unit))
Set Variable Set Banisht[3] = (Last created unit)
Unit Group - Add Banisht[3] to Banisht_Group
Unit - Create 1 Banisht (Banshee) for Player 1 (Red) at (Random point in (Region(((Position of Banisht_Caster) offset by (300.00, -300.00)), ((Position of Banisht_Caster) offset by (-300.00, 300.00))))) facing (Position of (Triggering unit))
Set Variable Set Banisht[4] = (Last created unit)
Unit Group - Add Banisht[4] to Banisht_Group
Unit - Create 1 Banisht (Banshee) for Player 1 (Red) at (Random point in (Region(((Position of Banisht_Caster) offset by (300.00, -300.00)), ((Position of Banisht_Caster) offset by (-300.00, 300.00))))) facing (Position of (Triggering unit))
Set Variable Set Banisht[5] = (Last created unit)
Unit Group - Add Banisht[5] to Banisht_Group
Wait 2 seconds
Unit - Move Banisht[0] instantly to ((Position of Banisht_Caster) offset by 200.00 towards (Facing of Banisht_Caster) degrees.)
Unit - Move Banisht[1] instantly to ((Position of Banisht_Caster) offset by 300.00 towards (Facing of Banisht_Caster) degrees.)
Unit - Move Banisht[2] instantly to ((Position of Banisht_Caster) offset by 400.00 towards (Facing of Banisht_Caster) degrees.)
Unit - Move Banisht[3] instantly to ((Position of Banisht_Caster) offset by 500.00 towards (Facing of Banisht_Caster) degrees.)
Unit - Move Banisht[4] instantly to ((Position of Banisht_Caster) offset by 600.00 towards (Facing of Banisht_Caster) degrees.)
Unit - Move Banisht[5] instantly to ((Position of Banisht_Caster) offset by 700.00 towards (Facing of Banisht_Caster) degrees.)
Wait 2 seconds
Trigger - Turn on Banisher_Move <gen>
Trigger - Turn on Banisht_Spell <gen>
Unit - Remove Call The Banisht from Banisht_Caster
Unit - Add Stop Call to Banisht_Caster
Trigger - Turn on Stop_Call <gen>
Banisht Spell
Events
Time - Every 0.50 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in (Units within 100.00 of (Position of Banisht[0]).) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) has buff Banish) Equal to False
Then - Actions
Unit - Create 1 Invisible Caster Dummy (Banshee) for Neutral Passive at (Position of (Picked unit)) facing (Position of (Triggering unit))
Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
Unit - Order (Last created unit) to Human Blood Mage - Banish . (Picked unit)
Else - Actions
Do nothing
Unit Group - Pick every unit in (Units within 100.00 of (Position of Banisht[1]).) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) has buff Banish) Equal to False
Then - Actions
Unit - Create 1 Invisible Caster Dummy (Banshee) for Neutral Passive at (Position of (Picked unit)) facing (Position of (Triggering unit))
Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
Unit - Order (Last created unit) to Human Blood Mage - Banish . (Picked unit)
Else - Actions
Do nothing
Unit Group - Pick every unit in (Units within 100.00 of (Position of Banisht[2]).) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) has buff Banish) Equal to False
Then - Actions
Unit - Create 1 Invisible Caster Dummy (Banshee) for Neutral Passive at (Position of (Picked unit)) facing (Position of (Triggering unit))
Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
Unit - Order (Last created unit) to Human Blood Mage - Banish . (Picked unit)
Else - Actions
Do nothing
Unit Group - Pick every unit in (Units within 100.00 of (Position of Banisht[3]).) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) has buff Banish) Equal to False
Then - Actions
Unit - Create 1 Invisible Caster Dummy (Banshee) for Neutral Passive at (Position of (Picked unit)) facing (Position of (Triggering unit))
Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
Unit - Order (Last created unit) to Human Blood Mage - Banish . (Picked unit)
Else - Actions
Do nothing
Unit Group - Pick every unit in (Units within 100.00 of (Position of Banisht[4]).) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) has buff Banish) Equal to False
Then - Actions
Unit - Create 1 Invisible Caster Dummy (Banshee) for Neutral Passive at (Position of (Picked unit)) facing (Position of (Triggering unit))
Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
Unit - Order (Last created unit) to Human Blood Mage - Banish . (Picked unit)
Else - Actions
Do nothing
Unit Group - Pick every unit in (Units within 100.00 of (Position of Banisht[5]).) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) has buff Banish) Equal to False
Then - Actions
Unit - Create 1 Invisible Caster Dummy (Banshee) for Neutral Passive at (Position of (Picked unit)) facing (Position of (Triggering unit))
Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
Unit - Order (Last created unit) to Human Blood Mage - Banish . (Picked unit)
Else - Actions
Do nothing
Banisher Move
Events
Time - Every 0.05 seconds of game time
Conditions
Actions
Set Variable Set Bansht_Cast_Position = (Position of Banisht_Caster)
Set Variable Set Banisht_Position[0] = (Position of Banisht[0])
Set Variable Set Banisht_Position[1] = (Position of Banisht[1])
Set Variable Set Banisht_Position[2] = (Position of Banisht[2])
Set Variable Set Banisht_Position[3] = (Position of Banisht[3])
Set Variable Set Banisht_Position[4] = (Position of Banisht[4])
Set Variable Set Banisht_Position[5] = (Position of Banisht[5])
Unit - Move Banisht[0] instantly to (Bansht_Cast_Position offset by 200.00 towards ((Angle from Banisht_Position[0] to Bansht_Cast_Position) + 1.00) degrees.)
Unit - Move Banisht[1] instantly to (Bansht_Cast_Position offset by 300.00 towards ((Angle from Banisht_Position[1] to Bansht_Cast_Position) + 1.05) degrees.)
Unit - Move Banisht[2] instantly to (Bansht_Cast_Position offset by 400.00 towards ((Angle from Banisht_Position[2] to Bansht_Cast_Position) + 1.10) degrees.)
Unit - Move Banisht[3] instantly to (Bansht_Cast_Position offset by 500.00 towards ((Angle from Banisht_Position[3] to Bansht_Cast_Position) + 1.15) degrees.)
Unit - Move Banisht[4] instantly to (Bansht_Cast_Position offset by 600.00 towards ((Angle from Banisht_Position[4] to Bansht_Cast_Position) + 1.20) degrees.)
Unit - Move Banisht[5] instantly to (Bansht_Cast_Position offset by 700.00 towards ((Angle from Banisht_Position[5] to Bansht_Cast_Position) + 1.25) degrees.)
Stop Call
Events
Unit - A unit Finishes casting an ability
Conditions
(Ability being cast) Equal to Stop Call
Actions
Trigger - Turn off Banisher_Move <gen>
Trigger - Turn off Banisht_Spell <gen>
Unit Group - Pick every unit in Banisht_Group and do (Actions)
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.