1
0
Bifurcation 0

Comparer les révisions

...
Ce dépôt a été archivé le 2020-03-15. Vous pouvez voir ses fichiers ou le cloner, mais pas ouvrir de ticket ou de demandes d'ajout, ni soumettre de changements.

8 Révisions

Auteur SHA1 Message Date
Nathanial.C.Jones 032002e507 Fixed toc file to point to new bst directory for 'bst_' files. 2010-10-31 03:58:36 +00:00
Nathanial.C.Jones 7bc12fa596 Merged 17:Head trunk:Milestone2 2010-10-30 03:05:25 +00:00
Nathanial.C.Jones 86b2b57331 Updated paths to relocated art. 2010-10-30 02:04:15 +00:00
Nathanial.C.Jones 0f735165cd More reorganization 2010-10-28 18:30:11 +00:00
Nathanial.C.Jones 0029a39650 Set version. 2010-10-28 02:30:04 +00:00
Nathanial.C.Jones b4952a5ec5 Updated paths for moved files. 2010-10-28 02:28:23 +00:00
Nathanial.C.Jones 4a360cccde Reorganized file structure. No data changed within files. 2010-10-28 02:20:00 +00:00
Nathanial.C.Jones 7d0b1f576c 2010-10-25 18:32:06 +00:00
88 fichiers modifiés avec 234 ajouts et 145 suppressions

23
QHAlphaBuild.sh Fichier exécutable
Voir le fichier

@ -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

23
QHBetaBuild.sh Fichier exécutable
Voir le fichier

@ -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

23
QHReleaseBuild.sh Fichier exécutable
Voir le fichier

@ -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

Voir le fichier

Avant

Largeur:  |  Hauteur:  |  Taille: 4.0 KiB

Après

Largeur:  |  Hauteur:  |  Taille: 4.0 KiB

Voir le fichier

