vanilla-wow-addons – Rev 1
?pathlinks?
local SlotIdText = {
[1] = "HeadSlot",
[2] = "NeckSlot",
[3] = "ShoulderSlot",
[4] = "ShirtSlot",
[5] = "ChestSlot",
[6] = "WaistSlot",
[7] = "LegsSlot",
[8] = "FeetSlot",
[9] = "WristSlot",
[10] = "HandsSlot",
[11] = "Finger0Slot",
[12] = "Finger1Slot",
[13] = "Trinket0Slot",
[14] = "Trinket1Slot",
[15] = "BackSlot",
[16] = "MainHandSlot",
[17] = "SecondaryHandSlot",
[18] = "RangedSlot",
[19] = "TabardSlot",
};
-- [19] = "AmmoSlot",
GuildAdsInspect = {};
local function DEBUG_MSG(msg)
if (GUILDADS_DEBUG)
then
ChatFrame1:AddMessage(msg, 0.9, 0.9, 0.7);
end
end
function GuildAdsInspectItemSlotButton_OnClick(button)
if ( button == "LeftButton" ) then
if ( IsShiftKeyDown() ) then
if ( ChatFrameEditBox:IsVisible() ) then
ChatFrameEditBox:Insert(GuildAdsInspect[this:GetID()]);
end
end
end
end
function GuildAdsInspectItemSlotButton_OnEnter()
if (GuildAdsInspect[this:GetID()] ~= nil) then
GuildAdsInspect_SetTooltipItem(GuildAdsInspect[this:GetID()]);
end
end
function GuildAdsInspectItemSlotButton_OnLeave()
GameTooltip:Hide();
end
function GuildAdsInspect_SetAuthor(author, title)
GuildAdsInspectName:SetText(author);
GuildAdsInspectTitle:SetText(title);
GuildAdsInspectTime:SetText("");
GuildAdsInspectAuthor = author;
for slot=1,19,1 do
GuildAdsInspectItemSlotButton_Update(author, slot, nil, nil, 0);
end
GuildAdsInspectFrame:Show();
end
function GuildAdsInspect_SetTime(author, inspectTime)
if (author ~= GuildAdsInspectAuthor) then
return;
end
GuildAdsInspectTime:SetText(inspectTime);
end
function GuildAdsInspectItemSlotButton_OnLoad()
local slotName = this:GetName();
local id;
local textureName;
id, textureName = GetInventorySlotInfo(strsub(slotName,16));
this:SetID(id);
local texture = getglobal(slotName.."IconTexture");
texture:SetTexture(textureName);
this.backgroundTextureName = textureName;
end
function GuildAdsInspect_SetTooltipItem(itemRef)
GameTooltip:SetOwner(this, "ANCHOR_RIGHT");
if (itemRef) then
GameTooltip:SetHyperlink(itemRef);
GuildAds_GameTooltip_AddTT(nil, itemRef, nil, 1);
end
end
function GuildAdsInspectItemSlotButton_Update(author, slot, itemRef, textureName, count)
if (author ~= GuildAdsInspectAuthor) then
return;
end
DEBUG_MSG("[GuildAdsInspectItemSlotButton_Update] slot: "..slot);
button = getglobal("GuildAdsInspect"..SlotIdText[slot]);
if ( textureName ) then
SetItemButtonTexture(button, textureName);
SetItemButtonCount(button, count);
GuildAdsInspect[slot]= itemRef;
else
SetItemButtonTexture(button, button.backgroundTextureName);
SetItemButtonCount(button, 0);
GuildAdsInspect[slot] = nil;
end
if ( GameTooltip:IsOwned(button) ) then
if ( textureName ) then
GuildAdsInspect_SetTooltipItem(itemRef);
else
GameTooltip:Hide();
end
end
end
function GuildAdsInspectUser(user)
-- Init GuildAdsInspect
local title = GuildAds_GetPlayerInfo(user);
GuildAdsInspect_SetAuthor(user, title);
GuildAdsInspect_SetTime(user, "");
-- Set inventory to the cache value
timeToSet = true;
local inventory = GAS_ProfileGetInventory(user);
for slot, data in inventory do
if (slot == "creationtime") then
GuildAdsInspect_SetTime(user, GAS_timeToString(data));
else
GuildAdsInspectItemSlotButton_Update(user, slot, data.ref, data.texture, data.count);
end
end
-- Send inspect request
GAC_SendRequestInspect(user);
end
Generated by GNU Enscript 1.6.5.90.