SLASH_EXTENDEDQUESTLOG1 = "/eql"; function EQL_Options_OnLoad() SlashCmdList["EXTENDEDQUESTLOG"] = function(msg) EQL3_SlashCmd(msg); end this:RegisterEvent("VARIABLES_LOADED"); this:RegisterEvent("QUEST_LOG_UPDATE"); end -- Let's see how of theese are needed old_GetNumQuestLogEntries = GetNumQuestLogEntries; -- local existingGetQuestLogTitle = GetQuestLogTitle; old_SelectQuestLogEntry = SelectQuestLogEntry; old_GetQuestLogSelection = GetQuestLogSelection; old_ExpandQuestHeader = ExpandQuestHeader; old_CollapseQuestHeader = CollapseQuestHeader; old_IsUnitOnQuest = IsUnitOnQuest; -- local existingIsQuestWatched = IsQuestWatched; -- local existingAddQuestWatch = AddQuestWatch; -- local existingRemoveQuestWatch = RemoveQuestWatch; -- local existingGetQuestIndexForWatch = GetQuestIndexForWatch; old_GetNumQuestLeaderBoards = GetNumQuestLeaderBoards; old_GetQuestLogLeaderBoard = GetQuestLogLeaderBoard; function EQL_Options_OnEvent(event) -- Only for organizer... if ( event == "QUEST_LOG_UPDATE" ) then if(not EQL3_Temp.GotQuestLogUpdate) then EQL3_Temp.GotQuestLogUpdate = 1; EQL3_RefreshOtherQuestDisplays(); return; end EQL3_UpdateDB(); end if (event == "VARIABLES_LOADED") then EQL_Options_SetStates(); end end function EQL_Options_SetStates() if(QuestlogOptions[EQL3_Player].ShowQuestLevels == 1) then EQL3_OptionsFrame_Checkbox_ShowQuestLevels:SetChecked(1); EQL3_OptionsFrame_Checkbox_QuestLevelsOnlyInLog:Enable(); else EQL3_OptionsFrame_Checkbox_ShowQuestLevels:SetChecked(0); EQL3_OptionsFrame_Checkbox_QuestLevelsOnlyInLog:Disable(); end if(QuestlogOptions[EQL3_Player].RestoreUponSelect == 1) then EQL3_OptionsFrame_Checkbox_RestoreUponSelect:SetChecked(1); else EQL3_OptionsFrame_Checkbox_RestoreUponSelect:SetChecked(0); end if(QuestlogOptions[EQL3_Player].MinimizeUponClose == 1) then EQL3_OptionsFrame_Checkbox_MinimizeUponClose:SetChecked(1); else EQL3_OptionsFrame_Checkbox_MinimizeUponClose:SetChecked(0); end if(QuestlogOptions[EQL3_Player].CustomZoneColor == 1) then EQL3_OptionsFrame_Checkbox_CustomZoneColor:SetChecked(1); else EQL3_OptionsFrame_Checkbox_CustomZoneColor:SetChecked(0); end if(QuestlogOptions[EQL3_Player].CustomHeaderColor == 1) then EQL3_OptionsFrame_Checkbox_CustomHeaderColor:SetChecked(1); else EQL3_OptionsFrame_Checkbox_CustomHeaderColor:SetChecked(0); end if(QuestlogOptions[EQL3_Player].CustomObjetiveColor == 1) then EQL3_OptionsFrame_Checkbox_CustomObjectiveColor:SetChecked(1); else EQL3_OptionsFrame_Checkbox_CustomObjectiveColor:SetChecked(0); end if(QuestlogOptions[EQL3_Player].FadeHeaderColor == 1) then EQL3_OptionsFrame_Checkbox_FadeHeaderColor:SetChecked(1); else EQL3_OptionsFrame_Checkbox_FadeHeaderColor:SetChecked(0); end if(QuestlogOptions[EQL3_Player].FadeObjectiveColor == 1) then EQL3_OptionsFrame_Checkbox_FadeObjectiveColor:SetChecked(1); else EQL3_OptionsFrame_Checkbox_FadeObjectiveColor:SetChecked(0); end if(QuestlogOptions[EQL3_Player].CustomTrackerBGColor == 1) then EQL3_OptionsFrame_Checkbox_CustomTrackerBGColor:SetChecked(1); else EQL3_OptionsFrame_Checkbox_CustomTrackerBGColor:SetChecked(0); end if ( QuestlogOptions[EQL3_Player].ShowObjectiveMarkers == 1) then EQL3_OptionsFrame_Checkbox_ShowObjectiveMarkers:SetChecked(1); EQL3_OptionsFrame_Checkbox_UseTrackerListing:Enable(); if(QuestlogOptions[EQL3_Player].UseTrackerListing == 1) then EQL3_OptionsFrame_Checkbox_Symbol1:Disable(); EQL3_OptionsFrame_Checkbox_Symbol2:Disable(); EQL3_OptionsFrame_Checkbox_Symbol3:Disable(); EQL3_OptionsFrame_Checkbox_Symbol4:Disable(); EQL3_OptionsFrame_Checkbox_List1:Enable(); EQL3_OptionsFrame_Checkbox_List2:Enable(); EQL3_OptionsFrame_Checkbox_List3:Enable(); EQL3_OptionsFrame_Checkbox_List4:Enable(); else EQL3_OptionsFrame_Checkbox_List1:Disable(); EQL3_OptionsFrame_Checkbox_List2:Disable(); EQL3_OptionsFrame_Checkbox_List3:Disable(); EQL3_OptionsFrame_Checkbox_List4:Disable(); EQL3_OptionsFrame_Checkbox_Symbol1:Enable(); EQL3_OptionsFrame_Checkbox_Symbol2:Enable(); EQL3_OptionsFrame_Checkbox_Symbol3:Enable(); EQL3_OptionsFrame_Checkbox_Symbol4:Enable(); end else EQL3_OptionsFrame_Checkbox_ShowObjectiveMarkers:SetChecked(0); EQL3_OptionsFrame_Checkbox_UseTrackerListing:Disable(); EQL3_OptionsFrame_Checkbox_List1:Disable(); EQL3_OptionsFrame_Checkbox_List2:Disable(); EQL3_OptionsFrame_Checkbox_List3:Disable(); EQL3_OptionsFrame_Checkbox_List4:Disable(); EQL3_OptionsFrame_Checkbox_Symbol1:Disable(); EQL3_OptionsFrame_Checkbox_Symbol2:Disable(); EQL3_OptionsFrame_Checkbox_Symbol3:Disable(); EQL3_OptionsFrame_Checkbox_Symbol4:Disable(); end if(QuestlogOptions[EQL3_Player].UseTrackerListing == 1) then EQL3_OptionsFrame_Checkbox_UseTrackerListing:SetChecked(1); else EQL3_OptionsFrame_Checkbox_UseTrackerListing:SetChecked(0); end EQL3_OptionsFrame_Checkbox_List1:SetChecked(0); EQL3_OptionsFrame_Checkbox_List2:SetChecked(0); EQL3_OptionsFrame_Checkbox_List3:SetChecked(0); EQL3_OptionsFrame_Checkbox_List4:SetChecked(0); EQL3_OptionsFrame_Checkbox_Symbol1:SetChecked(0); EQL3_OptionsFrame_Checkbox_Symbol2:SetChecked(0); EQL3_OptionsFrame_Checkbox_Symbol3:SetChecked(0); EQL3_OptionsFrame_Checkbox_Symbol4:SetChecked(0); getglobal("EQL3_OptionsFrame_Checkbox_List"..(QuestlogOptions[EQL3_Player].TrackerList+1)):SetChecked(1); getglobal("EQL3_OptionsFrame_Checkbox_Symbol"..(QuestlogOptions[EQL3_Player].TrackerSymbol+1)):SetChecked(1); EQL3_OptionsFrame_Checkbox_ShowZones:SetChecked(0); EQL3_OptionsFrame_Checkbox_SortTracker:Enable(); EQL3_OptionsFrame_Checkbox_SortTracker:SetChecked(0); if(QuestlogOptions[EQL3_Player].ShowZonesInTracker == 1) then EQL3_OptionsFrame_Checkbox_ShowZones:SetChecked(1); EQL3_OptionsFrame_Checkbox_SortTracker:Disable(); EQL3_OptionsFrame_Checkbox_SortTracker:SetChecked(1); end if(QuestlogOptions[EQL3_Player].SortTrackerItems == 1) then EQL3_OptionsFrame_Checkbox_SortTracker:SetChecked(1); end if(QuestlogOptions[EQL3_Player].Color["TrackerBG"]) then EQL3_OptionsFrame_ColorSwatch_TrackerBGNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["TrackerBG"].r, QuestlogOptions[EQL3_Player].Color["TrackerBG"].g, QuestlogOptions[EQL3_Player].Color["TrackerBG"].b ); end if(QuestlogOptions[EQL3_Player].Color["Zone"]) then EQL3_OptionsFrame_ColorSwatch_ZoneNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["Zone"].r, QuestlogOptions[EQL3_Player].Color["Zone"].g, QuestlogOptions[EQL3_Player].Color["Zone"].b ); end if(QuestlogOptions[EQL3_Player].Color["HeaderEmpty"]) then EQL3_OptionsFrame_ColorSwatch_Header_EmptyNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["HeaderEmpty"].r, QuestlogOptions[EQL3_Player].Color["HeaderEmpty"].g, QuestlogOptions[EQL3_Player].Color["HeaderEmpty"].b ); end if(QuestlogOptions[EQL3_Player].Color["HeaderComplete"]) then EQL3_OptionsFrame_ColorSwatch_Header_CompleteNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["HeaderComplete"].r, QuestlogOptions[EQL3_Player].Color["HeaderComplete"].g, QuestlogOptions[EQL3_Player].Color["HeaderComplete"].b ); end if(QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"]) then EQL3_OptionsFrame_ColorSwatch_Objective_EmptyNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"].r, QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"].g, QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"].b ); end if(QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"]) then EQL3_OptionsFrame_ColorSwatch_Objective_CompleteNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"].r, QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"].g, QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"].b ); end if(QuestlogOptions[EQL3_Player].Color["Tooltip"]) then EQL3_OptionsFrame_ColorSwatch_TooltipInfoNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["Tooltip"].r, QuestlogOptions[EQL3_Player].Color["Tooltip"].g, QuestlogOptions[EQL3_Player].Color["Tooltip"].b ); end if(QuestlogOptions[EQL3_Player].LockTracker == 1) then EQL3_OptionsFrame_Checkbox_LockTracker:SetChecked(1); else EQL3_OptionsFrame_Checkbox_LockTracker:SetChecked(0); end if(QuestlogOptions[EQL3_Player].AddNew == 1) then EQL3_OptionsFrame_Checkbox_AddNew:SetChecked(1); else EQL3_OptionsFrame_Checkbox_AddNew:SetChecked(0); end EQL3_OptionsFrame_Checkbox_RemoveFinished:SetChecked(0); EQL3_OptionsFrame_Checkbox_MinimizeFinished:Enable(); EQL3_OptionsFrame_Checkbox_MinimizeFinished:SetChecked(0); if(QuestlogOptions[EQL3_Player].RemoveFinished == 1) then EQL3_OptionsFrame_Checkbox_RemoveFinished:SetChecked(1); EQL3_OptionsFrame_Checkbox_MinimizeFinished:Disable(); end if(QuestlogOptions[EQL3_Player].MinimizeFinished == 1) then EQL3_OptionsFrame_Checkbox_MinimizeFinished:SetChecked(1); end if(QuestlogOptions[EQL3_Player].AddUntracked == 1) then EQL3_OptionsFrame_Checkbox_AddUntracked:SetChecked(1); else EQL3_OptionsFrame_Checkbox_AddUntracked:SetChecked(0); end if(QuestlogOptions[EQL3_Player].LockQuestLog == 1) then EQL3_OptionsFrame_Checkbox_LockQuestLog:SetChecked(1); else EQL3_OptionsFrame_Checkbox_LockQuestLog:SetChecked(0); end if(QuestlogOptions[EQL3_Player].TrackerShowMinimizer == 1) then EQL3_OptionsFrame_Checkbox_ShowMinimizer:SetChecked(1); EQL3_Tracker_MinimizeButton:Show(); else EQL3_OptionsFrame_Checkbox_ShowMinimizer:SetChecked(0); EQL3_Tracker_MinimizeButton:Hide(); QuestlogOptions[EQL3_Player].TrackerIsMinimized = 0; end -- new to 3.5.6 if(QuestlogOptions[EQL3_Player].AutoCompleteQuests == 1) then EQL3_OptionsFrame_Checkbox_AutoCompleteQuests:SetChecked(1); else EQL3_OptionsFrame_Checkbox_AutoCompleteQuests:SetChecked(0); end if(QuestlogOptions[EQL3_Player].OnlyLevelsInLog == 1) then EQL3_OptionsFrame_Checkbox_QuestLevelsOnlyInLog:SetChecked(1); else EQL3_OptionsFrame_Checkbox_QuestLevelsOnlyInLog:SetChecked(0); end if(QuestlogOptions[EQL3_Player].RemoveCompletedObjectives == 1) then EQL3_OptionsFrame_Checkbox_HideCompletedObjectives:SetChecked(1); else EQL3_OptionsFrame_Checkbox_HideCompletedObjectives:SetChecked(0); end -- new to 3.5.9 if(QuestlogOptions[EQL3_Player].ItemTooltip == 1) then EQL3_OptionsFrame_Checkbox_ShowItemTooltip:SetChecked(1); else EQL3_OptionsFrame_Checkbox_ShowItemTooltip:SetChecked(0); end if(QuestlogOptions[EQL3_Player].MobTooltip == 1) then EQL3_OptionsFrame_Checkbox_ShowMobTooltip:SetChecked(1); else EQL3_OptionsFrame_Checkbox_ShowMobTooltip:SetChecked(0); end if(QuestlogOptions[EQL3_Player].InfoOnQuestCompletion == 1) then EQL3_OptionsFrame_Checkbox_InfoOnQuestComplete:SetChecked(1); else EQL3_OptionsFrame_Checkbox_InfoOnQuestComplete:SetChecked(0); end if(QuestlogOptions[EQL3_Player].CustomTooltipColor == 1) then EQL3_OptionsFrame_Checkbox_CustomTooltipInfoColor:SetChecked(1); else EQL3_OptionsFrame_Checkbox_CustomTooltipInfoColor:SetChecked(0); end end function EQL3_Toggle_QuestLevels() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].ShowQuestLevels = 1; EQL3_OptionsFrame_Checkbox_QuestLevelsOnlyInLog:Enable(); else QuestlogOptions[EQL3_Player].ShowQuestLevels = 0; EQL3_OptionsFrame_Checkbox_QuestLevelsOnlyInLog:Disable(); end QuestLog_Update(); QuestWatch_Update(); end function EQL3_Toggle_RestoreUponSelect() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].RestoreUponSelect = 1; else QuestlogOptions[EQL3_Player].RestoreUponSelect = 0; end end function EQL3_Toggle_MinimizeUponClose() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].MinimizeUponClose = 1; else QuestlogOptions[EQL3_Player].MinimizeUponClose = 0; end end function EQL3_Toggle_CustomZoneColor() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].CustomZoneColor = 1; else QuestlogOptions[EQL3_Player].CustomZoneColor = 0; end QuestWatch_Update(); end function EQL3_Toggle_CustomHeaderColor() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].CustomHeaderColor = 1; else QuestlogOptions[EQL3_Player].CustomHeaderColor = 0; end QuestWatch_Update(); end function EQL3_Toggle_CustomObjectiveColor() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].CustomObjetiveColor = 1; else QuestlogOptions[EQL3_Player].CustomObjetiveColor = 0; end QuestWatch_Update(); end function EQL3_Toggle_FadeHeaderColor() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].FadeHeaderColor = 1; else QuestlogOptions[EQL3_Player].FadeHeaderColor = 0; end QuestWatch_Update(); end function EQL3_Toggle_FadeObjectiveColor() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].FadeObjectiveColor = 1; else QuestlogOptions[EQL3_Player].FadeObjectiveColor = 0; end QuestWatch_Update(); end function EQL3_Toggle_CustomTrackerBGColor() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].CustomTrackerBGColor = 1; else QuestlogOptions[EQL3_Player].CustomTrackerBGColor = 0; end TrackerBackground_Update(); end --new to 3.5.6 function EQL3_Toggle_ShowObjectiveMarkers() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].ShowObjectiveMarkers = 1; EQL3_OptionsFrame_Checkbox_UseTrackerListing:Enable(); EQL3_Toggle_UseTrackerListing(); else QuestlogOptions[EQL3_Player].ShowObjectiveMarkers = 0; EQL3_OptionsFrame_Checkbox_UseTrackerListing:Disable(); EQL3_OptionsFrame_Checkbox_Symbol1:Disable(); EQL3_OptionsFrame_Checkbox_Symbol2:Disable(); EQL3_OptionsFrame_Checkbox_Symbol3:Disable(); EQL3_OptionsFrame_Checkbox_Symbol4:Disable(); EQL3_OptionsFrame_Checkbox_List1:Disable(); EQL3_OptionsFrame_Checkbox_List2:Disable(); EQL3_OptionsFrame_Checkbox_List3:Disable(); EQL3_OptionsFrame_Checkbox_List4:Disable(); end QuestWatch_Update(); end -- end function EQL3_Toggle_UseTrackerListing() if (EQL3_OptionsFrame_Checkbox_UseTrackerListing:GetChecked() == 1) then QuestlogOptions[EQL3_Player].UseTrackerListing = 1; EQL3_OptionsFrame_Checkbox_List1:Enable(); EQL3_OptionsFrame_Checkbox_List2:Enable(); EQL3_OptionsFrame_Checkbox_List3:Enable(); EQL3_OptionsFrame_Checkbox_List4:Enable(); EQL3_OptionsFrame_Checkbox_Symbol1:Disable(); EQL3_OptionsFrame_Checkbox_Symbol2:Disable(); EQL3_OptionsFrame_Checkbox_Symbol3:Disable(); EQL3_OptionsFrame_Checkbox_Symbol4:Disable(); else QuestlogOptions[EQL3_Player].UseTrackerListing = 0; EQL3_OptionsFrame_Checkbox_List1:Disable(); EQL3_OptionsFrame_Checkbox_List2:Disable(); EQL3_OptionsFrame_Checkbox_List3:Disable(); EQL3_OptionsFrame_Checkbox_List4:Disable(); EQL3_OptionsFrame_Checkbox_Symbol1:Enable(); EQL3_OptionsFrame_Checkbox_Symbol2:Enable(); EQL3_OptionsFrame_Checkbox_Symbol3:Enable(); EQL3_OptionsFrame_Checkbox_Symbol4:Enable(); end QuestWatch_Update(); end function EQL3_Set_TrackerListing(id) QuestlogOptions[EQL3_Player].TrackerList = id; EQL3_OptionsFrame_Checkbox_List1:SetChecked(0); EQL3_OptionsFrame_Checkbox_List2:SetChecked(0); EQL3_OptionsFrame_Checkbox_List3:SetChecked(0); EQL3_OptionsFrame_Checkbox_List4:SetChecked(0); getglobal("EQL3_OptionsFrame_Checkbox_List"..(id+1)):SetChecked(1); QuestWatch_Update(); end function EQL3_Set_TrackerSymbol(id) QuestlogOptions[EQL3_Player].TrackerSymbol = id; EQL3_OptionsFrame_Checkbox_Symbol1:SetChecked(0); EQL3_OptionsFrame_Checkbox_Symbol2:SetChecked(0); EQL3_OptionsFrame_Checkbox_Symbol3:SetChecked(0); EQL3_OptionsFrame_Checkbox_Symbol4:SetChecked(0); getglobal("EQL3_OptionsFrame_Checkbox_Symbol"..(id+1)):SetChecked(1); QuestWatch_Update(); end function EQL3_Toggle_ShowZones() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].ShowZonesInTracker = 1; EQL3_OptionsFrame_Checkbox_SortTracker:Disable(); EQL3_OptionsFrame_Checkbox_SortTracker:SetChecked(1); else QuestlogOptions[EQL3_Player].ShowZonesInTracker = 0; EQL3_OptionsFrame_Checkbox_SortTracker:Enable(); end SortWatchedQuests(); QuestWatch_Update(); end function EQL3_Toggle_SortTracker() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].SortTrackerItems = 1; else QuestlogOptions[EQL3_Player].SortTrackerItems = 0; end SortWatchedQuests(); QuestWatch_Update(); end function EQL3_OpenColorPicker(color, useOpacity, swatch) local c={}; c.r = QuestlogOptions[EQL3_Player].Color[color].r; c.g = QuestlogOptions[EQL3_Player].Color[color].g; c.b = QuestlogOptions[EQL3_Player].Color[color].b; if (useOpacity) then c.a = 1.0 - QuestlogOptions[EQL3_Player].Color[color].a; end if(not c.a) then c.a = 0.0; end EQL3_Temp.CurrentColor = color; EQL3_Temp.CurrentSwatch = swatch; ColorPickerFrame.opacity = c.a; ColorPickerFrame:SetColorRGB(c.r, c.g, c.b); ColorPickerFrame.previousValues = {r = c.r, g = c.g, b = c.b, a = c.a}; ColorPickerFrame.hasOpacity = useOpacity; ColorPickerFrame.func = EQL3_SaveColorPicker; ColorPickerFrame.cancelFunc = EQL3_CancelColorPicker; ColorPickerFrame:Show(); ColorPickerFrame:Raise(); end function EQL3_SaveColorPicker() local r, g, b = ColorPickerFrame:GetColorRGB(); QuestlogOptions[EQL3_Player].Color[EQL3_Temp.CurrentColor].r = r; QuestlogOptions[EQL3_Player].Color[EQL3_Temp.CurrentColor].g = g; QuestlogOptions[EQL3_Player].Color[EQL3_Temp.CurrentColor].b = b; if (ColorPickerFrame.hasOpacity) then QuestlogOptions[EQL3_Player].Color[EQL3_Temp.CurrentColor].a = 1.0 - OpacitySliderFrame:GetValue(); end getglobal(EQL3_Temp.CurrentSwatch.."NormalTexture"):SetVertexColor(r, g, b); if (not ColorPickerFrame:IsVisible()) then if (EQL3_Temp.CurrentColor == "TrackerBG") then TrackerBackground_Update(); else QuestWatch_Update(); end ColorPickerFrame.func = nil; ColorPickerFrame.cancelFunc = nil; end end function EQL3_CancelColorPicker(color) QuestlogOptions[EQL3_Player].Color[EQL3_Temp.CurrentColor].r = ColorPickerFrame.previousValues.r; QuestlogOptions[EQL3_Player].Color[EQL3_Temp.CurrentColor].g = ColorPickerFrame.previousValues.g; QuestlogOptions[EQL3_Player].Color[EQL3_Temp.CurrentColor].b = ColorPickerFrame.previousValues.b; if (ColorPickerFrame.hasOpacity) then QuestlogOptions[EQL3_Player].Color[EQL3_Temp.CurrentColor].a = 1.0 - ColorPickerFrame.previousValues.a; end getglobal(EQL3_Temp.CurrentSwatch.."NormalTexture"):SetVertexColor(ColorPickerFrame.previousValues.r, ColorPickerFrame.previousValues.g, ColorPickerFrame.previousValues.b); if (not ColorPickerFrame:IsVisible()) then if (EQL3_Temp.CurrentColor == "TrackerBG") then TrackerBackground_Update(); else QuestWatch_Update(); end ColorPickerFrame.func = nil; ColorPickerFrame.cancelFunc = nil; end end function TrackerBackground_Update() if(QuestlogOptions[EQL3_Player].CustomTrackerBGColor == 1) then QuestWatchFrameBackdrop:SetBackdropBorderColor( QuestlogOptions[EQL3_Player].Color["TrackerBG"].r, QuestlogOptions[EQL3_Player].Color["TrackerBG"].g, QuestlogOptions[EQL3_Player].Color["TrackerBG"].b ); QuestWatchFrameBackdrop:SetBackdropColor( QuestlogOptions[EQL3_Player].Color["TrackerBG"].r, QuestlogOptions[EQL3_Player].Color["TrackerBG"].g, QuestlogOptions[EQL3_Player].Color["TrackerBG"].b ); QuestWatchFrameBackdrop:SetAlpha(QuestlogOptions[EQL3_Player].Color["TrackerBG"].a); else QuestWatchFrameBackdrop:SetBackdropBorderColor( TOOLTIP_DEFAULT_BACKGROUND_COLOR.r, TOOLTIP_DEFAULT_BACKGROUND_COLOR.g, TOOLTIP_DEFAULT_BACKGROUND_COLOR.b ); QuestWatchFrameBackdrop:SetBackdropColor( TOOLTIP_DEFAULT_BACKGROUND_COLOR.r, TOOLTIP_DEFAULT_BACKGROUND_COLOR.g, TOOLTIP_DEFAULT_BACKGROUND_COLOR.b ); QuestWatchFrameBackdrop:SetAlpha(0.0); end end function EQL3_Toggle_LockTracker() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].LockTracker = 1; EQL3_QuestWatchFrame:SetUserPlaced(0); EQL3_QuestWatchFrame:RegisterForDrag(0); EQL3_QuestWatchFrame:SetMovable(false); EQL3_QuestWatchFrame:EnableMouse(false); else QuestlogOptions[EQL3_Player].LockTracker = 0; EQL3_QuestWatchFrame:SetMovable(true); EQL3_QuestWatchFrame:EnableMouse(true); EQL3_QuestWatchFrame:SetUserPlaced(1); EQL3_QuestWatchFrame:RegisterForDrag("LeftButton"); end end function EQL3_RestoreTracker() EQL3_QuestWatchFrame:ClearAllPoints(); EQL3_QuestWatchFrame:SetPoint("TOPRIGHT","MinimapCluster","BOTTOMRIGHT",-100,10); QuestWatchFrame_LockCornerForGrowth(); end function EQL3_RestoreColors() QuestlogOptions[EQL3_Player].Color["TrackerBG"] = { r = TOOLTIP_DEFAULT_BACKGROUND_COLOR.r, g = TOOLTIP_DEFAULT_BACKGROUND_COLOR.g, b = TOOLTIP_DEFAULT_BACKGROUND_COLOR.b, a = 0.0}; QuestlogOptions[EQL3_Player].Color["Zone"] = {r = 1.0, g = 1.0, b = 1.0}; QuestlogOptions[EQL3_Player].Color["HeaderEmpty"] = {r = 0.75, g = 0.61, b = 0.0}; QuestlogOptions[EQL3_Player].Color["HeaderComplete"] = {r = NORMAL_FONT_COLOR.r, g = NORMAL_FONT_COLOR.g, b = NORMAL_FONT_COLOR.b}; QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"] = {r = 0.8, g = 0.8, b = 0.8}; QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"] = {r = HIGHLIGHT_FONT_COLOR.r, g = HIGHLIGHT_FONT_COLOR.g, b = HIGHLIGHT_FONT_COLOR.b}; QuestlogOptions[EQL3_Player].Color["Tooltip"] = {r = 1.0, g = 0.8, b = 0.0}; if(QuestlogOptions[EQL3_Player].Color["TrackerBG"]) then EQL3_OptionsFrame_ColorSwatch_TrackerBGNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["TrackerBG"].r, QuestlogOptions[EQL3_Player].Color["TrackerBG"].g, QuestlogOptions[EQL3_Player].Color["TrackerBG"].b ); end if(QuestlogOptions[EQL3_Player].Color["Zone"]) then EQL3_OptionsFrame_ColorSwatch_ZoneNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["Zone"].r, QuestlogOptions[EQL3_Player].Color["Zone"].g, QuestlogOptions[EQL3_Player].Color["Zone"].b ); end if(QuestlogOptions[EQL3_Player].Color["HeaderEmpty"]) then EQL3_OptionsFrame_ColorSwatch_Header_EmptyNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["HeaderEmpty"].r, QuestlogOptions[EQL3_Player].Color["HeaderEmpty"].g, QuestlogOptions[EQL3_Player].Color["HeaderEmpty"].b ); end if(QuestlogOptions[EQL3_Player].Color["HeaderComplete"]) then EQL3_OptionsFrame_ColorSwatch_Header_CompleteNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["HeaderComplete"].r, QuestlogOptions[EQL3_Player].Color["HeaderComplete"].g, QuestlogOptions[EQL3_Player].Color["HeaderComplete"].b ); end if(QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"]) then EQL3_OptionsFrame_ColorSwatch_Objective_EmptyNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"].r, QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"].g, QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"].b ); end if(QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"]) then EQL3_OptionsFrame_ColorSwatch_Objective_CompleteNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"].r, QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"].g, QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"].b ); end if(QuestlogOptions[EQL3_Player].Color["Tooltip"]) then EQL3_OptionsFrame_ColorSwatch_TooltipInfoNormalTexture:SetVertexColor( QuestlogOptions[EQL3_Player].Color["Tooltip"].r, QuestlogOptions[EQL3_Player].Color["Tooltip"].g, QuestlogOptions[EQL3_Player].Color["Tooltip"].b ); end TrackerBackground_Update(); QuestWatch_Update(); end function EQL3_Toggle_AddNew() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].AddNew = 1 else QuestlogOptions[EQL3_Player].AddNew = 0; end end function EQL3_Toggle_RemoveFinished() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].RemoveFinished = 1 EQL3_OptionsFrame_Checkbox_MinimizeFinished:Disable(); else QuestlogOptions[EQL3_Player].RemoveFinished = 0; EQL3_OptionsFrame_Checkbox_MinimizeFinished:Enable(); end MagageTrackedQuests(); QuestLog_Update(); QuestWatch_Update(); end function EQL3_Toggle_MinimizeFinished() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].MinimizeFinished = 1 else QuestlogOptions[EQL3_Player].MinimizeFinished = 0; end QuestWatch_Update(); end function EQL3_Toggle_AddUntracked() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].AddUntracked = 1 else QuestlogOptions[EQL3_Player].AddUntracked = 0; end end function EQL3_Toggle_LockQuestLog() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].LockQuestLog = 1; EQL3_QuestLogFrame:RegisterForDrag(0); EQL3_QuestLogFrame_Description:RegisterForDrag(0); else QuestlogOptions[EQL3_Player].LockQuestLog = 0; EQL3_QuestLogFrame:RegisterForDrag("LeftButton"); EQL3_QuestLogFrame_Description:RegisterForDrag("LeftButton"); end end function EQL3_RestoreQuestLog() EQL3_QuestLogFrame:ClearAllPoints(); EQL3_QuestLogFrame:SetPoint("TOPLEFT", 0, -104); QuestLogFrame_LockCorner(); end -- Organizer function EQL3_SortComparison(value1, value2) if(value1.header == value2.header) then if(value1.level == value2.level) then return value1.title < value2.title; end return value1.level < value2.level; end return value1.header < value2.header; end function EQL3_UpdateDB() if(not EQL3_Temp.GotQuestLogUpdate) then return nil; end local numEntries, numQuests = old_GetNumQuestLogEntries(); if(numEntries == EQL3_Temp.lastExistingNumEntries) then return 1; end if(EQL3_Temp.lastExistingNumEntries == -1 and numEntries < 1) then if(not EQL3_Temp.reportedNoQuests) then EQL3_Temp.reportedNoQuests = 1; end return nil; end if(EQL3_Temp.reportedNoQuests) then EQL3_Temp.reportedNoQuests = nil; end EQL3_Temp.lastExistingNumEntries = numEntries; local index; for index in QuestlogOptions[EQL3_Player].OrganizerSettings do QuestlogOptions[EQL3_Player].OrganizerSettings[index].cleanup = 1; end local i; local questLogTitleText, level, questTag, isHeader, isCollapsed, isComplete; local sortData = {}; local j = 1; local lastHeader = "NoHeader"; for i=1, numEntries, 1 do questLogTitleText, level, questTag, isHeader, isCollapsed, isComplete = old_GetQuestLogTitle(i); if(isHeader) then lastHeader = questLogTitleText; else sortData[j] = {}; if(QuestlogOptions[EQL3_Player].OrganizerSettings[questLogTitleText]) then sortData[j].header = QuestlogOptions[EQL3_Player].OrganizerSettings[questLogTitleText].header; QuestlogOptions[EQL3_Player].OrganizerSettings[questLogTitleText].cleanup = nil; else sortData[j].header = lastHeader; end sortData[j].level = level; sortData[j].title = questLogTitleText; sortData[j].questID = i; j = j + 1; end end table.sort(sortData, EQL3_SortComparison); EQL3_Temp.savedNumQuests = j - 1; local selectedQuest = old_GetQuestLogSelection(); EQL3_Temp.savedSelectedQuest = selectedQuest; EQL3_Temp.savedQuestIDMap = {}; j = 1; lastHeader = nil; for i=1, EQL3_Temp.savedNumQuests, 1 do if(sortData[i].header ~= lastHeader) then lastHeader = sortData[i].header; EQL3_Temp.savedQuestIDMap[j] = {}; EQL3_Temp.savedQuestIDMap[j].header = lastHeader; j = j + 1; end EQL3_Temp.savedQuestIDMap[j] = {}; EQL3_Temp.savedQuestIDMap[j].questID = sortData[i].questID; if(EQL3_Temp.savedQuestIDMap[j].questID == EQL3_Temp.selectedQuest) then EQL3_Temp.savedSelectedQuest = j; end j = j + 1; end EQL3_Temp.savedNumEntries = j - 1; for index in QuestlogOptions[EQL3_Player].OrganizerSettings do if(QuestlogOptions[EQL3_Player].OrganizerSettings[index].cleanup) then QuestlogOptions[EQL3_Player].OrganizerSettings[index] = nil; end end return 1; end function EQL3_RefreshOtherQuestDisplays() EQL3_Temp.lastExistingNumEntries = -1; old_ExpandQuestHeader(0); end function FixGroupChangedQuest(title, headern) local temp, temp2, isHeader, foundQuest, header=nil; if(headern ~= nil) then header = headern end for i=1, GetNumQuestWatches(), 1 do temp = string.gsub(QuestlogOptions[EQL3_Player].QuestWatches[i], ".+,%d+,", ""); if(title == temp) then if(header == nil) then -- Find the header... foundQuest = false; for j=GetNumQuestLogEntries(), 1, -1 do temp2, _, _, isHeader = GetQuestLogTitle(j); if(not foundQuest and temp2 == title) then foundQuest = true; end if (foundQuest and isHeader) then header = temp2; break; end end end if (header == nil) then SortWatchedQuests(); return; end temp2 = string.gsub(QuestlogOptions[EQL3_Player].QuestWatches[i], ",%d+,.+", ""); temp = header..string.gsub(QuestlogOptions[EQL3_Player].QuestWatches[i], temp2, ""); QuestlogOptions[EQL3_Player].QuestWatches[i] = temp; SortWatchedQuests(); return; end end end function EQL3_OrganizeFunctions(command) if(not EQL3_UpdateDB()) then return; end local questID = GetQuestLogSelection(); if(not (questID and questID > 0)) then return; end if(command == "!!!resetall") then table.foreach (QuestlogOptions[EQL3_Player].OrganizerSettings, function (key, v) QuestlogOptions[EQL3_Player].OrganizerSettings[key] = nil; EQL3_RefreshOtherQuestDisplays(); FixGroupChangedQuest(key, nil); return nil; end); QuestlogOptions[EQL3_Player].OrganizerSettings = {}; EQL3_RefreshOtherQuestDisplays(); else local title = GetQuestLogTitle(questID); if(not title) then return; end if(command == "!!!reset") then QuestlogOptions[EQL3_Player].OrganizerSettings[title] = nil; EQL3_RefreshOtherQuestDisplays(); FixGroupChangedQuest(title, nil); else QuestlogOptions[EQL3_Player].OrganizerSettings[title] = {}; QuestlogOptions[EQL3_Player].OrganizerSettings[title].header = command; EQL3_RefreshOtherQuestDisplays(); FixGroupChangedQuest(title, command); end end EQL3_RefreshOtherQuestDisplays(); end function EQL3_Toggle_Track() if ( EQL3_IsQuestWatched(GetQuestLogSelection()) ) then EQL3_RemoveQuestWatch(GetQuestLogSelection()); else EQL3_AddQuestWatch(GetQuestLogSelection()); end QuestLog_Update(); QuestWatch_Update(); end function EQL3_Organize_ShowNameWindow() EQL3_OrganizeFrame:Show(); EQL3_OrganizeFrame:Raise(); EQL3_OrganizeFrame_Text:SetFocus(); end function EQL3_SlashCmd(msg) if (string.len(msg) > 0) then if(not EQL3_UpdateDB()) then return; end local questID = GetQuestLogSelection(); if(not (questID and questID > 0)) then return; end if(msg == "resetall") then table.foreach (QuestlogOptions[EQL3_Player].OrganizerSettings, function (key, v) QuestlogOptions[EQL3_Player].OrganizerSettings[key] = nil; EQL3_RefreshOtherQuestDisplays(); FixGroupChangedQuest(key, nil); return nil; end); QuestlogOptions[EQL3_Player].OrganizerSettings = {}; EQL3_RefreshOtherQuestDisplays(); else local title = GetQuestLogTitle(questID); if(not title) then return; end if(msg == "reset") then QuestlogOptions[EQL3_Player].OrganizerSettings[title] = nil; EQL3_RefreshOtherQuestDisplays(); FixGroupChangedQuest(title, nil); else QuestlogOptions[EQL3_Player].OrganizerSettings[title] = {}; QuestlogOptions[EQL3_Player].OrganizerSettings[title].header = msg; EQL3_RefreshOtherQuestDisplays(); FixGroupChangedQuest(title, msg); end end EQL3_RefreshOtherQuestDisplays(); else DEFAULT_CHAT_FRAME:AddMessage("Usage:"); DEFAULT_CHAT_FRAME:AddMessage("/eql - shows this message"); DEFAULT_CHAT_FRAME:AddMessage("/eql
- moves the currently selected quest to this header"); DEFAULT_CHAT_FRAME:AddMessage("/eql reset - reset the currently selected quest to its default header"); DEFAULT_CHAT_FRAME:AddMessage("/eql resetall - resets all quests to their default headers"); end end function GetNumQuestLogEntries() if(not EQL3_UpdateDB()) then return old_GetNumQuestLogEntries(); end return EQL3_Temp.savedNumEntries, EQL3_Temp.savedNumQuests; end function SelectQuestLogEntry(questID) if(not EQL3_UpdateDB()) then return old_SelectQuestLogEntry(questID); end if(EQL3_Temp.savedQuestIDMap and EQL3_Temp.savedQuestIDMap[questID] and EQL3_Temp.savedQuestIDMap[questID].questID) then EQL3_Temp.savedSelectedQuest = questID; return old_SelectQuestLogEntry(EQL3_Temp.savedQuestIDMap[questID].questID); end end function GetQuestLogSelection() if(not EQL3_UpdateDB()) then return old_GetQuestLogSelection(); end return EQL3_Temp.savedSelectedQuest; end function ExpandQuestHeader(questID) -- DISABLED! end function CollapseQuestHeader(questID) -- DEFAULT_CHAT_FRAME:AddMessage("Collapsing quest headers will cause errors."); EQL3_QuestLogCollapseAllButton.collapsed = nil; end function IsUnitOnQuest(questID, unit) if(not EQL3_UpdateDB()) then return old_IsUnitOnQuest(questID, unit); end if(EQL3_Temp.savedQuestIDMap and EQL3_Temp.savedQuestIDMap[questID] and EQL3_Temp.savedQuestIDMap[questID].questID) then return old_IsUnitOnQuest(EQL3_Temp.savedQuestIDMap[questID].questID, unit); end end function IsQuestWatched(questID) if(not EQL3_UpdateDB()) then return EQL3_IsQuestWatched(questID); end if(EQL3_Temp.savedQuestIDMap and EQL3_Temp.savedQuestIDMap[questID] and EQL3_Temp.savedQuestIDMap[questID].questID) then return EQL3_IsQuestWatched(questID); -- EQL3_IsQuestWatched(EQL3_Temp.savedQuestIDMap[questID].questID); end end function AddQuestWatch(questID) if(not EQL3_UpdateDB()) then return EQL3_AddQuestWatch(questID); end if(EQL3_Temp.savedQuestIDMap and EQL3_Temp.savedQuestIDMap[questID] and EQL3_Temp.savedQuestIDMap[questID].questID) then return EQL3_AddQuestWatch(questID);-- EQL3_AddQuestWatch(EQL3_Temp.savedQuestIDMap[questID].questID); end end function RemoveQuestWatch(questID) if(not EQL3_UpdateDB()) then return EQL3_RemoveQuestWatch(questID); end if(EQL3_Temp.savedQuestIDMap and EQL3_Temp.savedQuestIDMap[questID] and EQL3_Temp.savedQuestIDMap[questID].questID) then return EQL3_RemoveQuestWatch(questID); -- EQL3_RemoveQuestWatch(EQL3_Temp.savedQuestIDMap[questID].questID); end end function GetQuestIndexForWatch(watchID) if(not EQL3_UpdateDB()) then return EQL3_GetQuestIndexForWatch(watchID); end if(EQL3_Temp.savedQuestIDMap) then local mappedQuestID = EQL3_GetQuestIndexForWatch(watchID); local questID; for questID in EQL3_Temp.savedQuestIDMap do if(EQL3_Temp.savedQuestIDMap[questID].questID and (EQL3_Temp.savedQuestIDMap[questID].questID == mappedQuestID)) then return EQL3_GetQuestIndexForWatch(watchID); -- return questID; end end end end function GetNumQuestLeaderBoards(questID) if(not questID or not EQL3_UpdateDB()) then return old_GetNumQuestLeaderBoards(questID); end if(EQL3_Temp.savedQuestIDMap and EQL3_Temp.savedQuestIDMap[questID] and EQL3_Temp.savedQuestIDMap[questID].questID) then return old_GetNumQuestLeaderBoards(EQL3_Temp.savedQuestIDMap[questID].questID); end end function GetQuestLogLeaderBoard(objectiveID, questID) if(not questID or not EQL3_UpdateDB()) then return old_GetQuestLogLeaderBoard(objectiveID, questID); end if(EQL3_Temp.savedQuestIDMap and EQL3_Temp.savedQuestIDMap[questID] and EQL3_Temp.savedQuestIDMap[questID].questID) then return old_GetQuestLogLeaderBoard(objectiveID, EQL3_Temp.savedQuestIDMap[questID].questID); end end function SetTrackerFontSize() local temp, t1, t2; t1, _, t2 = EQL3_QuestWatchLine1:GetFont(); for i=1, MAX_QUESTWATCH_LINES, 1 do temp = getglobal("EQL3_QuestWatchLine"..i); --temp:SetTextHeight(QuestlogOptions[EQL3_Player].TrackerFontHeight); temp:SetFont(t1, QuestlogOptions[EQL3_Player].TrackerFontHeight, t2); temp:SetHeight(QuestlogOptions[EQL3_Player].TrackerFontHeight+1); end QuestWatch_Update(); end function EQL3_Toggle_ShowMinimizer() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].TrackerShowMinimizer = 1; EQL3_Tracker_MinimizeButton:Show(); else QuestlogOptions[EQL3_Player].TrackerShowMinimizer = 0; QuestlogOptions[EQL3_Player].TrackerIsMinimized = 0; EQL3_Tracker_MinimizeButton:Hide(); end QuestWatch_Update(); end function EQL3_Toggle_Tracker() if ( QuestlogOptions[EQL3_Player].TrackerIsMinimized == 1 ) then QuestlogOptions[EQL3_Player].TrackerIsMinimized = 0; else QuestlogOptions[EQL3_Player].TrackerIsMinimized = 1; end QuestWatch_Update(); end function EQL3_ShowLoadDropDown(button) if ( button == "LeftButton" ) then ToggleDropDownMenu(1, nil, EQL3_RealmDropDown, this:GetName(), 0, 0); return; end end function EQL3_RealmDropDown_OnLoad() UIDropDownMenu_Initialize(this, EQL3_RealmDropDown_Initialize, "MENU"); UIDropDownMenu_SetButtonWidth(50); UIDropDownMenu_SetWidth(50); end function EQL3_RealmDropDown_Initialize() if ( UIDROPDOWNMENU_MENU_LEVEL == 1 ) then local info = {}; local realms = {}; -- Loop through Realms and add to menu for i in QuestlogOptions do for w in string.gfind(i, "%-([^%-]+)") do if ( not realms[w] ) then -- Make sure every realm is only shown once realms[w] = 1; -- Realms List info = {}; info.text = w; info.hasArrow = 1; info.func = nil; info.notCheckable = 1; UIDropDownMenu_AddButton(info); break; end end end elseif ( UIDROPDOWNMENU_MENU_LEVEL == 2 ) then info = {}; info.text = UIDROPDOWNMENU_MENU_VALUE; info.notClickable = 1; info.isTitle = 1; UIDropDownMenu_AddButton(info, UIDROPDOWNMENU_MENU_LEVEL); for i in QuestlogOptions do for x, w in string.gfind(i, "([^%-]+)%-([^%-]+)") do if(w == UIDROPDOWNMENU_MENU_VALUE) then info = {}; info.text = x; info.value = i; info.func = EQL3_LoadCharacterSettings; info.notCheckable = 1; UIDropDownMenu_AddButton(info, UIDROPDOWNMENU_MENU_LEVEL); end end end end end function EQL3_LoadCharacterSettings() -- toggle the menu.. in this case hide it ToggleDropDownMenu(1, nil, EQL3_RealmDropDown, EQL3_OptionsFrameLoadButton:GetName(), 0, 0); --load the settings... QuestlogOptions[EQL3_Player].ShowQuestLevels = QuestlogOptions[this.value].ShowQuestLevels; QuestlogOptions[EQL3_Player].RestoreUponSelect = QuestlogOptions[this.value].RestoreUponSelect; QuestlogOptions[EQL3_Player].MinimizeUponClose = QuestlogOptions[this.value].MinimizeUponClose; QuestlogOptions[EQL3_Player].LockQuestLog = QuestlogOptions[this.value].LockQuestLog; if(QuestlogOptions[EQL3_Player].LockQuestLog == 1) then EQL3_QuestLogFrame:RegisterForDrag(0); EQL3_QuestLogFrame_Description:RegisterForDrag(0); else EQL3_QuestLogFrame:RegisterForDrag("LeftButton"); EQL3_QuestLogFrame_Description:RegisterForDrag("LeftButton"); end QuestlogOptions[EQL3_Player].LogLockPoints = QuestlogOptions[this.value].LogLockPoints; if (QuestlogOptions[EQL3_Player].LogLockPoints and QuestlogOptions[EQL3_Player].LogLockPoints.pointone and QuestlogOptions[EQL3_Player].LogLockPoints.pointtwo) then EQL3_QuestLogFrame:ClearAllPoints(); EQL3_QuestLogFrame:SetPoint("TOPLEFT","UIParent","BOTTOMLEFT",QuestlogOptions[EQL3_Player].LogLockPoints.pointone,QuestlogOptions[EQL3_Player].LogLockPoints.pointtwo); end QuestlogOptions[EQL3_Player].MinimizeUponClose = QuestlogOptions[this.value].MinimizeUponClose; QuestlogOptions[EQL3_Player].LogOpacity = QuestlogOptions[this.value].LogOpacity; EQL3_QuestLogFrame:SetAlpha(QuestlogOptions[EQL3_Player].LogOpacity); EQL3_OptionsFrame_Slider_LogOpacity:SetValue(QuestlogOptions[EQL3_Player].LogOpacity); QuestlogOptions[EQL3_Player].ShowZonesInTracker = QuestlogOptions[this.value].ShowZonesInTracker; QuestlogOptions[EQL3_Player].SortTrackerItems = QuestlogOptions[this.value].SortTrackerItems; QuestlogOptions[EQL3_Player].CustomZoneColor = QuestlogOptions[this.value].CustomZoneColor; QuestlogOptions[EQL3_Player].CustomHeaderColor = QuestlogOptions[this.value].CustomHeaderColor; QuestlogOptions[EQL3_Player].CustomObjetiveColor = QuestlogOptions[this.value].CustomObjetiveColor; QuestlogOptions[EQL3_Player].FadeHeaderColor = QuestlogOptions[this.value].FadeHeaderColor; QuestlogOptions[EQL3_Player].FadeObjectiveColor = QuestlogOptions[this.value].FadeObjectiveColor; QuestlogOptions[EQL3_Player].CustomTrackerBGColor = QuestlogOptions[this.value].CustomTrackerBGColor; QuestlogOptions[EQL3_Player].UseTrackerListing = QuestlogOptions[this.value].UseTrackerListing; QuestlogOptions[EQL3_Player].TrackerList = QuestlogOptions[this.value].TrackerList; QuestlogOptions[EQL3_Player].TrackerSymbol = QuestlogOptions[this.value].TrackerSymbol; QuestlogOptions[EQL3_Player].Color["TrackerBG"] = {r=QuestlogOptions[this.value].Color["TrackerBG"].r, g=QuestlogOptions[this.value].Color["TrackerBG"].g, b=QuestlogOptions[this.value].Color["TrackerBG"].b, a=QuestlogOptions[this.value].Color["TrackerBG"].a}; QuestlogOptions[EQL3_Player].Color["Zone"] = {r=QuestlogOptions[this.value].Color["Zone"].r, g=QuestlogOptions[this.value].Color["Zone"].g, b=QuestlogOptions[this.value].Color["Zone"].b}; QuestlogOptions[EQL3_Player].Color["HeaderEmpty"] = {r=QuestlogOptions[this.value].Color["HeaderEmpty"].r, g=QuestlogOptions[this.value].Color["HeaderEmpty"].g, b=QuestlogOptions[this.value].Color["HeaderEmpty"].b}; QuestlogOptions[EQL3_Player].Color["HeaderComplete"] = {r=QuestlogOptions[this.value].Color["HeaderComplete"].r, g=QuestlogOptions[this.value].Color["HeaderComplete"].g, b=QuestlogOptions[this.value].Color["HeaderComplete"].b}; QuestlogOptions[EQL3_Player].Color["ObjectiveEmpty"] = {r=QuestlogOptions[this.value].Color["ObjectiveEmpty"].r, g=QuestlogOptions[this.value].Color["ObjectiveEmpty"].g, b=QuestlogOptions[this.value].Color["ObjectiveEmpty"].b}; QuestlogOptions[EQL3_Player].Color["ObjectiveComplete"] = {r=QuestlogOptions[this.value].Color["ObjectiveComplete"].r, g=QuestlogOptions[this.value].Color["ObjectiveComplete"].g, b=QuestlogOptions[this.value].Color["ObjectiveComplete"].b}; QuestlogOptions[EQL3_Player].Color["Tooltip"] = {r=QuestlogOptions[this.value].Color["Tooltip"].r, g=QuestlogOptions[this.value].Color["Tooltip"].g, b=QuestlogOptions[this.value].Color["Tooltip"].b}; QuestlogOptions[EQL3_Player].LockTracker = QuestlogOptions[this.value].LockTracker; QuestlogOptions[EQL3_Player].LockPoints = QuestlogOptions[this.value].LockPoints; QuestlogOptions[EQL3_Player].AddNew = QuestlogOptions[this.value].AddNew; QuestlogOptions[EQL3_Player].RemoveFinished = QuestlogOptions[this.value].RemoveFinished; QuestlogOptions[EQL3_Player].MinimizeFinished = QuestlogOptions[this.value].MinimizeFinished; QuestlogOptions[EQL3_Player].AddUntracked = QuestlogOptions[this.value].AddUntracked; QuestlogOptions[EQL3_Player].TrackerFontHeight = QuestlogOptions[this.value].TrackerFontHeight; EQL3_OptionsFrame_Slider_TrackerFontSize:SetValue(QuestlogOptions[EQL3_Player].TrackerFontHeight); QuestlogOptions[EQL3_Player].TrackerShowMinimizer = QuestlogOptions[this.value].TrackerShowMinimizer; QuestlogOptions[EQL3_Player].TrackerIsMinimized = QuestlogOptions[this.value].TrackerIsMinimized; -- new to 3.5.6 QuestlogOptions[EQL3_Player].AutoCompleteQuests = QuestlogOptions[this.value].AutoCompleteQuests; QuestlogOptions[EQL3_Player].RemoveCompletedObjectives = QuestlogOptions[this.value].RemoveCompletedObjectives; QuestlogOptions[EQL3_Player].ShowObjectiveMarkers = QuestlogOptions[this.value].ShowObjectiveMarkers; QuestlogOptions[EQL3_Player].OnlyLevelsInLog = QuestlogOptions[this.value].OnlyLevelsInLog; -- new to 3.5.9 QuestlogOptions[EQL3_Player].ItemTooltip = QuestlogOptions[this.value].ItemTooltip; QuestlogOptions[EQL3_Player].MobTooltip = QuestlogOptions[this.value].MobTooltip; QuestlogOptions[EQL3_Player].InfoOnQuestCompletion = QuestlogOptions[this.value].InfoOnQuestCompletion; QuestlogOptions[EQL3_Player].CustomTooltipColor = QuestlogOptions[this.value].CustomTooltipColor; EQL_Options_SetStates(); QuestLog_Update(); QuestWatch_Update(); end -- new to 3.5.6 function EQL3_Toggle_AutoCompleteQuests() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].AutoCompleteQuests = 1; else QuestlogOptions[EQL3_Player].AutoCompleteQuests = 0; end end function EQL3_Toggle_OnlyLevelsInLog() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].OnlyLevelsInLog = 1; else QuestlogOptions[EQL3_Player].OnlyLevelsInLog = 0; end end function EQL3_Toggle_HideCompletedObjectives() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].RemoveCompletedObjectives = 1; else QuestlogOptions[EQL3_Player].RemoveCompletedObjectives = 0; end QuestWatch_Update(); end -- new to3.5.9 function EQL3_Toggle_ShowItemTooltip() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].ItemTooltip = 1; else QuestlogOptions[EQL3_Player].ItemTooltip = 0; end end function EQL3_Toggle_ShowMobTooltip() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].MobTooltip = 1; else QuestlogOptions[EQL3_Player].MobTooltip = 0; end end function EQL3_Toggle_InfoOnQuestComplete() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].InfoOnQuestCompletion = 1; LookForCompletedQuests(false) else QuestlogOptions[EQL3_Player].InfoOnQuestCompletion = 0; end end function EQL3_Toggle_CustomTooltipInfoColor() if (this:GetChecked() == 1) then QuestlogOptions[EQL3_Player].CustomTooltipColor = 1; else QuestlogOptions[EQL3_Player].CustomTooltipColor = 0; end end -- end --; -- --