Download
(90 Kb)
Download
Updated: 09-30-13 03:55 AM
Pictures
File Info
Compatibility:
Siege of Orgrimmar (5.4)
Thunder Isle (5.2)
Updated:09-30-13 03:55 AM
Created:unknown
Downloads:724,632
Favorites:1,995
MD5:
5.4
ItemRack  Popular! (More than 5000 hits)
Version: 2.88
by: Kharthus, Gello
This is a mod to make swapping equipment easier through popout slot menus, equip slot buttons, gear sets and automated swaps.

__ Quick Start Guide __

Minimap button:
* Right-click the minimap button to open options or create sets
* Left-click the minimap button to choose a set
* Shift-click the minimap button to unequip the last set equipped
* Alt-click the minimap button to toggle events on/off

Dockable buttons:
* Alt+click slots on the character sheet to create/remove buttons
* Alt+click yourself in the character sheet to create/remove a set button
* Alt+click the created buttons to toggle their auto-queue status
* Shift+drag buttons to break them apart if they're docked to each other
* Drag the menu's border around to dock it to a different side of buttons
* Right-click the menu's border to rotate the menu
* Size, alpha, spacing, etc are in options

Creating/equipping sets:
* You create sets in the Sets tab after right-clicking the minimap button
* Select slots for the set, choose a name and icon and click Save
* Once a set is saved, there are several ways to equip it:
1. Left-click the minimap button and choose the set
2. Mouseover a set button you've created (Alt+click yourself in character sheet)
3. Use a key binding you define in the set ("Bind Key" button)
4. In macros with /itemrack equip setname
5. In events or scripts that use EquipSet("setname")

Popout menus:
* Click an item or set in a menu to equip it
* Shift+click a set in a menu to unequip it
* Alt+click an item in a menu to hide/unhide it
* Hold Alt as you mouseover a slot to show all hidden items

While at a bank:
* Items/sets in the bank have a blue border.
* Selecting an item or set that's in the bank will pull it from the bank to your bags.
* Selecting an item or set that's not in the bank will attempt to put it all into the bank.

__ Slash Commands __

/itemrack : list the most common slash commands
/itemrack opt : summon the options GUI
/itemrack equip setname : equips a set
/itemrack reset : resets buttons
/itemrack reset everything : wipes all settings, sets and events
/itemrack lock/unlock : locks and unlocks the buttons
/itemrack toggle set name[, second set name] : equips/unequips "set name" (or swaps between two sets if a second set given)

__ Macro Functions __

EquipSet("setname") -- equips "setname"
UnequipSet("setname") -- unequips "setname"
ToggleSet("setname") -- toggles (equips then unequips) "setname"
IsSetEquipped("setname") -- returns true if "setname" is equipped

In the unlikely event that another mod (or default UI in the future) uses these function names, you can use their long version ItemRack.EquipSet(), ItemRack.UnequipSet(), etc. This mod only commandeers the shortened names if they appear to be unused.

__ Events __

2.2 (re)introduces events. These are scripts to automatically equip and unequip gear as things happen in game.

To use an event:
1. In the 'Sets' tab, create or make sure you have a set you'd like to equip when the event happens.
2. In the 'Events' tab, click the red ? icon beside the event you want to use.
3. Choose the set for this event.
4. Ensure the event has a check beside it.

As events are enabled, a separate process watches for those events and equips (and unequips if chosen) as they happen.

If you want to create or edit an event, there are four types of events:

Buff: These events equip gear as you gain buffs. ie, Evocation, Drinking and being on a mount.
Stance: These events equip gear when you change stances or forms. ie, Battle Stance, Moonkin Form, Shadowform
Zone: These events equip gear when you're in one of a list of zones. ie, the PVP event includes all arena and BG maps.
Script: For those with lua knowledge, you can create your own event based on a game event. A couple examples are in the default events.

