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!
I create a simple mid air system, like quake with rockets, but after some uses of the ability , rockets can't appear, I have no idea why this occur, pls help. (new usser)
This line looks like it has an error. Should be Rocket_Current_Index:
Unit - Create 1 Dummy Proyectil for (Owner of Rocket_Launcher[UKnock_Current_Index]) at (Position of Rocket_Launcher[Rocket_Current_Index]) facing (Angle from (Position of Rocket_Launcher[Rocket_Current_Index]) to (Position of (Target unit of ability being cast))) degrees
Here are the full triggers:
Rocket A
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Fast shoot
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Index_Listener Equal to 0
Then - Actions
Trigger - Turn on Rockets B <gen>
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Recycle_Size Greater than 0
Then - Actions
Set Rocket_Recycle_Size = (Rocket_Recycle_Size - 1)
Set Rocket_Current_Index = Rocket_Recycle_Container[Rocket_Recycle_Size]
Else - Actions
Set Rocket_Current_Index = Rocket_Index_Size
Set Rocket_Index_Size = (Rocket_Index_Size + 1)
Set Rocket_Launcher[Rocket_Current_Index] = (Casting unit)
Unit - Create 1 Dummy Proyectil for (Owner of Rocket_Launcher[UKnock_Current_Index]) at (Position of Rocket_Launcher[Rocket_Current_Index]) facing (Angle from (Position of Rocket_Launcher[Rocket_Current_Index]) to (Position of (Target unit of ability being cast))) degrees
Set Rocket_Proyectil[Rocket_Current_Index] = (Last created unit)
Unit - Move Rocket_Proyectil[Rocket_Current_Index] instantly to (Position of Rocket_Proyectil[Rocket_Current_Index]), facing (Position of (Target unit of ability being cast))
Set Rocket_Distance[Rocket_Current_Index] = 5000.00
Set Rocket_Height[Rocket_Current_Index] = ((Current flying height of Rocket_Launcher[Rocket_Current_Index]) + 100.00)
Animation - Change Rocket_Proyectil[Rocket_Current_Index] flying height to Rocket_Height[Rocket_Current_Index] at 0.00
Set Rocket_HeightRate[Rocket_Current_Index] = ((((Current flying height of Rocket_Launcher[Rocket_Current_Index]) + 100.00) - ((Current flying height of (Target unit of ability being cast)) + 100.00)) x 0.04)
Set Rockets[(Player number of (Owner of Rocket_Launcher[Rocket_Current_Index]))] = (Rockets[(Player number of (Owner of Rocket_Launcher[Rocket_Current_Index]))] - 1)
Set Rocket_Index_Container[Rocket_Index_Listener] = Rocket_Current_Index
Set Rocket_Index_Listener = (Rocket_Index_Listener + 1)
Rockets B
Events
Time - Every 0.02 seconds of game time
Conditions
Actions
For each (Integer Rocket_Example_Loop) from 0 to (Rocket_Index_Listener - 1), do (Actions)
Loop - Actions
Set Rocket_Current_Index = Rocket_Index_Container[Rocket_Example_Loop]
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Distance[Rocket_Current_Index] Greater than 0.00
Then - Actions
Set Rocket_Target[Rocket_Current_Index] = (Random unit from (Units within 100.00 of (Position of Rocket_Proyectil[Rocket_Current_Index]) matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) Not equal to Rocket_Launcher[Rocket_Current_Index]) and ((((Current flying height of (Mat
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
And - All (Conditions) are true
Conditions
Rocket_Target[Rocket_Current_Index] Equal to No unit
(Rocket_Proyectil[Rocket_Current_Index] is alive) Equal to True
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of units in (Units within 100.00 of (Position of Rocket_Proyectil[Rocket_Current_Index]) matching ((Unit-type of (Matching unit)) Equal to Scout Tower))) Greater than 0
Then - Actions
Set Rocket_Target[Rocket_Current_Index] = (Random unit from (Units within 100.00 of (Position of Rocket_Proyectil[Rocket_Current_Index]) matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) Not equal to Rocket_Launcher[Rocket_Current_Index]) and ((((Current flying height of (Mat
Else - Actions
Unit - Move Rocket_Proyectil[Rocket_Current_Index] instantly to ((Position of Rocket_Proyectil[Rocket_Current_Index]) offset by 25.00 towards (Facing of Rocket_Proyectil[Rocket_Current_Index]) degrees)
Set Rocket_Distance[Rocket_Current_Index] = (Rocket_Distance[Rocket_Current_Index] - 25.00)
Set Rocket_Height[Rocket_Current_Index] = (Rocket_Height[Rocket_Current_Index] - Rocket_HeightRate[Rocket_Current_Index])
Animation - Change Rocket_Proyectil[Rocket_Current_Index] flying height to Rocket_Height[Rocket_Current_Index] at 0.00
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
And - All (Conditions) are true
Conditions
Rocket_Target[Rocket_Current_Index] Not equal to No unit
(Rocket_Proyectil[Rocket_Current_Index] is alive) Equal to True
Then - Actions
Set Rocket_Distance[Rocket_Current_Index] = 0.00
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Current flying height of Rocket_Target[Rocket_Current_Index]) Less than or equal to 1.00
Then - Actions
Special Effect - Create a special effect at (Position of Rocket_Proyectil[Rocket_Current_Index]) using Abilities\Spells\Other\Incinerate\FireLordDeathExplode.mdl
Special Effect - Destroy (Last created special effect)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
UKnock_Index_Listener Equal to 0
Then - Actions
Trigger - Turn on Knockbak system <gen>
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
UKnock_Recycle_Size Greater than 0
Then - Actions
Set UKnock_Recycle_Size = (UKnock_Recycle_Size - 1)
Set UKnock_Current_Index = UKnock_Recycle_Container[UKnock_Recycle_Size]
Else - Actions
Set UKnock_Current_Index = UKnock_Index_Size
Set UKnock_Index_Size = (UKnock_Index_Size + 1)
Set UKnock_Target[UKnock_Current_Index] = Rocket_Target[Rocket_Current_Index]
Unit - Add Storm Crow Form to UKnock_Target[UKnock_Current_Index]
Unit - Remove Storm Crow Form from UKnock_Target[UKnock_Current_Index]
Unit - Set UKnock_Target[UKnock_Current_Index] movement speed to ((Current movement speed of UKnock_Target[UKnock_Current_Index]) x 0.25)
Set UKnockback_Boolean[UKnock_Current_Index] = False
Set UKnock_distance[UKnock_Current_Index] = 100.00
Set UKnock_Desaceleration[UKnock_Current_Index] = (UKnock_distance[UKnock_Current_Index] x 0.02)
Set UKnock_angle[UKnock_Current_Index] = (Angle from (Position of Rocket_Proyectil[UKnock_Current_Index]) to (Position of Rocket_Target[UKnock_Current_Index]))
Set UKnockback_Height[UKnock_Current_Index] = 0.00
Set UKnockback_HeightRate[UKnock_Current_Index] = (500.00 x 0.02)
Set UKnock_Index_Container[UKnock_Current_Index] = UKnock_Current_Index
Set UKnock_Index_Listener = (UKnock_Index_Listener + 1)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Current flying height of Rocket_Target[Rocket_Current_Index]) Greater than 1.00
Then - Actions
Game - Display to (All players) for 15.00 seconds the text: ((Name of (Owner of Rocket_Launcher[Rocket_Current_Index])) + ( got a mid-air on + (Name of (Owner of Rocket_Target[Rocket_Current_Index]))))
Set Rocket_Crits[Rocket_Current_Index] = True
Else - Actions
Unit Group - Pick every unit in (Units within 400.00 of (Position of Rocket_Target[Rocket_Current_Index]) matching (((Matching unit) belongs to an enemy of (Owner of Rocket_Proyectil[Rocket_Current_Index])) Equal to True)) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between (Position of Rocket_Target[Rocket_Current_Index]) and (Position of (Picked unit))) Less than or equal to 50.00
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Crits[Rocket_Current_Index] Equal to True
Then - Actions
Unit - Cause Rocket_Launcher[Rocket_Current_Index] to damage (Picked unit), dealing 300.00 damage of attack type Chaos and damage type Universal
Special Effect - Create a special effect at (Position of Rocket_Proyectil[Rocket_Current_Index]) using Abilities\Spells\Human\ManaFlare\ManaFlareBoltImpact.mdl
Special Effect - Destroy (Last created special effect)
Special Effect - Destroy Rockets_CritsEffect[Rocket_Current_Index]
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Crits[Rocket_Current_Index] Not equal to True
Then - Actions
Unit - Cause Rocket_Launcher[Rocket_Current_Index] to damage (Picked unit), dealing 100.00 damage of attack type Chaos and damage type Universal
Else - Actions
Else - Actions
Set Rocket_Crits[Rocket_Current_Index] = False
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between (Position of Rocket_Target[Rocket_Current_Index]) and (Position of (Picked unit))) Greater than 50.00
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Crits[Rocket_Current_Index] Equal to True
Then - Actions
Unit - Cause Rocket_Launcher[Rocket_Current_Index] to damage (Picked unit), dealing ((100.00 - (50.00 x ((Distance between (Position of Rocket_Proyectil[Rocket_Current_Index]) and (Position of (Picked unit))) / 400.00))) x 3.00) damage of attack type Chaos and damage type Universal
Special Effect - Destroy Rockets_CritsEffect[Rocket_Current_Index]
Special Effect - Create a special effect at (Position of Rocket_Proyectil[Rocket_Current_Index]) using Abilities\Spells\Human\ManaFlare\ManaFlareBoltImpact.mdl
Special Effect - Destroy (Last created special effect)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Crits[Rocket_Current_Index] Not equal to True
Then - Actions
Unit - Cause Rocket_Launcher[Rocket_Current_Index] to damage (Picked unit), dealing (100.00 - (80.00 x ((Distance between (Position of Rocket_Proyectil[Rocket_Current_Index]) and (Position of (Picked unit))) / 400.00))) damage of attack type Chaos and damage type Universal
Else - Actions
Else - Actions
Set Rocket_Crits[Rocket_Current_Index] = False
Unit - Kill Rocket_Proyectil[Rocket_Current_Index]
Set Rocket_Distance[Rocket_Current_Index] = 0.00
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
Rocket_Distance[Rocket_Current_Index] Less than or equal to 0.00
(Rocket_Proyectil[Rocket_Current_Index] is alive) Not equal to True
Rocket_Height[Rocket_Current_Index] Greater than or equal to 2000.00
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Rocket_Proyectil[Rocket_Current_Index] is alive) Equal to True
Then - Actions
Unit Group - Pick every unit in (Units within 400.00 of (Position of Rocket_Proyectil[Rocket_Current_Index]) matching (((Matching unit) belongs to an enemy of (Owner of Rocket_Proyectil[Rocket_Current_Index])) Equal to True)) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between (Position of Rocket_Proyectil[Rocket_Current_Index]) and (Position of (Picked unit))) Less than or equal to 25.00
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Crits[Rocket_Current_Index] Equal to True
Then - Actions
Unit - Cause Rocket_Launcher[Rocket_Current_Index] to damage (Picked unit), dealing 300.00 damage of attack type Chaos and damage type Universal
Special Effect - Create a special effect at (Position of Rocket_Proyectil[Rocket_Current_Index]) using Abilities\Spells\Human\ManaFlare\ManaFlareBoltImpact.mdl
Special Effect - Destroy (Last created special effect)
Special Effect - Destroy Rockets_CritsEffect[Rocket_Current_Index]
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Crits[Rocket_Current_Index] Not equal to True
Then - Actions
Unit - Cause Rocket_Launcher[Rocket_Current_Index] to damage (Picked unit), dealing 100.00 damage of attack type Chaos and damage type Universal
Else - Actions
Set Rocket_Crits[Rocket_Current_Index] = False
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between (Position of Rocket_Proyectil[Rocket_Current_Index]) and (Position of (Picked unit))) Greater than 25.00
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Crits[Rocket_Current_Index] Equal to True
Then - Actions
Unit - Cause Rocket_Launcher[Rocket_Current_Index] to damage (Picked unit), dealing ((100.00 - (50.00 x ((Distance between (Position of Rocket_Proyectil[Rocket_Current_Index]) and (Position of (Picked unit))) / 400.00))) x 3.00) damage of attack type Chaos and damage type Universal
Special Effect - Create a special effect at (Position of Rocket_Proyectil[Rocket_Current_Index]) using Abilities\Spells\Human\ManaFlare\ManaFlareBoltImpact.mdl
Special Effect - Destroy (Last created special effect)
Special Effect - Destroy Rockets_CritsEffect[Rocket_Current_Index]
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Rocket_Crits[Rocket_Current_Index] Not equal to True
Then - Actions
Unit - Cause Rocket_Launcher[Rocket_Current_Index] to damage (Picked unit), dealing (100.00 - (80.00 x ((Distance between (Position of Rocket_Proyectil[Rocket_Current_Index]) and (Position of (Picked unit))) / 400.00))) damage of attack type Chaos and damage type Universal
Else - Actions
Set Rocket_Crits[Rocket_Current_Index] = False
Else - Actions
Special Effect - Create a special effect at (Position of Rocket_Proyectil[Rocket_Current_Index]) using ExplosionBIG.mdx
Special Effect - Destroy (Last created special effect)
Unit - Kill Rocket_Proyectil[Rocket_Current_Index]
Else - Actions
Unit - Remove Rocket_Proyectil[Rocket_Current_Index] from the game
Set Rocket_Crits[Rocket_Current_Index] = False
Set Rocket_Height[Rocket_Current_Index] = 0.00
Set Rocket_Proyectil[Rocket_Current_Index] = No unit
Set Rocket_Launcher[Rocket_Current_Index] = No unit
Set Rocket_Target[Rocket_Current_Index] = No unit
Set Rocket_Index_Listener = (Rocket_Index_Listener - 1)
Set Rocket_Index_Container[Rocket_Example_Loop] = Rocket_Index_Container[Rocket_Index_Listener]
Set Rocket_Recycle_Container[Rocket_Recycle_Size] = Rocket_Current_Index
Set Rocket_Recycle_Size = (Rocket_Recycle_Size + 1)
Set Rocket_Example_Loop = (Rocket_Example_Loop - 1)
If (All Conditions are True) then do (Then Actions) else do (Else 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.