[Trigger] Memory Leak Problem

Status
Not open for further replies.
Level 9
Joined
Jan 17, 2009
Messages
372
I am having problems with memory leaks and i am wondering how to remove them from this trigger, i think there is one with the destructible group, if so plz tell me how to remove it thx
  • Actions
    • Set PaintBallTempPoint[1] = (Position of PaintBall[1])
    • Unit - Move PaintBall[1] instantly to (PaintBallTempPoint[1] offset by PaintBallSpeed[1] towards (Facing of PaintBall[1]) degrees)
    • Region - Center PaintBallRegions[1] on PaintBallTempPoint[1]
    • Destructible - Pick every destructible in PaintBallRegions[1] and do (Actions)
      • Loop - Actions
        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • And - All (Conditions) are true
              • Conditions
                • (X of (Position of (Picked destructible))) Greater than (Min X of PaintBallRegions[1])
                • (X of (Position of (Picked destructible))) Less than (Max X of PaintBallRegions[1])
                • (Y of (Position of (Picked destructible))) Greater than (Min Y of PaintBallRegions[1])
                • (Y of (Position of (Picked destructible))) Less than (Max Y of PaintBallRegions[1])
          • Then - Actions
            • Unit - Remove PaintBall[1] from the game
            • Set LoopCounterPaintBall[1] = 0
            • Set PaintBall[1] = No unit
            • Trigger - Turn off (This trigger)
          • Else - Actions
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • LoopCounterPaintBall[1] Equal to PaintBallDis[1]
      • Then - Actions
        • Unit - Remove PaintBall[1] from the game
        • Set LoopCounterPaintBall[1] = 0
        • Set PaintBall[1] = No unit
        • Trigger - Turn off (This trigger)
      • Else - Actions
    • Set LoopCounterPaintBall[1] = (LoopCounterPaintBall[1] + 1)
    • Custom script: call RemoveLocation(udg_PaintBallTempPoint[1])
    • Set PaintBallUnitGroup[1] = (Units in PaintBallRegions[1])
    • Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
      • Loop - Actions
        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • And - All (Conditions) are true
              • Conditions
                • (Life of (Picked unit)) Greater than or equal to 0.01
                • (Owner of PaintBall[1]) Not equal to (Owner of (Picked unit))
                • (X of (Position of (Picked unit))) Greater than (Min X of PaintBallRegions[1])
                • (X of (Position of (Picked unit))) Less than (Max X of PaintBallRegions[1])
                • (Y of (Position of (Picked unit))) Greater than (Min Y of PaintBallRegions[1])
                • (Y of (Position of (Picked unit))) Less than (Max Y of PaintBallRegions[1])
          • Then - Actions
            • Sound - Play MeatwagonMissileHit1 <gen> at 100.00% volume, attached to PlayerHero[1]
            • Unit - Cause PaintBall[1] to damage (Picked unit), dealing PaintBallDamage[1] damage of attack type Normal and damage type Normal
            • Unit - Remove PaintBall[1] from the game
            • Set LoopCounterPaintBall[1] = 0
            • Set PaintBall[1] = No unit
            • Trigger - Turn off (This trigger)
          • Else - Actions
    • Custom script: call DestroyGroup(udg_PaintBallUnitGroup[1])
 
Level 28
Joined
Jan 26, 2007
Messages
4,789
  • And - All (Conditions) are true
    • Conditions
      • (X of (Position of (Picked destructible))) Greater than (Min X of PaintBallRegions[1])
      • (X of (Position of (Picked destructible))) Less than (Max X of PaintBallRegions[1])
      • (Y of (Position of (Picked destructible))) Greater than (Min Y of PaintBallRegions[1])
      • (Y of (Position of (Picked destructible))) Less than (Max Y of PaintBallRegions[1])
Create a TempLoc for the "(Position of (Picked destructible))", this causes leaks.

  • Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
Unit Groups also leak, use a variable... (strange, you've set a Unit Group, but didn't use it here...)

+ Further in the Unit Group-trigger is the same problem as at the start, the position of the destructibles.

If you need me to show the fixed trigger, I will, but I think you know what to do with this information.
 
Status
Not open for further replies.
Top