This is mui right?

SwedishChef

New Member
Reaction score
32
Only need to work for a maximum of 2 units.

Trigger:
  • Earthquake
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Earthquake Thrall
      • (Triggering unit) Equal to DamageUnit
    • Actions
      • Set Temp_Point[(Custom value of (Triggering unit))] = (Position of (Triggering unit))
      • Environment - Create a 4.00 second Normal ripple deformation at Temp_Point[(Custom value of (Triggering unit))] with starting radius 0.00, ending radius 500.00, and depth 40.00, using 0.80 second ripples spaced 200.00 apart
      • Wait 0.80 seconds
      • For each (Integer A) from 1 to 3, do (Actions)
        • Loop - Actions
          • Set MyUnitGroup = (Units within 300.00 of Temp_Point[(Custom value of (Triggering unit))] matching ((((Matching unit) is alive) Equal to True) and ((((Matching unit) is A structure) Equal to False) and (((Owner of (Matching unit)) is an enemy of Neutral Hostile) Equal to True)
          • Unit Group - Pick every unit in MyUnitGroup and do (Actions)
            • Loop - Actions
              • Unit - Cause DamageUnit to damage (Picked unit), dealing 80.00 damage of attack type Spells and damage type Normal
              • Unit - Create 1 Dummy Unit for Neutral Hostile at Temp_Point[(Custom value of (Triggering unit))] facing Default building facing degrees
              • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
              • Unit - Add Earthquake Dummy 2 to (Last created unit)
              • Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
          • Wait 0.80 seconds
      • Custom script: call DestroyGroup(udg_MyUnitGroup)
      • EGUI Leak - Remove Temp_Point[(Custom value of (Triggering unit))]
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Never, ever use waits in a GUI loop. Use periodic events, instead.

well that wait would work in there if he'd change for loop integer a to some custom integer variable with array using the custom value of the triggering unit as index.

however, i agree with you that this script is badly coded.

@swedishchef: move the "destroyGroup" custom script into the loop. because you create 3 unit groups, one with every iteration for integer A, but you destroy only one group at the end.

and as i said above, you cannot run 2 iterations for the same global integer at once. change it to a custom arrayed integer variable.

after you did it should be MUI.
 

SwedishChef

New Member
Reaction score
32
Oops I didn't see that loop myself. Ofc I need to change that. Didn't spot that leak either ty both. And I know that this is badly coded. But it only needs to work for 2 boss units which is used 1 minute out of 40 ^^.

Trigger:
  • Earthquake
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Earthquake Thrall
    • Actions
      • Set Temp_Point[(Custom value of (Triggering unit))] = (Position of (Triggering unit))
      • Environment - Create a 4.00 second Normal ripple deformation at Temp_Point[(Custom value of (Triggering unit))] with starting radius 0.00, ending radius 500.00, and depth 40.00, using 0.80 second ripples spaced 200.00 apart
      • Wait 0.80 seconds
      • For each (Integer IntegerEarthquake[(Custom value of (Triggering unit))]) from 1 to 3, do (Actions)
        • Loop - Actions
          • Set MyUnitGroup = (Units within 300.00 of Temp_Point[(Custom value of (Triggering unit))] matching ((((Matching unit) is alive) Equal to True) and ((((Matching unit) is A structure) Equal to False) and (((Owner of (Matching unit)) is an enemy of Neutral Hostile) Equal to True)
          • Unit Group - Pick every unit in MyUnitGroup and do (Actions)
            • Loop - Actions
              • Unit - Cause DamageUnit to damage (Picked unit), dealing 80.00 damage of attack type Spells and damage type Normal
              • Unit - Create 1 Dummy Unit for Neutral Hostile at Temp_Point[(Custom value of (Triggering unit))] facing Default building facing degrees
              • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
              • Unit - Add Earthquake Dummy 2 to (Last created unit)
              • Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
          • Custom script: call DestroyGroup(udg_MyUnitGroup)
          • Wait 0.80 seconds
      • EGUI Leak - Remove Temp_Point[(Custom value of (Triggering unit))]
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
i hope that i am not just helpful to one person. that means i would have wasted plenty of time in my life...
 

SwedishChef

New Member
Reaction score
32
Haha no didn't mean like that. I just meant that you have helped me too much now so I can't add rep. But don't feel sorry. ;)
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top