Quantcast
-- __________ Master Looter Assistant by Niketa-Moonrunner (US) / http://niketa.net / addons@niketa.net __________ --

-- __________ NAMESPACE __________ --
local M = MLA_Namespace

-- __________ LOCALIZATION __________ --
local L = M.Localization

-- __________ INITIALIZATION __________ --
M.Options = CreateFrame("Frame", "M.Options", UIParent)
M.Options:Hide()
M.Options.name = "Master Looter Assistant"


-- __________ TITLE REGION __________ --
local title = M.Options:CreateFontString(nil, "OVERLAY", "GameFontNormalLarge")
	title:SetPoint("TOPLEFT", 15, -15)
	title:SetText("Master Looter Assistant")

local options = M.Options:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	options:SetPoint("TOPLEFT", title, "BOTTOMLEFT", 15, -10)
	options:SetText(L["Uncheck boss names to disable auto master looter."])

local info = M.Options:CreateFontString(nil, "OVERLAY", "GameFontNormalSmall")
	info:SetPoint("BOTTOMRIGHT", -15, 15)
	info:SetText(L["AUTHOR: Niketa-Moonrunner (US) @ http://niketa.net"])

-- __________ BOSS CHECK BUTTONS (L) __________ --
-- <AL'AKIR> --
local AlAkirBTN = CreateFrame("CheckButton", "Al_Akir", M.Options, "OptionsBaseCheckButtonTemplate")
	AlAkirBTN:SetPoint("TOPLEFT", options, "BOTTOMLEFT", 0, -20)

AlAkirBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[46753] = true
	else
		MLA_bossNPCID[46753] = nil
	end
end)

AlAkirBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[46753] then
		frame:SetChecked(Al_Akir)
	end
end)

local AlAkirBTNtext = AlAkirBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	AlAkirBTNtext:SetPoint("LEFT", AlAkirBTN, "RIGHT", 0, 1)
	AlAkirBTNtext:SetText(L[" Al'Akir (Throne of the Four Winds)"])
-- </AL'AKIR> --

-- <ALYSRAZOR> --
local AlysrazorBTN = CreateFrame("CheckButton", "Alysrazor", M.Options, "OptionsBaseCheckButtonTemplate")
	AlysrazorBTN:SetPoint("TOPLEFT", AlAkirBTN, "BOTTOMLEFT", 0, 0)

AlysrazorBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[52530] = true
	else
		MLA_bossNPCID[52530] = nil
	end
end)

AlysrazorBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[52530] then
		frame:SetChecked(Alysrazor)
	end
end)

local AlysrazorBTNtext = AlysrazorBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	AlysrazorBTNtext:SetPoint("LEFT", AlysrazorBTN, "RIGHT", 0, 1)
	AlysrazorBTNtext:SetText(L[" Alysrazor (Firelands)"])
-- </ALYSRAZOR> --

-- <ATTUMEN THE HUNTSMAN> --
local AttumenBTN = CreateFrame("CheckButton", "Attumen", M.Options, "OptionsBaseCheckButtonTemplate")
	AttumenBTN:SetPoint("TOPLEFT", AlysrazorBTN, "BOTTOMLEFT", 0, 0)

AttumenBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[16151] = true
		MLA_bossNPCID[16152] = true
	else
		MLA_bossNPCID[16151] = nil
		MLA_bossNPCID[16152] = nil
	end
end)

AttumenBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[16151] or MLA_bossNPCID[16152] then
		frame:SetChecked(Attumen)
	end
end)

local AttumenBTNtext = AttumenBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	AttumenBTNtext:SetPoint("LEFT", AttumenBTN, "RIGHT", 0, 1)
	AttumenBTNtext:SetText(L[" Attumen the Huntsman (Karazhan)"])
-- </ATTUMEN THE HUNTSMAN> --

-- <ELEGON> --
local ElegonBTN = CreateFrame("CheckButton", "Elegon", M.Options, "OptionsBaseCheckButtonTemplate")
	ElegonBTN:SetPoint("TOPLEFT", AttumenBTN, "BOTTOMLEFT", 0, 0)

ElegonBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[60410] = true
	else
		MLA_bossNPCID[60410] = nil
	end
end)

ElegonBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[60410] then
		frame:SetChecked(Elegon)
	end
end)

