MUI Help, Part 2

Tawnttoo

New Member
Reaction score
36
I was trying to make an awesome-looking spell with hashtables. It looks awesome allright, but it's not MUI. Could you help me get it MUI?
 

Attachments

  • Rune.w3x
    19.3 KB · Views: 102

Bogrim

y hello thar
Reaction score
154
Instead of making me download your map, could you please just post the triggers?
 

Tawnttoo

New Member
Reaction score
36
Sure, I just thought it would be simpler this way because these are quite long:

Trigger:
  • Init
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Hashtable - Create a hashtable
      • Set Rune_Hash = (Last created hashtable)


Trigger:
  • Cast Rune
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Rune
    • Actions
      • Set Rune_Caster = (Triggering unit)
      • Hashtable - Save Handle OfRune_Caster as (Key caster) of 1 in Rune_Hash
      • Set Rune_Point = (Target point of ability being cast)
      • Hashtable - Save Handle OfRune_Point as (Key location) of (Key caster) in Rune_Hash
      • Set Rune_Duration = 12.00
      • Hashtable - Save Rune_Duration as (Key duration) of (Key caster) in Rune_Hash
      • Set Rune_Effect = Abilities\Weapons\SpiritOfVengeanceMissile\SpiritOfVengeanceMissile.mdl
      • Set Rune_Damage = 500.00
      • Hashtable - Save DoT_Damage as (Key damage) of (Key caster) in Rune_Hash
      • Set Rune_Count = 0
      • Hashtable - Save Rune_Count as (Key count) of (Key caster) in Rune_Hash
      • Set Rune_Radius = 0.00
      • Hashtable - Save Rune_Radius as (Key radius) of (Key caster) in Rune_Hash


Trigger:
  • Rune
    • Events
      • Time - Every 0.05 seconds of game time
    • Conditions
    • Actions
      • Set Rune_Duration = (Load (Key duration) of (Key caster) from Rune_Hash)
      • Set Rune_Radius = (Load (Key radius) of (Key caster) from Rune_Hash)
      • Set Rune_Count = (Load (Key count) of (Key caster) from Rune_Hash)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Load (Key duration) of (Key caster) from Rune_Hash) Greater than 0.00
        • Then - Actions
          • Hashtable - Save (Rune_Duration - 0.05) as (Key duration) of (Key caster) in Rune_Hash
          • Game - Display to (All players) the text: (String((Load (Key duration) of (Key caster) from Rune_Hash)))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load (Key count) of (Key caster) from Rune_Hash) Less than 40
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load (Key count) of (Key caster) from Rune_Hash) Less than 20
                • Then - Actions
                  • Hashtable - Save (Rune_Count + 1) as (Key count) of (Key caster) in Rune_Hash
                  • Hashtable - Save (Rune_Radius + (200.00 x 0.05)) as (Key radius) of (Key caster) in Rune_Hash
                  • Set Rune_Point = ((Load (Key location) of (Key caster) in Rune_Hash) offset by (Load (Key radius) of (Key caster) from Rune_Hash) towards (90.00 + (18.00 x (Real((Load (Key count) of (Key caster) from Rune_Hash))))) degrees)
                  • Special Effect - Create a special effect at Rune_Point using Rune_Effect
                  • Hashtable - Save Handle Of(Last created special effect) as Rune_Count of (Key caster) in Rune_Hash
                  • Custom script: call RemoveLocation (udg_Rune_Point)
                • Else - Actions
                  • Hashtable - Save (Rune_Count + 1) as (Key count) of (Key caster) in Rune_Hash
                  • Set Rune_Point = ((Load (Key location) of (Key caster) in Rune_Hash) offset by 200.00 towards (90.00 + (18.00 x (Real((Load (Key count) of (Key caster) from Rune_Hash))))) degrees)
                  • Special Effect - Create a special effect at Rune_Point using Rune_Effect
                  • Hashtable - Save Handle Of(Last created special effect) as Rune_Count of (Key caster) in Rune_Hash
                  • Custom script: call RemoveLocation (udg_Rune_Point)
            • Else - Actions
        • Else - Actions
          • For each (Integer A) from 0 to Rune_Count, do (Actions)
            • Loop - Actions
              • Special Effect - Destroy (Load (Integer A) of (Key caster) in Rune_Hash)
          • Hashtable - Clear all child hashtables of child (Key caster) in Rune_Hash
 

baassee

Member
Reaction score
5
Add the caster into a unit group. Put the loop into a UnitGroup pick multiple and then you make the loads of "picked unit" instead. That would do it I think (quick check)
 

Tawnttoo

New Member
Reaction score
36
So I'm to add the caster into a unit group and then pick all the units in an unit group. Where do I use Picked Unit?
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top