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

Item with activate diactivate ability

I want to have an item with activate/diactivte. WIll program the action of ability myself but i want to get the state.
What ability is better to use for this?

I want active / inactive to visible on item stomhow.Current immolation activates. But i cant deactivate it clicking again it seems.
The simplest way to do this is to create two Crystal Ball-based items. One item is for the Active state and the other for the Inactive state.

Both items should have the ability based on Item Temporary Speed Bonus. The movement speed increase = 0.00 and the duration = 0.001.

The Active state item should also have the Item Immolation and Item Mana Regeneration (negative mana regeneration value) abilities.

*Remember to remove the ability Item Area Detection from the items.

**If you want it to require spending mana to switch to the Active item, you'll need two abilities based on Item Temporary Speed Bonus. One for the Active state and one for the Inactive state. The ability added to the Inactive item state should have its mana cost changed in Stats - Mana Cost from ability Item Temporary Speed Bonus (Inactive).

Here's an example trigger:

  • Item With Alternate State
    • Events
      • Unit - A unit Uses an item
    • Conditions
      • Or - Arbitrary conditions are met
        • Conditions
          • (Get item type id of (Get Manipulated Item)) Equal to (Immolation (Active))
          • (Get item type id of (Get Manipulated Item)) Equal to (Immolation (Inactive))
    • Actions
      • Set Global Variable TriggerItem = (Get Manipulated Item)
      • Set Global Variable TriggerUnit = (Get Trigger Unit)
      • Set Global Variable LoopCount = 0
      • Loop Integer Variable Loop from 0 to 5
        • Loop - Actions
          • Set Global Variable LoopItem[LoopCount] = (Unit TriggerUnit item in inventory slot LoopCount)
          • If-Then-Else
            • If - Conditions
              • LoopItem[LoopCount] Equal to TriggerItem
            • Then - Actions
              • Set Global Variable TriggerItemSlot = LoopCount
            • Else - Actions
          • Set Global Variable LoopCount = (LoopCount + 1)
      • If-Then-Else
        • If - Conditions
          • (Get item type id of TriggerItem) Equal to (Immolation (Inactive))
        • Then - Actions
          • Item - Remove Item TriggerItem
          • Hero - For (TriggerUnit) create (Immolation (Active)) and put it in the inventory # TriggerItemSlot
        • Else - Actions
          • Item - Remove Item TriggerItem
          • Hero - For (TriggerUnit) create (Immolation (Inactive)) and put it in the inventory # TriggerItemSlot
      • Set Global Variable TriggerItem = No Item (null)
      • Set Global Variable TriggerUnit = No Unit (null)
      • Set Global Variable LoopItem[LoopCount] = No Item (null)
      • Loop Integer Variable Loop from 0 to 4
        • Loop - Actions
          • Set Global Variable LoopCount = (LoopCount - 1)
          • Set Global Variable LoopItem[LoopCount] = No Item (null)
      • Set Global Variable TriggerItemSlot = 0
 
Back
Top