• 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.

Earthworms v1.4 MUI

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
Level 1 - 100 Damage per second
Level 2 - 200 damage per second
Level 3 - 300 damage per second
Does damage over 7 seconds

Keywords:
earth, worm, worms, earthworms, pudge, explosion
Contents

Earthworms (Map)

Reviews
12th Dec 2015 IcemanBo: Too long time as NeedsFix. Rejected. 16:44, 13th Jun 2010 TriggerHappy: Use loops for actions you're repeatedly using. You also never remove any of the stored locations, so this leaks.

Moderator

M

Moderator

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

16:44, 13th Jun 2010
TriggerHappy:

Use loops for actions you're repeatedly using.
You also never remove any of the stored locations, so this leaks.
 
Instead of this:
  • Actions
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • Earthworms_Integer[0] Equal to 0
      • Then - Actions
        • Trigger - Turn on EarthwormsLoop <gen>
      • Else - Actions
    • Set Earthworms_Integer[0] = (Earthworms_Integer[0] + 1)
    • Set Earthworms_Integer[1] = (Earthworms_Integer[1] + 1)
    • Set Earthworms_Caster[Earthworms_Integer[1]] = (Triggering unit)
    • Set Earthworms_Target_P[Earthworms_Integer[1]] = (Target point of ability being cast)
    • Set Earthworms_Region[Earthworms_Integer[1]] = (Region centered at Earthworms_Target_P[Earthworms_Integer[1]] with size (250.00, 250.00))
    • Set Earthworms_Number[Earthworms_Integer[1]] = 0
    • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Earthworms_Target_P[Earthworms_Integer[1]] facing 0.00 degrees
    • Set Earthworms_Worm1[Earthworms_Integer[1]] = (Last created unit)
    • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Earthworms_Target_P[Earthworms_Integer[1]] facing 90.00 degrees
    • Set Earthworms_Worm2[Earthworms_Integer[1]] = (Last created unit)
    • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Earthworms_Target_P[Earthworms_Integer[1]] facing 180.00 degrees
    • Set Earthworms_Worm3[Earthworms_Integer[1]] = (Last created unit)
    • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Earthworms_Target_P[Earthworms_Integer[1]] facing 270.00 degrees
    • Set Earthworms_Worm4[Earthworms_Integer[1]] = (Last created unit)
    • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Earthworms_Target_P[Earthworms_Integer[1]] facing 45.00 degrees
    • Set Earthworms_Worm5[Earthworms_Integer[1]] = (Last created unit)
    • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Earthworms_Target_P[Earthworms_Integer[1]] facing 225.00 degrees
    • Set Earthworms_Worm6[Earthworms_Integer[1]] = (Last created unit)
    • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Earthworms_Target_P[Earthworms_Integer[1]] facing 315.00 degrees
    • Set Earthworms_Worm7[Earthworms_Integer[1]] = (Last created unit)
    • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Earthworms_Target_P[Earthworms_Integer[1]] facing 135.00 degrees
    • Set Earthworms_Worm8[Earthworms_Integer[1]] = (Last created unit)
You can make:
  • Set Points[1] = (Target point of ability being cast)
  • For each (IntegerA) from 1 to 8, do (Actions)
    • Loop - Actions
      • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Points[1] facing (45*(Real(IntegerA))) degrees
  • Custom script: call RemoveLocation (udg_Points[1])
Since you have this:
  • (Owner of (Picked unit)) Not equal to (Random player from (All allies of (Owner of Earthworms_Caster[Earthworms_Integer[2]])))
You don't need this:

  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • (Picked unit) Not equal to Earthworms_Worm1[Earthworms_Integer[2]]
      • (Picked unit) Not equal to Earthworms_Worm2[Earthworms_Integer[2]]
      • (Picked unit) Not equal to Earthworms_Worm3[Earthworms_Integer[2]]
      • (Picked unit) Not equal to Earthworms_Worm4[Earthworms_Integer[2]]
      • (Picked unit) Not equal to Earthworms_Worm5[Earthworms_Integer[2]]
      • (Picked unit) Not equal to Earthworms_Worm6[Earthworms_Integer[2]]
      • (Picked unit) Not equal to Earthworms_Worm7[Earthworms_Integer[2]]
      • (Picked unit) Not equal to Earthworms_Worm8[Earthworms_Integer[2]]
Leaks:
  • Unit - Move (Picked unit) instantly to (Random point in Earthworms_Region[Earthworms_Integer[2]])
Leaks:
  • (Owner of (Picked unit)) Not equal to (Random player from (All allies of (Owner of Earthworms_Caster[Earthworms_Integer[2]])))
You don't need a wait before the Remove Unit action:

  • Wait 1.00 seconds
You don't need the Remove unit action actually. It's not a dummy with a special effect attached to it.
 
Level 6
Joined
Mar 29, 2009
Messages
39
Instead of this:
You can make:
  • Set Points[1] = (Target point of ability being cast)
  • For each (IntegerA) from 1 to 8, do (Actions)
    • Loop - Actions
      • Unit - Create 1 Worm for (Owner of Earthworms_Caster[Earthworms_Integer[1]]) at Points[1] facing (45*(Real(IntegerA))) degrees
  • Custom script: call RemoveLocation (udg_Points[1])

How I can set units as a variable?
 
Top