• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[Trigger] Stop order doesnt allow trigger to continue

Status
Not open for further replies.
Level 5
Joined
Oct 17, 2006
Messages
151
The idea is that theres these harvesters and they are supposed to do an order when they arent moving. (its for an auto cast that automatically keeps them harvesting).

The trigger is supposed start with the event "every 1 second" however I changed as an experiment.

The problem is the condition. Apperantly there is no GUI condition thats like "unit isnt moving" or current NON PLAYER ISSUED order is stop.

Code is:
  • Auto Collect
    • Events
      • Unit - A unit Is issued an order with no target
    • Conditions
    • Actions
      • Unit Group - Pick every unit in ETC_AutoCollectors and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Issued order) Equal to (Order(stop))
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Number of items carried by (Picked unit)) Not equal to (Size of inventory for (Picked unit))
                • Then - Actions
                  • Unit - Order (Picked unit) to Attack (Random unit from (Units within 2000.00 of (Position of (Picked unit)) matching (((Owner of (Matching unit)) Equal to Neutral Passive) and ((Unit-type of (Matching unit)) Not equal to Cliff Teleport))))
                • Else - Actions
                  • Unit - Order (Picked unit) to Move To (Center of Orc E Factory <gen>)
              • Game - Display to (All players) the text: ordered
            • Else - Actions
              • Game - Display to (All players) the text: order failed
              • Game - Display to (All players) the text: (Current order: + (String((Current order of (Picked unit)))))
The problem is this condition. I can't find anything that actually triggers it.
  • If - Conditions
    • (Issued order) Equal to (Order(stop))
  • Then - Actions
And Ignore the game messages displayed. Those are for me to see what was wrong with the trigger.

This is only activated when I myself order stop however when they finish moving and then are issued the stop command by the PC to stop moving it doesn't count that as a "current issued order". I've also tried using something like "current movement speed etc.." but that only relates to the movement speed that its set. Not the units current movement speed in game.

Also not that the message "Game - Display to (All players) the text: (Current order: + (String((Current order of (Picked unit)))))" show up as "Current order: " in game, meaning they are issued no order... its really annoying...

Any ideas?
 
Level 12
Joined
Apr 27, 2008
Messages
1,228
  • Events
    • Time - Every 2.00 seconds of game time
  • Conditions
  • Actions
    • Unit Group - Pick every unit in (Units in (Playable map area) matching ((Current order of (Matching unit)) Equal to (Order(idle)))) and do (Actions)
      • Loop - Actions
Just pointing in the right direction ;)

P.s. The above code LEAKS
 
Level 9
Joined
Nov 28, 2008
Messages
704
There is no order called stop. I had this problem. The actual order is "", or I think the GUI triggering calls it <Empty Text>.

You can always find this out by making a periodic trigger that displays a units current order every second.

Edit: I forgot to mention, if the trigger displays Null all the time, that means it is in fact "" or <empty text>.
 
Last edited:
Status
Not open for further replies.
Top