• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

Leak problem

Status
Not open for further replies.
I have a problem with leaks in my map,i used Leak check from hive tools.But in game in still leaks,that leak check doesn't find,maybe,i don t know.
The trigger is for 12 players.So for other is like:
  • Trigger
    • Events
      • Time - timer[1,2,3...] expires
    • Conditions
    • Actions
      • For each (Integer A) from 1,2,3... to 1,2,3..., do (Actions)
        • Loop - Action

Here is the leak trigger?

  • Function
    • Events
      • Time - timer[1] expires
    • Conditions
    • Actions
      • For each (Integer A) from 1 to 1, do (Actions)
        • Loop - Action
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • arrow_distance[(Integer A)] less than MaxDistance[(Integer A)]
            • Then - Action
              • Set fly_distance[(Integer A)] = (MaxDistance[(Integer A)] / 2.00)
              • Set arrow_distance[(Integer A)] = (arrow_distance[(Integer A)] + MaxSpeed[(Integer A)])
              • Set AnglePoint = (Facing of arrow_projektil[(Integer A)])
              • Set TempPoint2 = (Position of arrow_projektil[(Integer A)])
              • Set TempPoint = (TempPoint2 offset by MaxSpeed[(Integer A)] towards AnglePoint degrees)
              • Set Group = (Units within 55.00 of (Position of arrow_projektil[(Integer A)]) matching ((Matching unit) Nerovná se arrow_projektil[(Integer A)]))
              • Unit - Move arrow_projektil[(Integer A)] instantly to TempPoint
              • Custom script: call RemoveLocation(udg_TempPoint)
              • Custom script: call RemoveLocation(udg_TempPoint2)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • arrow_distance[(Integer A)] less than fly_distance[(Integer A)]
                • Then - actions
                  • Set fly_currhigh[(Integer A)] = (fly_currhigh[(Integer A)] + 6.00)
                  • Animation - Change arrow_projektil[(Integer A)] flying height to fly_currhigh[(Integer A)] at 0.00
                • Else - action
                  • Set fly_currhigh[(Integer A)] = (fly_currhigh[(Integer A)] - 5.90)
                  • Animace - Change arrow_projektil[(Integer A)] flying height to fly_currhigh[(Integer A)] at 0.00
              • Set arrow_target[(Integer A)] = (Random unit from Group)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Unit-type of arrow_target[(Integer A)]) equal to Tree
                • Then - action
                  • Unit - Kill arrow_projektil[(Integer A)]
                  • Set arrow_projektil[(Integer A)] = no unit
                  • Set arrow_distance[(Integer A)] = 0.00
                  • Time - Stop timer[(Integer A)]
                  • Set arrow_target[(Integer A)] = No unit
                  • Set fly_currhigh[(Integer A)] = 0.00
                  • Set AnglePoint = 0.00
                  • Unit - Set mana of arrow_caster[(Integer A)] to 1.00
                  • Animation - Change arrow_caster[(Integer A)]'s animation speed to 100.00% of its original speed
                • Else - action
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Condition
                      • arrow_target[(Integer A)] not equal to no unit
                      • arrow_target[(Integer A)] not equal to arrow_caster[(Integer A)]
                      • (arrow_target[(Integer A)] is dead) equal to FALSE
                      • fly_currhigh[(Integer A)] less or equal to 60.00
                      • Or - Any (Conditions) are true
                        • Conditions
                          • (Unit-type of arrow_target[(Integer A)]) equal to Archer
                          • (Unit-type of arrow_target[(Integer A)]) equal to Arrow
                          • (Unit-type of arrow_target[(Integer A)]) equal to Arrow (Burner)
                          • (Unit-type of arrow_target[(Integer A)]) equal to Arrow (Cold)
                          • (Unit-type of arrow_target[(Integer A)]) equal to Arrow (Dark)
                          • (Unit-type of arrow_target[(Integer A)]) equal to Arrow (Fire)
                          • (Unit-type of arrow_target[(Integer A)]) equal to Arrow (Lighting)
                          • (Unit-type of arrow_target[(Integer A)]) equal to Arrow (Poison)
                    • Then - action
                      • Sound - Stop MetalLightSliceFlesh <gen> now
                      • Sound - Play MetalLightSliceFlesh <gen> at 100.00% volume, attached to arrow_projektil[(Integer A)]
                      • Unit - Cause arrow_caster[(Integer A)] to damage arrow_target[(Integer A)], dealing 100.00 damage of attack type Chaos and damage type Normal*
                      • Unit - Kill arrow_projektil[(Integer A)]
                      • Set arrow_projektil[(Integer A)] = no unit
                      • Set knockback_target[(Integer A)] = arrow_target[(Integer A)]
                      • Set knockback_integer[(Integer A)] = 24.00
                      • Time - Start timer2[(Integer A)] as a loop timer that will expire in 0.03 seconds
                      • Set arrow_distance[(Integer A)] = 0.00
                      • Timer - Stop timer[(Integer A)]
                      • Set arrow_target[(Integer A)] = no unit
                      • Set AnglePoint = 0.00
                      • Unit - Set mana of arrow_caster[(Integer A)] to 1.00
                      • Animation - Change arrow_caster[(Integer A)]'s animation speed to 100.00% of its original speed
                    • Else - Actions
              • Custom script: call DestroyGroup(udg_Group)
            • Else - Action
              • Unit - Kill arrow_projektil[(Integer A)]
              • Set arrow_projektil[(Integer A)] = no unit
              • Time - Stop timer[(Integer A)]
              • Set arrow_distance[(Integer A)] = 0.00
              • Set arrow_target[(Integer A)] = no unit
              • Set AnglePoint = 0.00
              • Unit - Set mana of arrow_caster[(Integer A)] to 1.00
              • Animation - Change arrow_caster[(Integer A)]'s animation speed to 100.00% of its original speed
          • Custom script: call DestroyGroup(udg_Group)
 
Level 7
Joined
Nov 6, 2009
Messages
279
maybe another trigger?
maybe your computers performance?
why do you use loops again?

EDIT: I cant keep on waiting so im just gonna tell you loops are for doing actions multiple times and ending integer is always larger than starting so why didnt u just use [1] as an array?
 
Level 7
Joined
Nov 6, 2009
Messages
279
where is lag supposed to be?

EDIT: Ive shot like 40 times and i see no lag
If you mean that if lots of heroes shoot at the same time it lags because too many effects have been created and has nothing to do with leaks
You should really get somebody to fix your maps english
 
Status
Not open for further replies.
Top