• 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!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

Missile and Jump System

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
  • Like
Reactions: Cronos
This system allows anyone to easily make custom spells involving missiles.
It features:
Jumping(the casting unit "jumps" to the target location)
4 Damage Methods(explode on collision/periodic damage/damage once/explosive landing)
Missile bouncing(deflecting off walls/doodads/boundary)
Missile dragging(with periodic damage missiles, it drags damaged units with the missile)
13 unique 'After Destination' effects(Example: a missile with arc bouncing back into the air after landing)
Easily customizable vertical and horizontal arc, damage, radius, speed, distance and special effects
Hopefully bug and leak free

[TRIGGER=Missile Periodic]Missile Periodic
Events
Conditions
Actions
For each (Integer LoopIndex) from 1 to Index, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Missile[LoopIndex] Not equal to No unit
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Missile[LoopIndex] is alive) Equal to True
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Mana of Missile[LoopIndex]) Less than 180.00
Then - Actions
Unit - Set mana of Missile[LoopIndex] to ((Mana of Missile[LoopIndex]) + (180.00 / (Distance[LoopIndex] / Speed[LoopIndex])))
Set TempPoint = (StartPoint[LoopIndex] offset by (Distance[LoopIndex] x ((Mana of Missile[LoopIndex]) / 180.00)) towards Angle[LoopIndex] degrees)
Set TempPoint2 = (TempPoint offset by (HorizontalArc[LoopIndex] x (Sin((Mana of Missile[LoopIndex])))) towards (Angle[LoopIndex] - 90.00) degrees)
Unit - Make Missile[LoopIndex] face TempPoint2 over 0.00 seconds
Unit - Move Missile[LoopIndex] instantly to TempPoint2
Animation - Change Missile[LoopIndex] flying height to (VerticalArc[LoopIndex] x (Sin((Mana of Missile[LoopIndex])))) at 0.00
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Jump[LoopIndex] Equal to True
Then - Actions
Animation - Change DamageSource[LoopIndex] flying height to (Current flying height of Missile[LoopIndex]) at 0.00
Custom script: call SetUnitX(udg_DamageSource[udg_LoopIndex], GetLocationX(udg_TempPoint2))
Custom script: call SetUnitY(udg_DamageSource[udg_LoopIndex], GetLocationY(udg_TempPoint2))
Else - Actions
Trigger - Run Damage <gen> (ignoring conditions)
Trigger - Run Terrain and Boundary <gen> (ignoring conditions)
Custom script: call RemoveLocation (udg_TempPoint)
Custom script: call RemoveLocation (udg_TempPoint2)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
DamageMethod[LoopIndex] Equal to 1
And - All (Conditions) are true
Conditions
DamageMethod[LoopIndex] Not equal to 2
DamageMethod[LoopIndex] Not equal to 3
Then - Actions
Set TempPoint2 = (Position of Missile[LoopIndex])
Trigger - Run Damage Method 1 And 4 <gen> (ignoring conditions)
Custom script: call RemoveLocation (udg_TempPoint2)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AfterDestination[LoopIndex] Greater than 0
AfterDestination[LoopIndex] Less than 7
Then - Actions
Trigger - Run After Destination 1 to 6 <gen> (checking conditions)
Else - Actions
Unit - Kill Missile[LoopIndex]
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Jump[LoopIndex] Equal to True
Then - Actions
Animation - Change DamageSource[LoopIndex] flying height to (Default flying height of DamageSource[LoopIndex]) at 0.00
Else - Actions
Unit - Remove Missile[LoopIndex] from the game
Special Effect - Destroy MissileEffect[LoopIndex]
Custom script: call RemoveLocation (udg_StartPoint[udg_LoopIndex])
Custom script: call DestroyGroup (udg_AlreadyHit[udg_LoopIndex])
Set Missile[LoopIndex] = No unit
Set IndexReseter = (IndexReseter - 1)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
IndexReseter Equal to 0
Then - Actions
Set Index = 0
Trigger - Turn off (This trigger)
Else - Actions
Else - Actions
[/TRIGGER]

