Comparer les révisions
8 Révisions
master
...
origin/Mil
Auteur | SHA1 | Date |
---|---|---|
Nathanial.C.Jones | 032002e507 | |
Nathanial.C.Jones | 7bc12fa596 | |
Nathanial.C.Jones | 86b2b57331 | |
Nathanial.C.Jones | 0f735165cd | |
Nathanial.C.Jones | 0029a39650 | |
Nathanial.C.Jones | b4952a5ec5 | |
Nathanial.C.Jones | 4a360cccde | |
Nathanial.C.Jones | 7d0b1f576c |
|
@ -0,0 +1,23 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo Exporting files.
|
||||||
|
svn export https://questhelperredux.googlecode.com/svn/trunk/ build
|
||||||
|
let version=`svnversion`
|
||||||
|
|
||||||
|
cd build
|
||||||
|
|
||||||
|
echo Replacing version tag.
|
||||||
|
sed -i "s/\\\$svnversion\\\$/${version}a/g" QuestHelper/QuestHelper.toc
|
||||||
|
|
||||||
|
echo Zipping up the package.
|
||||||
|
zip -vr QuestHelper_Redux-4.0.1.${version}a.zip QuestHelper/
|
||||||
|
|
||||||
|
echo Moving the package up one directory level.
|
||||||
|
mv -v *.zip ..
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
echo Cleaning up.
|
||||||
|
rm -rvf build
|
||||||
|
|
||||||
|
echo Completed exporting and packaging revision $version
|
|
@ -0,0 +1,23 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo Exporting files.
|
||||||
|
svn export https://questhelperredux.googlecode.com/svn/trunk/ build
|
||||||
|
let version=`svnversion`
|
||||||
|
|
||||||
|
cd build
|
||||||
|
|
||||||
|
echo Replacing version tag.
|
||||||
|
sed -i "s/\\\$svnversion\\\$/${version}b/g" QuestHelper/QuestHelper.toc
|
||||||
|
|
||||||
|
echo Zipping up the package.
|
||||||
|
zip -vr QuestHelper_Redux-4.0.1.${version}b.zip QuestHelper/
|
||||||
|
|
||||||
|
echo Moving the package up one directory level.
|
||||||
|
mv -v *.zip ..
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
echo Cleaning up.
|
||||||
|
rm -rvf build
|
||||||
|
|
||||||
|
echo Completed exporting and packaging revision $version
|
|
@ -0,0 +1,23 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo Exporting files.
|
||||||
|
svn export https://questhelperredux.googlecode.com/svn/trunk/ build
|
||||||
|
let version=`svnversion`
|
||||||
|
|
||||||
|
cd build
|
||||||
|
|
||||||
|
echo Replacing version tag.
|
||||||
|
sed -i "s/\\\$svnversion\\\$/${version}r/g" QuestHelper/QuestHelper.toc
|
||||||
|
|
||||||
|
echo Zipping up the package.
|
||||||
|
zip -vr QuestHelper_Redux-4.0.1.${version}r.zip QuestHelper/
|
||||||
|
|
||||||
|
echo Moving the package up one directory level.
|
||||||
|
mv -v *.zip ..
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
echo Cleaning up.
|
||||||
|
rm -rvf build
|
||||||
|
|
||||||
|
echo Completed exporting and packaging revision $version
|
Avant Largeur: | Hauteur: | Taille: 4.0 KiB Après Largeur: | Hauteur: | Taille: 4.0 KiB |
|
@ -1,14 +1,13 @@
|
||||||
## Interface: 40000
|
## Interface: 40000
|
||||||
## Title: QuestHelper
|
## Title: QuestHelper
|
||||||
## Author: zorbathut, smariot, vipersniper, nesher, nconantj
|
## Author: zorbathut, smariot, vipersniper, nesher, nconantj
|
||||||
## Notes: Calculates an optimal route for you to follow while questing. True version is 4.0.1.101025a. Due to internal versioning issues, QuestHelper will not load properly if the version line below is altered. This will be fixed after all other bugs.
|
## Notes: Calculates an optimal route for you to follow while questing.
|
||||||
## Notes: TODO (In no particular order): Fix internal versioning to work with new version numbering system. Add carbonite support (for those who don't like carb's quest tracking, but likes carb's maximized map). Pull Libraries from libs folder and put them at the top level. Use Wowhead database. Modularize internal components. Use lang folder for ALL localization files. Determine locale and load only that locale's localization files (load English and create non-critical error if localization files for locale do not exist). Integrate enhancement addons that may exist (ask authors to merge and become developers). Rename variables and improve comments.
|
|
||||||
## Notes-deDE: Berechnet eine optimale Route für dich, der du während dem Questen folgen kannst.
|
## Notes-deDE: Berechnet eine optimale Route für dich, der du während dem Questen folgen kannst.
|
||||||
## Notes-frFR: Calcule un itinéraire optimal pour vous de suivre.
|
## Notes-frFR: Calcule un itinéraire optimal pour vous de suivre.
|
||||||
## Notes-esES: Calcula la mejor ruta a seguir para usted.
|
## Notes-esES: Calcula la mejor ruta a seguir para usted.
|
||||||
## Notes-esMX: Calcula la mejor ruta a seguir para usted.
|
## Notes-esMX: Calcula la mejor ruta a seguir para usted.
|
||||||
## Notes-koKR: 노선에 대한 계산을 수행합니다.
|
## Notes-koKR: 노선에 대한 계산을 수행합니다.
|
||||||
## Version: 1.4.0
|
## Version: 4.0.1.$svnversion$
|
||||||
## OptionalDeps: Cartographer_Waypoints, TomTom, Cartographer_InstanceMaps, !Swatter, tekticles, UnicodeFont, ClearFont2
|
## OptionalDeps: Cartographer_Waypoints, TomTom, Cartographer_InstanceMaps, !Swatter, tekticles, UnicodeFont, ClearFont2
|
||||||
## SavedVariables: QuestHelper_Pref QuestHelper_UID QuestHelper_SaveDate QuestHelper_Errors QuestHelper_Collector QuestHelper_Collector_Version
|
## SavedVariables: QuestHelper_Pref QuestHelper_UID QuestHelper_SaveDate QuestHelper_Errors QuestHelper_Collector QuestHelper_Collector_Version
|
||||||
## SavedVariablesPerCharacter: QuestHelper_KnownFlightRoutes QuestHelper_Home QuestHelper_CharVersion QuestHelper_Flight_Updates
|
## SavedVariablesPerCharacter: QuestHelper_KnownFlightRoutes QuestHelper_Home QuestHelper_CharVersion QuestHelper_Flight_Updates
|
||||||
|
@ -43,7 +42,7 @@
|
||||||
# Per-character stuff needs to be consolidated as well, which will happen in some future version. I need to see how it handles *removing* variables. And yeah we're adding more per-character stuff already argharblrghab
|
# Per-character stuff needs to be consolidated as well, which will happen in some future version. I need to see how it handles *removing* variables. And yeah we're adding more per-character stuff already argharblrghab
|
||||||
|
|
||||||
# Exists just for load-profiling's sake
|
# Exists just for load-profiling's sake
|
||||||
bst_pre.lua
|
bst\bst_pre.lua
|
||||||
|
|
||||||
# Loads before everything else so we can catch errors in everything else
|
# Loads before everything else so we can catch errors in everything else
|
||||||
error.lua
|
error.lua
|
||||||
|
@ -52,28 +51,28 @@ error.lua
|
||||||
utility.lua
|
utility.lua
|
||||||
|
|
||||||
# Event manager module. Depends on nothing, calls no external functions.
|
# Event manager module. Depends on nothing, calls no external functions.
|
||||||
manager_event.lua
|
manager\manager_event.lua
|
||||||
|
|
||||||
bst_libaboutpanel.lua
|
bst\bst_libaboutpanel.lua
|
||||||
libs\LibStub\LibStub.lua
|
libs\LibStub\LibStub.lua
|
||||||
libs\CallbackHandler-1.0\CallbackHandler-1.0.xml
|
libs\CallbackHandler-1.0\CallbackHandler-1.0.xml
|
||||||
libs\LibDataBroker-1.1\LibDataBroker-1.1.lua
|
libs\LibDataBroker-1.1\LibDataBroker-1.1.lua
|
||||||
libs\AceGUI-3.0\AceGUI-3.0.xml
|
libs\AceGUI-3.0\AceGUI-3.0.xml
|
||||||
libs\AceConfig-3.0\AceConfig-3.0.xml
|
libs\AceConfig-3.0\AceConfig-3.0.xml
|
||||||
|
|
||||||
bst_astrolabe.lua
|
bst\bst_astrolabe.lua
|
||||||
libs\AstrolabeQH\Load.xml
|
libs\AstrolabeQH\Load.xml
|
||||||
|
|
||||||
bst_ctl.lua
|
bst\bst_ctl.lua
|
||||||
libs\ChatThrottleLib\ChatThrottleLib.xml
|
libs\ChatThrottleLib\ChatThrottleLib.xml
|
||||||
|
|
||||||
bst_range.lua
|
bst\bst_range.lua
|
||||||
libs\LibRangeCheck-2.0\CallbackHandler-1.0\CallbackHandler-1.0.xml
|
libs\LibRangeCheck-2.0\CallbackHandler-1.0\CallbackHandler-1.0.xml
|
||||||
libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua
|
libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua
|
||||||
|
|
||||||
changes.lua
|
changes.lua
|
||||||
|
|
||||||
lang.lua
|
lang\lang.lua
|
||||||
lang\cscz.lua
|
lang\cscz.lua
|
||||||
lang\dadk.lua
|
lang\dadk.lua
|
||||||
lang\dede.lua
|
lang\dede.lua
|
||||||
|
@ -99,36 +98,36 @@ lang\zhcn.lua
|
||||||
lang\zhtw.lua
|
lang\zhtw.lua
|
||||||
|
|
||||||
# This is kind of a lot of files.
|
# This is kind of a lot of files.
|
||||||
static.lua
|
lang\static.lua
|
||||||
static_1.lua
|
lang\static_1.lua
|
||||||
static_2.lua
|
lang\static_2.lua
|
||||||
static_deDE.lua
|
lang\static_deDE.lua
|
||||||
static_deDE_1.lua
|
lang\static_deDE_1.lua
|
||||||
static_deDE_2.lua
|
lang\static_deDE_2.lua
|
||||||
static_enUS.lua
|
lang\static_enUS.lua
|
||||||
static_enUS_1.lua
|
lang\static_enUS_1.lua
|
||||||
static_enUS_2.lua
|
lang\static_enUS_2.lua
|
||||||
static_esES.lua
|
lang\static_esES.lua
|
||||||
static_esES_1.lua
|
lang\static_esES_1.lua
|
||||||
static_esES_2.lua
|
lang\static_esES_2.lua
|
||||||
static_esMX.lua
|
lang\static_esMX.lua
|
||||||
static_esMX_1.lua
|
lang\static_esMX_1.lua
|
||||||
static_esMX_2.lua
|
lang\static_esMX_2.lua
|
||||||
static_frFR.lua
|
lang\static_frFR.lua
|
||||||
static_frFR_1.lua
|
lang\static_frFR_1.lua
|
||||||
static_frFR_2.lua
|
lang\static_frFR_2.lua
|
||||||
static_koKR.lua
|
lang\static_koKR.lua
|
||||||
static_koKR_1.lua
|
lang\static_koKR_1.lua
|
||||||
static_koKR_2.lua
|
lang\static_koKR_2.lua
|
||||||
static_ruRU.lua
|
lang\static_ruRU.lua
|
||||||
static_ruRU_1.lua
|
lang\static_ruRU_1.lua
|
||||||
static_ruRU_2.lua
|
lang\static_ruRU_2.lua
|
||||||
static_zhTW.lua
|
lang\static_zhTW.lua
|
||||||
static_zhTW_1.lua
|
lang\static_zhTW_1.lua
|
||||||
static_zhTW_2.lua
|
lang\static_zhTW_2.lua
|
||||||
|
|
||||||
# oh shut up
|
# oh shut up
|
||||||
collect_notifier.lua
|
collect\collect_notifier.lua
|
||||||
|
|
||||||
# Memory management, depends on nothing, calls nothing. I don't mention when things depend on this - it's not as extensively used as it used to be, but it's still under basic-utilities.
|
# Memory management, depends on nothing, calls nothing. I don't mention when things depend on this - it's not as extensively used as it used to be, but it's still under basic-utilities.
|
||||||
recycle.lua
|
recycle.lua
|
||||||
|
@ -143,45 +142,45 @@ db_get.lua
|
||||||
timeslice.lua
|
timeslice.lua
|
||||||
|
|
||||||
# Achievement manager, depends on timeslice
|
# Achievement manager, depends on timeslice
|
||||||
manager_achievement.lua
|
manager\manager_achievement.lua
|
||||||
|
|
||||||
# Completed-quests manager, depends on events or something
|
# Completed-quests manager, depends on events or something
|
||||||
# you know I need to come up with a good way to handle dependencies someday
|
# you know I need to come up with a good way to handle dependencies someday
|
||||||
#
|
#
|
||||||
# someday
|
# someday
|
||||||
manager_completed.lua
|
manager\manager_completed.lua
|
||||||
|
|
||||||
# Graph module. Depends on nothing, calls no external functions.
|
# Graph module. Depends on nothing, calls no external functions.
|
||||||
graph_core.lua
|
graph\graph_core.lua
|
||||||
graph_flightpath.lua
|
graph\graph_flightpath.lua
|
||||||
|
|
||||||
# Routing module. Depends on Timeslice and Filters, calls almost no external functions (handles its own get-player-position stuff via RetrieveRawLocation, but that's it.)
|
# Routing module. Depends on Timeslice and Filters, calls almost no external functions (handles its own get-player-position stuff via RetrieveRawLocation, but that's it.)
|
||||||
routing_debug.lua
|
routing\routing_debug.lua
|
||||||
routing_loc.lua
|
routing\routing_loc.lua
|
||||||
routing_route.lua
|
routing\routing_route.lua
|
||||||
routing_core.lua
|
routing\routing_core.lua
|
||||||
routing_controller.lua
|
routing\routing_controller.lua
|
||||||
# this segment uses the menu system as well
|
# this segment uses the menu system as well
|
||||||
routing_hidden.lua
|
routing\routing_hidden.lua
|
||||||
|
|
||||||
# Filters. Pays attention to QH_pref but not a lot more.
|
# Filters. Pays attention to QH_pref but not a lot more.
|
||||||
filter_core.lua
|
filter\filter_core.lua
|
||||||
filter_base.lua
|
filter\filter_base.lua
|
||||||
|
|
||||||
# New tooltip system. Depends on nothing, calls nothing besides WoW UI.
|
# New tooltip system. Depends on nothing, calls nothing besides WoW UI.
|
||||||
tooltip.lua
|
tooltip.lua
|
||||||
|
|
||||||
# Directors
|
# Directors
|
||||||
# Quest module. Depends on Database, Routing, Patterns, Tooltip, and Event Manager, interfaces with WoW UI.
|
# Quest module. Depends on Database, Routing, Patterns, Tooltip, and Event Manager, interfaces with WoW UI.
|
||||||
director_quest.lua
|
director\director_quest.lua
|
||||||
director_achievement.lua
|
director\director_achievement.lua
|
||||||
director_find.lua
|
director\director_find.lua
|
||||||
|
|
||||||
# Map and minimap dodads. Old code. Depends on nothing, interfaces with WoW UI.
|
# Map and minimap dodads. Old code. Depends on nothing, interfaces with WoW UI.
|
||||||
dodads.lua
|
dodads\dodads.lua
|
||||||
|
|
||||||
# Wacky arbitrary triangle render code
|
# Wacky arbitrary triangle render code
|
||||||
dodads_triangles.lua
|
dodads\dodads_triangles.lua
|
||||||
|
|
||||||
# New coordinator system. Depends on pretty much everything.
|
# New coordinator system. Depends on pretty much everything.
|
||||||
core.lua
|
core.lua
|
||||||
|
@ -197,7 +196,7 @@ objective.lua
|
||||||
quest.lua
|
quest.lua
|
||||||
teleport.lua
|
teleport.lua
|
||||||
pathfinding.lua
|
pathfinding.lua
|
||||||
routing.lua
|
routing\routing.lua
|
||||||
custom.lua
|
custom.lua
|
||||||
menu.lua
|
menu.lua
|
||||||
nag.lua
|
nag.lua
|
||||||
|
@ -209,27 +208,27 @@ objtips.lua
|
||||||
textviewer.lua
|
textviewer.lua
|
||||||
help.lua
|
help.lua
|
||||||
|
|
||||||
collect_achievement.lua
|
collect\collect_achievement.lua
|
||||||
collect_lzw.lua
|
collect\collect_lzw.lua
|
||||||
collect_traveled.lua
|
collect\collect_traveled.lua
|
||||||
collect_location.lua
|
collect\collect_location.lua
|
||||||
collect_zone.lua
|
collect\collect_zone.lua
|
||||||
collect_merger.lua
|
collect\collect_merger.lua
|
||||||
collect_monster.lua
|
collect\collect_monster.lua
|
||||||
collect_item.lua
|
collect\collect_item.lua
|
||||||
collect_object.lua
|
collect\collect_object.lua
|
||||||
collect_loot.lua
|
collect\collect_loot.lua
|
||||||
collect_patterns.lua
|
collect\collect_patterns.lua
|
||||||
collect_flight.lua
|
collect\collect_flight.lua
|
||||||
collect_util.lua
|
collect\collect_util.lua
|
||||||
collect_quest.lua
|
collect\collect_quest.lua
|
||||||
collect_equip.lua
|
collect\collect_equip.lua
|
||||||
collect_spec.lua
|
collect\collect_spec.lua
|
||||||
collect_bitstream.lua
|
collect\collect_bitstream.lua
|
||||||
collect_upgrade.lua
|
collect\collect_upgrade.lua
|
||||||
collect_merchant.lua
|
collect\collect_merchant.lua
|
||||||
collect_warp.lua
|
collect\collect_warp.lua
|
||||||
collect.lua
|
collect\collect.lua
|
||||||
|
|
||||||
cartographer.lua
|
cartographer.lua
|
||||||
cartographer_is_terrible.lua
|
cartographer_is_terrible.lua
|
||||||
|
@ -238,4 +237,4 @@ arrow.lua
|
||||||
|
|
||||||
config.lua
|
config.lua
|
||||||
|
|
||||||
bst_post.lua
|
bst\bst_post.lua
|
||||||
|
|
|
@ -110,8 +110,8 @@ QH_Hook(wayframe, "OnDragStop", OnDragStop)
|
||||||
wayframe:RegisterForDrag("LeftButton")
|
wayframe:RegisterForDrag("LeftButton")
|
||||||
|
|
||||||
wayframe.arrow = wayframe:CreateTexture("OVERLAY")
|
wayframe.arrow = wayframe:CreateTexture("OVERLAY")
|
||||||
--wayframe.arrow:SetTexture("Interface\\AddOns\\QuestHelper\\arrow_image_down") -- if we don't do this, the image doesn't seem to end up cached. :blizzard:
|
--wayframe.arrow:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\arrow_image_down") -- if we don't do this, the image doesn't seem to end up cached. :blizzard:
|
||||||
wayframe.arrow:SetTexture("Interface\\AddOns\\QuestHelper\\arrow_image")
|
wayframe.arrow:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\arrow_image")
|
||||||
wayframe.arrow:SetAllPoints()
|
wayframe.arrow:SetAllPoints()
|
||||||
|
|
||||||
local active_point, arrive_distance, showDownArrow, point_title
|
local active_point, arrive_distance, showDownArrow, point_title
|
||||||
|
@ -216,7 +216,7 @@ OnUpdate = function()
|
||||||
if not showDownArrow then
|
if not showDownArrow then
|
||||||
showDownArrow = true
|
showDownArrow = true
|
||||||
QH_Arrow_SetScale()
|
QH_Arrow_SetScale()
|
||||||
arrow:SetTexture("Interface\\AddOns\\QuestHelper\\arrow_image_down")
|
arrow:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\arrow_image_down")
|
||||||
arrow:SetVertexColor(0, 1, 0)
|
arrow:SetVertexColor(0, 1, 0)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -234,7 +234,7 @@ OnUpdate = function()
|
||||||
if showDownArrow then
|
if showDownArrow then
|
||||||
showDownArrow = false
|
showDownArrow = false
|
||||||
QH_Arrow_SetScale()
|
QH_Arrow_SetScale()
|
||||||
arrow:SetTexture("Interface\\AddOns\\QuestHelper\\arrow_image")
|
arrow:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\arrow_image")
|
||||||
showDownArrow = false
|
showDownArrow = false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -131,7 +131,11 @@ local function GetQuestMetaobjective(questid, lbcount, qindex)
|
||||||
if not QuestCriteriaWarningBroadcast and q and q.criteria then for k, v in pairs(q.criteria) do
|
if not QuestCriteriaWarningBroadcast and q and q.criteria then for k, v in pairs(q.criteria) do
|
||||||
if type(k) == "number" and k > lbcount then
|
if type(k) == "number" and k > lbcount then
|
||||||
--QuestHelper:TextOut(string.format("Too many stored objectives for this quest, please report on the Questhelper homepage (%s %s %s)", questid, lbcount, k)) -- we're just going to hide this for now
|
--QuestHelper:TextOut(string.format("Too many stored objectives for this quest, please report on the Questhelper homepage (%s %s %s)", questid, lbcount, k)) -- we're just going to hide this for now
|
||||||
QuestHelper_ErrorCatcher_ExplicitError(false, string.format("Too many stored objectives (%s %s %s)", questid, lbcount, k))
|
if qindex then
|
||||||
|
QuestHelper_ErrorCatcher_ExplicitError(false, string.format("Too many stored objectives (%s %s %s %s)", questid, lbcount, k, select(1, GetQuestLogTitle(qindex))))
|
||||||
|
else
|
||||||
|
QuestHelper_ErrorCatcher_ExplicitError(false, string.format("Too many stored objectives (%s %s %s %s)", questid, lbcount, k, v))
|
||||||
|
end
|
||||||
QuestCriteriaWarningBroadcast = true
|
QuestCriteriaWarningBroadcast = true
|
||||||
end
|
end
|
||||||
end end
|
end end
|
||||||
|
@ -149,6 +153,13 @@ local function GetQuestMetaobjective(questid, lbcount, qindex)
|
||||||
if qindex < 0 or (desc and typ ~= "log") then -- Ignore if no description.
|
if qindex < 0 or (desc and typ ~= "log") then -- Ignore if no description.
|
||||||
--QuestHelper:TextOut(string.format("critty %d %d", k, c.loc and #c.loc or -1))
|
--QuestHelper:TextOut(string.format("critty %d %d", k, c.loc and #c.loc or -1))
|
||||||
|
|
||||||
|
--[[
|
||||||
|
if done then
|
||||||
|
print(string.format("Quest %s, Objective %s('%s') is done.", qindex, i, desc))
|
||||||
|
else
|
||||||
|
print(string.format("Quest %s, Objective %s('%s') is not done.", qindex, i, desc))
|
||||||
|
end
|
||||||
|
]]
|
||||||
ttx.tooltip_canned = {}
|
ttx.tooltip_canned = {}
|
||||||
|
|
||||||
if q and q.criteria and q.criteria[i] then
|
if q and q.criteria and q.criteria[i] then
|
||||||
|
@ -717,7 +728,7 @@ function QH_UpdateQuests(force)
|
||||||
QH_Timeslice_PushUnyieldable()
|
QH_Timeslice_PushUnyieldable()
|
||||||
|
|
||||||
if update or force then -- Sometimes (usually) we don't actually update
|
if update or force then -- Sometimes (usually) we don't actually update
|
||||||
local index = 1
|
--local index = 1
|
||||||
|
|
||||||
local player = UnitName("player")
|
local player = UnitName("player")
|
||||||
if not player then return end -- bzzt, try again later
|
if not player then return end -- bzzt, try again later
|
||||||
|
@ -726,71 +737,73 @@ function QH_UpdateQuests(force)
|
||||||
local next_chunks = {}
|
local next_chunks = {}
|
||||||
|
|
||||||
local first = true
|
local first = true
|
||||||
|
|
||||||
|
local numEntries, numQuests = GetNumQuestLogEntries()
|
||||||
|
|
||||||
-- This begins the main update loop that loops through all of the quests
|
-- This begins the main update loop that loops through all of the quests
|
||||||
while true do
|
for index=1,numEntries do
|
||||||
local title, level, variety, groupsize, _, _, complete = GetQuestLogTitle(index)
|
local title, level, variety, groupsize, _, _, complete = GetQuestLogTitle(index)
|
||||||
if not title then break end
|
|
||||||
|
|
||||||
title = title:match("%[.*%] (.*)") or title
|
|
||||||
|
|
||||||
local qlink = GetQuestLink(index)
|
|
||||||
if qlink then -- If we don't have a quest link, it's not really a quest
|
|
||||||
local id = GetQuestType(qlink)
|
|
||||||
--if first then id = 13836 else id = nil end
|
|
||||||
if id then -- If we don't have a *valid* quest link, give up
|
|
||||||
local lbcount = GetEffectiveNumQuestLeaderBoards(index)
|
|
||||||
local db = GetQuestMetaobjective(id, lbcount, index) -- This generates the above-mentioned metaobjective, including doing the database lookup.
|
|
||||||
|
|
||||||
QuestHelper: Assert(db)
|
|
||||||
|
|
||||||
local watched = IsQuestWatched(index)
|
|
||||||
|
|
||||||
-- The section in here, in other words, is: we have a metaobjective (which may be a new one, or may not be), and we're trying to attach things to our routing engine. Now is where the real work begins! (many conditionals deep)
|
|
||||||
local lindex = index
|
|
||||||
db.tracker_clicked = function () Clicky(lindex) end
|
|
||||||
|
|
||||||
db.type_quest.index = index
|
|
||||||
|
|
||||||
local timidx = 1
|
|
||||||
while true do
|
|
||||||
local timer = GetQuestIndexForTimer(timidx)
|
|
||||||
if not timer then timidx = nil break end
|
|
||||||
if timer == index then break end
|
|
||||||
timidx = timidx + 1
|
|
||||||
end
|
|
||||||
local timed = not not timidx
|
|
||||||
|
|
||||||
--print(id, title, level, groupsize, variety, groupsize, complete, timed)
|
|
||||||
local chunk = "q:" .. Serialize(id, title, level, groupsize, variety, groupsize, complete, timed)
|
|
||||||
for i = 1, lbcount do
|
|
||||||
local temp_desc, temp_typ, temp_done = GetQuestLogLeaderBoard(i, index)
|
|
||||||
|
|
||||||
if temp_desc and temp_typ ~= "log" then
|
if title then
|
||||||
QuestHelper: Assert(db[i])
|
title = title:match("%[.*%] (.*)") or title
|
||||||
db[i].temp_desc, db[i].temp_typ, db[i].temp_done = GetQuestLogLeaderBoard(i, index)
|
|
||||||
--[[if not db[i].temp_desc or is_uncached(db[i].temp_typ, db[i].temp_desc, db[i].temp_done) then
|
local qlink = GetQuestLink(index)
|
||||||
db[i].temp_desc = string.format("(missing description %d)", i)
|
if qlink then -- If we don't have a quest link, it's not really a quest
|
||||||
end]]
|
local id = GetQuestType(qlink)
|
||||||
db[i].temp_person = player
|
--if first then id = 13836 else id = nil end
|
||||||
|
if id then -- If we don't have a *valid* quest link, give up
|
||||||
|
local lbcount = GetEffectiveNumQuestLeaderBoards(index)
|
||||||
|
local db = GetQuestMetaobjective(id, lbcount, index) -- This generates the above-mentioned metaobjective, including doing the database lookup.
|
||||||
|
|
||||||
|
QuestHelper: Assert(db)
|
||||||
|
|
||||||
|
local watched = IsQuestWatched(index)
|
||||||
|
|
||||||
|
-- The section in here, in other words, is: we have a metaobjective (which may be a new one, or may not be), and we're trying to attach things to our routing engine. Now is where the real work begins! (many conditionals deep)
|
||||||
|
local lindex = index
|
||||||
|
db.tracker_clicked = function () Clicky(lindex) end
|
||||||
|
|
||||||
|
db.type_quest.index = index
|
||||||
|
|
||||||
|
local timidx = 1
|
||||||
|
while true do
|
||||||
|
local timer = GetQuestIndexForTimer(timidx)
|
||||||
|
if not timer then timidx = nil break end
|
||||||
|
if timer == index then break end
|
||||||
|
timidx = timidx + 1
|
||||||
|
end
|
||||||
|
local timed = not not timidx
|
||||||
|
|
||||||
|
--print(id, title, level, groupsize, variety, groupsize, complete, timed)
|
||||||
|
local chunk = "q:" .. Serialize(id, title, level, groupsize, variety, groupsize, complete, timed)
|
||||||
|
for i = 1, lbcount do
|
||||||
|
local temp_desc, temp_typ, temp_done = GetQuestLogLeaderBoard(i, index)
|
||||||
|
|
||||||
|
if temp_desc and temp_typ ~= "log" then
|
||||||
|
QuestHelper: Assert(db[i])
|
||||||
|
db[i].temp_desc, db[i].temp_typ, db[i].temp_done = GetQuestLogLeaderBoard(i, index)
|
||||||
|
--[[if not db[i].temp_desc or is_uncached(db[i].temp_typ, db[i].temp_desc, db[i].temp_done) then
|
||||||
|
db[i].temp_desc = string.format("(missing description %d)", i)
|
||||||
|
end]]
|
||||||
|
db[i].temp_person = player
|
||||||
|
|
||||||
db[i].tooltip_defer_questname = title
|
db[i].tooltip_defer_questname = title
|
||||||
db[i].tooltip_defer_questobjective = db[i].temp_desc -- yoink
|
db[i].tooltip_defer_questobjective = db[i].temp_desc -- yoink
|
||||||
QuestHelper: Assert(db[i].tooltip_defer_questobjective) -- hmmm
|
QuestHelper: Assert(db[i].tooltip_defer_questobjective) -- hmmm
|
||||||
|
|
||||||
chunk = chunk .. ":" .. Serialize(db[i].temp_desc, db[i].temp_typ, db[i].temp_done)
|
chunk = chunk .. ":" .. Serialize(db[i].temp_desc, db[i].temp_typ, db[i].temp_done)
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
db.finish.tooltip_defer_questname = title -- we're using this as our fallback right now
|
||||||
|
|
||||||
|
next_chunks[id] = chunk
|
||||||
|
|
||||||
|
QuestProcessor(player, db, title, level, groupsize, variety, groupsize, watched, complete, lbcount, timed)
|
||||||
end
|
end
|
||||||
|
first = false
|
||||||
db.finish.tooltip_defer_questname = title -- we're using this as our fallback right now
|
|
||||||
|
|
||||||
next_chunks[id] = chunk
|
|
||||||
|
|
||||||
QuestProcessor(player, db, title, level, groupsize, variety, groupsize, watched, complete, lbcount, timed)
|
|
||||||
end
|
end
|
||||||
first = false
|
|
||||||
end
|
end
|
||||||
index = index + 1
|
|
||||||
end
|
end
|
||||||
|
|
||||||
EndInsertionPass(player)
|
EndInsertionPass(player)
|
||||||
|
@ -822,7 +835,6 @@ end
|
||||||
local comm_packets = {}
|
local comm_packets = {}
|
||||||
|
|
||||||
local function RefreshUserComms(user)
|
local function RefreshUserComms(user)
|
||||||
print("Quest sharing MAY be broken... debugging with a friend.")
|
|
||||||
StartInsertionPass(user)
|
StartInsertionPass(user)
|
||||||
|
|
||||||
if comm_packets[user] then for _, dat in pairs(comm_packets[user]) do
|
if comm_packets[user] then for _, dat in pairs(comm_packets[user]) do
|
|
@ -1002,7 +1002,7 @@ function QuestHelper:CreateMipmapDodad()
|
||||||
icon.arrow:SetHeight(40)
|
icon.arrow:SetHeight(40)
|
||||||
icon.arrow:SetWidth(40)
|
icon.arrow:SetWidth(40)
|
||||||
icon.arrow:SetPoint("CENTER", 0, 0)
|
icon.arrow:SetPoint("CENTER", 0, 0)
|
||||||
icon.arrow:SetTexture("Interface\\AddOns\\QuestHelper\\MinimapArrow")
|
icon.arrow:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\MinimapArrow")
|
||||||
icon.arrow:Hide()
|
icon.arrow:Hide()
|
||||||
|
|
||||||
icon.phase = 0
|
icon.phase = 0
|
|
@ -69,7 +69,7 @@ end
|
||||||
|
|
||||||
local function MakeTriangle(frame)
|
local function MakeTriangle(frame)
|
||||||
tex = frame:CreateTexture()
|
tex = frame:CreateTexture()
|
||||||
tex:SetTexture("Interface\\AddOns\\QuestHelper\\triangle")
|
tex:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\triangle")
|
||||||
|
|
||||||
tex.parent_frame = frame
|
tex.parent_frame = frame
|
||||||
-- relative to 0,1 coordinates relative to parent
|
-- relative to 0,1 coordinates relative to parent
|
||||||
|
@ -230,7 +230,7 @@ end
|
||||||
|
|
||||||
local function MakeLine(frame)
|
local function MakeLine(frame)
|
||||||
tex = frame:CreateTexture()
|
tex = frame:CreateTexture()
|
||||||
tex:SetTexture("Interface\\AddOns\\QuestHelper\\line")
|
tex:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\line")
|
||||||
|
|
||||||
tex.parent_frame = frame
|
tex.parent_frame = frame
|
||||||
-- relative to 0,1 coordinates relative to parent
|
-- relative to 0,1 coordinates relative to parent
|
|
@ -207,6 +207,8 @@ QH_Event("ADDON_LOADED", function (addonid)
|
||||||
|
|
||||||
local expected_version = GetAddOnMetadata("QuestHelper", "Version")
|
local expected_version = GetAddOnMetadata("QuestHelper", "Version")
|
||||||
|
|
||||||
|
-- Why are we checking to make sure these files load?
|
||||||
|
-- Most if not all are named in the toc file.
|
||||||
local expected_files =
|
local expected_files =
|
||||||
{
|
{
|
||||||
["bst_pre.lua"] = true,
|
["bst_pre.lua"] = true,
|
||||||
|
@ -331,6 +333,9 @@ QH_Event("ADDON_LOADED", function (addonid)
|
||||||
|
|
||||||
local uninstallederr = ""
|
local uninstallederr = ""
|
||||||
|
|
||||||
|
-- Why do we make the checks?
|
||||||
|
-- QH shouldn't care if an unexpected file is loaded. It is highly unlikely that an unexpected file or version is going to cause an issue.
|
||||||
|
--[[ Commenting out for now.
|
||||||
for file, version in pairs(QuestHelper_File) do
|
for file, version in pairs(QuestHelper_File) do
|
||||||
if not expected_files[file] then
|
if not expected_files[file] then
|
||||||
local errmsg = "Unexpected QuestHelper file: "..file
|
local errmsg = "Unexpected QuestHelper file: "..file
|
||||||
|
@ -347,7 +352,10 @@ QH_Event("ADDON_LOADED", function (addonid)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
--]]
|
||||||
|
|
||||||
|
-- Again, what's the point? If a file doesn't load, WoW will bitch, piss and moan about something bein nil. If it doesn't load, there's probably an error in it.
|
||||||
|
--[[ Commenting for now.
|
||||||
for file in pairs(expected_files) do
|
for file in pairs(expected_files) do
|
||||||
if not QuestHelper_File[file] then
|
if not QuestHelper_File[file] then
|
||||||
local errmsg = "Missing QuestHelper file: "..file
|
local errmsg = "Missing QuestHelper file: "..file
|
||||||
|
@ -356,7 +364,8 @@ QH_Event("ADDON_LOADED", function (addonid)
|
||||||
if not (expected_version == "Development Version" and file:match("static.*")) then file_problem_version = true end
|
if not (expected_version == "Development Version" and file:match("static.*")) then file_problem_version = true end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
--]]
|
||||||
|
|
||||||
-- Don't need this table anymore.
|
-- Don't need this table anymore.
|
||||||
QuestHelper_File = nil
|
QuestHelper_File = nil
|
||||||
|
|
||||||
|
|
Référencer dans un nouveau ticket