Using an item..

King.Sky_Gem

New Member
Reaction score
2
This spell I am trying to make creates a dummy unit that appears once in a while when the triggering unit is attacked. When the dummy is spawned, it is given an item (wand of illusion) and is SUPPOSED TO use the wand of illusion on the attacked unit. When I try to do this, it tries to drop the wand of illusion on the attacked unit.
Could someone please tell me the correct command/order? I would appreciate it.
 

Laiev

Hey Listen!!
Reaction score
188
if need help to change the target of the ability, just ask here or create a new thread
 

King.Sky_Gem

New Member
Reaction score
2
Split Image
Events
Unit - A unit Is attacked
Conditions
(Unit-type of (Attacked unit)) Equal to Ninja
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Split Image for (Attacked unit)) Equal to 1
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Random integer number between 1 and 10) Equal to 1
Then - Actions
Unit - Create 1 Split Image_Dummy for (Owner of (Attacked unit)) at (Position of (Attacked unit)) facing Default building facing degrees
Hero - Create Split Image 1 and give it to (Last created unit)
Custom script: call IssueTargetOrderById(bj_lastCreatedUnit, 852275, GetTriggerUnit())
Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
Else - Actions
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
This goes on for 3 levels
This ability works when the unit is attacked. A dummy is created during a chance, and there is a wand of illusion given to the dummy. The dummy creates a clone of the attacked unit, and it happens over again. Is this trigger correct?
 

Moridin

Snow Leopard
Reaction score
144
Post in GUI tags please :). Makes it much easier to read.

Paste the trigger text between:
[noparse]
Trigger:
  • <Your trigger text here>
[/noparse]
 

King.Sky_Gem

New Member
Reaction score
2
Trigger:
  • Split Image
    • Events
      • Unit - A unit Is attacked
    • Conditions
      • (Unit-type of (Attacked unit)) Equal to Ninja
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Split Image for (Attacked unit)) Equal to 1
        • Then - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Random integer number between 1 and 10) Equal to 1
            • Then - Actions
              • Unit - Create 1 Split Image_Dummy for (Owner of (Attacked unit)) at (Position of (Attacked unit)) facing Default building facing degrees
              • Hero - Create Split Image 1 and give it to (Last created unit)
              • Custom script: call IssueTargetOrderById(bj_lastCreatedUnit, 852275, GetTriggerUnit())
              • Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
            • Else - Actions
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Split Image for (Attacked unit)) Equal to 2
        • Then - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Random integer number between 1 and 100) Equal to 15
            • Then - Actions
              • Unit - Create 1 Split Image_Dummy for (Owner of (Attacked unit)) at (Position of (Attacked unit)) facing Default building facing degrees
              • Hero - Create Split Image 2 and give it to (Last created unit)
              • Custom script: call IssueTargetOrderById(bj_lastCreatedUnit, 852275, GetTriggerUnit())
              • Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
            • Else - Actions
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Split Image for (Attacked unit)) Equal to 3
        • Then - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Random integer number between 1 and 10) Equal to 9
            • Then - Actions
              • Unit - Create 1 Split Image_Dummy for (Owner of (Attacked unit)) at (Position of (Attacked unit)) facing Default building facing degrees
              • Hero - Create Split Image 3 and give it to (Last created unit)
              • Custom script: call IssueTargetOrderById(bj_lastCreatedUnit, 852275, GetTriggerUnit())
              • Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
            • Else - Actions
        • Else - Actions

Thanks :D finally know how
 

King.Sky_Gem

New Member
Reaction score
2
bump
can someone check this triggering to see if it is correct?
When attacked, there is a chance to spawn a dummy and have that dummy cast a wand of illusion on the attacked unit.
 

Moridin

Snow Leopard
Reaction score
144
Are you sure these are right?

(Random integer number between 1 and 10) Equal to 1
^ This is a 10% chance btw.

(Random integer number between 1 and 100) Equal to 15
^ This is a 1% chance?

