Unit Order?

WilliamPa

Active Member
Reaction score
51
Why does

return (null)?
In gui, it's getting damaging unit's current order and converting it to string.

I am using this in my spell Knock, which has a chance to knock the target backwards and take damage when you inflict damage to it. However, i added a condition checking the unit's current order(check above) and it stopped working.(because it returns null)

What could the problem be?
 

ZugZugZealot

New Member
Reaction score
33
Look at it this way...

UnitId2String() does take an integer as an argument, and it returns a string... However, you should think of the integer it takes as UnitType...

While GetUnitCurrentOrder() does return an integer, you should think of the integer as OrderType. UnitType != OrderType

Let's say you get the DamageSource's order was Attack, which I don't remember what the integer value of Attack is, so I'll just go with 3. 3 wouldn't be even the ID of any unit, since the ASCII character for 3 isn't an acceptable character for a unit's raw code.

What you want is this.
 

WilliamPa

Active Member
Reaction score
51
Omg how did i miss such a thing o_O Thanks :) +rep

Anyways, it still won't work. The string returned is "smart" now :/ What's that?
 

ZugZugZealot

New Member
Reaction score
33
"smart" is right click. Which it's called that because it's "smart" in when knowing to just move a unit, to follow a unit, or to attack it. You'd need to do checks for "smart" to narrow it down, via OrderTarget, if order target is enemy, you can do what you'd do if it were "attack", if OrderTarget is allied, then you would do as you would for "move" or "follow", and if it's == null, then you would do as you would for "move".
 

WilliamPa

Active Member
Reaction score
51
OrderTargetUnit doesn't take any parameters, so it's an event response? My event is Unit Takes Damage, not Unit Is Ordered so it won't fit? :(

Can you think of any way to see if the order were attack?
 

Rainther

I guess I should write something of value here...
Reaction score
61
I believe you should get your hands on a damage detection system instead. They're supposed to handle stuff like this.
 

Pharaoh_

The epic journey will soon begin... Prepare!
Reaction score
136
It should be Unit is Ordered, which would be less accurate; I don't know what you want it for, but you should use the damage event rather than the Order one. When a unit is ordered, it doesn't mean that the damage will be actually calculated; the order can be made 5000 range away, but the damage will be dealt, once the unit is within the range of attack. Why would you need the current order of the target anyway?
 

WilliamPa

Active Member
Reaction score
51
I just said that i am using a damage detection system, made by me <.< I am not using unit attacks/unit attacked/unit is ordered because they don't have enough values to give. Anyways, i need to get the order of the damaging unit, as a form which would fit into a condition which will check is the order "attack".
 

ZugZugZealot

New Member
Reaction score
33
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top