I suspect the leaks are in those ''For each (Integer A) from 1 to 10, do (Actions)'', but I don't really know how to fix it... HELP MEEEE
HELP MEEEE 
-
b1
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Ninja Star
-
-
Actions
-
Set b_IntegerTimes = (b_IntegerTimes + 1)
-
Set b_UnitCaster[b_IntegerTimes] = (Triggering unit)
-
Set b_PointCaster[b_IntegerTimes] = (Position of b_UnitCaster[b_IntegerTimes])
-
Unit - Create 1 Bracciante (Dummy Ninja Star) for Giocatore (Rosso) at b_PointCaster[b_IntegerTimes] facing Orientamento predefinito degli edifici degrees
-
Set b_UnitType = (Unit-type of (Last created unit))
-
Set b_UnitDummy[b_IntegerTimes] = (Last created unit)
-
Set b_RealFacingAngle[b_IntegerTimes] = (Facing of b_UnitCaster[b_IntegerTimes])
-
Set b_PointEnd[b_IntegerTimes] = (Target point of ability being cast)
-
Set b_RealThrowDistance[b_IntegerTimes] = (Distance between b_PointCaster[b_IntegerTimes] and b_PointEnd[b_IntegerTimes])
-
Trigger - Turn on b2 <gen>
-
Custom script: call RemoveLocation (udg_b_PointCaster[udg_b_IntegerTimes])
-
-
-
b2
-
Events
-
Time - Every 0.02 seconds of game time
-
-
Conditions
-
Actions
-
For each (Integer b_IntegerA) from 1 to b_IntegerTimes, do (Actions)
-
Loop - Actions
-
Set b_PointCaster[b_IntegerA] = (Position of b_UnitCaster[b_IntegerA])
-
Set b_PointDummy[b_IntegerA] = (Position of b_UnitDummy[b_IntegerA])
-
Set b_RealThrowDistance[b_IntegerA] = (Distance between b_PointDummy[b_IntegerA] and b_PointEnd[b_IntegerA])
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
b_BooleanGoOrCome[b_IntegerA] Uguale a FALSE
-
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
b_RealThrowDistance[b_IntegerA] More or equal to 100.00
-
-
Then - Actions
-
Set b_RealOffset[b_IntegerA] = 10.00
-
Set b_PointDummyGoesTo[b_IntegerA] = (b_PointDummy[b_IntegerA] offset by b_RealOffset[b_IntegerA] towards b_RealFacingAngle[b_IntegerA] degrees)
-
Unit - Move b_UnitDummy[b_IntegerA] instantly to b_PointDummyGoesTo[b_IntegerA]
-
Custom script: call RemoveLocation (udg_b_PointDummyGoesTo[udg_b_IntegerA])
-
-
Else - Actions
-
Set b_BooleanGoOrCome[b_IntegerA] = TRUE
-
-
-
-
Else - Actions
-
Set b_RealApproachDistance[b_IntegerA] = (Distance between b_PointDummy[b_IntegerA] and b_PointCaster[b_IntegerA])
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
b_RealApproachDistance[b_IntegerA] Less or equal to 65.00
-
-
Then - Actions
-
Unit - Add a 0.20 second Generico expiration timer to b_UnitDummy[b_IntegerA]
-
Custom script: call RemoveLocation (udg_b_PointEnd[udg_b_IntegerA])
-
-
Else - Actions
-
-
Set b_RealOffset[b_IntegerA] = 10.00
-
Unit - Make b_UnitDummy[b_IntegerA] face b_UnitCaster[b_IntegerA] over 0.00 seconds
-
Set b_RealFacingAngle[b_IntegerA] = (Facing of b_UnitDummy[b_IntegerA])
-
Set b_PointDummyGoesTo[b_IntegerA] = (b_PointDummy[b_IntegerA] offset by b_RealOffset[b_IntegerA] towards b_RealFacingAngle[b_IntegerA] degrees)
-
Unit - Move b_UnitDummy[b_IntegerA] instantly to b_PointDummyGoesTo[b_IntegerA]
-
Custom script: call RemoveLocation (udg_b_PointDummyGoesTo[udg_b_IntegerA])
-
-
-
Custom script: call RemoveLocation (udg_b_PointCaster[udg_b_IntegerA])
-
Custom script: call RemoveLocation (udg_b_PointDummy[udg_b_IntegerA])
-
-
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of living b_UnitType units owned by Player (Red)) Equal to 0
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-