Mercurial > wow > inventory
comparison Queue.lua @ 61:d903b0a151d3
Command handler function is now private, no need to keep it global when you can use the global SlashCmdList["INVENTORIUM"](msg) instead.
Added database updating mechanism.
All database vars are now stored in profiles rather than global.
Now refreshing options when a different profile is selected.
Fixed an issue with minimum local and global stock values not being inherited from the defaults.
author | Zerotorescue |
---|---|
date | Wed, 22 Dec 2010 15:04:09 +0100 |
parents | 58fb38f0b447 |
children | fee06221176f |
comparison
equal
deleted
inserted
replaced
60:12c2b20ca843 | 61:d903b0a151d3 |
---|---|
21 | 21 |
22 function mod:QueueAll() | 22 function mod:QueueAll() |
23 local playerName = UnitName("player"); | 23 local playerName = UnitName("player"); |
24 | 24 |
25 -- Go through all groups | 25 -- Go through all groups |
26 for groupName, values in pairs(addon.db.global.groups) do | 26 for groupName, values in pairs(addon.db.profile.groups) do |
27 local trackAt = (values.trackAtCharacters or (values.trackAtCharacters == nil and addon.db.global.defaults.trackAtCharacters)); | 27 local trackAt = (values.trackAtCharacters or (values.trackAtCharacters == nil and addon.db.profile.defaults.trackAtCharacters)); |
28 | 28 |
29 if trackAt[playerName] then | 29 if trackAt[playerName] then |
30 self:QueueGroup(groupName); | 30 self:QueueGroup(groupName); |
31 end | 31 end |
32 end | 32 end |
33 end | 33 end |
34 | 34 |
35 function mod:QueueGroup(groupName) | 35 function mod:QueueGroup(groupName) |
36 if not addon.db.global.groups[groupName] then | 36 if not addon.db.profile.groups[groupName] then |
37 print(("Tried to queue items from a group named \"%s\", but no such group exists."):format(groupName)); | 37 print(("Tried to queue items from a group named \"%s\", but no such group exists."):format(groupName)); |
38 return; | 38 return; |
39 end | 39 end |
40 | 40 |
41 local temp = {}; | 41 local temp = {}; |
44 for i = 1, GetNumTradeSkills() do | 44 for i = 1, GetNumTradeSkills() do |
45 -- Process every single tradeskill | 45 -- Process every single tradeskill |
46 self:ProcessTradeSkill(i, groupName, temp); | 46 self:ProcessTradeSkill(i, groupName, temp); |
47 end | 47 end |
48 | 48 |
49 if addon.db.global.groups[groupName].items then | 49 if addon.db.profile.groups[groupName].items then |
50 for itemId, _ in pairs(addon.db.global.groups[groupName].items) do | 50 for itemId, _ in pairs(addon.db.profile.groups[groupName].items) do |
51 if not temp[itemId] then | 51 if not temp[itemId] then |
52 local itemLink = select(2, GetItemInfo(itemId)); | 52 local itemLink = select(2, GetItemInfo(itemId)); |
53 | 53 |
54 print("Couldn't queue " .. itemLink .. " (not part of this profession)"); | 54 print("Couldn't queue " .. itemLink .. " (not part of this profession)"); |
55 end | 55 end |
68 itemId = tonumber(itemLink:match("|Henchant:([-0-9]+)|h")); | 68 itemId = tonumber(itemLink:match("|Henchant:([-0-9]+)|h")); |
69 | 69 |
70 itemId = addon.scrollIds[itemId]; -- change enchantIds into scrollIds | 70 itemId = addon.scrollIds[itemId]; -- change enchantIds into scrollIds |
71 end | 71 end |
72 | 72 |
73 if addon.db.global.groups[groupName].items[itemId] then | 73 if addon.db.profile.groups[groupName].items[itemId] then |
74 -- This item is in this group, queue it! | 74 -- This item is in this group, queue it! |
75 | 75 |
76 if temp then | 76 if temp then |
77 -- Remember which items have been processed | 77 -- Remember which items have been processed |
78 temp[itemId] = true; | 78 temp[itemId] = true; |