• Check out the results of the Techtree Contest #19!
  • 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.
  • Create a void inspired texture for Warcraft 3 and enter Hive's 34th Texturing Contest: Void! Click here to enter!
  • The Hive's 22nd Icon Contest: Creep Abilities is now concluded, time to vote for your favourite set of icons! Click here to vote!

Issue order targeting a point (doesn't work)

Status
Not open for further replies.
Level 10
Joined
Jun 13, 2010
Messages
398
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.
 
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.
 
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.
 
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:
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.
Back
Top