more detailed tooltips in buy tab

This commit is contained in:
Manuel Simon Hirsig
2015-09-29 20:54:08 +02:00
parent 6ad0a8da8a
commit 993e98ba9b
2 changed files with 24 additions and 31 deletions
+9 -14
View File
@@ -46,7 +46,7 @@ function AuxBuySearchButton_OnClick()
local stack_size = auction_item.charges or auction_item.count
if auction_item.name == search_query.name or name == '' or not AuxBuyExactCheckButton:GetChecked() then
record_auction(auction_item.name, auction_item.tooltip, stack_size, auction_item.buyout_price, auction_item.quality, auction_item.owner, auction_item.hyperlink)
record_auction(auction_item.name, auction_item.tooltip, stack_size, auction_item.buyout_price, auction_item.quality, auction_item.owner, auction_item.hyperlink, auction_item.itemstring)
end
end,
on_complete = function()
@@ -138,7 +138,7 @@ function AuxBuyBuySelectedButton_OnClick()
end
else
if auction_item.name == search_query.name then
record_auction(auction_item.name, auction_item.tooltip, stack_size, auction_item.buyout_price, auction_item.quality, auction_item.owner, auction_item.hyperlink)
record_auction(auction_item.name, auction_item.tooltip, stack_size, auction_item.buyout_price, auction_item.quality, auction_item.owner, auction_item.hyperlink, auction_item.itemstring)
end
end
end,
@@ -176,23 +176,17 @@ end
function AuxBuyEntry_OnEnter()
local i = this:GetID()
local entry = entries[i]
-- Aux.info.set_game_tooltip(this, entry.tooltip)
local _, _, item_string = strfind(entry.hyperlink, "^|%x+|H(.+)|h%[.+%]")
if item_string then
GameTooltip:SetOwner(this, "ANCHOR_RIGHT")
GameTooltip:SetHyperlink(item_string)
GameTooltip:Show()
if(EnhTooltip ~= nil) then
EnhTooltip.TooltipCall(GameTooltip, entry.name, entry.hyperlink, entry.quality, entry.stackSize)
end
Aux.info.set_game_tooltip(this, entry.tooltip)
if(EnhTooltip ~= nil) then
EnhTooltip.TooltipCall(GameTooltip, entry.name, entry.hyperlink, entry.quality, entry.stackSize)
end
end
-----------------------------------------
function record_auction(name, tooltip, stack_size, buyout_price, quality, owner, hyperlink)
function record_auction(name, tooltip, stack_size, buyout_price, quality, owner, hyperlink, itemstring)
entries = entries or {}
if buyout_price > 0 and owner ~= UnitName("player") then
@@ -204,6 +198,7 @@ function record_auction(name, tooltip, stack_size, buyout_price, quality, owner,
itemPrice = buyout_price / stack_size,
quality = quality,
hyperlink = hyperlink,
itemstring = itemstring,
})
end
+15 -17
View File
@@ -78,12 +78,8 @@ end
function Aux.info.set_game_tooltip(owner, tooltip)
GameTooltip:SetOwner(owner, "ANCHOR_RIGHT")
for i, line in ipairs(tooltip) do
snipe.log(line[1].text)
getglobal('GameTooltipTextLeft'..i):SetText(line[1].text)
getglobal('GameTooltipTextLeft'..i):SetTextColor(line[1].color[1], line[1].color[2], line[1].color[3], line[1].color[4])
getglobal('GameTooltipTextRight'..i):SetText(line[2].text)
getglobal('GameTooltipTextRight'..i):SetTextColor(line[2].color[1], line[2].color[2], line[2].color[3], line[2].color[4])
for _, line in ipairs(tooltip) do
GameTooltip:AddDoubleLine(line[1].text, line[2].text, line[1].r, line[1].b, line[1].g, line[2].r, line[2].b, line[2].g, true)
end
GameTooltip:Show()
end
@@ -100,12 +96,15 @@ function Aux.info.tooltip(setter)
local tooltip = {}
for i = 1, 30 do
local left_text = getglobal('AuxInfoTooltipTextLeft'..i):GetText()
local left_color = { getglobal('AuxInfoTooltipTextLeft'..i):GetTextColor() }
local right_text = getglobal('AuxInfoTooltipTextRight'..i):GetText()
local right_color = { getglobal('AuxInfoTooltipTextRight'..i):GetTextColor() }
local left, right = {}, {}
tinsert(tooltip, {{ text=left_text, color=left_color }, { text=right_text, color=right_color }})
left.text = getglobal('AuxInfoTooltipTextLeft'..i):GetText()
left.r, left.b, left.g = getglobal('AuxInfoTooltipTextLeft'..i):GetTextColor()
right.text = getglobal('AuxInfoTooltipTextRight'..i):GetText()
right.r, right.b, right.g = getglobal('AuxInfoTooltipTextRight'..i):GetTextColor()
tinsert(tooltip, {left, right})
end
for i = 1, 30 do
@@ -118,10 +117,8 @@ end
function item_charges(tooltip)
for _, line in ipairs(tooltip) do
local left_text = line[1].text or ''
local right_text = line[2].text or ''
local _, _, left_charges_string = strfind(left_text, "^(%d+) Charges")
local _, _, right_charges_string = strfind(right_text, "^(%d+) Charges$")
local _, _, left_charges_string = strfind(line[1].text or '', "^(%d+) Charges")
local _, _, right_charges_string = strfind(line[2].text or '', "^(%d+) Charges$")
local charges = tonumber(left_charges_string) or tonumber(right_charges_string)
if charges then
return charges
@@ -135,10 +132,11 @@ function item_id(hyperlink)
end
function hyperlink_item(hyperlink)
local name, link, quality, level, type, subtype, max_stack = GetItemInfo(item_id(hyperlink))
local name, itemstring, quality, level, type, subtype, max_stack = GetItemInfo(item_id(hyperlink))
return {
name = name,
hyperlink = link,
hyperlink = hyperlink,
itemstring = itemstring,
quality = quality,
level = level,
type = type,