@ -1,14 +1,13 @@
## Interface: 40000
## Title: QuestHelper
## 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: 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: Calculates an optimal route for you to follow while questing.
## 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-esES: Calcula la mejor ruta a seguir para usted.
## Notes-esMX: Calcula la mejor ruta a seguir para usted.
## Notes-koKR: 노선에 대한 계산을 수행합니다.
## Version: 1.4.0
## Version: 4.0.1.$svnversion$
## OptionalDeps: Cartographer_Waypoints, TomTom, Cartographer_InstanceMaps, !Swatter, tekticles, UnicodeFont, ClearFont2
## SavedVariables: QuestHelper_Pref QuestHelper_UID QuestHelper_SaveDate QuestHelper_Errors QuestHelper_Collector QuestHelper_Collector_Version
## 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
# 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
error.lua
@ -52,28 +51,28 @@ error.lua
utility.lua
# 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\CallbackHandler-1.0\CallbackHandler-1.0.xml
libs\LibDataBroker-1.1\LibDataBroker-1.1.lua
libs\AceGUI-3.0\AceGUI-3.0.xml
libs\AceConfig-3.0\AceConfig-3.0.xml
bst_astrolabe.lua
bst\bst_astrolabe.lua
libs\AstrolabeQH\Load.xml
bst_ctl.lua
bst\bst_ctl.lua
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\LibRangeCheck-2.0.lua
changes.lua
lang.lua
lang\lang.lua
lang\cscz.lua
lang\dadk.lua
lang\dede.lua
@ -99,36 +98,36 @@ lang\zhcn.lua
lang\zhtw.lua
# This is kind of a lot of files.
static.lua
static_1.lua
static_2.lua
static_deDE.lua
static_deDE_1.lua
static_deDE_2.lua
static_enUS.lua
static_enUS_1.lua
static_enUS_2.lua
static_esES.lua
static_esES_1.lua
static_esES_2.lua
static_esMX.lua
static_esMX_1.lua
static_esMX_2.lua
static_frFR.lua
static_frFR_1.lua
static_frFR_2.lua
static_koKR.lua
static_koKR_1.lua
static_koKR_2.lua
static_ruRU.lua
static_ruRU_1.lua
static_ruRU_2.lua
static_zhTW.lua
static_zhTW_1.lua
static_zhTW_2.lua
lang\static.lua
lang\static_1.lua
lang\static_2.lua
lang\static_deDE.lua
lang\static_deDE_1.lua
lang\static_deDE_2.lua
lang\static_enUS.lua
lang\static_enUS_1.lua
lang\static_enUS_2.lua
lang\static_esES.lua
lang\static_esES_1.lua
lang\static_esES_2.lua
lang\static_esMX.lua
lang\static_esMX_1.lua
lang\static_esMX_2.lua
lang\static_frFR.lua
lang\static_frFR_1.lua
lang\static_frFR_2.lua
lang\static_koKR.lua
lang\static_koKR_1.lua
lang\static_koKR_2.lua
lang\static_ruRU.lua
lang\static_ruRU_1.lua
lang\static_ruRU_2.lua
lang\static_zhTW.lua
lang\static_zhTW_1.lua
lang\static_zhTW_2.lua
# 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.
recycle.lua
@ -143,45 +142,45 @@ db_get.lua
timeslice.lua
# Achievement manager, depends on timeslice
manager_achievement.lua
manager\manager_achievement.lua
# Completed-quests manager, depends on events or something
# you know I need to come up with a good way to handle dependencies someday
#
# someday
manager_completed.lua
manager\manager_completed.lua
# Graph module. Depends on nothing, calls no external functions.
graph_core.lua
graph_flightpath.lua
graph\graph_core.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_debug.lua
routing_loc.lua
routing_route.lua
routing_core.lua
routing_controller.lua
routing\routing_debug.lua
routing\routing_loc.lua
routing\routing_route.lua
routing\routing_core.lua
routing\routing_controller.lua
# 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.
filter_core.lua
filter_base.lua
filter\filter_core.lua
filter\filter_base.lua
# New tooltip system. Depends on nothing, calls nothing besides WoW UI.
tooltip.lua
# Directors
# Quest module. Depends on Database, Routing, Patterns, Tooltip, and Event Manager, interfaces with WoW UI.
director_quest.lua
director_achievement.lua
director_find.lua
director\director_quest.lua
director\director_achievement.lua
director\director_find.lua
# Map and minimap dodads. Old code. Depends on nothing, interfaces with WoW UI.
dodads.lua
dodads\dodads.lua
# Wacky arbitrary triangle render code
dodads_triangles.lua
dodads\dodads_triangles.lua
# New coordinator system. Depends on pretty much everything.
core.lua
@ -197,7 +196,7 @@ objective.lua
quest.lua
teleport.lua
pathfinding.lua
routing.lua
routing\routing.lua
custom.lua
menu.lua
nag.lua
@ -209,27 +208,27 @@ objtips.lua
textviewer.lua
help.lua
collect_achievement.lua
collect_lzw.lua
collect_traveled.lua
collect_location.lua
collect_zone.lua
collect_merger.lua
collect_monster.lua
collect_item.lua
collect_object.lua
collect_loot.lua
collect_patterns.lua
collect_flight.lua
collect_util.lua
collect_quest.lua
collect_equip.lua
collect_spec.lua
collect_bitstream.lua
collect_upgrade.lua
collect_merchant.lua
collect_warp.lua
collect.lua
collect\collect_achievement.lua
collect\collect_lzw.lua
collect\collect_traveled.lua
collect\collect_location.lua
collect\collect_zone.lua
collect\collect_merger.lua
collect\collect_monster.lua
collect\collect_item.lua
collect\collect_object.lua
collect\collect_loot.lua
collect\collect_patterns.lua
collect\collect_flight.lua
collect\collect_util.lua
collect\collect_quest.lua
collect\collect_equip.lua
collect\collect_spec.lua
collect\collect_bitstream.lua
collect\collect_upgrade.lua
collect\collect_merchant.lua
collect\collect_warp.lua
collect\collect.lua
cartographer.lua
cartographer_is_terrible.lua
@ -238,4 +237,4 @@ arrow.lua
config.lua
bst_post.lua
bst\bst_post.lua