When dealing with events, it's good to keep some things in mind:
* You'll get the most predictable behavior by having sets that don't overlap. If you're a warrior with a Tanking, DPS and PVP set, consider not including weapons in those sets. If you decide to make an event to swap in a 2H when you go into Berserker Stance and a 1h+shield when you go into Defensive Stance, you won't step on the toes of events that swap in PVP gear in a BG/arena or a tuxedo in a city.
* A gold gear icon on the minimap button (and on the sets button if you've created one) means that events are enabled. If you decide you want to temporarily shut down all events, Alt+click the minimap button or the sets button. (You can disable events in options also)
* For non-English users, you might want to edit the events that have English text within them. I try to keep it locale-independant when possible (ie, warrior and most druid stances use the numbers instead of names), but you'll never enter "Stormwind City" on a deDE client for the city event.
* Script Events do not have a "set" defined to them like other events do. They need to EquipSet("setname") explicitly. Its set button will always be the macro keys icon.
* Advanced users of 1.9x may notice the lack of a delay option in scripted events. I've decided to pull this down into the scripting system to streamline the event process. For now, you can use ItemRack.CreateTimer and ItemRack.StartTimer defined in ItemRack.lua.
__ New in 2.88 - By Kharthus __

* TOC update for 5.4 patch

__ New in 2.87 - By Kharthus __

* New option for Hide the ItemRack buttons during pet battles

__ New in 2.86 - By Kharthus __

* Hide the ItemRack buttons during pet battles

__ New in 2.85 - By Kharthus __

* TOC update for 5.2 patch

__ New in 2.84 - By Kharthus __

* Fixed Monk off-hands

__ New in 2.83 - By Kharthus __

* TOC update for 5.1 patch

__ New in 2.82 - By Kharthus __

* Fixed dual spec events

__ New in 2.81 - By Kharthus __

* Attempt to fix GlyphUI problem

__ New in 2.8 - By Kharthus __

* Updates for MoP

- Change log up to this version removed from hosting site and archived in Change Log.txt
Optional Files (0)


Archived Files (11)
File Name
Version
Size
Author
Date
2.87
90kB
Kharthus
03-23-13 11:48 AM
2.86
90kB
Kharthus
03-20-13 11:22 AM
2.85
90kB
Kharthus
03-05-13 10:31 PM
2.84
90kB
Kharthus
02-10-13 09:35 PM
2.83
90kB
Kharthus
12-15-12 11:03 AM
2.82
90kB
Kharthus
09-03-12 12:00 AM
2.81
89kB
Kharthus
08-31-12 07:39 PM
2.8
89kB
Kharthus
08-27-12 10:41 PM
2.73
89kB
Kharthus
12-09-11 09:56 PM
2.25
85kB
Kharthus
04-17-09 06:16 AM
2.243
85kB
Gello
10-14-08 04:37 AM


Post A Reply Comment Options
Unread 09-23-06, 04:42 PM  
halwa
A Kobold Labourer

Forum posts: 1
File comments: 2
Uploads: 0
Originally posted by Gello
Two approaches:
If you want to use normal action bars, grab the mod Equipped Macro Icons ( [url]...


Thanks Gello, this worked great! I plan to use this scheme for the time being. The thing I miss with this approach is cooldown count would show me when to use the trinket however that doesnt work with the macro (matters only when the cooldown is within 30 sec). Any easy way to get this working too ?

On the trinket queue script, it looks like it should work fine. If you find problems with it (hopefully you don't), I've been suggesting TrinketMenu for the time being which has full automatic trinket queue support that will make its way to ItemRack 2.0. You set up a priority of trinkets, enter a delay to keep some trinkets equipped after use (ie, Earthstrike for 20 seconds), and it will manage swaps on its own, in/out of combat/death.
I will check out trinket menu as well. Cant wait for ItemRack 2.0 . The delay is missing in my script but fortunately for me the in-combat-delay in swapping trinkets works to my advantage here. Does TrinketMenu / ItemRack 2.0 take care of the case when the buff expires before the delay is up and queue the next trinket, for e.g. defilers talisman has a delay of 30 sec (I think) but the buff could be used up in 5 sec?

Another request, could you add the support to ItemRack to bind a trinket queue to a button on the normal bars and a key press rather than the ItemRack bar? Not sure if this is already there in the new version but it would be nice to have (people who use it with normal toolbars could download your other mod but it would be nice to do it without that).

Thanks again for all the help
Halwa
halwa is offline Report comment to moderator  
Reply With Quote
Unread 10-22-06, 03:33 PM  
SkunkWerks
A Fallenroot Satyr
 
SkunkWerks's Avatar
AddOn Author - Click to view AddOns

Forum posts: 21
File comments: 241
Uploads: 2
Show/Hide Cloak/Helm toggles?

They don't seem to have any effect.

Why is that?

Seems to me this is the one thing ItemRack has on Outfitter, and near as I can tell, it doesn't work.
SkunkWerks is offline Report comment to moderator  
Reply With Quote
Unread 12-11-06, 08:39 AM  
sabbatboy
A Kobold Labourer

Forum posts: 0
File comments: 5
Uploads: 0
For some reason, other mods keep messing around with the way the ItemRack popup window grows (on mouseover of something on the rack). This is really annoying, and I know its no fault of yours, but would it be possible to change the direction the popup grows, not just the side it is on?

For example, I have the rack set up horizontally, and have the popup show horizontally to the bar. Could you implement a toggle to choose to have it grow to either the left or the right?

Its a niggling little thing that just bugs me after being used to using it a certain way for so long.
sabbatboy is offline Report comment to moderator  
Reply With Quote
Unread 12-16-06, 09:45 AM  
Terak
A Defias Bandit

Forum posts: 3
File comments: 35
Uploads: 0
im getting quite a lot of errors showing up with the latest one

[2006/12/16 15:26:28-10-x12]: <event>ADDON_ACTION_BLOCKED:AddOn 'ItemRack' tried to call the protected function 'ItemRackInv0:Hide()'.
<in C code>: in function `Hide'
ItemRack\ItemRack.lua:885: in function <Interface\AddOns\ItemRack\ItemRack.lua:850>
ItemRack\ItemRack.lua:1626: in function `func'
ItemRack\ItemRack.lua:4898: in function `OnUpdate'
<string>:"RackFrame:OnUpdate":2: in function <[string "RackFrame:OnUpdate"]:1>

---

i get identical errors from'ItemRackInv0:Hide()' -'ItemRackInv20:Hide()'.

also this error

[2006/12/16 15:26:28-10-x12]: <event>ADDON_ACTION_BLOCKED:AddOn 'ItemRack' tried to call the protected function 'ItemRack_InvFrame:Hide()'.
<in C code>: in function `Hide'
ItemRack\ItemRack.lua:948: in function <Interface\AddOns\ItemRack\ItemRack.lua:850>
ItemRack\ItemRack.lua:1626: in function `func'
ItemRack\ItemRack.lua:4898: in function `OnUpdate'
<string>:"RackFrame:OnUpdate":2: in function <[string "RackFrame:OnUpdate"]:1>

---
Terak is offline Report comment to moderator  
Reply With Quote
Unread 12-16-06, 02:41 PM  
kazso
A Kobold Labourer

Forum posts: 0
File comments: 20
Uploads: 0
Errors

I get the same errors, as Terak.
kazso is offline Report comment to moderator  
Reply With Quote
Unread 12-17-06, 01:53 AM  
greenstpne
A Murloc Raider

Forum posts: 6
File comments: 6
Uploads: 0
Errors..

I get these errors as soon as I go into combat - it only happens twice but during grinding its a noticed thing. Only addons I was using for this test were bugsack and itemrack (Bugsack captures the errors - I also used laricactionblocked to verify it wasn't misfire on bugsack.)

This is taken straight from bugsack's saved variables since that is how it saves the errors for review:

[1] = {
["message"] = "<event>ADDON_ACTION_BLOCKED:AddOn 'ItemRack' tried to call the protected function 'TargetofTargetFrame:Show()'.\n<in C code>: in function `Show'\nFrameXML\\TargetFrame.lua:568: in function `TargetofTarget_Update'\nFrameXML\\TargetFrame.lua:88: in function `TargetFrame_OnEvent'\n<string>:\"TargetFrame:OnEvent\":2: in function <[string \"TargetFrame:OnEvent\"]:1>\n\n ---",
["type"] = "event",
["time"] = "2006/12/17 02:32:26",
["session"] = 1,
["counter"] = 1,
},
[2] = {
["message"] = "<event>ADDON_ACTION_BLOCKED:AddOn 'ItemRack' tried to call the protected function 'TargetofTargetFrame:Show()'.\n<in C code>: in function `Show'\nFrameXML\\TargetFrame.lua:568: in function `TargetofTarget_Update'\nFrameXML\\TargetFrame.lua:544: in function `TargetofTarget_OnUpdate'\n<string>:\"TargetofTargetFrame:OnUpdate\":2: in function <[string \"TargetofTargetFrame:OnUpdate\"]:1>\n\n ---",
["type"] = "event",
["time"] = "2006/12/17 02:32:26",
["session"] = 1,
["counter"] = 1,
},

Remember this only occurs when you start combat - almost as if itemrack is looking for something at that point and gets slapped down by blizzards UI.
Last edited by greenstpne : 12-17-06 at 01:54 AM.
greenstpne is offline Report comment to moderator  
Reply With Quote
Unread 12-20-06, 12:32 AM  
dlr554
A Kobold Labourer

Forum posts: 0
File comments: 55
Uploads: 0
I'm getting the same errors during combat. Unfortunately I had to disable Itemrack simply because it was flooding bugsack with 100's of these errors and causing massive lagspikes during combat.
dlr554 is offline Report comment to moderator  
Reply With Quote
Unread 12-20-06, 07:04 PM  
Gello
A Scalebane Royal Guard
AddOn Author - Click to view AddOns

Forum posts: 435
File comments: 321
Uploads: 92
The ADDON_ACTION_BLOCKED event will be totally removed in the coming weeks. I'll probably post an update this weekend to lessen the likelihood of that firing with the current version.
Gello is offline Report comment to moderator  
Reply With Quote
Unread 12-24-06, 01:29 AM  
NobleHelium
A Kobold Labourer

Forum posts: 1
File comments: 8
Uploads: 0
Bug with Suffixed Items

Are you aware of the bug where ItemRack is not recognizing or finding suffixed items in inventory? It's existed since the BTS patch came out.
NobleHelium is offline Report comment to moderator  
Reply With Quote
Unread 12-24-06, 03:13 AM  
Kharthus
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 227
Uploads: 6
Custom Events

I've noticed that whenever a new version is released it will overwrite any changes that have been made to the included Events. In particular I tend to change the Skinning and Plaguelands events, but I know I've lost them several times due to upgrades. Any way to flag them so they don't get changed or only reset them thru an explicit command or button?
Kharthus is offline Report comment to moderator  
Reply With Quote
Unread 12-26-06, 06:12 PM  
holdstrong
A Kobold Labourer

Forum posts: 0
File comments: 15
Uploads: 0
Dismount event

Is there anyway to add a dismount event? Sort of like stancesets had?

The current itemtrack dismount will only return you to whatever items you had when you mounted... which are not always the items you want equiped when dismounting.

I'll give you an example:

You are riding along with your carrot on a stick. Someone attacks you while you are on your mount... you dismount, but the carrot stays in your trinket slot because you were in combat. You win or lose the battle, then mount up. Ya see the problem? The carrot is now going to stay in the slot and not change unless you do it manually.

If you could choose a default set that dismounting would always change to it would solve this problem.

edit: just saw that others have same problem, not sure if it is fixed yet, but they seem to imply that there should be a mechanism for avoiding this... i just dont understand what mechanism that is.
Last edited by holdstrong : 12-26-06 at 06:14 PM.
holdstrong is offline Report comment to moderator  
Reply With Quote
Unread 12-27-06, 04:36 AM  
Kharthus
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 227
Uploads: 6
Re: Dismount event

Originally posted by holdstrong
Is there anyway to add a dismount event? Sort of like stancesets had?

The current itemtrack dismount will only return you to whatever items you had when you mounted... which are not always the items you want equiped when dismounting.

I'll give you an example:

You are riding along with your carrot on a stick. Someone attacks you while you are on your mount... you dismount, but the carrot stays in your trinket slot because you were in combat. You win or lose the battle, then mount up. Ya see the problem? The carrot is now going to stay in the slot and not change unless you do it manually.

If you could choose a default set that dismounting would always change to it would solve this problem.

edit: just saw that others have same problem, not sure if it is fixed yet, but they seem to imply that there should be a mechanism for avoiding this... i just dont understand what mechanism that is.
The set that you would normally get will still be equipped after you leave combat. Only time I can think of this getting messed up is if you die during that fight.
Kharthus is offline Report comment to moderator  
Reply With Quote
Unread 12-27-06, 04:37 AM  
Kharthus
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 227
Uploads: 6
Reindeer Mounts

Adding:

["Interface\\Icons\\INV_Misc_Branch_01"] = 1,

to the problem_mounts variable at line 49 will fix the issues with Reindeer mounts not being detected.
Kharthus is offline Report comment to moderator  
Reply With Quote
Unread 12-27-06, 01:40 PM  
holdstrong
A Kobold Labourer

Forum posts: 0
File comments: 15
Uploads: 0
Re: Re: Dismount event

Figured out how to do what I wanted. I created a set called "default" and then edited the Mounted Event to include this set in the elseif and not mounted line.

Looks like this:

local mount = ItemRack_PlayerMounted()
if not IR_MOUNT and mount then
EquipSet()
elseif IR_MOUNT and not mount then
EquipSet("Default")
end
IR_MOUNT=mount
--[[Equips set to be worn while mounted.]]

Instead of this:

local mount = ItemRack_PlayerMounted()
if not IR_MOUNT and mount then
EquipSet()
elseif IR_MOUNT and not mount then
LoadSet()
end
IR_MOUNT=mount
--[[Equips set to be worn while mounted.]]


The default set will load in every time I dismount now. Haven't run into any problems with it yet.
Last edited by holdstrong : 12-28-06 at 03:19 AM.
holdstrong is offline Report comment to moderator  
Reply With Quote
Unread 01-02-07, 05:52 PM  
Kamarade Molotov
A Kobold Labourer
 
Kamarade Molotov's Avatar

Forum posts: 1
File comments: 4
Uploads: 0
Skinning Event

My skninning skill is at 300 so I would like to modifiy the skinning event so that it equip my skinning set when I mouseover over an orange unit rather then a red.

I tried to look for RGB codes for oranges but I get things like
R=255
G=153
B=51

while your code is more like

GetTextColor()
if r>.9 and g<.2 and b<.2

are your values a percentage of 255, the max value in RGB? If so, what is the exact RGB value for the WoW orange string in the tooltip?

Thanks

P.S. @Holdstrong: Nice! I used your code too because I had the same problem you had with my mount.
Kamarade Molotov is offline Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: