diff --git a/AtlasLoot/Core/AtlasLoot.lua b/AtlasLoot/Core/AtlasLoot.lua
index 3999b81..7bc901a 100644
--- a/AtlasLoot/Core/AtlasLoot.lua
+++ b/AtlasLoot/Core/AtlasLoot.lua
@@ -472,7 +472,6 @@ function AtlasLoot_ShowItemsFrame(dataID, dataSource, boss, pFrame, tablenum)
local itemName, itemLink, itemQuality, itemLevel, itemType, itemSubType, itemCount, itemEquipLoc, itemTexture, itemColor;
local iconFrame, nameFrame, extraFrame, itemButton;
local text, extra;
- local wlPage, wlPageMax = 1, 1;
local isItem;
local spellName, spellIcon;
@@ -522,7 +521,11 @@ function AtlasLoot_ShowItemsFrame(dataID, dataSource, boss, pFrame, tablenum)
--Check for a valid object (that it exists, and that it has a name
if(dataSource[dataID][tablenum][i] ~= nil and dataSource[dataID][tablenum][i][4] ~= "") then
local itemDif = ItemindexID;
- IDfound = AL_FindId(dataSource[dataID][tablenum][i][2], min(AtlasLoot_Difficulty:getMaxDifficulty(dataSource[dataID].Type), itemDif)) or dataSource[dataID][tablenum][i][2];
+ if type(ItemindexID) == "string" then
+ IDfound = dataSource[dataID][tablenum][i][2];
+ else
+ IDfound = AL_FindId(dataSource[dataID][tablenum][i][2], min(AtlasLoot_Difficulty:getMaxDifficulty(dataSource[dataID].Type), itemDif)) or dataSource[dataID][tablenum][i][2];
+ end
if string.sub(IDfound, 1, 1) == "s" then
isItem = false;
IDfound = AL_FindId(dataSource[dataID][tablenum][i][2], itemDif) or dataSource[dataID][tablenum][i][2];
@@ -988,7 +991,9 @@ function AtlasLoot_QueryLootPage()
local item = Item:CreateFromID(queryitem);
if not (item:GetInfo()) then
item:ContinueOnLoad(function(itemId)
- AtlasLoot:callShowloot();
+ if i == 30 then
+ AtlasLoot:callShowloot();
+ end
end)
end
end
diff --git a/AtlasLoot/Core/AtlasLoot.xml b/AtlasLoot/Core/AtlasLoot.xml
index 6d18b3d..6e47d48 100644
--- a/AtlasLoot/Core/AtlasLoot.xml
+++ b/AtlasLoot/Core/AtlasLoot.xml
@@ -13,8 +13,7 @@
-
-
+
diff --git a/AtlasLoot/Core/Atlasloot_Maps.lua b/AtlasLoot/Core/Atlasloot_Maps.lua
new file mode 100644
index 0000000..5af1520
--- /dev/null
+++ b/AtlasLoot/Core/Atlasloot_Maps.lua
@@ -0,0 +1,34 @@
+local AL = LibStub("AceLocale-3.0"):GetLocale("AtlasLoot");
+
+function AtlasLoot_MapOnShow()
+ if AtlasLootDefaultFrame_Map:IsVisible() then
+ AtlasLootDefaultFrame_Map:Hide();
+ AtlasLootDefaultFrame_LootBackground:Show();
+ AtlasLoot_BackButton_OnClick();
+ AtlasLoot_BossName:Show();
+ else
+ local map = AtlasLootItemsFrame.refresh[2][AtlasLootItemsFrame.refresh[1]].Map;
+ if map then
+ AtlasLoot_BossName:Hide();
+ --Ditch the Quicklook selector
+ AtlasLoot_QuickLooks:Hide();
+ AtlasLootQuickLooksButton:Hide();
+ -- Hide the Filter Check-Box
+ AtlasLootFilterCheck:Hide();
+ --Hide navigation buttons by default, only show what we need
+ getglobal("AtlasLootItemsFrame_BACK"):Hide();
+ getglobal("AtlasLootItemsFrame_NEXT"):Hide();
+ getglobal("AtlasLootItemsFrame_PREV"):Hide();
+ AtlasLootDefaultFrame_LootBackground:Hide();
+ --Hide UI objects so that only needed ones are shown
+ for i = 1, 30, 1 do
+ getglobal("AtlasLootItem_"..i.."_Unsafe"):Hide();
+ getglobal("AtlasLootItem_"..i):Hide();
+ getglobal("AtlasLootItem_"..i).itemID = 0;
+ getglobal("AtlasLootItem_"..i).spellitemID = 0;
+ end
+ AtlasLootDefaultFrame_Map:SetBackdrop({bgFile = "Interface\\AddOns\\Atlas\\Images\\Maps\\"..map});
+ AtlasLootDefaultFrame_Map:Show();
+ end
+ end
+end
\ No newline at end of file
diff --git a/AtlasLoot/Core/HooksandAPI.lua b/AtlasLoot/Core/HooksandAPI.lua
deleted file mode 100644
index 4417d51..0000000
--- a/AtlasLoot/Core/HooksandAPI.lua
+++ /dev/null
@@ -1,297 +0,0 @@
---[[
-File containing all the Atlas replacement functions and the External API
-]]
-
-local AL = LibStub("AceLocale-3.0"):GetLocale("AtlasLoot");
-
--- Colours stored for code readability
-local GREY = "|cff999999";
-local RED = "|cffff0000";
-local WHITE = "|cffFFFFFF";
-local GREEN = "|cff1eff00";
-local PURPLE = "|cff9F3FFF";
-local BLUE = "|cff0070dd";
-local ORANGE = "|cffFF8400";
-
---Establish number of boss lines in the Atlas frame for scrolling
-local ATLAS_LOOT_BOSS_LINES = 24;
-
---[[
-AtlasLoot_Atlas_OnShow:
-Hooks Atlas_OnShow() to add extra setup routines that AtlasLoot needs for
-integration purposes.
-]]
-function AtlasLoot_Atlas_OnShow()
- Atlas_Refresh();
-
- --We don't want Atlas and the Loot Browser open at the same time, so the Loot Browser is close
- if AtlasLootDefaultFrame then
- AtlasLootDefaultFrame:Hide();
- end
- --Call the Atlas function
- Hooked_Atlas_OnShow();
- --If we were looking at a loot table earlier in the session, it is still
- --saved on the item frame, so restore it in Atlas
- if AtlasLootItemsFrame.activeBoss ~= nil then
- AtlasLootItemsFrame:Show();
- else
- --If no loot table is selected, set up icons next to boss names
- for i=1,ATLAS_CUR_LINES do
- if (getglobal("AtlasEntry"..i.."_Selected") and getglobal("AtlasEntry"..i.."_Selected"):IsVisible()) then
- getglobal("AtlasEntry"..i.."_Loot"):Show();
- getglobal("AtlasEntry"..i.."_Selected"):Hide();
- end
- end
- end
- --Consult the saved variable table to see whether to show the bottom panel
- if AtlasLoot.db.profile.HidePanel == true then
- AtlasLootPanel:Hide();
- else
- AtlasLootPanel:Show();
- end
- pFrame = AtlasFrame;
-end
-
---[[
-AtlasLoot_Refresh:
-Replacement for Atlas_Refresh, required as the template for the boss buttons in Atlas is insufficient
-Called whenever the state of Atlas changes
-]]
-function AtlasLoot_Refresh()
- --Reset which loot page is 'current'
- AtlasLootItemsFrame.activeBoss = nil;
-
- --Get map selection info from Atlas
- local zoneID = ATLAS_DROPDOWNS[AtlasOptions.AtlasType][AtlasOptions.AtlasZone];
- local data = AtlasMaps;
- local base = {};
-
- --Get boss name information
- for k,v in pairs(data[zoneID]) do
- base[k] = v;
- end
-
- --Display the newly selected texture
- AtlasMap:ClearAllPoints();
- AtlasMap:SetWidth(512);
- AtlasMap:SetHeight(512);
- AtlasMap:SetPoint("TOPLEFT", "AtlasFrame", "TOPLEFT", 18, -84);
- local builtIn = AtlasMap:SetTexture("Interface\\AddOns\\Atlas\\Images\\Maps\\"..zoneID);
-
- --If texture was not found in the core Atlas mod, check plugins
- if ( not builtIn ) then
- for k,v in pairs(ATLAS_PLUGINS) do
- if ( AtlasMap:SetTexture("Interface\\AddOns\\"..v.."\\Images\\"..zoneID) ) then
- break;
- end
- end
- end
-
- --Setup info panel above boss listing
- local tName = base.ZoneName[1];
- if ( AtlasOptions.AtlasAcronyms and base.Acronym ~= nil) then
- local _RED = "|cffcc6666";
- tName = tName.._RED.." ["..base.Acronym.."]";
- end
- AtlasText_ZoneName_Text:SetText(tName);
-
- local tLoc = "";
- local tLR = "";
- local tML = "";
- local tPL = "";
- if ( base.Location ) then
- tLoc = ATLAS_STRING_LOCATION..": "..base.Location[1];
- end
- if ( base.LevelRange ) then
- tLR = ATLAS_STRING_LEVELRANGE..": "..base.LevelRange;
- end
- if ( base.MinLevel ) then
- tML = ATLAS_STRING_MINLEVEL..": "..base.MinLevel;
- end
- if ( base.PlayerLimit ) then
- tPL = ATLAS_STRING_PLAYERLIMIT..": "..base.PlayerLimit;
- end
- AtlasText_Location_Text:SetText(tLoc);
- AtlasText_LevelRange_Text:SetText(tLR);
- AtlasText_MinLevel_Text:SetText(tML);
- AtlasText_PlayerLimit_Text:SetText(tPL);
-
- Atlastextbase = base;
- --Get the size of the Atlas text to append stuff to the bottom. Looks for empty lines
- --[[
- local i = 1;
- local j = 2;
- while ( (Atlastextbase[i] ~= nil and Atlastextbase[i]~="") or (Atlastextbase[j] ~= nil and Atlastextbase[j]~="")) do
- i = i + 1;
- j = i + 1;
- end
- --Allow AtlasLoot to append any extra 'boss' entries needed to a map
- if AtlasLoot_ExtraText[zoneID] ~= nil then
- --Workaround for Old Hillsbrad, we don't want the Trash Mobs stuck under the 'flavour' NPCS
- if zoneID == "CoTOldHillsbrad" then
- Atlastextbase[22][1] = GREY..ATLASLOOT_INDENT..AL["Trash Mobs"];
- else
- for k,v in ipairs(AtlasLoot_ExtraText[zoneID]) do
- j = i + 1;
- --If the line after the empty line is not empty itself, all text below this point is shuffled down to make room
- if Atlastextbase[i]~=nil and Atlastextbase[i]~="" then
- Atlastextbase[j] = Atlastextbase[i];
- end
- Atlastextbase[i]={v, nil, nil};
- i = i + 1;
- end
- Atlastextbase[i]={"", nil, nil};
- end
- end
- ]]--
- if AtlasLoot_ExtraText[zoneID] and #Atlastextbase and #Atlastextbase > 0 then
- local numContent = #Atlastextbase
- -- add the extra lines
- for i = 1,#AtlasLoot_ExtraText[zoneID]+1 do
- Atlastextbase[numContent+i] = {"", nil, nil}
- end
- for k,v in ipairs(AtlasLoot_ExtraText[zoneID]) do
- numContent = numContent + 1
- Atlastextbase[numContent] = {v, nil, nil}
- end
- Atlastextbase[numContent+2]={"", nil, nil}
- end
-
-
-
- --Hide any Atlas objects lurking around that have now been replaced
- for i=1,ATLAS_CUR_LINES do
- if ( getglobal("AtlasEntry"..i) ) then
- getglobal("AtlasEntry"..i):Hide();
- end
- end
-
- ATLAS_DATA = Atlastextbase;
- ATLAS_SEARCH_METHOD = data.Search;
- --Deal with Atlas's search function
- if ( data.Search == nil ) then
- ATLAS_SEARCH_METHOD = AtlasSimpleSearch;
- end
-
- if ( data.Search ~= false ) then
- AtlasSearchEditBox:Show();
- AtlasNoSearch:Hide();
- else
- AtlasSearchEditBox:Hide();
- AtlasNoSearch:Show();
- ATLAS_SEARCH_METHOD = nil;
- end
-
- --populate the scroll frame entries list, the update func will do the rest
- Atlas_Search("");
- AtlasSearchEditBox:SetText("");
- AtlasSearchEditBox:ClearFocus();
-
- --create and align any new entry buttons that we need
- for i=1,ATLAS_CUR_LINES do
- local f;
- if (not getglobal("AtlasBossLine"..i)) then
- f = CreateFrame("Button", "AtlasBossLine"..i, AtlasFrame, "AtlasLootNewBossLineTemplate");
- f:SetFrameStrata("HIGH");
- if i==1 then
- f:SetPoint("TOPLEFT", "AtlasScrollBar", "TOPLEFT", 16, -3);
- else
- f:SetPoint("TOPLEFT", "AtlasBossLine"..(i-1), "BOTTOMLEFT");
- end
- else
- getglobal("AtlasBossLine"..i.."_Loot"):Hide();
- getglobal("AtlasBossLine"..i.."_Selected"):Hide();
- end
- end
-
- --Hide the loot frame now that a pristine Atlas instance is created
- AtlasLootItemsFrame:Hide();
- Atlas_Search("");
- --Make sure the scroll bar is correctly offset
- AtlasLoot_AtlasScrollBar_Update();
-
- --see if we should display the entrance/instance button or not, and decide what it should say
- local matchFound = {nil};
- local sayEntrance = nil;
- for k,v in pairs(Atlas_EntToInstMatches) do
- if ( k == zoneID ) then
- matchFound = v;
- sayEntrance = false;
- end
- end
- if ( not matchFound[1] ) then
- for k,v in pairs(Atlas_InstToEntMatches) do
- if ( k == zoneID ) then
- matchFound = v;
- sayEntrance = true;
- end
- end
- end
-
- --set the button's text, populate the dropdown menu, and show or hide the button
- if ( matchFound[1] ~= nil ) then
- ATLAS_INST_ENT_DROPDOWN = {};
- for k,v in pairs(matchFound) do
- table.insert(ATLAS_INST_ENT_DROPDOWN, v);
- end
- table.sort(ATLAS_INST_ENT_DROPDOWN, AtlasSwitchDD_Sort);
- if ( sayEntrance ) then
- AtlasSwitchButton:SetText(ATLAS_ENTRANCE_BUTTON);
- else
- AtlasSwitchButton:SetText(ATLAS_INSTANCE_BUTTON);
- end
- AtlasSwitchButton:Show();
- UIDropDownMenu_Initialize(AtlasSwitchDD, AtlasSwitchDD_OnLoad);
- else
- AtlasSwitchButton:Hide();
- end
-
- if ( TitanPanelButton_UpdateButton ) then
- TitanPanelButton_UpdateButton("Atlas");
- end
-end
-
-
---[[
-AtlasLoot_AtlasScrollBar_Update:
-Hooks the Atlas scroll frame.
-Required as the Atlas function cannot deal with the AtlasLoot button template or the added Atlasloot entries
-]]
-function AtlasLoot_AtlasScrollBar_Update()
- local line, lineplusoffset;
- if (getglobal("AtlasBossLine1_Text") ~= nil) then
- local zoneID = ATLAS_DROPDOWNS[AtlasOptions.AtlasType][AtlasOptions.AtlasZone];
- --Update the contents of the Atlas scroll frame
- FauxScrollFrame_Update(AtlasScrollBar,ATLAS_CUR_LINES,ATLAS_LOOT_BOSS_LINES,15);
- --Make note of how far in the scroll frame we are
- for line=1,ATLAS_NUM_LINES do
- lineplusoffset = line + FauxScrollFrame_GetOffset(AtlasScrollBar);
- if ( lineplusoffset <= ATLAS_CUR_LINES ) then
- getglobal("AtlasBossLine"..line.."_Text"):SetText(ATLAS_SCROLL_LIST[lineplusoffset]);
- if AtlasLootItemsFrame.activeBoss == lineplusoffset then
- getglobal("AtlasBossLine"..line.."_Loot"):Hide();
- getglobal("AtlasBossLine"..line.."_Selected"):Show();
- elseif (AtlasLootBossButtons[zoneID]~=nil and AtlasLootBossButtons[zoneID][lineplusoffset] ~= nil and AtlasLootBossButtons[zoneID][lineplusoffset] ~= "") then
- getglobal("AtlasBossLine"..line.."_Loot"):Show();
- getglobal("AtlasBossLine"..line.."_Selected"):Hide();
- elseif (AtlasLootWBBossButtons[zoneID]~=nil and AtlasLootWBBossButtons[zoneID][lineplusoffset] ~= nil and AtlasLootWBBossButtons[zoneID][lineplusoffset] ~= "") then
- getglobal("AtlasBossLine"..line.."_Loot"):Show();
- getglobal("AtlasBossLine"..line.."_Selected"):Hide();
- elseif (AtlasLootBattlegrounds[zoneID]~=nil and AtlasLootBattlegrounds[zoneID][lineplusoffset] ~= nil and AtlasLootBattlegrounds[zoneID][lineplusoffset] ~= "") then
- getglobal("AtlasBossLine"..line.."_Loot"):Show();
- getglobal("AtlasBossLine"..line.."_Selected"):Hide();
- else
- getglobal("AtlasBossLine"..line.."_Loot"):Hide();
- getglobal("AtlasBossLine"..line.."_Selected"):Hide();
- end
- getglobal("AtlasBossLine"..line).idnum = lineplusoffset;
- getglobal("AtlasBossLine"..line):Show();
- elseif ( getglobal("AtlasBossLine"..line) ) then
- --Hide lines that are not needed
- getglobal("AtlasBossLine"..line):Hide();
- end
- end
- else
- Hooked_AtlasScrollBar_Update();
- end
-end
\ No newline at end of file
diff --git a/AtlasLoot/DefaultFrame/AtlaslootDefaultFrameCreate.lua b/AtlasLoot/DefaultFrame/AtlaslootDefaultFrameCreate.lua
index 1afd5bf..64f69f0 100644
--- a/AtlasLoot/DefaultFrame/AtlaslootDefaultFrameCreate.lua
+++ b/AtlasLoot/DefaultFrame/AtlaslootDefaultFrameCreate.lua
@@ -1,7 +1,7 @@
local AL = LibStub("AceLocale-3.0"):GetLocale("AtlasLoot");
--Main AtlasLoot Frame
-local mainframe = CreateFrame("FRAME", "AtlasLootDefaultFrame", UIParent, nil);
+local mainframe = CreateFrame("FRAME", "AtlasLootDefaultFrame", UIParent);
mainframe:SetPoint("CENTER",0,0);
mainframe:SetSize(880,690);
mainframe:EnableMouse(true);
@@ -21,7 +21,6 @@ local mainframe = CreateFrame("FRAME", "AtlasLootDefaultFrame", UIParent, nil);
titleSize = 32,
});
mainframe:SetScript("OnShow", function()
- getglobal("AtlasLootDefaultFrame_Notice"):SetText(AL["This is a loot browser only. To view maps as well, install either Atlas or Alphamap."]);
AtlasLootDefaultFrame_OnShow();
end);
mainframe:SetScript("OnHide", function() AtlasLootDefaultFrame_OnHide() end)
@@ -133,11 +132,18 @@ local expansionmenubtn = CreateFrame("Button", "AtlasLootDefaultFrame_ExpansionM
local lootbground = CreateFrame("Frame", "AtlasLootDefaultFrame_LootBackground", AtlasLootDefaultFrame);
lootbground:SetSize(540,515);
lootbground:SetPoint("BOTTOMLEFT", AtlasLootDefaultFrame, "BOTTOMLEFT",40,90);
+ lootbground:SetFrameStrata("HIGH");
lootbground.Back = lootbground:CreateTexture("AtlasLootDefaultFrame_LootBackground_Back", "BACKGROUND");
lootbground.Back:SetAllPoints();
lootbground.Back:SetPoint("TOPLEFT","AtlasLootDefaultFrame_LootBackground","TOPLEFT");
lootbground.Back:SetPoint("BOTTOMRIGHT","AtlasLootDefaultFrame_LootBackground","BOTTOMRIGHT");
- lootbground:SetBackdropColor(0, 0, 0.5, 0.5);
+
+ --Atlas Map
+local map = CreateFrame("Frame", "AtlasLootDefaultFrame_Map", AtlasLootDefaultFrame);
+ map:SetSize(540,515);
+ map:SetPoint("BOTTOMLEFT", AtlasLootDefaultFrame, "BOTTOMLEFT",40,90);
+ map:SetFrameStrata("HIGH");
+ map:Hide();
--Wish List Button
local wishbtn = CreateFrame("Button", "AtlasLootDefaultFrameWishListButton", AtlasLootDefaultFrame, "OptionsButtonTemplate");
@@ -184,21 +190,22 @@ local function presetcreate(preset,num)
end
--QuickLook Button 1
+local presetsize = 3.75;
local preset1 = CreateFrame("Button", "AtlasLootDefaultFrame_Preset1", AtlasLootDefaultFrame, "OptionsButtonTemplate");
presetcreate(preset1,1);
- preset1:SetPoint("LEFT", AtlasLootDefaultFrameWishListButton, "RIGHT", 5, 0);
+ preset1:SetPoint("LEFT", AtlasLootDefaultFrameWishListButton, "RIGHT", presetsize, 0);
--QuickLook Button 2
local preset2 = CreateFrame("Button", "AtlasLootDefaultFrame_Preset2", AtlasLootDefaultFrame, "OptionsButtonTemplate");
presetcreate(preset2,2);
- preset2:SetPoint("LEFT", "AtlasLootDefaultFrame_Preset1", "RIGHT", 5, 0);
+ preset2:SetPoint("LEFT", "AtlasLootDefaultFrame_Preset1", "RIGHT", presetsize, 0);
--QuickLook Button 3
local preset3 = CreateFrame("Button", "AtlasLootDefaultFrame_Preset3", AtlasLootDefaultFrame, "OptionsButtonTemplate");
presetcreate(preset3,3);
- preset3:SetPoint("LEFT", "AtlasLootDefaultFrame_Preset2", "RIGHT", 5, 0);
+ preset3:SetPoint("LEFT", "AtlasLootDefaultFrame_Preset2", "RIGHT", presetsize, 0);
--QuickLook Button 4
local preset4 = CreateFrame("Button", "AtlasLootDefaultFrame_Preset4", AtlasLootDefaultFrame, "OptionsButtonTemplate");
presetcreate(preset4,4);
- preset4:SetPoint("LEFT", "AtlasLootDefaultFrame_Preset3", "RIGHT", 5, 0);
+ preset4:SetPoint("LEFT", "AtlasLootDefaultFrame_Preset3", "RIGHT", presetsize, 0);
--Search Edit Box
local searchbox = CreateFrame("EditBox","AtlasLootDefaultFrameSearchBox",AtlasLootDefaultFrame,"InputBoxTemplate");
@@ -439,12 +446,9 @@ subtableFrame.rows = rows2
-- Map Button
local mapbtn = CreateFrame("Button","AtlasLootDefaultFrame_MapButton", AtlasLootDefaultFrame,"UIPanelButtonTemplate2");
mapbtn:SetSize(95,32);
- mapbtn:SetPoint("BOTTOMLEFT",Atlasloot_SubTableFrame,0,-30);
+ mapbtn:SetPoint("BOTTOMLEFT",Atlasloot_SubTableFrame,0,-27.5);
mapbtn:SetScript("OnShow", function(self)
self:SetText("Map");
self:SetFrameLevel( (self:GetParent()):GetFrameLevel() + 1 );
end)
- mapbtn:SetScript("OnClick", function()
- AtlasLoot_AdvancedSearchShow();
- AtlasLootDefaultFrameSearchBox:ClearFocus();
- end)
+ mapbtn:SetScript("OnClick", function() AtlasLoot_MapOnShow(); end)
diff --git a/AtlasLoot/DefaultFrame/Atlasloot_Maps.lua b/AtlasLoot/DefaultFrame/Atlasloot_Maps.lua
deleted file mode 100644
index e69de29..0000000
diff --git a/AtlasLoot_BurningCrusade/burningcrusade.lua b/AtlasLoot_BurningCrusade/burningcrusade.lua
index 7ea03dd..77ed18b 100644
--- a/AtlasLoot_BurningCrusade/burningcrusade.lua
+++ b/AtlasLoot_BurningCrusade/burningcrusade.lua
@@ -1664,6 +1664,7 @@ local BabbleInventory = AtlasLoot_GetLocaleLibBabble("LibBabble-Inventory-3.0");
AtlasLoot_Data["Karazhan"] = {
Name = "Karazhan";
Type = "BCRaid";
+ Map = "KarazhanStart";
Loadfirst = 3;
{
Name = "Charred Bone Fragment ("..AL["Quest Item"]..")";