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

Simple Order Issue

Status
Not open for further replies.
Level 8
Joined
Oct 2, 2013
Messages
288
I'm trying to make a unit cast Scroll Of Protection as a unit-ability through triggers (order trigger).

I tried changing the order string to Channel since Scroll Of Protection is usually an item ability... but it's just not working for me.

How do I do this?
 
Level 8
Joined
Oct 2, 2013
Messages
288
It doesn't cast anything.

Well, how would you normally activate an item-ability using trigger order?

Is changing the Order String not enough?
 
Level 19
Joined
Jul 14, 2011
Messages
875
You cant change the order string of a spell unless its based of of Channel.
There was someone asking the same thing recently, I think setting the player as 'None' (or w/e it is) instead of User/Computer was how he fixed it. I guess its something with the built in AI.
 
Level 8
Joined
Oct 2, 2013
Messages
288
Sorry I'm late. Fell asleep ._.

Here's the map.

What you have to do is make a trigger to display the order-id numbers of all orders issued to all units in the game. Then manually cast the spell with a unit and record the displayed number. Use this number to trigger the casting of the spell.

Could you show me? Just one example if it's not too much work.
 

Attachments

  • Item Order Test.w3x
    16.1 KB · Views: 48
Create the trigger below. Then you need to useIssueImmediateOrderByIdto force the unit you want to cast the Scroll of Protection spell. I am assuming that the spell has no targets (click icon and it casts).
  • Catch Order
    • Events
      • Unit - A unit Is issued an order targeting an object
      • Unit - A unit Is issued an order targeting a point
      • Unit - A unit Is issued an order with no target
    • Conditions
    • Actions
      • Custom script: call BJDebugMsg("Issued Order: "+I2S(GetIssuedOrderId()))
 
Status
Not open for further replies.
Top