vanilla-wow-addons – Rev 1
?pathlinks?
--[[
Ludwig_SellValue -
Originally based on SellValueLite, this addon allows viewing of sellvalues
--]]
local currentPlayer = UnitName("player")
--[[ Local Functions ]]--
local function LinkToID(link)
if link then
local _, _, id = string.find(link, "(%d+):");
return tonumber(id);
end
end
local function AddOwners(frame, id)
if not(frame and id and BagnonSets.showForeverTooltips) then return; end
for player in BagnonDB.GetPlayers() do
if player ~= currentPlayer then
local invCount = BagnonDB.GetItemTotal(id, player, -2)
for bagID = 0, 4 do
invCount = invCount + BagnonDB.GetItemTotal(id, player, bagID)
end
local bankCount = BagnonDB.GetItemTotal(id, player, -1)
for bagID = 5, 10 do
bankCount = bankCount + BagnonDB.GetItemTotal(id, player, bagID)
end
if (invCount + bankCount) > 0 then
local tooltipString = player .. " has"
if invCount > 0 then
tooltipString = tooltipString .. " " .. invCount .. " (Bags)";
end
if bankCount > 0 then
tooltipString = tooltipString .. " " .. bankCount .. " (Bank)";
end
frame:AddLine(tooltipString, 0, 0.8, 1);
end
end
end
end
--[[ Function Hooks ]]--
local Blizz_ContainerFrameItemButton_OnEnter = ContainerFrameItemButton_OnEnter;
ContainerFrameItemButton_OnEnter = function()
Blizz_ContainerFrameItemButton_OnEnter();
local bag = this:GetParent():GetID();
local slot = this:GetID();
AddOwners(GameTooltip, LinkToID(GetContainerItemLink(bag, slot)));
GameTooltip:Show();
end
local Bliz_GameTooltip_SetLootItem = GameTooltip.SetLootItem;
GameTooltip.SetLootItem = function(self, slot)
Bliz_GameTooltip_SetLootItem(self, slot);
AddOwners(self, LinkToID(GetLootSlotLink(slot)));
self:Show();
end
local Bliz_SetHyperlink = GameTooltip.SetHyperlink;
GameTooltip.SetHyperlink = function(self, link, count)
if link then
Bliz_SetHyperlink(self, link, count);
if not count then
count = 1;
end
local id = LinkToID(link);
if id then
AddOwners(self, id);
else
AddOwners(self, link);
end
self:Show();
end
end
local Bliz_GameTooltip_SetLootRollItem = GameTooltip.SetLootRollItem;
GameTooltip.SetLootRollItem = function(self, rollID)
Bliz_GameTooltip_SetLootRollItem(self, rollID);
AddOwners(self, LinkToID(GetLootRollItemLink(rollID)));
self:Show();
end
local Bliz_SetItemRef = SetItemRef;
SetItemRef = function(link, text, button)
Bliz_SetItemRef(link, text, button);
AddOwners(ItemRefTooltip, LinkToID(link));
ItemRefTooltip:Show();
end
local Bliz_GameTooltip_SetAuctionItem = GameTooltip.SetAuctionItem;
GameTooltip.SetAuctionItem = function(self, type, index)
Bliz_GameTooltip_SetAuctionItem(self, type, index);
AddOwners(self, LinkToID(GetAuctionItemLink(type, index)));
self:Show();
end
--[[ Money Frame Tooltip ]]--
--Alters the tooltip of bagnon moneyframes to show total gold across all characters on the current realm
function BagnonFrameMoney_OnEnter()
if this:GetLeft() > (UIParent:GetRight() / 2) then
GameTooltip:SetOwner(this, "ANCHOR_LEFT");
else
GameTooltip:SetOwner(this, "ANCHOR_RIGHT");
end
GameTooltip:SetText(string.format(BAGNON_FOREVER_MONEY_ON_REALM, GetRealmName()));
local money = 0;
for player in BagnonDB.GetPlayers() do
money = money + BagnonDB.GetMoney(player);
end
SetTooltipMoney(GameTooltip, money);
GameTooltip:Show();
end
Generated by GNU Enscript 1.6.5.90.