1. #1
    Field Marshal Tactica's Avatar
    10+ Year Old Account
    Join Date
    Mar 2014
    Location
    9942 Apophis
    Posts
    87

    AtlasLoot_Source Replacement Addon

    I am looking for an alternative addon that does the same as AtlasLoot_Source in the sense that it will who where items drop from. Source does not have the MoP drops incorporated and I was wondering if anyone had an alternative suggestion. Mendeleev seems to lack MoP drop data too.

    - - - Updated - - -

    I did some more searching and testing to no avail but I will do some more this evening. To be a little more specific I am looking for an addon that will display where a transmog item (or item in general) drops from. It would be a excellent plus if the item tooltip displayed if the item was part of a transmog set.
    In a cult, there is a person at the top who knows it's a scam. In a religion, that person is dead.

  2. #2
    The authors of atlasloot were supposed to be implementing their own version, or so I vaguely recall.
    However that seemed to never happen.
    Quote Originally Posted by DeadmanWalking View Post
    Your forgot to include the part where we blame casuals for everything because blizzard is catering to casuals when casuals got jack squat for new content the entire expansion, like new dungeons and scenarios.
    Quote Originally Posted by Reinaerd View Post
    T'is good to see there are still people valiantly putting the "Ass" in assumption.

  3. #3
    So, MogIt might solve your problem. It is focused on showing all the xmog options, and then telling you where they can be found. It doesn't cover everything; non-xmog things won't be available, for example. However, I use it to plan outfits, and then figure out which of the models are available to me, and where to farm them. Works fine for that.

    So maybe it helps solve your problem. Unfortunately, it doesn't do the tooltip thing you asked for, but there is a mod that adds all the transmog sets from wowhead to the database, so they are available to you. Again, you would start from the set, then go to the items, rather than items to set.

    Oh, it will show you "wishlist" items in the tooltip -- I wishlisted the random drops I wanted, and get those highlighted. Ditto quest rewards. First action on a new toon, in fact, is to wishlist those awesome quest reward items before I do any quests, so I don't lock myself out of them by accident.

  4. #4
    Field Marshal Tactica's Avatar
    10+ Year Old Account
    Join Date
    Mar 2014
    Location
    9942 Apophis
    Posts
    87
    Quote Originally Posted by SlippyCheeze View Post
    So, MogIt might solve your problem.
    I didn't see the sets module last night and just tried it. Perfect!

    - - - Updated - - -

    Quote Originally Posted by SlippyCheeze View Post
    Unfortunately, it doesn't do the tooltip thing you asked for, but there is a mod that adds all the transmog sets from wowhead to the database, so they are available to you. Again, you would start from the set, then go to the items, rather than items to set...
    Where would this "mod" be? Seems the MogIt_Sets module is missing quite a few sets. Would be nice to scrape the data to add in the code...without having to parse all the set data!

    - - - Updated - - -

    I found the MogIt_Wowhead module, but since servers are down I will test later today. Question in the meantime...would it be possible to modify the tooltip so that if one were to mouseover a xmog item in their bag it would tell them what transmog "set" it belonged to? Code below for reference:
    Code:
    local MogIt,mog = ...;
    local L = mog.L;
    
    local IsDressableItem = IsDressableItem;
    local GetScreenWidth = GetScreenWidth;
    local GetScreenHeight = GetScreenHeight;
    
    local class = L.classBits[select(2,UnitClass("PLAYER"))];
    
    
    --// Tooltip
    mog.tooltip = CreateFrame("Frame","MogItTooltip",UIParent,"TooltipBorderedFrameTemplate");
    mog.tooltip:Hide();
    mog.tooltip:SetClampedToScreen(true);
    mog.tooltip:SetFrameStrata("TOOLTIP");
    
    mog.tooltip:SetScript("OnShow",function(self)
    	if mog.db.profile.tooltipMouse and not InCombatLockdown() then
    		SetOverrideBinding(mog.tooltip,true,"MOUSEWHEELUP","MogIt_TooltipScrollUp");
    		SetOverrideBinding(mog.tooltip,true,"MOUSEWHEELDOWN","MogIt_TooltipScrollDown");
    	end
    end);
    
    mog.tooltip:SetScript("OnHide",function(self)
    	if not InCombatLockdown() then
    		ClearOverrideBindings(mog.tooltip);
    	end
    end);
    
    mog.tooltip:SetScript("OnEvent", function(self, event, arg1)
    	if event == "PLAYER_LOGIN" then
    		mog.tooltip.model:SetUnit("PLAYER");
    	elseif event == "PLAYER_REGEN_DISABLED" then
    		ClearOverrideBindings(mog.tooltip);
    	elseif event == "PLAYER_REGEN_ENABLED" then
    		if self:IsShown() and mog.db.profile.tooltipMouse then
    			SetOverrideBinding(mog.tooltip,true,"MOUSEWHEELUP","MogIt_TooltipScrollUp");
    			SetOverrideBinding(mog.tooltip,true,"MOUSEWHEELDOWN","MogIt_TooltipScrollDown");
    		end
    	elseif event == "ADDON_LOADED" then
    		if arg1 == "AtlasLoot" then
    			mog.tooltip.hookAtlasLoot();
    		end
    	end
    end);
    mog.tooltip:RegisterEvent("PLAYER_LOGIN");
    mog.tooltip:RegisterEvent("PLAYER_REGEN_DISABLED");
    mog.tooltip:RegisterEvent("PLAYER_REGEN_ENABLED");
    mog.tooltip:RegisterEvent("ADDON_LOADED");
    --//
    
    
    --// Model
    mog.tooltip.model = CreateFrame("DressUpModel",nil,mog.tooltip);
    mog.tooltip.model:SetPoint("TOPLEFT",mog.tooltip,"TOPLEFT",5,-5);
    mog.tooltip.model:SetPoint("BOTTOMRIGHT",mog.tooltip,"BOTTOMRIGHT",-5,5);
    
    function mog.tooltip.ShowItem(self)
    	local _,itemLink = self:GetItem();
    	if not itemLink then
    		return;
    	end
    	local itemID = tonumber(itemLink:match("item:(%d+)"));
    	
    	local db = mog.db.profile
    	if db.tooltip and (not mog.tooltip.mod[db.tooltipMod] or mog.tooltip.mod[db.tooltipMod]()) then
    		if not self[mog] then
    			if mog.tooltip.item ~= itemLink then
    				mog.tooltip.item = itemLink;
    				local token = mog.tokens[itemID];
    				if token then
    					for item, classBit in pairs(token) do
    						if bit.band(class, classBit) > 0 then
    							itemLink = item;
    							break;
    						end
    					end
    				end
    				local slot = select(9,GetItemInfo(itemLink));
    				if (not db.tooltipMog or select(3, GetItemTransmogrifyInfo(itemLink))) and mog.tooltip.slots[slot] and IsDressableItem(itemLink) then
    					mog.tooltip.model:SetFacing(mog.tooltip.slots[slot]-(db.tooltipRotate and 0.5 or 0));
    					mog.tooltip:Show();
    					mog.tooltip.owner = self;
    					--if mog.global.tooltipAnchor then
    						mog.tooltip.repos:Show();
    					--else
    					--	mog.tooltip:ClearAllPoints();
    					--	mog.tooltip:SetPoint("BOTTOMRIGHT","UIParent","BOTTOMRIGHT",-CONTAINER_OFFSET_X - 13,CONTAINER_OFFSET_Y);
    					--end
    					if db.tooltipDress then
    						mog.tooltip.model:Dress();
    					else
    						mog.tooltip.model:Undress();
    					end
    					mog.tooltip.model:TryOn(itemLink);
    				else
    					mog.tooltip:Hide();
    				end
    			end
    		else
    			-- mog.tooltip:Hide();
    		end
    	end
    	
    	-- add wishlist info about this item
    	if not self[mog] and mog.wishlist:IsItemInWishlist(itemID) then
    		self:AddLine(" ");
    		self:AddLine(L["This item is on your wishlist."], 1, 1, 0);
    		self:AddTexture("Interface\\TargetingFrame\\UI-RaidTargetingIcon_1");
    	end
    end
    
    function mog.tooltip.HideItem(self)
    	mog.tooltip.check:Show();
    end
    --//
    
    
    --// GameTooltip
    mog.tooltip.check = CreateFrame("Frame");
    mog.tooltip.check:Hide();
    mog.tooltip.check:SetScript("OnUpdate",function(self)
    	if (mog.tooltip.owner and not (mog.tooltip.owner:IsShown() and mog.tooltip.owner:GetItem())) or not mog.tooltip.owner then
    		mog.tooltip:Hide();
    		mog.tooltip.item = nil;
    	end
    	self:Hide();
    end);
    
    mog.tooltip.repos = CreateFrame("Frame");
    mog.tooltip.repos:Hide();
    mog.tooltip.repos:SetScript("OnUpdate",function(self)
    	local x,y = mog.tooltip.owner:GetCenter();
    	if x and y then
    		mog.tooltip:ClearAllPoints();
    		local mogpoint,ownerpoint;
    		if y/GetScreenHeight() > 0.5 then
    			mogpoint = "TOP";
    			ownerpoint = "BOTTOM";
    		else
    			mogpoint = "BOTTOM";
    			ownerpoint = "TOP";
    		end
    		if x/GetScreenWidth() > 0.5 then
    			mogpoint = mogpoint.."LEFT";
    			ownerpoint = ownerpoint.."LEFT";
    		else
    			mogpoint = mogpoint.."RIGHT";
    			ownerpoint = ownerpoint.."RIGHT";
    		end
    		mog.tooltip:SetPoint(mogpoint,mog.tooltip.owner,ownerpoint);
    		self:Hide();
    	end
    end);
    
    GameTooltip:HookScript("OnTooltipSetItem",mog.tooltip.ShowItem);
    GameTooltip:HookScript("OnHide",mog.tooltip.HideItem);
    --//
    
    
    --// Auto-Rotate
    mog.tooltip.rotate = CreateFrame("Frame",nil,mog.tooltip);
    mog.tooltip.rotate:Hide();
    mog.tooltip.rotate:SetScript("OnUpdate",function(self,elapsed)
    	mog.tooltip.model:SetFacing(mog.tooltip.model:GetFacing() + elapsed);
    end);
    --//
    
    
    --// Tables
    mog.tooltip.slots = {
    	INVTYPE_HEAD = 0,
    	INVTYPE_SHOULDER = 0,
    	INVTYPE_CLOAK = 3.4,
    	INVTYPE_CHEST = 0,
    	INVTYPE_ROBE = 0,
    	INVTYPE_WRIST = 0,
    	INVTYPE_2HWEAPON = 1.6,
    	INVTYPE_WEAPON = 1.6,
    	INVTYPE_WEAPONMAINHAND = 1.6,
    	INVTYPE_WEAPONOFFHAND = -0.7,
    	INVTYPE_SHIELD = -0.7,
    	INVTYPE_HOLDABLE = -0.7,
    	INVTYPE_RANGED = 1.6,
    	INVTYPE_RANGEDRIGHT = 1.6,
    	INVTYPE_THROWN = 1.6,
    	INVTYPE_HAND = 0,
    	INVTYPE_WAIST = 0,
    	INVTYPE_LEGS = 0,
    	INVTYPE_FEET = 0,
    };
    
    mog.tooltip.mod = {
    	Shift = IsShiftKeyDown,
    	Ctrl = IsControlKeyDown,
    	Alt = IsAltKeyDown,
    };
    --//
    
    
    --// AtlasLoot
    function mog.tooltip.hookAtlasLoot()
    	if AtlasLootTooltipTEMP then
    		AtlasLootTooltipTEMP:HookScript("OnTooltipSetItem",mog.tooltip.ShowItem);
    		AtlasLootTooltipTEMP:HookScript("OnHide",mog.tooltip.HideItem);
    	end
    end
    mog.tooltip.hookAtlasLoot();
    --//
    - - - Updated - - -

    Seems that the MogIt_Wowhead module is broken. It does not appear to load within MogIt. I submitted two comments as tickets are not available for some reason. All that good data just sitting there...
    In a cult, there is a person at the top who knows it's a scam. In a religion, that person is dead.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •