Blizzard minimap and quest objectives that are hidden out-of-combat

Hi!

Can you please help me with the script, I want my minimap and quest objectives list to the right of the screen visible only on mouseover

I’m using this amazing script by Grimmj for blizzard player and target frames:

Grimmj Script

local animationTimeSeconds = 0.15 --amount of seconds it takes to make a frame visible/invisible.

local f = CreateFrame(“Frame”)
local f2 = CreateFrame(“Frame”);
local f3 = CreateFrame(“Frame”);
f:RegisterEvent(“PLAYER_TARGET_CHANGED”) – Run code when player’s target changed
f2:RegisterEvent(“PLAYER_REGEN_DISABLED”) --player entered combat
f3:RegisterEvent(“PLAYER_REGEN_ENABLED”)–player left combat
local override = false;
local animating = false;

local main = function(self, event, …) --target changed event
if (DropDownList1Button2ExpandArrow:GetRight() == nil) then --init mouse menu
PlayerFrame:Click(“RightButton”);
DropDownList1Button16:Click();
DropDownList1:SetScript(“OnShow”, --keep mouse menu hidden when player frame is hidden
function()
if(PlayerFrame:GetAlpha() == 0) then
DropDownList1:Hide();
end
end)
end
if(UnitName(“target”) == nil or UnitName(“target”) == UnitName(“player”)) then --if player has no target
fadeOut(TargetFrame)
fadeOut(TargetFrameToT)
if (not override) then
fadeOut(PlayerFrame)
end
else --if player has target
fadeIn(PlayerFrame)
fadeIn(TargetFrame)
fadeIn(TargetFrameToT)
end
end

f:SetScript(“OnEvent”, main)

C_Timer.NewTicker(0.25, function()
if (PlayerFrame:IsMouseOver()) then
override = true;
fadeIn(PlayerFrame);
else
override = false;
if (UnitName(“target”) == nil or UnitName(“target”) == UnitName(“player”)) then
fadeOut(PlayerFrame);
end
end
end)

f2:SetScript(“OnEvent”, function(self, event, …)
fadeIn(PlayerFrame)
end)

f3:SetScript(“OnEvent”, function(self, event, …)
if(not override and (UnitName(“target”) == nil or UnitName(“target”) == UnitName(“player”))) then
fadeOut(PlayerFrame)
end
end)

PlayerFrame:SetAlpha(0) --hide frames when client loads
TargetFrame:SetAlpha(0)
TargetFrameToT:SetAlpha(0)
DropDownList1:Hide();

function fadeIn(frame)
if (frame:GetAlpha() < 1 and not animating) then
animating = true;
local ticker = C_Timer.NewTicker(animationTimeSeconds / 10, function()
frame:SetAlpha(frame:GetAlpha()+0.1)
end, 10)
animating = false;
end
end

function fadeOut(frame)
if (frame:GetAlpha() > 0 and not animating) then
animating = true;
local ticker = C_Timer.NewTicker(animationTimeSeconds / 10, function()
frame:SetAlpha(frame:GetAlpha()-0.1)
end, 10)
animating = false;
end
end

How do I rework it to work with minimap and quest list?

Thank you!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.