Strange Movement

Status
Not open for further replies.
Level 7
Joined
Feb 2, 2005
Messages
205
I worked on my contest map when i encountered an strange bug.

  • Teleport
    • Events
      • Unit - A unit enters 2 <gen>
      • Unit - A unit enters 4 <gen>
      • Unit - A unit enters 6 <gen>
      • Unit - A unit enters 8 <gen>
    • Conditions
    • Actions
      • If ((2 <gen> contains (Triggering unit)) Equal to True) then do (Unit - Move (Triggering unit) instantly to (Center of 3 <gen>)) else do (Do nothing)
      • If ((4 <gen> contains (Triggering unit)) Equal to True) then do (Unit - Move (Triggering unit) instantly to (Center of 5 <gen>)) else do (Do nothing)
      • If ((6 <gen> contains (Triggering unit)) Equal to True) then do (Unit - Move (Triggering unit) instantly to (Center of 7 <gen>)) else do (Do nothing)
      • If ((8 <gen> contains (Triggering unit)) Equal to True) then do (Unit - Move (Triggering unit) instantly to (Center of 1 <gen>)) else do (Do nothing)
This Trigger only work if the unit comes from the left or the right side of the area, if it enters the area from the top or the bottem it just stops.

Edit: BTW if i split it into 4 Trigger without the ifs it works correctly, but i want an compact easy way to Trigger many Waypoints.

Edit2: to make it even more strange it work only if the Units come from the left.

Here an map to test it :)
Is there an better way, maybe with jass?
 

Attachments

Last edited:
The problem here is that event triggers too early when units are entering from up or right so ure comparasion wont detect them in regions. As u said before u can make separate triggers for each region or u can put wait before all actions so that unit actualy enters region. Exemple:
  • Teleport
  • Events
  • Unit - A unit enters 2 <gen>
  • Unit - A unit enters 4 <gen>
  • Unit - A unit enters 6 <gen>
  • Unit - A unit enters 8 <gen>
  • Conditions
  • Actions
  • Wait 0.10 seconds
  • If ((2 <gen> contains (Triggering unit)) Equal to True) then do (Unit - Move (Triggering unit) instantly to (Center of 3 <gen>)) else do (Do nothing)
  • If ((4 <gen> contains (Triggering unit)) Equal to True) then do (Unit - Move (Triggering unit) instantly to (Center of 5 <gen>)) else do (Do nothing)
  • If ((6 <gen> contains (Triggering unit)) Equal to True) then do (Unit - Move (Triggering unit) instantly to (Center of 7 <gen>)) else do (Do nothing)
  • If ((8 <gen> contains (Triggering unit)) Equal to True) then do (Unit - Move (Triggering unit) instantly to (Center of 1 <gen>)) else do (Do nothing)
But i dont think this is the safest way to do this...
 
Status
Not open for further replies.
Back
Top