annotate Modules/Tooltip.lua @ 18:c7b3585c73df

Added the missing QuickAuctions module. I've also added integration with Skillet and LilSparkysWorkshop. IA and queue any item set up in QuickAuctions where the reagent cost is less than the current price of the item. This is based on KevTool Queue.
author Asa Ayers <Asa.Ayers@Gmail.com>
date Sat, 03 Jul 2010 14:53:27 -0700
parents e62d878c716d
children d21d202f3b3d
rev   line source
Asa@3 1 local addonName, addonTable = ...;
Asa@3 2 local addon = _G[addonName]
Asa@3 3
Asa@3 4 local utils = addonTable.utils
Asa@3 5
Asa@3 6 local function ShowTipWithPricing(tip, link, num)
Asa@3 7 if (link == nil) then
Asa@3 8 return;
Asa@3 9 end
Asa@3 10
Asa@8 11 -- local itemName, itemLink, itemRarity, itemLevel, itemMinLevel, itemType, _, _, _, _, itemVendorPrice = GetItemInfo (link);
Asa@3 12 -- local _, _, Color, Ltype, Id, Enchant, Gem1, Gem2, Gem3, Gem4, Suffix, Unique, LinkLvl, Name = string.find(link, "|?c?f?f?(%x*)|?H?([^:]*):?(%d+):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%-?%d*):?(%-?%d*):?(%d*)|?h?%[?([^%[%]]*)%]?|?h?|?r?")
Asa@3 13
Asa@8 14 local investedTotal, investedPerItem, count = ItemAuditor:GetItemCost(link)
Asa@3 15
Asa@13 16 local keep = 1 - addon:GetAHCut()
Asa@12 17 local show = false
Asa@3 18
Asa@3 19 if investedTotal > 0 then
Asa@15 20 tip:AddDoubleLine("\124cffffffffIA: Total Invested", addon:FormatMoney(investedTotal));
Asa@17 21 tip:AddDoubleLine("\124cffffffffIA: Invested per Item (own: " .. count .. ")", addon:FormatMoney(ceil(investedPerItem)));
Asa@15 22 tip:AddDoubleLine("\124cffffffffIA: Minimum " .. addon:GetAHFaction() .. " AH Price: ", addon:FormatMoney(ceil(investedPerItem/keep)))
Asa@12 23 show = true
Asa@12 24
Asa@12 25 end
Asa@13 26
Asa@13 27 if addon:IsQAEnabled() then
Asa@13 28 local groupName = QAAPI:GetItemGroup(link)
Asa@13 29 if groupName then
Asa@13 30 local threshold = QAAPI:GetGroupThreshold(groupName)
Asa@15 31 tip:AddDoubleLine("\124cffffffffIA: QA Threshold: ", addon:FormatMoney(threshold))
Asa@13 32 show = true
Asa@13 33 end
Asa@12 34 end
Asa@12 35
Asa@12 36 if show then
Asa@3 37 tip:Show()
Asa@3 38 end
Asa@3 39 end
Asa@3 40
Asa@3 41 hooksecurefunc (GameTooltip, "SetBagItem",
Asa@3 42 function(tip, bag, slot)
Asa@3 43 local _, num = GetContainerItemInfo(bag, slot);
Asa@3 44 ShowTipWithPricing (tip, GetContainerItemLink(bag, slot), num);
Asa@3 45 end
Asa@3 46 );
Asa@3 47
Asa@3 48 hooksecurefunc (GameTooltip, "SetAuctionItem",
Asa@3 49 function (tip, type, index)
Asa@3 50 ShowTipWithPricing (tip, GetAuctionItemLink(type, index));
Asa@3 51 end
Asa@3 52 );
Asa@3 53
Asa@3 54 hooksecurefunc (GameTooltip, "SetAuctionSellItem",
Asa@3 55 function (tip)
Asa@3 56 local name, _, count = GetAuctionSellItemInfo();
Asa@3 57 local __, link = GetItemInfo(name);
Asa@3 58 ShowTipWithPricing (tip, link, num);
Asa@3 59 end
Asa@3 60 );
Asa@3 61
Asa@3 62
Asa@3 63 hooksecurefunc (GameTooltip, "SetLootItem",
Asa@3 64 function (tip, slot)
Asa@3 65 if LootSlotIsItem(slot) then
Asa@3 66 local link, _, num = GetLootSlotLink(slot);
Asa@3 67 ShowTipWithPricing (tip, link, num);
Asa@3 68 end
Asa@3 69 end
Asa@3 70 );
Asa@3 71
Asa@3 72 hooksecurefunc (GameTooltip, "SetLootRollItem",
Asa@3 73 function (tip, slot)
Asa@3 74 local _, _, num = GetLootRollItemInfo(slot);
Asa@3 75 ShowTipWithPricing (tip, GetLootRollItemLink(slot), num);
Asa@3 76 end
Asa@3 77 );
Asa@3 78
Asa@3 79
Asa@3 80 hooksecurefunc (GameTooltip, "SetInventoryItem",
Asa@3 81 function (tip, unit, slot)
Asa@3 82 ShowTipWithPricing (tip, GetInventoryItemLink(unit, slot), GetInventoryItemCount(unit, slot));
Asa@3 83 end
Asa@3 84 );
Asa@3 85
Asa@3 86 hooksecurefunc (GameTooltip, "SetGuildBankItem",
Asa@3 87 function (tip, tab, slot)
Asa@3 88 local _, num = GetGuildBankItemInfo(tab, slot);
Asa@3 89 ShowTipWithPricing (tip, GetGuildBankItemLink(tab, slot), num);
Asa@3 90 end
Asa@3 91 );
Asa@3 92
Asa@3 93 hooksecurefunc (GameTooltip, "SetTradeSkillItem",
Asa@3 94 function (tip, skill, id)
Asa@3 95 local link = GetTradeSkillItemLink(skill);
Asa@3 96 local num = GetTradeSkillNumMade(skill);
Asa@3 97 if id then
Asa@3 98 link = GetTradeSkillReagentItemLink(skill, id);
Asa@3 99 num = select (3, GetTradeSkillReagentInfo(skill, id));
Asa@3 100 end
Asa@3 101
Asa@3 102 ShowTipWithPricing (tip, link, num);
Asa@3 103 end
Asa@3 104 );
Asa@3 105
Asa@3 106 hooksecurefunc (GameTooltip, "SetTradePlayerItem",
Asa@3 107 function (tip, id)
Asa@3 108 local _, _, num = GetTradePlayerItemInfo(id);
Asa@3 109 ShowTipWithPricing (tip, GetTradePlayerItemLink(id), num);
Asa@3 110 end
Asa@3 111 );
Asa@3 112
Asa@3 113 hooksecurefunc (GameTooltip, "SetTradeTargetItem",
Asa@3 114 function (tip, id)
Asa@3 115 local _, _, num = GetTradeTargetItemInfo(id);
Asa@3 116 ShowTipWithPricing (tip, GetTradeTargetItemLink(id), num);
Asa@3 117 end
Asa@3 118 );
Asa@3 119
Asa@3 120 hooksecurefunc (GameTooltip, "SetQuestItem",
Asa@3 121 function (tip, type, index)
Asa@3 122 local _, _, num = GetQuestItemInfo(type, index);
Asa@3 123 ShowTipWithPricing (tip, GetQuestItemLink(type, index), num);
Asa@3 124 end
Asa@3 125 );
Asa@3 126
Asa@3 127 hooksecurefunc (GameTooltip, "SetQuestLogItem",
Asa@3 128 function (tip, type, index)
Asa@3 129 local num, _;
Asa@3 130 if type == "choice" then
Asa@3 131 _, _, num = GetQuestLogChoiceInfo(index);
Asa@3 132 else
Asa@3 133 _, _, num = GetQuestLogRewardInfo(index)
Asa@3 134 end
Asa@3 135
Asa@3 136 ShowTipWithPricing (tip, GetQuestLogItemLink(type, index), num);
Asa@3 137 end
Asa@3 138 );
Asa@3 139
Asa@3 140 hooksecurefunc (GameTooltip, "SetInboxItem",
Asa@3 141 function (tip, index, attachIndex)
Asa@3 142 local _, _, num = GetInboxItem(index, attachIndex);
Asa@3 143 ShowTipWithPricing (tip, GetInboxItemLink(index, attachIndex), num);
Asa@3 144 end
Asa@3 145 );
Asa@3 146
Asa@3 147 hooksecurefunc (GameTooltip, "SetSendMailItem",
Asa@3 148 function (tip, id)
Asa@3 149 local name, _, num = GetSendMailItem(id)
Asa@3 150 local name, link = GetItemInfo(name);
Asa@3 151 ShowTipWithPricing (tip, link, num);
Asa@3 152 end
Asa@3 153 );
Asa@3 154
Asa@3 155 hooksecurefunc (GameTooltip, "SetHyperlink",
Asa@3 156 function (tip, itemstring, num)
Asa@3 157 local name, link = GetItemInfo (itemstring);
Asa@3 158 ShowTipWithPricing (tip, link, num);
Asa@3 159 end
Asa@3 160 );
Asa@3 161
Asa@3 162 hooksecurefunc (ItemRefTooltip, "SetHyperlink",
Asa@3 163 function (tip, itemstring)
Asa@3 164 local name, link = GetItemInfo (itemstring);
Asa@3 165 ShowTipWithPricing (tip, link);
Asa@3 166 end
Asa@3 167 );