[trigger=Terrain and Boundary]Terrain and Boundary Events
Conditions
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Missile[LoopIndex] is alive) Equal to True
(Terrain pathing at TempPoint2 of type Flyability is off) Equal to True
Or - Any (Conditions) are true
Conditions
TerrainandBoundaryReaction[LoopIndex] Equal to 1
TerrainandBoundaryReaction[LoopIndex] Equal to 3
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
DamageMethod[LoopIndex] Equal to 1
And - All (Conditions) are true
Conditions
DamageMethod[LoopIndex] Not equal to 2
DamageMethod[LoopIndex] Not equal to 3
Then - Actions
Trigger - Run Damage Method 1 And 4 <gen> (ignoring conditions)
Else - Actions
Unit - Kill Missile[LoopIndex]
Else - Actions
Destructible - Pick every destructible within 75.00 of TempPoint2 and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Missile[LoopIndex] is alive) Equal to True
TerrainandBoundaryReaction[LoopIndex] Equal to 1
((Picked destructible) is alive) Equal to True
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
DamageMethod[LoopIndex] Equal to 1
And - All (Conditions) are true
Conditions
DamageMethod[LoopIndex] Not equal to 2
DamageMethod[LoopIndex] Not equal to 3
Then - Actions
Trigger - Run Damage Method 1 And 4 <gen> (ignoring conditions)
Destructible - Set life of (Picked destructible) to ((Current life of (Picked destructible)) - Damage[LoopIndex])
Else - Actions
Unit - Kill Missile[LoopIndex]
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Missile[LoopIndex] is alive) Equal to True
(Terrain pathing at TempPoint2 of type Walkability is off) Equal to True
TerrainandBoundaryReaction[LoopIndex] Equal to 1
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
DamageMethod[LoopIndex] Equal to 1
And - All (Conditions) are true
Conditions
DamageMethod[LoopIndex] Not equal to 2
DamageMethod[LoopIndex] Not equal to 3
Then - Actions
Trigger - Run Damage Method 1 And 4 <gen> (ignoring conditions)
Else - Actions
Unit - Kill Missile[LoopIndex]
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Missile[LoopIndex] is alive) Equal to True
TerrainandBoundaryReaction[LoopIndex] Equal to 2
(Mana of Missile[LoopIndex]) Less than 179.50
(Mana of Missile[LoopIndex]) Greater than (180.00 / (Distance[LoopIndex] / Speed[LoopIndex]))
Then - Actions
For each (Integer IntegerC[0]) from 1 to 4, do (Actions)
Loop - Actions
Set TempPoint3 = (TempPoint2 offset by 35.00 towards (90.00 x (Real(IntegerC[0]))) degrees)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Terrain pathing at TempPoint3 of type Walkability is off) Equal to True
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
HorizontalArc[LoopIndex] Greater than 0.00
Then - Actions
Set Angle[LoopIndex] = (Facing of Missile[LoopIndex])
Else - Actions
Set HorizontalArc[LoopIndex] = 0.00
Set VerticalArc[LoopIndex] = (VerticalArc[LoopIndex] / 2.00)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
IntegerC[0] Equal to 1
IntegerC[0] Equal to 3
Then - Actions
Set Angle[LoopIndex] = (0.00 - Angle[LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Set Distance[LoopIndex] = (Distance[LoopIndex] - (Distance[LoopIndex] x ((Mana of Missile[LoopIndex]) / 180.00)))
Unit - Set mana of Missile[LoopIndex] to 0.00
Else - Actions
Set Angle[LoopIndex] = (180.00 - Angle[LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Set Distance[LoopIndex] = (Distance[LoopIndex] - (Distance[LoopIndex] x ((Mana of Missile[LoopIndex]) / 180.00)))
Unit - Set mana of Missile[LoopIndex] to 0.00
Else - Actions
Destructible - Pick every destructible within 75.00 of TempPoint3 and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked destructible) is alive) Equal to True
Then - Actions
Set HorizontalArc[LoopIndex] = 0.00
Set VerticalArc[LoopIndex] = (VerticalArc[LoopIndex] / 2.00)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
IntegerC[0] Equal to 1
IntegerC[0] Equal to 3
Then - Actions
Set Angle[LoopIndex] = (0.00 - Angle[LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Set Distance[LoopIndex] = (Distance[LoopIndex] - (Distance[LoopIndex] x ((Mana of Missile[LoopIndex]) / 180.00)))
Unit - Set mana of Missile[LoopIndex] to 0.00
Else - Actions
Set Angle[LoopIndex] = (180.00 - Angle[LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Set Distance[LoopIndex] = (Distance[LoopIndex] - (Distance[LoopIndex] x ((Mana of Missile[LoopIndex]) / 180.00)))
Unit - Set mana of Missile[LoopIndex] to 0.00
Else - Actions
Custom script: call RemoveLocation (udg_TempPoint3)
Else - Actions
[/trigger]

[trigger=Damage]Damage
Events
Conditions
Actions
Set TempGroup = (Units within CollisionRadius[LoopIndex] of TempPoint2 matching ((Unit-type of (Matching unit)) Not equal to Missile))
Unit Group - Pick every unit in TempGroup and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
And - All (Conditions) are true
Conditions
TargetsAllies[LoopIndex] Equal to True
((Picked unit) belongs to an enemy of (Owner of DamageSource[LoopIndex])) Equal to True
And - All (Conditions) are true
Conditions
TargetsAllies[LoopIndex] Equal to False
((Picked unit) belongs to an enemy of (Owner of DamageSource[LoopIndex])) Equal to False
And - All (Conditions) are true
Conditions
(Picked unit) Equal to DamageSource[LoopIndex]
Damage[LoopIndex] Greater than 0.00
((Picked unit) is dead) Equal to True
Then - Actions
Unit Group - Remove (Picked unit) from TempGroup
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
DamageMethod[LoopIndex] Equal to 1
(Number of units in TempGroup) Greater than 0
Then - Actions
Trigger - Run Damage Method 1 And 4 <gen> (ignoring conditions)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
DamageMethod[LoopIndex] Equal to 2
(Number of units in TempGroup) Greater than 0
Then - Actions
Unit Group - Pick every unit in TempGroup and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Damage[LoopIndex] Greater than 0.00
Then - Actions
Unit - Cause DamageSource[LoopIndex] to damage (Picked unit), dealing Damage[LoopIndex] damage of attack type Chaos and damage type Universal
Else - Actions
Unit - Set life of (Picked unit) to ((Life of (Picked unit)) - Damage[LoopIndex])
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Drag[LoopIndex] Equal to True
Then - Actions
Custom script: call SetUnitX(GetEnumUnit(), GetLocationX(udg_TempPoint2))
Custom script: call SetUnitY(GetEnumUnit(), GetLocationY(udg_TempPoint2))
Else - Actions
Special Effect - Create a special effect attached to the DamageSpecialEffectLocation[LoopIndex] of (Picked unit) using DamageSpecialEffect[LoopIndex]
Special Effect - Destroy (Last created special effect)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of units in TempGroup) Greater than 0
DamageMethod[LoopIndex] Equal to 3
Then - Actions
Unit Group - Pick every unit in TempGroup and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) is in AlreadyHit[LoopIndex]) Equal to False
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Damage[LoopIndex] Greater than 0.00
Then - Actions
Unit - Cause DamageSource[LoopIndex] to damage (Picked unit), dealing Damage[LoopIndex] damage of attack type Chaos and damage type Universal
Else - Actions
Unit - Set life of (Picked unit) to ((Life of (Picked unit)) - Damage[LoopIndex])
Special Effect - Create a special effect attached to the DamageSpecialEffectLocation[LoopIndex] of (Picked unit) using DamageSpecialEffect[LoopIndex]
Special Effect - Destroy (Last created special effect)
Unit Group - Add (Picked unit) to AlreadyHit[LoopIndex]
Else - Actions
Else - Actions
Custom script: call DestroyGroup (udg_TempGroup)
[/trigger]

[trigger=Damage Method 1 and 4]Damage Method 1 and 4 Events
Conditions
Actions
Set TempGroup2 = (Units within ExplodeRadius[LoopIndex] of TempPoint2 matching ((Unit-type of (Matching unit)) Not equal to Missile))
Unit Group - Pick every unit in TempGroup2 and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
And - All (Conditions) are true
Conditions
TargetsAllies[LoopIndex] Equal to True
((Picked unit) belongs to an enemy of (Owner of DamageSource[LoopIndex])) Equal to True
And - All (Conditions) are true
Conditions
TargetsAllies[LoopIndex] Equal to False
((Picked unit) belongs to an enemy of (Owner of DamageSource[LoopIndex])) Equal to False
(Picked unit) Equal to DamageSource[LoopIndex]
((Picked unit) is dead) Equal to True
Then - Actions
Unit Group - Remove (Picked unit) from TempGroup
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Damage[LoopIndex] Greater than 0.00
Then - Actions
Unit - Cause DamageSource[LoopIndex] to damage (Picked unit), dealing Damage[LoopIndex] damage of attack type Chaos and damage type Universal
Else - Actions
Unit - Set life of (Picked unit) to ((Life of (Picked unit)) - Damage[LoopIndex])
Custom script: call DestroyGroup (udg_TempGroup2)
Special Effect - Create a special effect at TempPoint2 using DamageSpecialEffect[LoopIndex]
Special Effect - Destroy (Last created special effect)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
DamageMethod[LoopIndex] Equal to 1
AfterDestination[LoopIndex] Less than 7
AfterDestination[LoopIndex] Greater than 13
Then - Actions
Unit - Kill Missile[LoopIndex]
Else - Actions
Trigger - Run After Destination Others <gen> (ignoring conditions)
[/trigger]

[trigger=After Desination 1-6]After Desination 1-6
Events
Conditions
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AfterDestination[LoopIndex] Equal to 5
Then - Actions
Set TempPoint = (Position of Missile[LoopIndex])
Set TempPoint3 = (Position of DamageSource[LoopIndex])
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between TempPoint and TempPoint3) Less than or equal to 50.00
Then - Actions
Set TempPoint2 = (TempPoint offset by Speed[LoopIndex] towards (Angle from TempPoint to TempPoint3) degrees)
Trigger - Run Damage <gen> (ignoring conditions)
Unit - Kill Missile[LoopIndex]
Custom script: call RemoveLocation (udg_TempPoint2)
Else - Actions
Set TempPoint2 = (TempPoint offset by Speed[LoopIndex] towards (Angle from TempPoint to TempPoint3) degrees)
Trigger - Run Damage <gen> (ignoring conditions)
Unit - Move Missile[LoopIndex] instantly to TempPoint2
Custom script: call RemoveLocation (udg_TempPoint2)
Custom script: call RemoveLocation (udg_TempPoint)
Custom script: call RemoveLocation (udg_TempPoint3)
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AfterDestination[LoopIndex] Equal to 1
Then - Actions
Unit - Set mana of Missile[LoopIndex] to 0.00
Custom script: call RemoveLocation (udg_StartPoint[udg_LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Set AfterDestination[LoopIndex] = 5
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AfterDestination[LoopIndex] Equal to 2
Then - Actions
Unit - Set mana of Missile[LoopIndex] to 0.00
Custom script: call RemoveLocation (udg_StartPoint[udg_LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Set Angle[LoopIndex] = (Angle[LoopIndex] - 180.00)
Set AfterDestination[LoopIndex] = 5
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AfterDestination[LoopIndex] Equal to 4
Then - Actions
Unit - Set mana of Missile[LoopIndex] to 0.00
Custom script: call RemoveLocation (udg_StartPoint[udg_LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Set Angle[LoopIndex] = (Angle[LoopIndex] - 180.00)
Set Distance[LoopIndex] = (Distance[LoopIndex] x 2.00)
Set AfterDestination[LoopIndex] = 5
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AfterDestination[LoopIndex] Equal to 3
Then - Actions
Unit - Set mana of Missile[LoopIndex] to 0.00
Custom script: call RemoveLocation (udg_StartPoint[udg_LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Set AfterDestination[LoopIndex] = 4
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AfterDestination[LoopIndex] Equal to 6
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Damage[LoopIndex] Greater than 0.00
Then - Actions
Set Damage[LoopIndex] = (Damage[LoopIndex] x -1.00)
Set TargetsAllies[LoopIndex] = True
Custom script: call RemoveLocation (udg_StartPoint[udg_LoopIndex])
Set AfterDestination[LoopIndex] = 5
Else - Actions
Else - Actions
[/trigger]

[trigger=After Destination 7-13]After Destination 7-13
Events
Conditions
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AfterDestination[LoopIndex] Equal to 11
Then - Actions
Trigger - Run Fragment <gen> (checking conditions)
Unit - Kill Missile[LoopIndex]
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
AfterDestination[LoopIndex] Equal to 7
AfterDestination[LoopIndex] Equal to 8
AfterDestination[LoopIndex] Equal to 12
AfterDestination[LoopIndex] Equal to 13
Then - Actions
Set Distance[LoopIndex] = (Distance[LoopIndex] / 2.00)
Set VerticalArc[LoopIndex] = (VerticalArc[LoopIndex] / 2.00)
Set CollisionRadius[LoopIndex] = 0.00
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
AfterDestination[LoopIndex] Equal to 8
AfterDestination[LoopIndex] Equal to 13
Then - Actions
Set Damage[LoopIndex] = (Damage[LoopIndex] / 2.00)
Else - Actions
Unit - Set mana of Missile[LoopIndex] to 0.00
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
AfterDestination[LoopIndex] Equal to 13
AfterDestination[LoopIndex] Equal to 12
Then - Actions
Set AfterDestination[LoopIndex] = 11
Else - Actions
Set DamageMethod[LoopIndex] = 1
Custom script: call RemoveLocation (udg_StartPoint[udg_LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions
AfterDestination[LoopIndex] Equal to 9
AfterDestination[LoopIndex] Equal to 10
Then - Actions
Set Distance[LoopIndex] = (Distance[LoopIndex] / 2.00)
Set VerticalArc[LoopIndex] = (VerticalArc[LoopIndex] / 2.00)
Set CollisionRadius[LoopIndex] = 0.00
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AfterDestination[LoopIndex] Equal to 10
Then - Actions
Set Damage[LoopIndex] = (Damage[LoopIndex] / 2.00)
Set AfterDestination[LoopIndex] = 8
Else - Actions
Set AfterDestination[LoopIndex] = 7
Unit - Set mana of Missile[LoopIndex] to 0.00
Custom script: call RemoveLocation (udg_StartPoint[udg_LoopIndex])
Set StartPoint[LoopIndex] = (Position of Missile[LoopIndex])
Else - Actions
[/trigger]



Changelog:
.01 to .02 - Code improvements
.02 t0 .03 - Fixed a bug with dragging and made drag only drag 1 unit to prevent lag(when dragging over 10 units)
.03 to .04 - Added an Attack Type variable

Keywords:
Missile, Jump, System, GUI, Customizable, Bouncing, Dragging
Contents

Missile and Jump System V.04 (Map)

Reviews
12th Dec 2015 IcemanBo: Too long as NeedsFix. Rejected. 10 Nov 2011 Bribe: Your indexing is really bad, I recommend Hanky's Dynamic Indexing. You also have memory leaks in "Terrain and Boundary".

Moderator

M

Moderator

12th Dec 2015
IcemanBo: Too long as NeedsFix. Rejected.


10 Nov 2011
Bribe: Your indexing is really bad, I recommend Hanky's Dynamic Indexing.

You also have memory leaks in "Terrain and Boundary".
 
Level 2
Joined
Jul 10, 2011
Messages
6
Thanks Bribe, I made the suggested fixes, excluding the
  • Set TempGroup = (Units within CollisionRadius[LoopIndex] of TempPoint2 matching ((Unit-type of (Matching unit)) Not equal to Missile))
to
  • Set TempGroup = (Units within CollisionRadius[LoopIndex] of TempPoint2)
as when I changed the code, it caused my missiles to explode on themselves(the dummy unit does have locust).

Also, as for being creative, my missile system has at least five features that none of the other millions(three that I could find, but solid exaggeration) have and that is excluding the subfeatures.
 
Last edited:
Level 9
Joined
May 14, 2011
Messages
524
*Any criticism, especially if it's constructive, will be taken personally and upset me greatly. * Did you mean destructive ?
PS: Add triggers?
 
Last edited:
Level 2
Joined
Jul 10, 2011
Messages
6
Joking, the "especially if it's constructive" was supposed to make it clear that I was joking, but apparently failed.

And np chronos.

As for adding the triggers, I have the system broken down into 7 triggers, plus 6 example triggers, and not going to lie, I'm not sure how to post an entire trigger on the forums.
 
Level 9
Joined
May 14, 2011
Messages
524
How the hell are we suppose to figure that out? But lets not getting off-topic here
(PS: You hide then with hidden tags,check other GUI system and find out. In here are the list off BBcodes to help you with it.[self="http://www.hiveworkshop.com/forums/misc.php?do=bbcode#reaction"]BBCodes[/self])
 
Top