Hello guys,
I just red tutorial about MPI and MUI.
And im not sure if im rigth but as i looked at someone EluneArrow spell (which seems to be MUI)
Making spell MUI means making every variable array count on every action and after 8190 (or how much is it) a then reseting it to 1?
Triggers of EluneArrow base :
Sorry if used wrong subforum
I just red tutorial about MPI and MUI.
And im not sure if im rigth but as i looked at someone EluneArrow spell (which seems to be MUI)
Making spell MUI means making every variable array count on every action and after 8190 (or how much is it) a then reseting it to 1?
Triggers of EluneArrow base :
-
shooting 9mm
-

Events
-


Unit - A unit Starts the effect of an ability
-
-

Conditions
-


(Ability being cast) Equal to |cffffd700SHOOT WITH PISTOL|r
-
-

Actions
-


Set EluneArrow_Counts = (EluneArrow_Counts + 1)
-


Set EluneArrow_Caster[EluneArrow_Counts] = (Casting unit)
-


Set EluneArrow_CasterLoc = (Position of EluneArrow_Caster[EluneArrow_Counts])
-


Set EluneArrow_TargetPoint = (Target point of ability being cast)
-


Set EluneArrow_Angle = (Angle from EluneArrow_CasterLoc to EluneArrow_TargetPoint)
-


Unit - Create 1 9mm for (Owner of EluneArrow_Caster[EluneArrow_Counts]) at EluneArrow_CasterLoc facing EluneArrow_Angle degrees
-


Unit - Set the custom value of (Last created unit) to EluneArrow_Counts
-


Unit Group - Add (Last created unit) to EluneArrow_StartGroup
-


Set EluneArrow_Distance[EluneArrow_Counts] = 2300.00
-


Set EluneArrow_DistanceTravel[EluneArrow_Counts] = 0.00
-


Set EluneArrow_StunDuration[EluneArrow_Counts] = 1
-


Set EluneArrow_DistanceCount[EluneArrow_Counts] = 0.00
-


Trigger - Turn on shooting 9mm loop <gen>
-


Custom script: call RemoveLocation (udg_EluneArrow_CasterLoc)
-


Custom script: call RemoveLocation (udg_EluneArrow_TargetPoint)
-
-
-
shooting 9mm loop
-

Events
-


Time - Every 0.02 seconds of game time
-
-

Conditions
-

Actions
-


Unit Group - Pick every unit in EluneArrow_StartGroup and do (Actions)
-



Loop - Actions
-




Set EluneArrow_CustomValue = (Custom value of (Picked unit))
-




Set EluneArrow_DummyLoc = (Position of (Picked unit))
-




Set EluneArrow_Movement = (EluneArrow_DummyLoc offset by 20.00 towards (Facing of (Picked unit)) degrees)
-




Unit - Move (Picked unit) instantly to EluneArrow_Movement
-




Set EluneArrow_DistanceTravel[EluneArrow_CustomValue] = (EluneArrow_DistanceTravel[EluneArrow_CustomValue] + 18.00)
-




Set EluneArrow_DistanceCount[EluneArrow_CustomValue] = (EluneArrow_DistanceCount[EluneArrow_CustomValue] + 18.00)
-




If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-





If - Conditions
-






EluneArrow_DistanceCount[EluneArrow_CustomValue] Greater than or equal to 225.00
-
-





Then - Actions
-






Set EluneArrow_StunDuration[EluneArrow_CustomValue] = (EluneArrow_StunDuration[EluneArrow_CustomValue] + 1)
-






Set EluneArrow_DistanceCount[EluneArrow_CustomValue] = 0.00
-
-





Else - Actions
-
-




Set EluneArrow_UnitGroup = (Units within 150.00 of EluneArrow_Movement matching ((((Matching unit) is A structure) Not equal to True) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of EluneArrow_Caster[EluneArrow_CustomValue])) Equal
-




Set EluneArrow_RandomUnit = (Random 1 units from EluneArrow_UnitGroup)
-




Unit Group - Pick every unit in EluneArrow_RandomUnit and do (Actions)
-





Loop - Actions
-






Set bleed_target = (Picked unit)
-






Unit - Cause EluneArrow_Caster[EluneArrow_CustomValue] to damage (Picked unit), dealing (90.00 x (Real((Level of |cffffd700SHOOT WITH PISTOL|r for EluneArrow_Caster[EluneArrow_CustomValue])))) damage of attack type Spells and damage type Normal
-






Unit - Create 1 Dummy for (Owner of EluneArrow_Caster[EluneArrow_CustomValue]) at EluneArrow_Movement facing Default building facing degrees
-






Unit - Add Elune Arrow Stun to (Last created unit)
-






Unit - Add Bleeding to (Last created unit)
-






Unit - Set level of Elune Arrow Stun for (Last created unit) to EluneArrow_StunDuration[EluneArrow_CustomValue]
-






Unit - Set level of Bleeding for (Last created unit) to EluneArrow_StunDuration[EluneArrow_CustomValue]
-






Unit - Order (Last created unit) to Human Mountain King - Storm Bolt (Picked unit)
-






Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
-






Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
-
-
-




If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-





If - Conditions
-






Or - Any (Conditions) are true
-







Conditions
-








EluneArrow_DistanceTravel[EluneArrow_CustomValue] Greater than or equal to EluneArrow_Distance[EluneArrow_CustomValue]
-








(Number of units in EluneArrow_UnitGroup) Greater than 0
-
-
-
-





Then - Actions
-






Unit - Kill (Picked unit)
-






Unit Group - Remove (Picked unit) from EluneArrow_StartGroup
-
-





Else - Actions
-
-




Custom script: call RemoveLocation (udg_EluneArrow_DummyLoc)
-




Custom script: call RemoveLocation (udg_EluneArrow_Movement)
-




Custom script: call DestroyGroup (udg_EluneArrow_UnitGroup)
-




Custom script: call DestroyGroup (udg_EluneArrow_RandomUnit)
-
-
-


If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-



If - Conditions
-




(Number of units in EluneArrow_StartGroup) Equal to 0
-
-



Then - Actions
-




Trigger - Turn off (This trigger)
-
-



Else - Actions
-
-
-
Sorry if used wrong subforum
Last edited:


