/
## Title: QuestGuru Tracker |
## Notes: Quest Tracker replacement |
## Author: MrOBrian/Gregity |
## Version: 1.5.16-50400 |
## Version: 2.2.18-50400 |
## SavedVariablesPerCharacter: QGT_WatchList, QGT_WatchHeaders, QGT_WatchQuests, QGT_WatchAchievements, QGT_Settings |
localization.lua |
localization.DE.lua |
QuestGuru_Tracker ChangeLog |
=========================== |
Version 2.2.18-50400 (QuestGuru_Tracker) |
------------- |
* Check the ChangeLog.txt in the QuestGuru folder. Updates going forward will be in there. |
* fix Achievement to ignore update events that happen during portals (between leaving and entering world events) |
The update event would fire, but Blizzard was reporting no achievements during that time so the QGT would |
"UnTrack" the Achievements and so there would be none when the display tried to update (and therefore currLine was zero and j was nil) |
Version 1.5.16-50400 (QuestGuru_Tracker) |
------------- |
* fix QGT_Achievement.lua to handle Blizzard not returning an integer value on the slider |
Version 1.5.15-50400 (QuestGuru_Tracker) |
------------- |
* TOC change for patch 5.4 |
Version 1.5.15-50300 (QuestGuru_Tracker) |
------------- |
* TOC change for patch 5.3 |
* Fixed a problem in QGT_Achievements that caused the Tracker to fail (Tracker) |
* Big thanks to CMTitan who provided code to handle Scenarios that came out with MoP (Tracker) |
Version 1.5.14-50001 (QuestGuru_Tracker) |
------------- |
* Fixed another place where party handling was changed in MoP/Patch 5.0.4. |
Version 1.5.13-50001 (QuestGuru_Tracker) |
------------- |
* Fixed a problem with the Achievement Tracking |
Version 1.5.12-50001 |
------------- |
* forgot to change version number inside the TOC itself |
Version 1.5.11-50001 |
------------- |
* Toc Change for MoP Beta |
* Change GetNumPartyMembers to GetNumGroupMembers in every place I found it. |
* More work on the binding issue. Used a time delay if I don't succeed in setting the binding at login. |
If I can't bind it after three attempts one second apart, forget it and move on. |
Version 1.5.10-40300 |
------------- |
* Latest revision of the Russian localization now incorporated. Thank you again StingerSoft! |
* Fixed the SetBindings problem that would cause all bindings to occassionally get lost. |
Version 1.5.9-40300 |
------------- |
* Made several localization changes. Enabled $substitution variables in announcer to be localized as well. |
* Incorporated a brand new localization for Chinese(zhCN). Credit to Honooon with many thanks. |
* Incorporated an updated localization for Russian(ruRU). Credit to StingerSoft with many thanks also. |
* Updated all of the localizations (even the new ones) to synchronize variable names |
* I based the updates upon the default (American) localization file. |
* I removed variables that were no longer in the base localization file (most had be copied from to the QuestGuru localization) |
* and added missing variables (in American) |
* We now have localizations for German, French, Russian, and Chinese (zhCN & zhTW). |
* I would really appreciate it if speakers of those languages sent me updates to them. |
* There are some new variables in the localizations that need translation! |
Version 1.5.8-40300 |
------------- |
* Refixed an issue in QGT_Quests.lua where SaveBindings sometimes received an invalid value because GetCurrentBindingSet() would return other than nil, 1, or 2. |
Version 1.5.7-40300 |
------------- |
* Changed TOC version for 4.3 cata |
* MrObrien has asked that somebody pickup and work on the QuestGuru so I will try and do some updates as I can't play without this mod. |
Addon home is www.wowinterface.com and you can PM me there if you like. Gregity is the name. |
I will be making small changes to get used to the codebase before I try anything like a major update. |
* Fixed an issue in QGT_Quests.lua where SaveBindings sometimes received an invalid value because GetCurrentBindingSet() would return nil |
Version 1.5.6 |
------------- |
* Fixed achievements not working quite right (thanks to FineWolf) |
* Added a flashing effect to quests that can be remotely completed |
Version 1.5.5 |
------------- |
* Fixed a bug that was causing the game to crash (oops) |
Version 1.5.4 |
------------- |
* Fixed a bug when trying to track an achievement that no longer exists (usually on login) |
* Removed UIFrame calls that could potentially cause taint |
Version 1.5.3 |
------------- |
* Thanks to Cartman, added ability to finish certain quests directly from the tracker |
Version 1.5.2 |
------------- |
* Removed ability to sort by proximity for now |
* More bug fixes to better support Cataclysm |
Version 1.5.1 |
------------- |
* Bug fixes |
Version 1.5 |
----------- |
* Added ability to sort watched quests by proximity (may not work exactly right...) |
* Shift-L Key Binding is now saved properly |
* Bug fixes |
* Updates to better support Cataclysm |
Version 1.4.4 |
------------- |
* Fixes for Blizzard's new chat frame |
Version 1.4.3 |
------------- |
* Added option to hide tracker(s) during combat |
Version 1.4.2 |
------------- |
* More minor bug fixes |
Version 1.4.1 |
------------- |
* Minor bug fix |
Version 1.4 |
----------- |
* Updated for patch 3.3 |
* Minor bug fixes |
Version 1.3 |
----------- |
* Updated to be compatible with WoW 3.2 |
Version 1.2.3 |
------------- |
* Achievements no longer auto-track, this feature was too buggy and annoying |
* Shift-clicking an achievement in the tracker will now untrack the achievement |
* Fixed tooltip display issues |
* Added Russian localization |
Version 1.2.2 |
------------- |
* Added quest timers in the tracker |
* Achievement tracker should now update properly on achievement progress |
* In the Achievement tracker, shift-clicking an achievement will now add a link to the chat frame |
* Auto-tracking of achievements in chains when one step is completed has been added |
* As always, more bug fixes |
Version 1.2.1 |
------------- |
* Bug fixes |
Version 1.2 |
----------- |
* Added button to toggle Quest and Achievement trackers with option to show both |
* Some more bug fixes |
Version 1.1.1 |
------------- |
* A bunch of bug fixes |
Version 1.1 |
----------- |
* Added Achievement tracking |
* Bug fix with quest item icon size |
Version 1.0.2 |
------------- |
* Added quest item icons |
* Added option to pin tracker |
* Fixed shift-right-click menu for quest titles |
* More bug fixes |
Version 1.0.1 |
------------- |
* Bug fixes |
Version 1.0 |
----------- |
* First release as a separate addon |
QGT_WatchAchievements = {}; |
QGT_WatchAchievementLines = 0; |
QGT_AchievementTimer = {}; |
--QuestGuru_Echo("At set AWU false initial QGT_AchievementWatch_Update()", false) |
QGT_AWUpdating = false; |
WATCHFRAME_MAXACHIEVEMENTS = 9999; |
-- QuestWatch functions |
function QGT_AchievementWatch_Update() |
--QuestGuru_Echo("Entered QGT_AchievementWatch_Update()", false) |
local achieveCount=0; |
local i, j; |
--QuestGuru_Echo("At AWU test Before QGT_AchievementWatch_Update()", false) |
if (QGT_AWUpdating == true) then return; end |
--QuestGuru_Echo("At AWU test After QGT_AchievementWatch_Update()", false) |
QGT_AWUpdating = true; |
--QuestGuru_Echo("At 1 QGT_AchievementWatch_Update()", false) |
table.sort(QGT_WatchAchievements, function(a, b) return (a < b); end); |
for i, j in pairs(QGT_WatchAchievements) do |
QGT_AchievementWatchNum:SetText(achieveCount); |
--QuestGuru_Echo(format("QGT_Settings.AchievementWatch.AutoMinimize: %s", tostring(QGT_Settings.AchievementWatch.AutoMinimize)), true) |
if (QGT_Settings.AchievementWatch.AutoMinimize) then |
QGT_AchievementWatchFrameMinimize:SetText("*"); |
else |
if (achieveCount == 0 and questCount == 0) then |
QGT_AchievementWatchFrame:Hide(); |
--QuestGuru_Echo("At set AWU false A=0 Q=0 QGT_AchievementWatch_Update()", false) |
QGT_AWUpdating = false; |
return; |
elseif (achieveCount == 0 and questCount > 0) then |
else |
QGT_AchievementWatchFrameToggle:Click(); |
end |
--QuestGuru_Echo("At set AWU false A=0 Q>0 QGT_AchievementWatch_Update()", false) |
QGT_AWUpdating = false; |
return; |
else |
QGT_AchievementWatchFrame:SetMovable(1); |
end |
--QuestGuru_Echo("At 2 QGT_AchievementWatch_Update()", false) |
local _; |
local self = QGT_AchievementWatchFrame; |
achieveLine[currLine] = {}; |
for i = 1, 40 do |
--QuestGuru_Echo(format("/qgt %s", tostring(SlashText)), true) |
--QGT_Chat has been removed. |
--QGT_Chat("i was nil", i, nil) |
local aLine = _G["QGT_AchievementWatchLine"..i]; |
--QGT_Chat("i was nil with aLine", i, aLine) |
QGT_AchievementWatchFrame:SetPoint("BOTTOMLEFT", "UIParent", "BOTTOMLEFT", QGT_Settings.AchievementWatch.Left, QGT_Settings.AchievementWatch.Bottom); |
end |
end |
--QuestGuru_Echo("At set AWU false end of if QGT_Settings.AchievementWatch.Minimized QGT_AchievementWatch_Update()", false) |
QGT_AWUpdating = false; |
return; |
end |
--QuestGuru_Echo(format("At 2.5 QGT_AchievementWatch_Update(), currLine=%s", tostring(currLine) ), false) |
-- currLine should be zero here |
for k, v in pairs(QGT_WatchAchievements) do |
achievementID = k; |
achievementCategory = GetAchievementCategory(achievementID); |
local statusBars = 0; |
local yOffset = 0; |
local xOffset = 0; |
--QuestGuru_Echo(format("At 3 QGT_AchievementWatch_Update(), currLine=%s", tostring(currLine) ), false) |
for i= 1, currLine do |
j = i - sliderVal; |
if (j > watchLines) then |
aLine:Show(); |
end |
end |
--QuestGuru_Echo(format("At 4 QGT_AchievementWatch_Update(), j=%s", tostring(j) ), false) |
for i = j + 1, 40 do |
local aLine = _G["QGT_AchievementWatchLine"..i]; |
aLine:Hide(); |
end |
--QuestGuru_Echo("At 5 QGT_AchievementWatch_Update()", false) |
QGT_AchievementWatchFrame:Show(); |
local tempHeight = 30 + (j * 13) + yOffset; |
QGT_AchievementWatchFrame:SetHeight(tempHeight); |
else |
QGT_AchievementWatchFrameSlider:SetPoint("TOPRIGHT", 14, -16); |
end |
--QuestGuru_Echo("At set AWU false end QGT_AchievementWatch_Update()", false) |
QGT_AWUpdating = false; |
end |
QGT_QuestWatchFrame:RegisterEvent("VARIABLES_LOADED"); |
QGT_QuestWatchFrame:RegisterEvent("UI_INFO_MESSAGE"); |
QGT_QuestWatchFrame:RegisterEvent("PLAYER_ENTERING_WORLD"); |
QGT_QuestWatchFrame:RegisterEvent("PLAYER_LEAVING_WORLD"); |
QGT_QuestWatchFrame:RegisterEvent("PLAYER_LOGOUT"); |
QGT_QuestWatchFrame:RegisterEvent("PLAYER_LOGIN"); |
QGT_QuestWatchFrame:RegisterEvent("PLAYER_REGEN_DISABLED"); |
QGT_QuestWatchFrame:RegisterEvent("PLAYER_REGEN_ENABLED"); |
QGT_QuestWatchFrame:SetScript("OnEvent", |
function (self, event, arg1, arg2, arg3, arg4) |
--QuestGuru_Echo(format("Event %s received", tostring(event) ), false) |
if (event == "QUEST_WATCH_UPDATE") then |
QGT_AddTimer(2, 1, CheckRemoveQuestWatch, arg1); |
elseif (event == "VARIABLES_LOADED") then |
end |
elseif (event == "UI_INFO_MESSAGE") then |
QGT_UIInfoMessage(arg1); |
elseif (event == "PLAYER_LEAVING_WORLD") then |
QGT_PlayerAlive = false; |
elseif (event == "PLAYER_ENTERING_WORLD") then |
QGT_PlayerAlive = true; |
elseif (event == "PLAYER_REGEN_ENABLED") then |
-- QuestWatch functions |
function QGT_WatchFrame_Update() |
--QGT_Chat("Entered QGT_WatchFrame_Update()") |
--QuestGuru_Echo("Entered QGT_WatchFrame_Update()", false) |
if (QGT_Settings.HideBlizzardTracker) then |
WatchFrame:Hide(); |
else |
return; |
end |
--QuestGuru_Echo("At 1 QGT_WatchFrame_Update()", false) |
if ((QGT_Settings.LastTracker == "Q") or QGT_Settings.BothTrackers) then |
--QuestGuru_Echo("At 2QUp QGT_WatchFrame_Update()", false) |
QGT_QuestWatch_Update(); |
else |
--QuestGuru_Echo("At 2QHide QGT_WatchFrame_Update()", false) |
QGT_QuestWatchFrame:Hide(); |
end |
if ((QGT_Settings.LastTracker == "A") or QGT_Settings.BothTrackers) then |
--QuestGuru_Echo("At 2AUp QGT_WatchFrame_Update()", false) |
QGT_AchievementWatch_Update(); |
else |
--QuestGuru_Echo("At 2AHide QGT_WatchFrame_Update()", false) |
QGT_AchievementWatchFrame:Hide(); |
end |
end |
end |
end |
function QGT_Chat(text, v1, v2) |
local ChatText = "QGT_Chat: " |
if (text == nil) then |
ChatText = ChatText .. "Text sent to QGT_Chat is nil" |
else |
ChatText = ChatText .. text |
end |
if (v1 ~= nil) then |
ChatText = ChatText .. ", v1: " .. tostring(v1) |
if (v2 ~= nil) then |
ChatText = ChatText .. ", v2: " .. tostring(v2) |
end |
end |
return DEFAULT_CHAT_FRAME:AddMessage(ChatText) |
end |
--Slash Commands are UpperCase, Global, of the form SLASH_<SlashCmdListMemberFunctionName><digit> |
--local ADirName, A = ... -- ... contains the name of the Addon Directory, which is the name of the addon and an (initially) empty table that is passed to all modules in the directory & sub-directories |
--function A.SlashHandlerT(SlashText, OriginatingChatFrame) |
-- QuestGuru_Echo(format("/qgt %s", tostring(SlashText)), true) |
-- if SlashText == "show" then |
-- QGT_QuestWatchFrame:Show(); |
-- QGT_AchievementWatchFrame:Show(); |
-- elseif SlashText == "var1" then |
-- QuestGuru_Echo(format("QGT_Settings.LastTracker: %s", tostring(QGT_Settings.LastTracker)), true); |
-- QuestGuru_Echo(format("QGT_Settings.BothTrackers: %s", tostring(QGT_Settings.BothTrackers)), true); |
-- QuestGuru_Echo(format("QGT_Settings.AchievementWatch.AutoMinimize: %s", tostring(QGT_Settings.AchievementWatch.AutoMinimize)), true); |
-- elseif SlashText == "U" then |
-- QuestGuru_Echo("call: QGT_WatchFrame_Update()", true) |
-- QGT_WatchFrame_Update(); |
-- QuestGuru_Echo("back: QGT_WatchFrame_Update()", true) |
-- elseif SlashText == "UA" then |
-- QGT_AchievementWatch_Update(); |
-- elseif SlashText == "UQ" then |
-- QGT_QuestWatch_Update(); |
-- end |
--end |
--SLASH_QGT1 = "/qgt" -- Slash command 1 |
--SlashCmdList["QGT"] = A.SlashHandlerT -- Register our SlashCmdListMemberFunction |
## Title: QuestGuru |
## Notes: Quest Log Enhancement |
## Author: MrOBrian/Gregity |
## Version: 2.2.17-50400 |
## Version: 2.2.18-50400 |
## SavedVariables: QuestGuru_Items, QuestGuru_Settings |
## SavedVariablesPerCharacter: |
ChatThrottleLib.lua |
QuestGuru ChangeLog |
=================== |
Version 2.2.18-50400 |
------------- |
QuestGuru |
(no changes) |
QuestGuru_Tracker |
* Normalizing the version numbers between QuestGuru & QuestGuru_Tracker to the same value. This will be the main change log henceforth. |
* fix Achievement to ignore update events that happen during portals (between leaving and entering world events) |
The update event would fire, but Blizzard was reporting no achievements during that time so the QGT would |
"UnTrack" the Achievements and so there would be none when the display tried to update (and therefore currLine was zero and j was nil) |
* Look at the oldChangeLog in QuestGuru_Tracker for older updates to the tracker |
Version 2.2.17-50400 (QuestGuru) |
------------- |
* Changing the Version number so Curse will see that it's different |