vanilla-wow-addons – Rev 1
?pathlinks?
-- update code by Brodrick (aka Kirov)
-- database based off of one posted here http://ui.worldofwar.net/users.php?id=163022, cleaned up duplicated links.
local function CopyTable(copyTable)
if ( not copyTable ) then return; end
if ( type(copyTable) ~= "table" ) then
return copyTable;
end
local returnTable = {};
for k, v in copyTable do
if type(v) == "table" then
returnTable[k] = CopyTable(v);
else
returnTable[k] = v;
end
end
return returnTable;
end
function UpdateLootLinkDB()
ScriptErrors:Hide();
LootLinkAddDB_Frame:Hide();
if ( LootLinkState["DataVersion"] == 110 ) then
if ( not LLDBItemLinks ) then
message( "This has already been run once this session, it cannot be run a second time. Reenable mod and reload if you really want to use it again." );
return;
end
local items, newitems, newvals, servers = 0, 0, 0;
if ( not LLS_SPOOF ) then
DEFAULT_CHAT_FRAME:AddMessage("LootLinkAddDB: Using LootLink Enhanced!");
if ( LootLinkState.ServerNamesToIndices ) then
for k, v in LootLinkState.ServerNamesToIndices do
if ( servers ) then
servers = servers.." "..v;
else
servers = v;
end
end
end
end
for k, v in LLDBItemLinks do
items = items+1;
if ( not ItemLinks[k] ) then
ItemLinks[k] = CopyTable(v);
newitems = newitems + 1;
if ( servers ) then
ItemLinks[k].s = servers;
end
else
for key, val in LLDBItemLinks[k] do
if ( key == "s" and servers ) then
ItemLinks[k].s = servers;
elseif ( key == "m" and LSS_SPOOF ) then
ItemLinks[k].m = CopyTable(val);
newitems = newitems + getn(val);
elseif ( key == "t" ) then
if ( ItemLinks[k].t and ItemLinks[k].t == "" ) then
ItemLinks[k].t = val;
newvals = newvals + 1;
end
elseif ( not ItemLinks[k][key] ) then
ItemLinks[k][key] = CopyTable(val);
newvals = newvals + 1;
end
end
end
end
LootLinkAddDB_Saved = 1;
message( "|cffffffffDone updating LootLink 1.9+\n"..newitems.." new items added\nLootLink Database Adder should be removed or disabled." )
DEFAULT_CHAT_FRAME:AddMessage("LootLinkAddDB: "..newitems.." new items added, updated "..newvals.." existing items with missing information.")
LLDBItemLinks = nil;
else
message( "Your LootLink is the wrong version, this addon will only work with LootLink 1.9 and compatible versions." );
end
end