local ElegonBTNtext = ElegonBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	ElegonBTNtext:SetPoint("LEFT", ElegonBTN, "RIGHT", 0, 1)
	ElegonBTNtext:SetText(L[" Elegon (Mogu'shan Vaults)"])
-- </ELEGON> --

-- <HORRIDON> --
local HorridonBTN = CreateFrame("CheckButton", "Horridon", M.Options, "OptionsBaseCheckButtonTemplate")
	HorridonBTN:SetPoint("TOPLEFT", ElegonBTN, "BOTTOMLEFT", 0, 0)

HorridonBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[68476] = true
	else
		MLA_bossNPCID[68476] = nil
	end
end)

HorridonBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[68476] then
		frame:SetChecked(Horridon)
	end
end)

local HorridonBTNtext = HorridonBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	HorridonBTNtext:SetPoint("LEFT", HorridonBTN, "RIGHT", 0, 1)
	HorridonBTNtext:SetText(L[" Horridon  (Throne of Thunder)"])
-- </HORRIDON> --

-- <JI'KUN> --
local JiKunBTN = CreateFrame("CheckButton", "Ji_kun", M.Options, "OptionsBaseCheckButtonTemplate")
	JiKunBTN:SetPoint("TOPLEFT", HorridonBTN, "BOTTOMLEFT", 0, 0)

JiKunBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[69712] = true
	else
		MLA_bossNPCID[69712] = nil
	end
end)

JiKunBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[69712] then
		frame:SetChecked(Ji_kun)
	end
end)

local JiKunBTNtext = JiKunBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	JiKunBTNtext:SetPoint("LEFT", JiKunBTN, "RIGHT", 0, 1)
	JiKunBTNtext:SetText(L[" Ji'kun (Throne of Thunder)"])
-- </JI'KUN> --

-- <KAEL'THAS SUNSTRIDER> --
local KaelThasBTN = CreateFrame("CheckButton", "Kael_thas", M.Options, "OptionsBaseCheckButtonTemplate")
	KaelThasBTN:SetPoint("TOPLEFT", JiKunBTN, "BOTTOMLEFT", 0, 0)

KaelThasBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[20064] = true
		MLA_bossNPCID[20063] = true
		MLA_bossNPCID[20062] = true
		MLA_bossNPCID[20060] = true
		MLA_bossNPCID[19622] = true
	else
		MLA_bossNPCID[20064] = nil
		MLA_bossNPCID[20063] = nil
		MLA_bossNPCID[20062] = nil
		MLA_bossNPCID[20060] = nil
		MLA_bossNPCID[19622] = nil
	end
end)

KaelThasBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[19622] or MLA_bossNPCID[20060] or MLA_bossNPCID[20062] or MLA_bossNPCID[20063] or MLA_bossNPCID[20064] then
		frame:SetChecked(Kael_thas)
	end
end)

local KaelThasBTNtext = KaelThasBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	KaelThasBTNtext:SetPoint("LEFT", KaelThasBTN, "RIGHT", 0, 1)
	KaelThasBTNtext:SetText(L[" Kael'thas Sunstrider  (Tempest Keep)"])
-- </KAEL'THAS SUNSTRIDER> --

-- <THE LICH KING> --
local LichKingBTN = CreateFrame("CheckButton", "LichKing", M.Options, "OptionsBaseCheckButtonTemplate")
	LichKingBTN:SetPoint("TOPLEFT", KaelThasBTN, "BOTTOMLEFT", 0, 0)

LichKingBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[36597] = true
	else
		MLA_bossNPCID[36597] = nil
	end
end)

LichKingBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[36597] then
		frame:SetChecked(LichKing)
	end
end)

local LichKingBTNtext = LichKingBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	LichKingBTNtext:SetPoint("LEFT", LichKingBTN, "RIGHT", 0, 1)
	LichKingBTNtext:SetText(L[" The Lich King  (Icecrown Citadel)"])
-- </THE LICH KING> --

-- __________ BOSS CHECK BUTTONS (R) __________ --
-- <MADNESS OF DEATHWING> --
local DeathwingBTN = CreateFrame("CheckButton", "Deathwing", M.Options, "OptionsBaseCheckButtonTemplate")
	DeathwingBTN:SetPoint("TOPLEFT", AlAkirBTNtext, "TOPRIGHT", 35, 5)

DeathwingBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[56173] = true
	else
		MLA_bossNPCID[56173] = nil
	end
end)

DeathwingBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[56846] or MLA_bossNPCID[56167] or MLA_bossNPCID[56168] or MLA_bossNPCID[56173] then
		frame:SetChecked(Deathwing)
	end
end)

local DeathwingBTNtext = DeathwingBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	DeathwingBTNtext:SetPoint("LEFT", DeathwingBTN, "RIGHT", 0, 1)
	DeathwingBTNtext:SetText(L[" Madness of Deathwing  (Dragon Soul)"])
-- </MADNESS OF DEATHWING> --

-- <MALYGOS> --
local MalygosBTN = CreateFrame("CheckButton", "Malygos", M.Options, "OptionsBaseCheckButtonTemplate")
	MalygosBTN:SetPoint("TOPLEFT", DeathwingBTN, "BOTTOMLEFT", 0, 0)

MalygosBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[28859] = true
	else
		MLA_bossNPCID[28859] = nil
	end
end)

MalygosBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[28859] then
		frame:SetChecked(Malygos)
	end
end)

local MalygosBTNtext = MalygosBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	MalygosBTNtext:SetPoint("LEFT", MalygosBTN, "RIGHT", 0, 1)
	MalygosBTNtext:SetText(L[" Malygos  (The Eye of Eternity)"])
-- </MALYGOS> --

-- <ONYXIA> --
local OnyxiaBTN = CreateFrame("CheckButton", "Onyxia", M.Options, "OptionsBaseCheckButtonTemplate")
	OnyxiaBTN:SetPoint("TOPLEFT", MalygosBTN, "BOTTOMLEFT", 0, 0)

OnyxiaBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[10184] = true
	else
		MLA_bossNPCID[10184] = nil
	end
end)

OnyxiaBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[10184] then
		frame:SetChecked(Onyxia)
	end
end)

local OnyxiaBTNtext = OnyxiaBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	OnyxiaBTNtext:SetPoint("LEFT", OnyxiaBTN, "RIGHT", 0, 1)
	OnyxiaBTNtext:SetText(L[" Onyxia  (Onyxia's Lair)"])
-- </ONYXIA> --

-- <RAGNAROS> --
local RagnarosBTN = CreateFrame("CheckButton", "Ragnaros", M.Options, "OptionsBaseCheckButtonTemplate")
	RagnarosBTN:SetPoint("TOPLEFT", OnyxiaBTN, "BOTTOMLEFT", 0, 0)

RagnarosBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[52409] = true
	else
		MLA_bossNPCID[52409] = nil
	end
end)

RagnarosBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[52409] then
		frame:SetChecked(Ragnaros)
	end
end)

local RagnarosBTNtext = RagnarosBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	RagnarosBTNtext:SetPoint("LEFT", RagnarosBTN, "RIGHT", 0, 1)
	RagnarosBTNtext:SetText(L[" Ragnaros  (Firelands)"])
-- </RAGNAROS> --

-- <SARTHARION> --
local SartharionBTN = CreateFrame("CheckButton", "Sartharion", M.Options, "OptionsBaseCheckButtonTemplate")
	SartharionBTN:SetPoint("TOPLEFT", RagnarosBTN, "BOTTOMLEFT", 0, 0)

SartharionBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[28860] = true
	else
		MLA_bossNPCID[28860] = nil
	end
end)

SartharionBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[28860] then
		frame:SetChecked(Sartharion)
	end
end)

local SartharionBTNtext = SartharionBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	SartharionBTNtext:SetPoint("LEFT", SartharionBTN, "RIGHT", 0, 1)
	SartharionBTNtext:SetText(L[" Sartharion  (The Obsidian Sanctum)"])
-- </SARTHARION> --

-- <ULTRAXION> --
local UltraxionBTN = CreateFrame("CheckButton", "Ultraxion", M.Options, "OptionsBaseCheckButtonTemplate")
	UltraxionBTN:SetPoint("TOPLEFT", SartharionBTN, "BOTTOMLEFT", 0, 0)

UltraxionBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[55294] = true
	else
		MLA_bossNPCID[55294] = nil
	end
end)

UltraxionBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[55294] then
		frame:SetChecked(Ultraxion)
	end
end)

local UltraxionBTNtext = UltraxionBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	UltraxionBTNtext:SetPoint("LEFT", UltraxionBTN, "RIGHT", 0, 1)
	UltraxionBTNtext:SetText(L[" Ultraxion (Dragon Soul)"])
-- </ULTRAXION> --