Voir le fichier

@ -110,8 +110,8 @@ QH_Hook(wayframe, "OnDragStop", OnDragStop)
wayframe:RegisterForDrag("LeftButton")
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\\arrow_image")
--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\\Art\\arrow_image")
wayframe.arrow:SetAllPoints()
local active_point, arrive_distance, showDownArrow, point_title
@ -216,7 +216,7 @@ OnUpdate = function()
if not showDownArrow then
showDownArrow = true
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)
end
@ -234,7 +234,7 @@ OnUpdate = function()
if showDownArrow then
showDownArrow = false
QH_Arrow_SetScale()
arrow:SetTexture("Interface\\AddOns\\QuestHelper\\arrow_image")
arrow:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\arrow_image")
showDownArrow = false
end

Voir le fichier

@ -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 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_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
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.
--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 = {}
if q and q.criteria and q.criteria[i] then
@ -717,7 +728,7 @@ function QH_UpdateQuests(force)
QH_Timeslice_PushUnyieldable()
if update or force then -- Sometimes (usually) we don't actually update
local index = 1
--local index = 1
local player = UnitName("player")
if not player then return end -- bzzt, try again later
@ -726,71 +737,73 @@ function QH_UpdateQuests(force)
local next_chunks = {}
local first = true
local numEntries, numQuests = GetNumQuestLogEntries()
-- 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)
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
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
if title then
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
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_questobjective = db[i].temp_desc -- yoink
QuestHelper: Assert(db[i].tooltip_defer_questobjective) -- hmmm
db[i].tooltip_defer_questname = title
db[i].tooltip_defer_questobjective = db[i].temp_desc -- yoink
QuestHelper: Assert(db[i].tooltip_defer_questobjective) -- hmmm
chunk = chunk .. ":" .. Serialize(db[i].temp_desc, db[i].temp_typ, db[i].temp_done)
end
chunk = chunk .. ":" .. Serialize(db[i].temp_desc, db[i].temp_typ, db[i].temp_done)
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
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)
first = false
end
first = false
end
index = index + 1
end
EndInsertionPass(player)
@ -822,7 +835,6 @@ end
local comm_packets = {}
local function RefreshUserComms(user)
print("Quest sharing MAY be broken... debugging with a friend.")
StartInsertionPass(user)
if comm_packets[user] then for _, dat in pairs(comm_packets[user]) do

Voir le fichier

@ -1002,7 +1002,7 @@ function QuestHelper:CreateMipmapDodad()
icon.arrow:SetHeight(40)
icon.arrow:SetWidth(40)
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.phase = 0

Voir le fichier

@ -69,7 +69,7 @@ end
local function MakeTriangle(frame)
tex = frame:CreateTexture()
tex:SetTexture("Interface\\AddOns\\QuestHelper\\triangle")
tex:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\triangle")
tex.parent_frame = frame
-- relative to 0,1 coordinates relative to parent
@ -230,7 +230,7 @@ end
local function MakeLine(frame)
tex = frame:CreateTexture()
tex:SetTexture("Interface\\AddOns\\QuestHelper\\line")
tex:SetTexture("Interface\\AddOns\\QuestHelper\\Art\\line")
tex.parent_frame = frame
-- relative to 0,1 coordinates relative to parent

Voir le fichier

@ -207,6 +207,8 @@ QH_Event("ADDON_LOADED", function (addonid)
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 =
{
["bst_pre.lua"] = true,
@ -331,6 +333,9 @@ QH_Event("ADDON_LOADED", function (addonid)
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
if not expected_files[file] then
local errmsg = "Unexpected QuestHelper file: "..file
@ -347,7 +352,10 @@ QH_Event("ADDON_LOADED", function (addonid)
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
if not QuestHelper_File[file] then
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
end
end
--]]
-- Don't need this table anymore.
QuestHelper_File = nil