(Random integer number between 1 and 10) Equal to 9
^ This is again a 10% chance...

What's with the scaling? :S

Also, if you do have proper scaling, then why don't you use a for loop instead of 3 different if blocks? :S
 

King.Sky_Gem

New Member
Reaction score
2
I'm bad at triggering, obviously. I want level 1 to be 10% chance, 2 is 15%, 3 is 20%. Is the rest of the trigger correct?
 

Moridin

Snow Leopard
Reaction score
144
The rest should be fine.

One more thing though, you do realise that by using a "Unit - A unit is attacked" event, this trigger is abusable right? :S People can keep interrupting their attacks, thus creating tons of illusions on the ninja....?
 

Moridin

Snow Leopard
Reaction score
144
The only way to fix the abusability would be to use a damage detection system :p.

You CAN leave it as it is right now if you really want to...I'm guessing this is when enemies hit the ninja? I doubt enemies would WANT to give the ninja many many illusions.

Just add a condition to make sure that the ninja's can't spam fake attacks at each other to spawn illusions.
 

sentrywiz

New Member
Reaction score
25
Even though this thread has had a solution, I saw that trigger is too big and too unnecessary for something like this. So I've made a simpler GUI approach without any custom JASS text.


I've also put a way to stop abusing of it. Well, its one way... giving it a 30 second cooldown so it won't be spammable.

Tested, works like a charm.


You do need to do one thing before this is to work. On your dummy unit, put a Inventory(Hero) ability, so it can click on items.



First and main trigger (greatly simplified):


Trigger:
  • Wand of Illusion
    • Events
      • Unit - A unit Is attacked
    • Conditions
      • (Unit-type of (Attacked unit)) Equal to Blademaster
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Random real number between 1.00 and 100.00) Greater than or equal to ((Real((Level of Critical Strike for (Attacked unit)))) x (5.00 + 5.00))
        • Then - Actions
          • Trigger - Turn off (This trigger)
          • Game - Display to (All players) the text: Illusions
          • Countdown Timer - Start SomeTimer as a One-shot timer that will expire in 30.00 seconds
          • Set SomeTimer = (Last started timer)
          • Unit - Create 1 Priest for (Owner of (Attacked unit)) at (Position of (Attacked unit)) facing Default building facing degrees
          • Unit - Add a 2.00 second Generic expiration timer to (Last created unit)
          • Hero - Create Wand of Illusion and give it to (Last created unit)
          • Hero - Order (Last created unit) to use (Last created item) on (Attacked unit)
        • Else - Actions



Second trigger (avoiding abuse):


Trigger:
  • Wand of Illusion Copy
    • Events
      • Time - SomeTimer expires
    • Conditions
    • Actions
      • Trigger - Turn on Wand of Illusion <gen>
      • Game - Display to (All players) the text: Back online



You want to change the following, I used them to test:

-Priest # Your dummy unit
-Blademaster # Your hero
-Critical Strike # Your ability
-SomeTimer # its a variable timer. You can change the time you want this ability to have a "cooldown" so it won't be spammable. Leave it at 30 seconds if you want
-Both Game messages were for testing, you can delete that


Even if you don't use these triggers, just made them as simpler way to create what you want. +rep if you like it
 

Inflicted

Currently inactive
Reaction score
63
(Random real number between 1.00 and 100.00) Greater than or equal to ((Real((Level of Critical Strike for (Attacked unit)))) x (5.00 + 5.00))

i think your brackets are wrong..

what you said is the level of the ability x10.

---

I'm bad at triggering, obviously. I want level 1 to be 10% chance, 2 is 15%, 3 is 20%. Is the rest of the trigger correct?

i presume u want this then:

(Random real number between 1.00 and 100.00) Greater than or equal to ((Real((Level of Critical Strike for (Attacked unit) x 5.00) + 5.00))

---

also sentrywiz's method would only work for one player..
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top