-- <YOGG-SARON> --
local YoggSaronBTN = CreateFrame("CheckButton", "Yogg_Saron", M.Options, "OptionsBaseCheckButtonTemplate")
	YoggSaronBTN:SetPoint("TOPLEFT", UltraxionBTN, "BOTTOMLEFT", 0, 0)

YoggSaronBTN:SetScript("OnClick", function(frame)
	if frame:GetChecked() then
		MLA_bossNPCID[33136] = true
		MLA_bossNPCID[33288] = true
	else
		MLA_bossNPCID[33136] = nil
		MLA_bossNPCID[33288] = nil
	end
end)

YoggSaronBTN:SetScript("OnShow", function(frame)
	if MLA_bossNPCID[33136] or MLA_bossNPCID[33288] then
		frame:SetChecked(Yogg_Saron)
	end
end)

local YoggSaronBTNtext = YoggSaronBTN:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	YoggSaronBTNtext:SetPoint("LEFT", YoggSaronBTN, "RIGHT", 0, 1)
	YoggSaronBTNtext:SetText(L[" Yogg-Saron (Ulduar)"])
-- </YOGG-SARON> --

-- __________ ENABLE/DISABLE ALL BUTTONS __________ --
local checkall = CreateFrame("Button", nil, M.Options, "UIPanelButtonTemplate")
	  checkall:SetPoint("TOPLEFT", LichKingBTN, "BOTTOMLEFT", 300, -10)
	  checkall:SetSize(100, 25)
	  checkall:SetText(L["Enable All"])
	  checkall:SetScript("OnClick", function(self)
		  AlAkirBTN:SetChecked(true)
		  AlysrazorBTN:SetChecked(true)
		  AttumenBTN:SetChecked(true)
		  ElegonBTN:SetChecked(true)
		  HorridonBTN:SetChecked(true)
		  JiKunBTN:SetChecked(true)
		  KaelThasBTN:SetChecked(true)
		  LichKingBTN:SetChecked(true)
		  DeathwingBTN:SetChecked(true)
		  MalygosBTN:SetChecked(true)
		  OnyxiaBTN:SetChecked(true)
		  RagnarosBTN:SetChecked(true)
		  SartharionBTN:SetChecked(true)
		  UltraxionBTN:SetChecked(true)
		  YoggSaronBTN:SetChecked(true)

		  MLA_bossNPCID = {
			[55294] = true, -- Ultraxion
			[52530] = true, -- Alysrazor
			[52409] = true, -- Ragnaros
			[46753] = true, -- Al'akir
			[60410] = true, -- Elegon
			[36597] = true, -- The Lich King
			[10184] = true, -- Onyxia
			[28859] = true, -- Malygos
			[28860] = true, -- Sartharion
			[69712] = true, -- Ji-Kun
			[68476] = true, -- Horridon
			[56173] = true, -- Madness of Deathwing: Deathwing
			[33136] = true, [33288] = true, -- Yogg-Saron: Guardian of Yogg-Saron, Yogg-Saron
			[16151] = true, [16152] = true, -- Attumen the Huntsman: Midnight, Attumen the Huntsman
			[20064] = true, [20063] = true, [20062] = true, [20060] = true, [19622] = true -- Kael'thas Sunstrider: Thaladred the Darkener, Master Engineer Telonicus,  Grand Astromancer Capernian, Lord Sanguinar, Kael'thas Sunstrider
			}
	  end)

local clearall = CreateFrame("Button", nil, M.Options, "UIPanelButtonTemplate")
	  clearall:SetPoint("TOPLEFT", checkall, "TOPRIGHT", 5, 0)
	  clearall:SetSize(100, 25)
	  clearall:SetText(L["Disable All"])
	  clearall:SetScript("OnClick", function(self)
		  AlAkirBTN:SetChecked(false)
		  AlysrazorBTN:SetChecked(false)
		  AttumenBTN:SetChecked(false)
		  ElegonBTN:SetChecked(false)
		  HorridonBTN:SetChecked(false)
		  JiKunBTN:SetChecked(false)
		  KaelThasBTN:SetChecked(false)
		  LichKingBTN:SetChecked(false)
		  DeathwingBTN:SetChecked(false)
		  MalygosBTN:SetChecked(false)
		  OnyxiaBTN:SetChecked(false)
		  RagnarosBTN:SetChecked(false)
		  SartharionBTN:SetChecked(false)
		  UltraxionBTN:SetChecked(false)
		  YoggSaronBTN:SetChecked(false)

		  MLA_bossNPCID = nil
		  MLA_bossNPCID = {}
	  end)

