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

[Solved] Blink Issue

Status
Not open for further replies.
Level 9
Joined
Feb 17, 2009
Messages
290
Hi, I'm trying to make a special item for a hero that lets him blink rapidly as he moves/targets things. I followed this thread for some advice: https://www.hiveworkshop.com/threads/spell-cast-help-gui.224869/#post-2237602

Unfortunately, both my GUI and pseudo-JASS attempt (I am very new to the concept, FYI) crash the game. Is it something to do with Blink? I doubt those guys were wrong about all that stuff. But I don't know what's wrong.

Anyway, for the GUI I just used Hero - Use Item on Point/ Target and made appropriate references. Here is the custom script version:

Code:
Trigger 1
    Events
        Unit - A unit Is issued an order targeting a point
    Conditions
        ((Ordered unit) has an item of type |cffffdeadNuevo|r) Equal to True
    Actions
        Game - Display to (All players) the text: 1
        Set Quicksilver_Caster = Test 0103 <gen>
        Set Quicksilver_Punto = (Target point of issued order)
        Custom script:   call IssuePointOrderLoc(udg_Quicksilver_Caster, "blink", udg_Quicksilver_Punto)
        Custom script:   call RemoveLocation(udg_Quicksilver_Punto)


Code:
Trigger 2
    Events
        Unit - A unit Is issued an order targeting an object
    Conditions
        ((Ordered unit) has an item of type |cffffdeadNuevo|r) Equal to True
    Actions
        Game - Display to (All players) the text: 2
        Set Quicksilver_Caster = Test 0103 <gen>
        Set Quicksilver_Target = (Target unit of issued order)
        Custom script:   call IssueTargetOrder(udg_Quicksilver_Caster, "blink", udg_Quicksilver_Target)

Edit: I have discovered none of this has to do with JASS. By ordering a unit through a trigger to use any targeted ability on a target point or target unit, the game crashes. ???? How is this even in the game if it's completely useless?
 
Last edited:
The game crashes by endless recursive loops.

Your Triggers restarting themselfs with this command which will fullfill their own events again and again and again ...... .
  • Custom script: call IssueTargetOrder(udg_Quicksilver_Caster, "blink", udg_Quicksilver_Target)
To prevent this you have to filter the blinking ( in the conditions) or deactivate the Trigger for the blinking order

deactivating looks like this
  • Trigger - Turn off (This trigger)
  • Unit - Order (Triggering unit) to Nightelf - 'Blink' (Target point of ability being cast)
  • Trigger - Turn on (This trigger)
 
Last edited:
The game crashes by endless recursive loops.

Your Triggers restarting themselfs with this command which will fullfill their own events again and again and again ...... .
  • Custom script: call IssueTargetOrder(udg_Quicksilver_Caster, "blink", udg_Quicksilver_Target)
To prevent this you have to filter the blinking ( in the conditions) or deactivate the Trigger for the blinking order

deactivating looks like this
  • Trigger - Turn off (This trigger)
  • Unit - Order (Triggering unit) to Nightelf - 'Blink' (Target point of ability being cast)
  • Trigger - Turn on (This trigger)


Interesting did not know that. Thanks very much for the tip! I have one more question with my new trigger.

  • Point 1
    • Events
      • Unit - A unit Is issued an order targeting a point
    • Conditions
      • (Issued order) Equal to (Order(smart))
      • ((Ordered unit) has an item of type |cffffdeadNuevo|r) Equal to True
    • Actions
      • Trigger - Turn off (This trigger)
      • Game - Display to (All players) the text: 1
      • Set Quicksilver_Punto = (Target point of issued order)
      • Hero - Order (Ordered unit) to use (Item carried by (Ordered unit) of type |cffffdeadNuevo|r) on Quicksilver_Punto
      • Unit - Order (Ordered unit) to Move To Quicksilver_Punto
      • Custom script: call RemoveLocation(udg_Quicksilver_Punto)
      • Trigger - Turn on (This trigger)
So far this works but with one flaw - many times he will not blink the first time when I rightclick to move him. Often times I must double right click. It's inconsistent, and also seems to work less often when near ramps/cliffs or when the hero must change facing by a significant amount to cast it. Is this just a limitation of the ordering system?

Alternatively, a method to have it only work with double tap might be cool too, but only if the former isn't possible..

Edit: Nevermind, I figured it out. <3
 
Last edited:
Status
Not open for further replies.
Back
Top