How to make items with on/off effects?

Status
Not open for further replies.
Level 5
Joined
May 8, 2020
Messages
90

Armlet of Mordiggian
Armlet of Mordiggian+9 damage, +15% attack speed, +5 armor, +5 hp regen, Unholy Strength (active) +31 damage, +10% attack speed, + 25 Strength, – 37 hp/sec

When turned off, nothing will be given
 
The easiest method that comes to mind is creating two copies of the Item.

The first has the default item abilities: +9 damage, +15% as, +5 armor, +5 hp regen.

The second has the "active" item abilities: +40 damage, +25% as, +5 armor, -32 hp regen, +25 str.

And both Items need an actual Active ability that does nothing other than fire a trigger for toggling between these two items:
  • Events
    • Unit - A unit Uses an item
  • Conditions
    • (Item-type of (Item being manipulated)) equal to Armlet of Mordiggian (Off)
  • Actions
    • Item - Remove (Item being manipulated)
    • Item - Create Armlet of Mordiggian (On) and give it to (Triggering unit)
  • Events
    • Unit - A unit Uses an item
  • Conditions
    • (Item-type of (Item being manipulated)) equal to Armlet of Mordiggian (On)
  • Actions
    • Item - Remove (Item being manipulated)
    • Item - Create Armlet of Mordiggian (Off) and give it to (Triggering unit)
You can use the Shift hotkey when opening the Abilities field of your Item to bypass the normal ability limit. This will probably be necessary for the active item since it has 6 abilities.
 
Last edited:
Another option is to modify the concrete item itself. You can modify name, icon and even abilities, e.g.
  • Swap item
    • Events
      • Unit - A unit Uses an item
    • Conditions
      • (Item-type of (Item being manipulated)) Equal to Your_Item
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • IsActive Equal to True
        • Then - Actions
          • Set VariableSet IsActive = False
          • Item - For Item: (Item being manipulated), Remove Ability: Item Damage Bonus (+10)
          • Item - Set Icon Path of (Item being manipulated) to ReplaceableTextures\CommandButtons\BTNDaggerOfEscape.blp
          • Item - Set Name of (Item being manipulated) to Your_Item (Off)
        • Else - Actions
          • Set VariableSet IsActive = True
          • Item - For Item: (Item being manipulated), Add Ability: Item Damage Bonus (+10)
          • Item - Set Icon Path of (Item being manipulated) to ReplaceableTextures\CommandButtons\BTNSobiMask.blp
          • Item - Set Name of (Item being manipulated) to Your_Item (On)
 
Status
Not open for further replies.
Back
Top