-- __________ CUSTOM LOOT MASTER OPTIONS __________ --
local MLtitle = M.Options:CreateFontString(nil, "OVERLAY", "GameFontNormalLarge")
	  MLtitle:SetPoint("TOPLEFT", checkall, "BOTTOMLEFT", -300, -5)
	  MLtitle:SetText(L["Custom Loot Master"])

local MLdesc = M.Options:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	  MLdesc:SetPoint("TOPLEFT", MLtitle, "BOTTOMLEFT", 15, -10)
	  MLdesc:SetWordWrap(true)
	  MLdesc:SetJustifyH("LEFT")
	  MLdesc:SetWidth(550)
	  MLdesc:SetText(L["If you'd like to set a player other than yourself as Loot Master you can target the player and use the button below (\"Set Target as Loot Master\") or use the command \"/mla looter\". Your setting will be saved until you clear it (see the button below or use the command \"/mla clear\"). If this player is in a group with you for the boss pull they will be set as the loot master. Otherwise you will be set as loot master."])

local MLlooter = M.Options:CreateFontString(nil, "OVERLAY", "GameFontNormalLarge")
	  MLlooter:SetPoint("TOPLEFT", MLdesc, "BOTTOMLEFT", -5, -70)
	  MLlooter:SetText(L["Loot Master: "])
local MLlootmaster = M.Options:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
	  MLlootmaster:SetPoint("TOPLEFT", MLlooter, "TOPRIGHT", 10, -2)

local MLsetBTN = CreateFrame("Button", nil, M.Options, "UIPanelButtonTemplate")
	  MLsetBTN:SetPoint("TOPLEFT", MLdesc, "BOTTOMLEFT", 15, -20)
	  MLsetBTN:SetText(L["Set Target as Loot Master"])
	  MLsetBTN:SetSize(200, 25)
	  MLsetBTN:SetScript("OnClick", function(self)
		MLA_SetLootMaster()
	  end)

local MLclearBTN = CreateFrame("Button", nil, M.Options, "UIPanelButtonTemplate")
	  MLclearBTN:SetPoint("TOPLEFT", MLsetBTN, "TOPRIGHT", 75, 0)
	  MLclearBTN:SetText(L["Clear Loot Master"])
	  MLclearBTN:SetSize(200, 25)
	  MLclearBTN:SetScript("OnClick", function(self)
		MLA_ClearLootMaster()
	  end)

M.Options:SetScript("OnShow", function(self)
	if MLA_LootMaster then
		MLlootmaster:SetText(MLA_LootMaster)
		MLlootmaster:SetFontObject("GameFontGreen")
	else
		MLlootmaster:SetText(L["You do not have anyone designated to pass loot master to."])
	end
end)

-- __________ CUSTOM LOOT THRESHOLD OPTIONS __________ --
local thresholdtitle = M.Options:CreateFontString(nil, "OVERLAY", "GameFontNormalLarge")
	  thresholdtitle:SetPoint("TOPLEFT", MLlooter, "BOTTOMLEFT", 0, -15)
	  thresholdtitle:SetText(L["Loot Threshold: "])

local uncommonlbl, rarelbl, epiclbl = nil

local uncommonbtn = CreateFrame("Button", nil, M.Options)
	  uncommonbtn:SetPoint("TOPLEFT", thresholdtitle, "TOPRIGHT", 0, 5)
	  uncommonbtn:SetNormalFontObject("GameFontHighlight")
	  uncommonbtn:SetText("")
	  uncommonbtn:SetSize(100, 25)
	  uncommonbtn:SetScript("OnClick", function(self)
		  if MLA_LootThreshold ~= 2 then
			  MLA_LootThreshold = 2
			  uncommonlbl:SetFontObject("GameFontGreen")
			  rarelbl:SetFontObject("GameFontHighlight")
			  epiclbl:SetFontObject("GameFontHighlight")
		  end
	  end)
	  uncommonbtn:SetScript("OnShow", function(self)
		  if MLA_LootThreshold == 2 then
			  uncommonlbl:SetFontObject("GameFontGreen")
			  rarelbl:SetFontObject("GameFontHighlight")
			  epiclbl:SetFontObject("GameFontHighlight")
		  end
	  end)

