• 🏆 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!

Issue order targeting a point (doesn't work)

Status
Not open for further replies.
Level 8
Joined
Jun 13, 2010
Messages
344
Hi
Is it just me or is it always super difficult to get units to issue order targeting a point?
I can never get it to work?
Would you know what I am missing? I just want those 3 conditioned type of minions to follow the Death Caller, wherever he will go. Might add offset of targeted point for the minions in the future.

  • Minion Follow
    • Events
      • Unit - A unit Is issued an order targeting a point
    • Conditions
      • (Unit-type of (Ordered unit)) Equal to Death Caller
    • Actions
      • Game - Display to (All players) the text: targeted point
      • Set Minion_Point = (Target point of issued order)
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units in (Playable map area) owned by (Owner of (Ordered unit))) and do (Actions)
        • Loop - Actions
          • Game - Display to (All players) the text: picked
          • Set Minion_A = (Picked unit)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Minion_A is dead) Equal to False
              • Or - Any (Conditions) are true
                • Conditions
                  • (Unit-type of Minion_A) Equal to Abominative Golem (Death Caller)
                  • (Unit-type of Minion_A) Equal to Minion (Raise Dead)
                  • (Unit-type of Minion_A) Equal to Minion (Death Caller)
            • Then - Actions
              • Unit - Order Minion_A to Move To Minion_Point
              • Game - Display to (All players) the text: a unit
            • Else - Actions
      • Custom script: call RemoveLocation (udg_Minion_Point)
The game texts are checks. Only "targeted point" and 4 "picked" msg shows up. The "a unit" never shows. I just don't get it.
 
Level 8
Joined
Jun 13, 2010
Messages
344
Even if I stay RIGHT next to the Abominative Golem with this trigger:

  • Minion Follow
    • Events
      • Unit - A unit Is issued an order targeting a point
    • Conditions
      • (Unit-type of (Ordered unit)) Equal to Death Caller
    • Actions
      • Set Minion_Summoner = (Ordered unit)
      • Set Minion_Point = (Position of Minion_Summoner)
      • Unit Group - Pick every unit in (Units within 900.00 of Minion_Point) and do (Actions)
        • Loop - Actions
          • Set Minion_A = (Picked unit)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Unit-type of Minion_A) Equal to Abominative Golem (Death Caller)
            • Then - Actions
              • Unit - Kill Minion_A
            • Else - Actions
Nothing happens.
 

EdgeOfChaos

E

EdgeOfChaos

Are there several triggers in your map using the variable Minion_A? If so, it might be getting overwritten or something. Try just using Picked Unit directly instead of setting that variable.

If that fails, try removing the If conditions about unit-type and see what happens.
 
Level 8
Joined
Jun 13, 2010
Messages
344
I have just made the variable. And i even made the Minion_A for this matter, to make it easier to work with.

Its just strange I mean.. Why wouldn't it work?
But I will try and remove the conditions and make it direct.
The picking might not support the Unit-Type I guess. I mean something has to be wrong.

If I pick globally with no conditions, the game crashes with no error message.
 
Last edited:
Level 24
Joined
Aug 1, 2013
Messages
4,657
Make a custom script in the else block of the unit types checks and use this script:
JASS:
call BJDebugMsg("Unit Type = " + GetObjectName(GetUnitTypeId(udg_Minion_A))) + " (" + I2S(GetUnitTypeId(udg_Minion_A)) + ")")
So:
  • Custom Script: call BJDebugMsg("Unit Type = " + GetObjectName(GetUnitTypeId(udg_Minion_A))) + " (" + I2S(GetUnitTypeId(udg_Minion_A)) + ")")
Then tell me what the game message says.
 
Status
Not open for further replies.
Top