Not related to the current testing. Took first step at removing Cartographer and was nice enough to warn people, removed connections to Changes command as the log hasn't been updated and I'm not going to right now, and attempted to address Issue 50.
Cette révision appartient à :
Parent
a0605af3be
révision
b8624952c5
|
@ -16,7 +16,6 @@
|
|||
|
||||
# Explanation of optional deps:
|
||||
# Cartographer_Waypoints and Tomtom are there so I can link with their arrows properly.
|
||||
# Cartographer_InstanceMaps: Cartographer is terrible. See cartographer_is_terrible.lua.
|
||||
# Swatter really likes intercepting all error messages and not letting them through. Since I want to intercept my own messages, I go after Swatter so I can insert my hook earlier on.
|
||||
# Tekticles is around because, if QH loads before it does, then QH doesn't use its custom fonts, and I think its custom fonts are pretty. There's probably a better solution to this, but it turns out I'm incredibly lazy, so, meh.
|
||||
# UnicodeFont: see Tekticles
|
||||
|
@ -232,7 +231,6 @@ collect_warp.lua
|
|||
collect.lua
|
||||
|
||||
cartographer.lua
|
||||
cartographer_is_terrible.lua
|
||||
tomtom.lua
|
||||
arrow.lua
|
||||
|
||||
|
|
|
@ -1,44 +1,31 @@
|
|||
QuestHelper_File["cartographer_is_terrible.lua"] = "4.0.1.$svnversion$"
|
||||
QuestHelper_Loadtime["cartographer_is_terrible.lua"] = GetTime()
|
||||
-- QuestHelper_File["cartographer_is_terrible.lua"] = "4.0.1.$svnversion$"
|
||||
-- QuestHelper_Loadtime["cartographer_is_terrible.lua"] = GetTime()
|
||||
|
||||
-- http://gunnerkrigg.wikia.com/wiki/Category:Terrible
|
||||
|
||||
if Cartographer and Cartographer.SetCurrentInstance and Cartographer_InstanceMaps and Cartographer_InstanceMaps.OnEnable and not Cartographer.TheInstanceBugIsFixedAlready_YouCanStopHackingIt then
|
||||
local nop = function () end
|
||||
-- if Cartographer and Cartographer.SetCurrentInstance and Cartographer_InstanceMaps and Cartographer_InstanceMaps.OnEnable then
|
||||
-- local nop = function () end
|
||||
|
||||
function hookitsbrainsout(name)
|
||||
local oldfunc = _G[name]
|
||||
_G[name] = function(...)
|
||||
local temp = WorldMapLevelDropDown_Update
|
||||
WorldMapLevelDropDown_Update = nop -- YOINK
|
||||
oldfunc(...)
|
||||
WorldMapLevelDropDown_Update = temp -- KNIOY
|
||||
end
|
||||
end
|
||||
-- function hookitsbrainsout(name)
|
||||
-- local oldfunc = _G[name]
|
||||
-- _G[name] = function(...)
|
||||
-- local temp = WorldMapLevelDropDown_Update
|
||||
-- WorldMapLevelDropDown_Update = nop -- YOINK
|
||||
-- oldfunc(...)
|
||||
-- WorldMapLevelDropDown_Update = temp -- KNIOY
|
||||
-- end
|
||||
-- end
|
||||
|
||||
local oldenable = Cartographer_InstanceMaps.OnEnable
|
||||
function Cartographer_InstanceMaps:OnEnable(...)
|
||||
oldenable(self, ...)
|
||||
-- local oldenable = Cartographer_InstanceMaps.OnEnable
|
||||
-- function Cartographer_InstanceMaps:OnEnable(...)
|
||||
-- oldenable(self, ...)
|
||||
|
||||
hookitsbrainsout("SetMapZoom")
|
||||
hookitsbrainsout("SetMapToCurrentZone")
|
||||
end
|
||||
-- hookitsbrainsout("SetMapZoom")
|
||||
-- hookitsbrainsout("SetMapToCurrentZone")
|
||||
-- end
|
||||
|
||||
-- BEHOLD, MY MADNESS! BEHOLD AND SUFFER
|
||||
|
||||
-- BEHOOOOOOLD
|
||||
end
|
||||
|
||||
|
||||
|
||||
-- okay okay I guess I'll explain
|
||||
-- end
|
||||
|
||||
-- There's a bug in Cartographer where SetMapZoom() or SetMapToCurrentZone(), called in an instance, causes any open menus to instantly close. Questhelper (and in general, anything that uses Astrolabe, and other UI mods as well) call those function every frame if the map is closed. This isn't a performance problem or anything, but it happens to trigger the Cartographer bug.
|
||||
|
||||
-- The top two bugs on the Cartographer tracker are both this one, as well as a third bug listed later down. I've talked to both of the possibly-main Cartographer maintainers about fixing it, neither are interested. It's pretty clearly not going to be fixed.
|
||||
|
||||
-- So here's a hack. The problem is the WorldMapLevelDropDown_Update call which, after a few nested calls, is eventually called. Why's it there? I dunno. What will removing it break? Not a clue. This cute little hook automatically disables it during the call of the important functions. Will this be a problem for Cartographer? Damned if I know. Will it be *my* problem? No! No it will not.
|
||||
|
||||
-- If the Cartographer crew ever fixes it properly, this hook can be disabled by simply doing Cartographer.TheInstanceBugIsFixedAlready_YouCanStopHackingIt = true. And it will go away. Until then, the bug will go away.
|
||||
|
||||
-- LOOK HOW MUCH MY PROBLEM THIS ISN'T ANYMORE
|
||||
-- So here's a hack. The problem is the WorldMapLevelDropDown_Update call which, after a few nested calls, is eventually called. Why's it there? I dunno. What will removing it break? Not a clue. This cute little hook automatically disables it during the call of the important functions. Will this be a problem for Cartographer? Damned if I know. Will it be *my* problem? No! No it will not.
|
|
@ -7,33 +7,24 @@ QuestHelper_Loadtime["config.lua"] = GetTime()
|
|||
--[[
|
||||
The MIT License
|
||||
|
||||
Copyright (c) <year> <copyright holders>
|
||||
Copyright (c) 2010 Robert Beam
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy
|
||||
of this software and associated documentation files (the "Software"), to
|
||||
deal
|
||||
in the Software without restriction, including without limitation the
|
||||
rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
sell
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
THE
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
IN
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
]]
|
||||
|
||||
|
@ -293,15 +284,15 @@ function addon:GenerateOptions()
|
|||
QuestHelper:Submit();
|
||||
end,
|
||||
},
|
||||
Changes = {
|
||||
type = "execute",
|
||||
order = 6,
|
||||
name = L["ActionsChangesName"],
|
||||
desc = L["ActionsChangesDesc"],
|
||||
func = function()
|
||||
QuestHelper:ChangeLog();
|
||||
end,
|
||||
},
|
||||
-- Changes = {
|
||||
-- type = "execute",
|
||||
-- order = 6,
|
||||
-- name = L["ActionsChangesName"],
|
||||
-- desc = L["ActionsChangesDesc"],
|
||||
-- func = function()
|
||||
-- QuestHelper:ChangeLog();
|
||||
-- end,
|
||||
-- },
|
||||
},
|
||||
},
|
||||
AdditionalInfo = {
|
||||
|
@ -759,7 +750,7 @@ function addon:GenerateOptions()
|
|||
if QuestHelper_Pref['share'] and not QuestHelper_Pref['solo'] then
|
||||
QuestHelper:SetShare(true);
|
||||
elseif QuestHelper_Pref['solo'] then
|
||||
QusetHelper:SetShare(false);
|
||||
QuestHelper:SetShare(false);
|
||||
end
|
||||
end,
|
||||
},
|
||||
|
@ -936,37 +927,37 @@ function addon:GenerateOptions()
|
|||
type = "description",
|
||||
name = L["PluginIntro"],
|
||||
},
|
||||
Cartographer = {
|
||||
order = 2,
|
||||
type = "group",
|
||||
guiInline = true,
|
||||
name = L["PluginCartographerName"],
|
||||
desc = L["PluginCartographerDesc"],
|
||||
disabled = function()
|
||||
return not Cartographer_Waypoints or QuestHelper_Pref['hide'];
|
||||
end,
|
||||
args = {
|
||||
Arrow = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["CartographerArrowName"],
|
||||
desc = L["CartographerArrowDesc"],
|
||||
get = function(i)
|
||||
return QuestHelper_Pref['cart_wp_new'];
|
||||
end,
|
||||
set = function(i, v)
|
||||
QuestHelper_Pref['cart_wp_new'] = v;
|
||||
if QuestHelper_Pref['cart_wp_new'] then
|
||||
QuestHelper:EnableCartographer();
|
||||
else
|
||||
QuestHelper:DisableCartographer();
|
||||
end
|
||||
end,
|
||||
},
|
||||
},
|
||||
},
|
||||
-- Cartographer = {
|
||||
-- order = 2,
|
||||
-- type = "group",
|
||||
-- guiInline = true,
|
||||
-- name = L["PluginCartographerName"],
|
||||
-- desc = L["PluginCartographerDesc"],
|
||||
-- disabled = function()
|
||||
-- return not Cartographer_Waypoints or QuestHelper_Pref['hide'];
|
||||
-- end,
|
||||
-- args = {
|
||||
-- Arrow = {
|
||||
-- order = 1,
|
||||
-- type = "toggle",
|
||||
-- name = L["CartographerArrowName"],
|
||||
-- desc = L["CartographerArrowDesc"],
|
||||
-- get = function(i)
|
||||
-- return QuestHelper_Pref['cart_wp_new'];
|
||||
-- end,
|
||||
-- set = function(i, v)
|
||||
-- QuestHelper_Pref['cart_wp_new'] = v;
|
||||
-- if QuestHelper_Pref['cart_wp_new'] then
|
||||
-- QuestHelper:EnableCartographer();
|
||||
-- else
|
||||
-- QuestHelper:DisableCartographer();
|
||||
-- end
|
||||
-- end,
|
||||
-- },
|
||||
-- },
|
||||
-- },
|
||||
TomTom = {
|
||||
order = 3,
|
||||
order = 2,
|
||||
type = "group",
|
||||
guiInline = true,
|
||||
name = L["PluginTomTomName"],
|
||||
|
@ -1161,10 +1152,6 @@ l:RegisterData("enUS", {
|
|||
["PluginOptionsName"] = "Plugin Options",
|
||||
["PluginOptionsDesc"] = "",
|
||||
["PluginIntro"] = "Options for 3rd party addons. 3rd party addons need to be installed for these options to be available",
|
||||
["PluginCartographerName"] = "Cartographer options",
|
||||
["PluginCartographerDesc"] = "",
|
||||
["CartographerArrowName"] = "Waypoint Arrow",
|
||||
["CartographerArrowDesc"] = "Use the Cartographer Waypoint Arrow instead of the built-in QuestHelper arrow",
|
||||
["PluginTomTomName"] = "TomTom options",
|
||||
["PluginTomTomDesc"] = "",
|
||||
["TomTomArrowName"] = "Waypoint Arrow",
|
||||
|
@ -1244,8 +1231,6 @@ L["ArrowScaleDesc"] = "Wegpfeilgr\195\182\195\159e (100% ist Normalgr\195\182\19
|
|||
L["ArrowScaleName"] = "Gr\195\182\195\159e"
|
||||
L["ArrowTextSizeDesc"] = "Gr\195\182\195\159e des Wegpfeiltextes (100% ist Normalgr\195\182\195\159e)"
|
||||
L["ArrowTextSizeName"] = "Textgr\195\182\195\159e"
|
||||
L["CartographerArrowDesc"] = "Verwende Wegpfeil von Cartograpfer anstelle des eingebauten QuestHelper-Wegpfeils"
|
||||
L["CartographerArrowName"] = "Wegepunkt Pfeil"
|
||||
L["FilterGroupName"] = "Gruppenquests"
|
||||
L["FilterGroupSizeName"] = "Gruppengr\195\182\195\159e"
|
||||
L["FilterLevelDesc"] = "Quests ausblenden, die ein h\195\182heres Level haben als man selbst"
|
||||
|
|
|
@ -625,9 +625,10 @@ function QuestHelper:ToggleMapButton()
|
|||
end
|
||||
end
|
||||
|
||||
function QuestHelper:ChangeLog()
|
||||
self:ShowText(QuestHelper_ChangeLog, string.format("QuestHelper %s ChangeLog", QuestHelper_Version))
|
||||
end
|
||||
-- Commenting out change log because it hasn't been updated
|
||||
-- function QuestHelper:ChangeLog()
|
||||
-- self:ShowText(QuestHelper_ChangeLog, string.format("QuestHelper %s ChangeLog", QuestHelper_Version))
|
||||
-- end
|
||||
|
||||
function QuestHelper:Submit()
|
||||
-- The line below is a reference to the upload artwork. Re-insert it as the first line below "self:ShowText([[" once the artwork has been changed.
|
||||
|
@ -717,19 +718,13 @@ QuestHelper currently survives on |cffff8000your donations|r. I'm trying to make
|
|||
There's a lot of stuff I plan to add if I can get enough donations to live off. Some of the most-requested features include:
|
||||
|
||||
|cff40bbffReduced memory and CPU usage for smoother gameplay|r
|
||||
|
||||
|cff40bbffFlying mount support for both Northrend and Outland|r
|
||||
|
||||
|cff40bbffBetter support for Northrend "phased" quests|r
|
||||
|
||||
|cff40bbffAchievementHelper, built right into QuestHelper|r
|
||||
|
||||
|cff40bbffBetter support for "phased" quests and areas|r
|
||||
|cff40bbffEnhamcements to the quest tracker|r
|
||||
|cff40bbffPaths that lead you around obstacles instead of through them|r
|
||||
|cff40bbffIntegrating archeology digsites into the routing|r
|
||||
|
||||
I can't guarantee these will show up soon, as there's a lot of work involved in them, but every donation - no matter how small - helps!
|
||||
|
||||
To donate, open up your web browser and go to |cffff8000http://www.quest-helper.com/donate|r. Enter however much you feel comfortable donating, then bask in the knowledge that you're supporting QuestHelper.
|
||||
|
||||
Thanks!]], "Please Donate!", 500, 20, 10)
|
||||
end
|
||||
|
||||
|
@ -959,9 +954,9 @@ commands =
|
|||
{"VERSION",
|
||||
"Displays QuestHelper's version.", {}, QuestHelper.PrintVersion, QuestHelper},
|
||||
|
||||
{"CHANGES",
|
||||
"Displays a summary of changes recently made to QuestHelper.",
|
||||
{}, QuestHelper.ChangeLog, QuestHelper},
|
||||
-- {"CHANGES",
|
||||
-- "Displays a summary of changes recently made to QuestHelper.",
|
||||
-- {}, QuestHelper.ChangeLog, QuestHelper},
|
||||
|
||||
--[[{"DONATE",
|
||||
"Displays some instructions and a link for donating.",
|
||||
|
|
|
@ -244,7 +244,6 @@ QH_Event("ADDON_LOADED", function (addonid)
|
|||
["tracker.lua"] = true,
|
||||
["objtips.lua"] = true,
|
||||
["cartographer.lua"] = true,
|
||||
["cartographer_is_terrible.lua"] = true,
|
||||
["tomtom.lua"] = true,
|
||||
["textviewer.lua"] = true,
|
||||
["error.lua"] = true,
|
||||
|
@ -620,6 +619,12 @@ QH_Event("ADDON_LOADED", function (addonid)
|
|||
end
|
||||
end)
|
||||
|
||||
-- There's a bug in Cartographer where SetMapZoom() or SetMapToCurrentZone(), called in an instance, causes any open menus to instantly close. Questhelper (and in general, anything that uses Astrolabe, and other UI mods as well) call those function every frame if the map is closed. This isn't a performance problem or anything, but it happens to trigger the Cartographer bug.
|
||||
-- Removing Cartographer_InstanceMaps hack. Warn user.
|
||||
if Cartographer and Cartographer.SetCurrentInstance and Cartographer_InstanceMaps and Cartographer_InstanceMaps.OnEnable then
|
||||
QH_fixedmessage("Cartographer is no longer supported. Your interface may not work properly in instances. Please remove Cartographer and restart WoW.")
|
||||
end
|
||||
|
||||
QuestHelper.loading_init3:SetPercentage(1.0) -- victory
|
||||
|
||||
QuestHelper_Loadtime["init3_end"] = GetTime()
|
||||
|
|
|
@ -159,7 +159,7 @@ function QuestHelper:DoSettingsMenu()
|
|||
-- Stuff to read.
|
||||
submenu = self:CreateMenu()
|
||||
self:CreateMenuItem(submenu, QHText("MENU_HELP_SLASH")):SetFunction(self.Help, self)
|
||||
self:CreateMenuItem(submenu, QHText("MENU_HELP_CHANGES")):SetFunction(self.ChangeLog, self)
|
||||
-- self:CreateMenuItem(submenu, QHText("MENU_HELP_CHANGES")):SetFunction(self.ChangeLog, self)
|
||||
self:CreateMenuItem(submenu, QHText("MENU_HELP_SUBMIT")):SetFunction(self.Submit, self)
|
||||
self:CreateMenuItem(menu, QHText("MENU_HELP")):SetSubmenu(submenu)
|
||||
|
||||
|
|
Référencer dans un nouveau ticket