uncommonlbl = M.Options:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
uncommonlbl:SetPoint("CENTER", uncommonbtn, "CENTER", 0, 0)
uncommonlbl:SetText(L["Uncommon"])

local rarebtn = CreateFrame("Button", nil, M.Options)
	  rarebtn:SetPoint("TOPLEFT", uncommonbtn, "TOPRIGHT", 15, 0)
	  rarebtn:SetNormalFontObject("GameFontHighlight")
	  rarebtn:SetText("")
	  rarebtn:SetSize(75, 25)
	  rarebtn:SetScript("OnClick", function(self)
		  if MLA_LootThreshold ~= 3 then
			  MLA_LootThreshold = 3
			  uncommonlbl:SetFontObject("GameFontHighlight")
			  rarelbl:SetFontObject("GameFontGreen")
			  epiclbl:SetFontObject("GameFontHighlight")
		  end
	  end)
	  rarebtn:SetScript("OnShow", function(self)
		  if MLA_LootThreshold == 3 then
			  uncommonlbl:SetFontObject("GameFontHighlight")
			  rarelbl:SetFontObject("GameFontGreen")
			  epiclbl:SetFontObject("GameFontHighlight")
		  end
	  end)

rarelbl = M.Options:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
rarelbl:SetPoint("CENTER", rarebtn, "CENTER", 0, 0)
rarelbl:SetText(L["Rare"])

local epicbtn = CreateFrame("Button", nil, M.Options)
	  epicbtn:SetPoint("TOPLEFT", rarebtn, "TOPRIGHT", 15, 0)
	  epicbtn:SetNormalFontObject("GameFontHighlight")
	  epicbtn:SetText("")
	  epicbtn:SetSize(75, 25)
	  epicbtn:SetScript("OnClick", function(self)
		  if MLA_LootThreshold ~= 4 then
			  MLA_LootThreshold = 4
			  uncommonlbl:SetFontObject("GameFontHighlight")
			  rarelbl:SetFontObject("GameFontHighlight")
			  epiclbl:SetFontObject("GameFontGreen")
		  end
	  end)
	  epicbtn:SetScript("OnShow", function(self)
		  if MLA_LootThreshold == 4 then
			  uncommonlbl:SetFontObject("GameFontHighlight")
			  rarelbl:SetFontObject("GameFontHighlight")
			  epiclbl:SetFontObject("GameFontGreen")
		  end
	  end)

epiclbl = M.Options:CreateFontString(nil, "OVERLAY", "GameFontHighlight")
epiclbl:SetPoint("CENTER", epicbtn, "CENTER", 0, 0)
epiclbl:SetText(L["Epic"])


-- __________ BUTTON FUNCTIONS __________ --
function MLA_SetLootMaster()
	MLlootmaster:SetFontObject("GameFontHighlight")
	local NPCID = nil

	if UnitExists("target") then
		NPCID = MLA_mobIDfromGUID[UnitGUID("target")]
	end

	if UnitIsEnemy("player", "target") or not GetUnitName("target") or NPCID ~= 0 then
		print("|cff71C671Master Looter Assistant: |r"..L["Please target a player and try again."])
		MLlootmaster:SetText(L["You do not have anyone designated to pass loot master to."])
		return
	elseif GetUnitName("target") == GetUnitName("player") then
		print("|cff71C671Master Looter Assistant: |r"..L["Please target a player and try again. If you wish to set yourself as the loot master after designating someone else use the command \"/mla clear\" or the button in the interface options panel."])
		MLlootmaster:SetText(L["You do not have anyone designated to pass loot master to."])
		return
	end

	local target = GetUnitName("target", true)
	MLA_LootMaster = target

	print("|cff71C671Master Looter Assistant: |r"..string.format(L["You've designated %s to be your loot master. These settings will be saved until you clear them."], MLA_LootMaster))

	MLlootmaster:SetText(MLA_LootMaster)
	MLlootmaster:SetFontObject("GameFontGreen")
end

function MLA_ClearLootMaster()
	if not MLA_LootMaster then
		return
	end

	MLA_LootMaster = nil
	print("|cff71C671Master Looter Assistant: |r"..L["You will now be designated as loot master on pulls."])
	MLlootmaster:SetText(L["You do not have anyone designated to pass loot master to."])
	MLlootmaster:SetFontObject("GameFontHighlight")
end

-- Add to Interface Addon Options:
InterfaceOptions_AddCategory(M.Options)