1
0
Bifurcation 0

Initial implementation of direct querying of WoW for quest info.

Also changed planes to be the same as the equivalent mapID. Eliminated instances for the time being, as this whole scheme may go by the wayside in upcoming iterations.

WARNING: This revision MAY NOT work at all (and if it does, Elder tracking won't work). With that said, feel free to test and note any issues you discover, with the exception of Elder tracking not working (I didn't touch that at all).
Cette révision appartient à :
Nathanial.C.Jones 2012-01-31 03:10:39 +00:00
Parent a1c556a40a
révision 5817b6915c
3 fichiers modifiés avec 368 ajouts et 432 suppressions

Voir le fichier

@ -122,6 +122,12 @@ end
function DB_HasItem(group, id)
QuestHelper: Assert(initted)
if group == "quest" then
if type(id) == "number" and id > 0 then return true
else return false
end
end
for _, db in ipairs(QHDB) do
if db[group] then
@ -138,6 +144,45 @@ function DB_HasItem(group, id)
return false
end
local function GetZonePOIs(c, z)
SetMapZoom(c, z)
local pois = {}
local count = 1
local hasQuests = false
local numEntries = QuestMapUpdateAllQuests()
QuestPOIUpdateIcons()
local numCompleteedQuests = 0
local mapID = GetMapInfo()
for i = 1, numEntries do
local questId, questLogIndex = QuestPOIGetQuestIDByVisibleIndex(i)
local _, x, y, objective = QuestPOIGetIconInfo(questId)
if x and y then
local questTitle, level, questTag, suggestedGroup, isHeader, isCollapsed, isComplete, isDaily = GetQuestLogTitle(questLogIndex)
numObjectives = GetNumQuestLeaderBoards(questLogIndex)
if isComplete and isComplete < 0 then
isComplete = false
elseif numObjectives == 0 then
isComplete = true
end
local poi = {}
poi.questLogIndex = questLogIndex
poi.questId = questId
poi.title = questTitle
poi.c = c
poi.z = z
poi.x = x
poi.y = y
poi.p = mapID
poi.completed = isComplete
pois[count] = poi
count = count+1
hasQuests = true
end
end
return pois, hasQuests
end
function DB_GetItem(group, id, silent, register)
QuestHelper: Assert(initted)
@ -145,6 +190,34 @@ function DB_GetItem(group, id, silent, register)
QuestHelper: Assert(id, string.format("%s %s", tostring(group), tostring(id)))
local ite = DBC_Get(group, id)
if not ite and group == "quest" then
-- Loop over zones AND floors
-- see QuestRouterLite.lua for specific calls.
-- In the end, the item returned MUST be "formatted" the same as a true QHDB item.
local origC = GetCurrentMapContinent()
local origZ = GetCurrentMapZone()
local myPois = {}
local myCount = 1
for c, cname in ipairs({GetMapContinents()}) do
for z, zname in ipairs({GetMapZones(c)}) do
local pois, zoneHasQuests = GetZonePOIs(c, z)
if zoneHasQuests then
for _, ipoi in ipairs(pois) do
if ipoi.questId == id then
myPois[count] = ipoi
end
end
end
end
end
SetMapZoom(origC, origZ)
-- Convert POIs appropriately.
-- Set ite to the correctly formatted POIs.
end
if not ite then
if type(id) == "string" then QuestHelper: Assert(not id:match("__.*")) end

Voir le fichier

@ -22,31 +22,32 @@ local dependancy_quest_list = GetQuestsCompleted()
local static_alliance_landings =
{
{12, 0.476, 0.598, "Exodar via portal"}, -- Exodar
{21, 0.435, 0.787, "Darnassus via portal"}, -- Darnassus
{36, 0.496, 0.865, "Stormwind via portal"}, -- Stormwind
{25, 0.255, 0.084, "Ironforge via portal"}, -- Ironforge
{10, 0.660, 0.490, "Theramore via portal"}, -- Theramore
{471, 0.476, 0.598, "Exodar via portal"}, -- Exodar
{381, 0.435, 0.787, "Darnassus via portal"}, -- Darnassus
{301, 0.496, 0.865, "Stormwind via portal"}, -- Stormwind
{341, 0.255, 0.084, "Ironforge via portal"}, -- Ironforge
{141, 0.660, 0.490, "Theramore via portal"}, -- Theramore, Dustwallow Marsh
}
local static_horde_landings =
{
{1, 0.483, 0.645, "Orgrimmar via portal"}, -- Orgrimmar
{23, 0.222, 0.169, "Thunder Bluff via portal"}, -- Thunder Bluff
{45, 0.845, 0.163, "Undercity via portal"}, -- Undercity
{52, 0.583, 0.192, "Silvermoon City via portal"}, -- Silvermoon City
{46, 0.498, 0.558, "Stonard via portal"}, -- Stonard
{321, 0.483, 0.645, "Orgrimmar via portal"}, -- Orgrimmar
{362, 0.222, 0.169, "Thunder Bluff via portal"}, -- Thunder Bluff
{382, 0.845, 0.163, "Undercity via portal"}, -- Undercity
{480, 0.583, 0.192, "Silvermoon City via portal"}, -- Silvermoon City
{38, 0.498, 0.558, "Stonard via portal"}, -- Stonard, Swamp of Sorrows
}
local static_shared_landings =
{
{67, 0.559, 0.468, "Dalaran via portal"}, -- Dalaran
{60, 0.550, 0.402, "Shattrath via portal"}, -- Shattrath
{504, 0.559, 0.468, "Dalaran via portal"}, -- Dalaran
{481, 0.550, 0.402, "Shattrath via portal"}, -- Shattrath
-- Need Tol Barad Port In coordinates
-- Highly doubtful that Tol Barad Port In Coordinates are the same.
}
if IsSpellKnown(18960) then
local static_druid_landings = {20,0.563,0.324, "Moonglade via spell"} -- Moonglade landing
local static_druid_landings = {241,0.563,0.324, "Moonglade via spell"} -- Moonglade landing
end
-- end whimsey
@ -55,33 +56,33 @@ end
-- More storage
-- Contingent on player's faction controlling the zone
-- {{74, 0.491, 0.153}, {67, 0.268, 0.447}, 5, true}, -- Wingergrasp Keep --> Dalaran
-- {{175, 0.472, 0.519}, ORGRIMMAR_CATPORTAL_IN, 60, true}, -- Tol Barad --> Orgrimmar (If Horde Controlled)
-- {{175, 0.472, 0.519}, STORMWIND_CATPORTAL_IN, 60, true}, -- Tol Barad --> Stormwind (If Alliance Controlled)
-- {{501, 0.491, 0.153}, {504, 0.268, 0.447}, 5, true}, -- Wingergrasp Keep --> Dalaran
-- {{708, 0.472, 0.519}, ORGRIMMAR_CATPORTAL_IN, 60, true}, -- Tol Barad --> Orgrimmar (If Horde Controlled)
-- {{708, 0.472, 0.519}, STORMWIND_CATPORTAL_IN, 60, true}, -- Tol Barad --> Stormwind (If Alliance Controlled)
-- end storage
local BLASTED_LANDS_PORTAL_IN = {33, 0.539, 0.461, "Blasted Lands via portal"}
local ORGRIMMAR_CATPORTAL_IN = {1, 0.500, 0.377, "Orgrimmar via portal"}
local BLASTED_LANDS_PORTAL_IN = {19, 0.539, 0.461, "Blasted Lands via portal"}
local ORGRIMMAR_CATPORTAL_IN = {321, 0.500, 0.377, "Orgrimmar via portal"}
-- local STORMWIND_CATPORTAL_IN
local static_horde_routes =
{
-- Portals
{{1, 0.471, 0.618}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Orgrimmar --> Dark Portal
{{45, 0.853, 0.171}, BLASTED_LANDS_PORTAL_IN, 5, true, level_limit = 58}, -- Undercity --> Dark Portal
{{23, 0.232, 0.135}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Thunder Bluff --> Dark Portal
{{52, 0.584, 0.210}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Silvermoon --> Dark Portal
{{321, 0.471, 0.618}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Orgrimmar --> Dark Portal
{{382, 0.853, 0.171}, BLASTED_LANDS_PORTAL_IN, 5, true, level_limit = 58}, -- Undercity --> Dark Portal
{{362, 0.232, 0.135}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Thunder Bluff --> Dark Portal
{{480, 0.584, 0.210}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Silvermoon --> Dark Portal
-- I'm really not concerned that the landing points are different. This is a self-contained method.
-- It won't affect anything that we don't have two one-way paths here.
{{45, 0.549, 0.113}, {52, 0.495, 0.148}, 60}, -- Undercity <--> Silvermoon City
{{382, 0.549, 0.113}, {480, 0.495, 0.148}, 60}, -- Undercity <--> Silvermoon City
{{56, 0.886, 0.477}, {1, 0.483, 0.645}, 60, true}, -- Hellfire Peninsula --> Orgrimmar
{{184, 0.736, 0.535}, ORGRIMMAR_CATPORTAL_IN, 60, true}, -- Twilight Highlands --> Orgrimmar
{{465, 0.886, 0.477}, {321, 0.483, 0.645}, 60, true}, -- Hellfire Peninsula --> Orgrimmar
{{700, 0.736, 0.535}, ORGRIMMAR_CATPORTAL_IN, 60, true}, -- Twilight Highlands --> Orgrimmar
{{1, 0.475, 0.392}, {176, 0.560, 0.799}, 60, false, level_limit = 85}, -- Orgrimmar <--> Tol Barad Peninsula
{{321, 0.475, 0.392}, {709, 0.560, 0.799}, 60, false, level_limit = 85}, -- Orgrimmar <--> Tol Barad Peninsula
-- Okay, I give. Since I haven't actually been through these portals, I don't really have a frame
@ -99,35 +100,35 @@ local static_horde_routes =
-- Orgrimmar --> Temple of Earth (Aqua)
-- Level limit because the quest to open requires level 82.
{{179, 0.509, 0.531}, ORGRIMMAR_CATPORTAL_IN, 60, true}, -- Temple of Earth (Aqua) --> Orgrimmar
{{640, 0.509, 0.531}, ORGRIMMAR_CATPORTAL_IN, 60, true}, -- Temple of Earth (Aqua) --> Orgrimmar
{{1, 0.508, 0.363}, {179, 0.506, 0.529}, 60, true, level_limit = 82}, -- Orgrimmar --> Deepholm
{{321, 0.508, 0.363}, {640, 0.506, 0.529}, 60, true, level_limit = 82}, -- Orgrimmar --> Deepholm
-- Level limit because the quest to open requires level 82.
{{1, 0.511, 0.383}, {198, 0.635, 0.234}, 60, true, level_limit = 80}, -- Orgrimmar --> Mount Hyjal
{{321, 0.511, 0.383}, {606, 0.635, 0.234}, 60, true, level_limit = 80}, -- Orgrimmar --> Mount Hyjal
-- Level limit because the quest to open requires level 80.
{{1, 0.502, 0.394}, {184, 0.736, 0.534}, 60, true, level_limit = 84}, -- Orgrimmar --> Twilight Highlands
{{321, 0.502, 0.394}, {700, 0.736, 0.534}, 60, true, level_limit = 84}, -- Orgrimmar --> Twilight Highlands
-- Level limit because the quest to open requires level 84.
{{1, 0.489, 0.386}, {164, 0.549, 0.342}, 5, true, level_limit = 83}, -- Orgrimmar --> Uldum
{{321, 0.489, 0.386}, {720, 0.549, 0.342}, 5, true, level_limit = 83}, -- Orgrimmar --> Uldum
-- Level limit because the quest to open requires level 83.
{{1, 0.492, 0.365}, {165, 0.514, 0.609}, 60, true, level_limit = 80}, -- Orgrimmar --> Vashj'ir
{{321, 0.492, 0.365}, {613, 0.514, 0.609}, 60, true, level_limit = 80}, -- Orgrimmar --> Vashj'ir
-- Level limit because the quest to open requires level 80.
-- Zepplins
{{1, 0.526, 0.529}, {168, 0.372, 0.525}, 210}, -- Orgrimmar <--> Grom'gol Base Camp
{{1, 0.506, 0.561}, {43, 0.607, 0.588}, 210}, -- Orgrimmar <--> Tirisfal Glades
{{1, 0.428, 0.653}, {23, 0.152, 0.257}, 210}, -- Orgrimmar <--> Thunder Bluff
{{1, 0.449, 0.619}, {65, 0.414, 0.536}, 210}, -- Orgrimmar <--> Warsong Hold
{{321, 0.526, 0.529}, {37, 0.372, 0.525}, 210}, -- Orgrimmar <--> Grom'gol Base Camp
{{321, 0.506, 0.561}, {20, 0.607, 0.588}, 210}, -- Orgrimmar <--> Tirisfal Glades
{{321, 0.428, 0.653}, {362, 0.152, 0.257}, 210}, -- Orgrimmar <--> Thunder Bluff
{{321, 0.449, 0.619}, {486, 0.414, 0.536}, 210}, -- Orgrimmar <--> Warsong Hold, Borean Tundra
{{43, 0.619, 0.591}, {168, 0.374, 0.509}, 210}, -- Tirisfal Glades <--> Grom'gol Base Camp
{{43, 0.590, 0.590}, {70, 0.777, 0.282}, 210}, -- Tirisfal Glades <--> Vengeance Landing
{{20, 0.619, 0.591}, {37, 0.374, 0.509}, 210}, -- Tirisfal Glades <--> Grom'gol Base Camp, Northern Stranglethorn
{{20, 0.590, 0.590}, {491, 0.777, 0.282}, 210}, -- Tirisfal Glades <--> Vengeance Landing
-- Ships
{{184, 0.735, 0.528}, {184, 0.767, 0.152}, 210}, -- Dragonmaw Port <--> Krazzworks
{{700, 0.735, 0.528}, {700, 0.767, 0.152}, 210}, -- Dragonmaw Port, Twilight Highlands <--> Krazzworks, Twilight Highlands
-- QuestHelper does not appear to like transitions from within the same zone. Gonna have to figure this out.
}
@ -136,20 +137,20 @@ local static_horde_routes =
local static_alliance_routes =
{
-- Portals
{{21,0.440,0.782}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Darnassus --> Dark Portal
{{12,0.482,0.630}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Exodar --> Dark Portal
{{25,0.273,0.070}, BLASTED_LANDS_PORTAL_IN, 5, true, level_limit = 58}, -- Ironforge --> Dark Portal
{{36,0.490,0.874}, BLASTED_LANDS_PORTAL_IN, 5, true, level_limit = 58}, -- Stormwind --> Dark Portal
{{381,0.440,0.782}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Darnassus --> Dark Portal
{{471,0.482,0.630}, BLASTED_LANDS_PORTAL_IN, 60, true, level_limit = 58}, -- Exodar --> Dark Portal
{{341,0.273,0.070}, BLASTED_LANDS_PORTAL_IN, 5, true, level_limit = 58}, -- Ironforge --> Dark Portal
{{301,0.490,0.874}, BLASTED_LANDS_PORTAL_IN, 5, true, level_limit = 58}, -- Stormwind --> Dark Portal
{{56, 0.886, 0.528}, {36, 0.496, 0.865}, 60, true}, -- Hellfire Peninsula --> Stormwind
{{21, 0.442, 0.788}, {12, 0.476, 0.598}, 5, true}, -- Darnassus --> Exodar
{{12, 0.476, 0.619}, {21, 0.435, 0.787}, 5, true}, -- Exodar --> Darnassus
{{465, 0.886, 0.528}, {301, 0.496, 0.865}, 60, true}, -- Hellfire Peninsula --> Stormwind
{{381, 0.442, 0.788}, {471, 0.476, 0.598}, 5, true}, -- Darnassus --> Exodar
{{471, 0.476, 0.619}, {381, 0.435, 0.787}, 5, true}, -- Exodar --> Darnassus
-- Stormwind --> Tol Barad?
{{36, 0.734, 0.195}, {179, 0.487, 0.536}, 60, true, level_limit = 82}, -- Stormwind --> Temple of Earth (Amber)
{{301, 0.734, 0.195}, {640, 0.487, 0.536}, 60, true, level_limit = 82}, -- Stormwind --> Temple of Earth (Amber)
-- Level limit because the quest to open requires level 82.
{{179, 0.486, 0.537}, {36, 0.745, 0.183}, 60, true}, -- Temple of Earth (Amber) --> Stormwind
{{640, 0.486, 0.537}, {301, 0.745, 0.183}, 60, true}, -- Temple of Earth (Amber) --> Stormwind
-- Stormwind <--> Deepholm
-- Stormwind <--> Mount Hyjal
@ -158,87 +159,79 @@ local static_alliance_routes =
-- Stormwind <--> Vashj'ir
-- Ships
{{36, 0.180, 0.285}, {65, 0.597, 0.694}, 210}, -- Stormwind <--> Valiance Keep
{{301, 0.180, 0.285}, {486, 0.597, 0.694}, 210}, -- Stormwind <--> Valiance Keep, Borean Tundra
-- Deeprun Tram (Wonder if this needs to be handled differently because of it's nature but this will suffice for now)
{{36, 0.696, 0.311}, {25, 0.770, 0.513}, 180}, -- Stormwind <--> Ironforge
-- Deeprun Tram (Wonder if this needs to be handled differently because of it's nature but this will suffice for now).
-- As it turns out, the mapid for deeprun tram is sw, so no need to do any special handling.
{{301, 0.696, 0.311}, {341, 0.770, 0.513}, 180}, -- Stormwind <--> Ironforge
-- Partially checked
-- Unchecked (Do these still exist?)
{{10, 0.718, 0.565}, {51, 0.047, 0.636}, 210}, -- Theramore Isle <--> Menethil Harbor
{{51, 0.047, 0.571}, {70, 0.612, 0.626}, 210}, -- Menethil <--> Daggercap Bay
-- Nate's Cataclysm content
{{207, 0.54, 0.60}, {205, 0.30, 0.72}, 10}, -- Gilneas Zone <--> Greymane Court, Gilneas City. Exists solely to fix some pathing crashes. (We want to make an adjustment to the coords though.)
{{207, 0.55, 0.42}, {205, 0.28, 0.21}, 5}, -- Gilneas Zone <--> Cathedral Square, Gilneas City. Exists solely to fix some pathing crashes. (We want to make an adjustment to the coords though.)
{{207, 0.66, 0.42}, {205, 0.67, 0.20}, 5}, -- Gilneas Zone <--> Merchant Square, Gilneas City. Exists solely to fix some pathing crashes. (We want to make an adjustment to the coords though.)
{{207, 0.68, 0.62}, {205, 0.69, 0.82}, 10}, -- Gilneas Zone <--> Military District, Gilneas City. Exists solely to fix some pathing crashes. (We want to make an adjustment to the coords though.)
{{207, 0.42, 0.36}, {24, 0.52, 0.89}, 86400}, -- Gilneas Zone <--> Teldrassil. Exists solely to fix some pathing crashes. 24-hour boat ride :D (This will be deleted later, when we can create the "official" path.)
{{684, 0.54, 0.60}, {685, 0.30, 0.72}, 10}, -- Gilneas Zone <--> Greymane Court, Gilneas City. Exists solely to fix some pathing crashes. (We want to make an adjustment to the coords though.)
{{684, 0.55, 0.42}, {685, 0.28, 0.21}, 5}, -- Gilneas Zone <--> Cathedral Square, Gilneas City. Exists solely to fix some pathing crashes. (We want to make an adjustment to the coords though.)
{{684, 0.66, 0.42}, {685, 0.67, 0.20}, 5}, -- Gilneas Zone <--> Merchant Square, Gilneas City. Exists solely to fix some pathing crashes. (We want to make an adjustment to the coords though.)
{{684, 0.68, 0.62}, {685, 0.69, 0.82}, 10}, -- Gilneas Zone <--> Military District, Gilneas City. Exists solely to fix some pathing crashes. (We want to make an adjustment to the coords though.)
{{684, 0.42, 0.36}, {41, 0.52, 0.89}, 86400}, -- Gilneas Zone <--> Teldrassil. Exists solely to fix some pathing crashes. 24-hour boat ride :D (This will be deleted later, when we can create the "official" path.)
}
local static_shared_routes =
{
-- Portals
{{67, 0.268, 0.447}, {67, 0.240, 0.394}, 5}, -- Dalaran (Violet Citadel) <--> Dalaran (Purple Parlor)
{{504, 0.268, 0.447}, {504, 0.240, 0.394}, 5}, -- Dalaran (Violet Citadel) <--> Dalaran (Purple Parlor)
{{67, 0.559, 0.468}, {66, 0.158, 0.428}, 5}, -- Dalaran <--> Crystalsong Forest
--{{67, 0.559, 0.468}, {66, 0.158, 0.428}, 5, false, level_limit = 68}, -- Dalaran <--> Crystalsong Forest
{{504, 0.559, 0.468}, {510, 0.158, 0.428}, 5}, -- Dalaran <--> Crystalsong Forest
--{{504, 0.559, 0.468}, {510, 0.158, 0.428}, 5, false, level_limit = 68}, -- Dalaran <--> Crystalsong Forest
{{24, 0.551, 0.885}, {21, 0.369, 0.584}, 5}, -- Rut'Theran Village <--> Darnassus
{{41, 0.551, 0.885}, {381, 0.369, 0.584}, 5}, -- Rut'Theran Village, Teldrassil <--> Darnassus
{{33, 0.550, 0.541}, {56, 0.898, 0.502}, 60}, -- Blasted Lands <--> Hellfire Peninsula (Dark Portal)
{{19, 0.550, 0.541}, {465, 0.898, 0.502}, 60}, -- Blasted Lands <--> Hellfire Peninsula (Dark Portal)
{{67, 0.255, 0.514}, {8, 0.652, 0.498}, 60, true}, -- Dalaran --> Caverns of Time
{{60, 0.486, 0.420}, {64, 0.482, 0.345}, 60, true}, -- Shattrath --> Isle of Quel'Danas
{{504, 0.255, 0.514}, {161, 0.652, 0.498}, 60, true}, -- Dalaran --> Caverns of Time
{{481, 0.486, 0.420}, {499, 0.482, 0.345}, 60, true}, -- Shattrath --> Isle of Quel'Danas
{{60, 0.747, 0.316}, {8, 0.652, 0.498}, 60, true}, -- Shattrath --> Caverns of Time
{{481, 0.747, 0.316}, {161, 0.652, 0.498}, 60, true}, -- Shattrath --> Caverns of Time
-- Requires Revered with Keepers of Time
{{179, 0.493, 0.504}, {179, 0.571, 0.135}, 5, false, level_limit = 81}, -- Temple of Earth <--> Therazane's Throne
{{640, 0.493, 0.504}, {640, 0.571, 0.135}, 5, false, level_limit = 81}, -- Temple of Earth <--> Therazane's Throne
-- Requires Honored with Therazane and dependant on quest #26709
-- Ships
{{68, 0.497, 0.784}, {70, 0.234, 0.578}, 210}, -- Moa'ki <--> Kamagua
{{68, 0.479, 0.788}, {65, 0.789, 0.537}, 210}, -- Moa'ki <--> Unu'pe
{{174, 0.390, 0.670}, {11, 0.702, 0.733}, 210}, -- Booty Bay <--> Ratchet
{{488, 0.497, 0.784}, {491, 0.234, 0.578}, 210}, -- Moa'ki <--> Kamagua
{{488, 0.479, 0.788}, {486, 0.789, 0.537}, 210}, -- Moa'ki <--> Unu'pe
{{673, 0.390, 0.670}, {11, 0.702, 0.733}, 210}, -- Booty Bay, Cape of Stranglethorn <--> Ratchet
-- Leave here to keep QH from self-destructing
{{24, 0.522, 0.895}, {3, 0.203, 0.540}, 210}, -- Teldrassil <--> Azuremyst Isle
{{24, 0.550, 0.938}, {36, 0.223, 0.560}, 210}, -- Teldrassil <--> Stormwind
{{41, 0.522, 0.895}, {464, 0.203, 0.540}, 210}, -- Teldrassil <--> Azuremyst Isle
{{41, 0.550, 0.938}, {301, 0.223, 0.560}, 210}, -- Teldrassil <--> Stormwind
-- Unchecked
{{40, 0.318, 0.503}, {32, 0.347, 0.84}, 130}, -- Burning Steppes <--> Searing Gorge
{{29, 0.318, 0.503}, {28, 0.347, 0.84}, 130}, -- Burning Steppes <--> Searing Gorge
-- Route to new zone. Not valid, exists only to keep routing from exploding if you don't have the flight routes there.
{{41, 0.5, 0.5}, {64, 0.484, 0.251}, 7200}, -- Eversong Woods <--> Sunwell
{{34, 0.817, 0.461}, {78, 0.492, 0.312}, 86400}, -- EPL Ebon Hold <--> Scarlet Enclave Ebon Hold. Exists solely to fix some pathing crashes. 24-hour boat ride :D
{{462, 0.5, 0.5}, {64, 0.484, 0.251}, 7200}, -- Eversong Woods <--> Sunwell
{{23, 0.817, 0.461}, {502, 0.492, 0.312}, 86400}, -- EPL Ebon Hold <--> Scarlet Enclave Ebon Hold. Exists solely to fix some pathing crashes. 24-hour boat ride :D
-- Nate's Cataclysm content
{{178, 0.83, 0.34}, {167, 0.45, 0.23}, 210, true}, -- Vash'jir --> Vash'jir Kelp Forest (One time, One way)
{{167, 0.69, 0.60}, {178, 0.80, 0.30}, 5}, -- Vash'jir Kelp Forest <--> Vash'jir
{{178, 0.84, 0.23}, {62, 0.37, 0.58}, 5}, -- Vash'jir <--> The Great Sea (EK Continent, zone 0)
{{62, 0.39, 0.60}, {28, 0.00, 0.20}, 5}, -- The Great Sea (EK Continent, zone 0) <--> Dun Morogh
{{167, 0.40, 0.64}, {171, 0.56, 0.14}, 5}, -- VKF <--> SE
{{178, 0.50, 0.28}, {165, 0.72, 0.04}, 5}, -- Vash <--> Vash'jir Depths
{{198, 0.85, 0.41}, {19, 0.58, 0.91}, 5}, -- Hyjal <--> Winterspring
{{185, 0.85, 0.41}, {19, 0.58, 0.91}, 5}, -- Hyjal <--> Winterspring
{{169, 0.5, 0.5}, {170, 0.5, 0.5}, 5}, -- Ruins of Gilneas <--> Ruins of Gilneas City (Meta info, map doesn't change properly as of 2010-12-11-0156UET)
{{179, 0.5, 0.5}, {180, 0.5, 0.5}, 86400}, -- DeepHolm <--> Kezan (Meta info for when major error is fixed.)
{{181, 0.24, 0.77}, {180, 0.22, 0.17}, 90}, -- The Lost Isles <--> Kezan (Meta info for when major error is fixed.)
{{208, 0.24, 0.77}, {180, 0.22, 0.17}, 90}, -- The Lost Isles <--> Kezan (Meta info for when major error is fixed.)
{{209, 0.24, 0.77}, {180, 0.22, 0.17}, 90}, -- The Lost Isles <--> Kezan (Meta info for when major error is fixed.)
{{181, 0.5, 0.5}, {182, 0.5, 0.5}, 86400}, -- The Lost Isles <--> The Maelstrom (Meta info for when major error is fixed.)
{{183, 0.5, 0.5}, {182, 0.5, 0.5}, 86400}, -- The Maelstrom Continent <--> The Maelstrom (Meta info for when major error is fixed.)
{{183, 0.5, 0.5}, {1, 0.5, 0.5}, 86400}, -- The Maelstrom Continent <--> Orgrimmar (Meta info for when major error is fixed.)
{{613, 0.83, 0.34}, {610, 0.45, 0.23}, 210, true}, -- Vash'jir --> Vash'jir Kelp Forest (One time, One way)
{{610, 0.69, 0.60}, {613, 0.80, 0.30}, 5}, -- Vash'jir Kelp Forest <--> Vash'jir
{{613, 0.84, 0.23}, {-1, 0.37, 0.58}, 5}, -- Vash'jir <--> The Great Sea (EK Continent, zone 0)
{{-1, 0.39, 0.60}, {27, 0.00, 0.20}, 5}, -- The Great Sea (EK Continent, zone 0) <--> Dun Morogh
{{610, 0.40, 0.64}, {615, 0.56, 0.14}, 5}, -- VKF <--> SE
{{613, 0.50, 0.28}, {614, 0.72, 0.04}, 5}, -- Vash <--> Vash'jir Depths
{{606, 0.85, 0.41}, {281, 0.58, 0.91}, 5}, -- Hyjal <--> Winterspring
{{684, 0.5, 0.5}, {685, 0.5, 0.5}, 5}, -- Ruins of Gilneas <--> Ruins of Gilneas City (Meta info, map doesn't change properly as of 2010-12-11-0156UET)
{{640, 0.5, 0.5}, {605, 0.5, 0.5}, 86400}, -- DeepHolm <--> Kezan (Meta info for when major error is fixed.)
{{544, 0.24, 0.77}, {605, 0.22, 0.17}, 90}, -- The Lost Isles <--> Kezan (Meta info for when major error is fixed.)
{{544, 0.5, 0.5}, {737, 0.5, 0.5}, 86400}, -- The Lost Isles <--> The Maelstrom (Meta info for when major error is fixed.)
{{751, 0.5, 0.5}, {737, 0.5, 0.5}, 86400}, -- The Maelstrom Continent <--> The Maelstrom (Meta info for when major error is fixed.)
{{751, 0.5, 0.5}, {321, 0.5, 0.5}, 86400}, -- The Maelstrom Continent <--> Orgrimmar (Meta info for when major error is fixed.)
{{164, 0.84, 0.41}, {8, 0.37, 0.82}, 5}, -- Uldum <--> Tanaris
{{164, 0.70, 0.22}, {8, 0.25, 0.66}, 5}, -- Uldum <--> Tanaris
{{210, 0.84, 0.41}, {8, 0.37, 0.82}, 5}, -- Uldum <--> Tanaris
{{210, 0.70, 0.22}, {8, 0.25, 0.66}, 5}, -- Uldum <--> Tanaris
{{35, 0.45, 0.85}, {169, 0.60, 0.09}, 5}, -- Silverpine <--> Ruins of Gilneas
{{720, 0.84, 0.41}, {161, 0.37, 0.82}, 5}, -- Uldum <--> Tanaris
{{720, 0.70, 0.22}, {161, 0.25, 0.66}, 5}, -- Uldum <--> Tanaris
{{21, 0.45, 0.85}, {684, 0.60, 0.09}, 5}, -- Silverpine <--> Ruins of Gilneas
--[==[
-- Wrath instance entrances
{{80, 0.693, 0.730}, {70, 0.573, 0.467}, 5}, -- UK
{{86, 0.362, 0.880}, {65, 0.275, 0.260}, 5}, -- Nexus
@ -299,6 +292,7 @@ local static_shared_routes =
{{144, 0.500, 0.500}, {148, 0.500, 0.500}, 5},
{{144, 0.500, 0.500}, {150, 0.500, 0.500}, 5},
{{144, 0.500, 0.500}, {152, 0.500, 0.500}, 5},
--]==]
}
-- Darkportal is handled specially, depending on whether or not you're level 58+ or not.
@ -308,7 +302,7 @@ local dark_portal_route = {{33, 0.550, 0.541}, {56, 0.898, 0.502}, 60}
local ridingLevel = (select(4,GetAchievementInfo(892)) and 300) or (select(4,GetAchievementInfo(890)) and 225) or (select(4,GetAchievementInfo(889)) and 150) or (select(4,GetAchievementInfo(891)) and 75) or 0 -- this is thanks to Maldivia, who is a fucking genius
local has_fmsl = not not GetSpellInfo(GetSpellInfo(90267))
if ridingLevel >= 225 and has_fmsl then
table.insert(static_shared_routes, {{18, 0.505, 0.078}, {72, 0.403, 0.830}, 60, false, level_limit = 77}) -- Un'Goro Crater <--> Sholozar Basin
table.insert(static_shared_routes, {{201, 0.505, 0.078}, {493, 0.403, 0.830}, 60, false, level_limit = 77}) -- Un'Goro Crater <--> Sholazar Basin
-- Dependant on completion of quest #12613
end
@ -337,114 +331,114 @@ local static_zone_transitions =
--Cataclysm zones
-- Work
{7, 1, 0.117, 0.936}, -- Durotar <--> Orgrimmar (Front)
{7, 1, 0.366, 0.253}, -- Durotar <--> Orgrimmar (Side)
{15, 1, 0.792, 0.017}, -- Azshara <--> Orgrimmar (Back)
{158, 5, 0.687, 0.2}, -- Ahn'Qiraj <--> Silithus
{168, 174, 0.50, 0.61}, -- Northern Stranglethorn <--> Cape of Stranglethorn
{4, 321, 0.117, 0.936}, -- Durotar <--> Orgrimmar (Front)
{4, 321, 0.366, 0.253}, -- Durotar <--> Orgrimmar (Side)
{15, 321, 0.792, 0.017}, -- Azshara <--> Orgrimmar (Back)
{772, 261, 0.687, 0.2}, -- Ahn'Qiraj <--> Silithus
{37, 673, 0.50, 0.61}, -- Northern Stranglethorn <--> Cape of Stranglethorn
{38, 168, 0, 0}, -- Stranglethorn World Map Wonkiness
--{38, 168, 0, 0}, -- Stranglethorn World Map Wonkiness
{2, 11, 0.687, 0.872}, -- Ashenvale <--> Northern Barrens
{2, 6, 0.423, 0.711}, -- Ashenvale <--> Stonetalon Mountains
{2, 15, 0.954, 0.484}, -- Ashenvale <--> Azshara
{2, 16, 0.289, 0.144}, -- Ashenvale <--> Darkshore
{2, 13, 0.557, 0.29}, -- Ashenvale <--> Felwood
{21, 24, 0.894, 0.358}, -- Darnassus <--> Teldrassil
{22, 203, 0.697, 0.604}, -- Mulgore <--> Southern Barrens
{22, 23, 0.376, 0.33}, -- Mulgore <--> Thunder Bluff
{22, 23, 0.403, 0.193}, -- Mulgore <--> Thunder Bluff
{3, 12, 0.247, 0.494}, -- Azuremyst Isle <--> The Exodar
{3, 12, 0.369, 0.469}, -- Azuremyst Isle <--> The Exodar
{3, 12, 0.310, 0.487}, -- Azuremyst Isle <--> The Exodar
{3, 12, 0.335, 0.494}, -- Azuremyst Isle <--> The Exodar
{3, 9, 0.42, 0.013}, -- Azuremyst Isle <--> Bloodmyst Isle
{4, 6, 0.539, 0.032}, -- Desolace <--> Stonetalon Mountains
{4, 17, 0.428, 0.976}, -- Desolace <--> Feralas
{5, 18, 0.865, 0.115}, -- Silithus <--> Un'Goro Crater
{7, 11, 0.341, 0.424}, -- Durotar <--> Northern Barrens
{8, 18, 0.269, 0.516}, -- Tanaris <--> Un'Goro Crater
{8, 14, 0.512, 0.21}, -- Tanaris <--> Thousand Needles
{10, 14, 0.50, 0.94}, -- Dustwallow Marsh <--> Thousand Needles
{10, 203, 0.287, 0.472}, -- Dustwallow Marsh <--> Southern Barrens
{10, 203, 0.531, 0.104}, -- Dustwallow Marsh <--> Southern Barrens
{203, 11, 0.367, 0.048}, -- Southern Barrens <--> Northern Barrens
{203, 14, 0.43, 0.96}, -- Southern Barrens <--> Thousand Needles
{13, 19, 0.685, 0.06}, -- Felwood <--> Winterspring
{13, 20, 0.669, -0.063}, -- Felwood <--> Moonglade
{17, 14, 0.899, 0.46}, -- Feralas <--> Thousand Needles
{6, 11, 0.29, 0.08}, -- Stonetalon Mountains <--> Northern Barrens IS THIS ONE RIGHT?
{39, 51, 0.454, 0.89}, -- Arathi Highlands <--> Wetlands
{39, 48, 0.2, 0.293}, -- Arathi Highlands <--> Hillsbrad Foothills
{27, 29, 0.47, 0.071}, -- Badlands <--> Loch Modan
{27, 32, 0.05, 0.53}, -- Badlands <--> Searing Gorge
{33, 46, 0.519, 0.051}, -- Blasted Lands <--> Swamp of Sorrows
{40, 30, 0.79, 0.842}, -- Burning Steppes <--> Redridge Mountains
{47, 31, 0.324, 0.363}, -- Deadwind Pass <--> Duskwood
{47, 46, 0.605, 0.41}, -- Deadwind Pass <--> Swamp of Sorrows
{28, 25, 0.534, 0.349}, -- Dun Morogh <--> Ironforge
{28, 29, 0.863, 0.514}, -- Dun Morogh <--> Loch Modan
{28, 29, 0.844, 0.31}, -- Dun Morogh <--> Loch Modan
{31, 37, 0.801, 0.158}, -- Duskwood <--> Elwynn Forest
{31, 37, 0.15, 0.214}, -- Duskwood <--> Elwynn Forest
{31, 168, 0.447, 0.884}, -- Duskwood <--> Stranglethorn Vale
{31, 168, 0.209, 0.863}, -- Duskwood <--> Stranglethorn Vale
{31, 30, 0.941, 0.103}, -- Duskwood <--> Redridge Mountains
{31, 49, 0.079, 0.638}, -- Duskwood <--> Westfall
{34, 50, 0.077, 0.661}, -- Eastern Plaguelands <--> Western Plaguelands
{34, 44, 0.575, 0.000}, -- Eastern Plaguelands <--> Ghostlands
{37, 36, 0.321, 0.493}, -- Elwynn Forest <--> Stormwind City -- Don't need to convert because it's in Elwynn coordinates, not Stormwind coordinates
{37, 49, 0.202, 0.804}, -- Elwynn Forest <--> Westfall
{37, 30, 0.944, 0.724}, -- Elwynn Forest <--> Redridge Mountains
{41, 52, 0.567, 0.494}, -- Eversong Woods <--> Silvermoon City
{41, 44, 0.486, 0.916}, -- Eversong Woods <--> Ghostlands
{35, 43, 0.678, 0.049}, -- Silverpine Forest <--> Tirisfal Glades
{42, 50, 0.217, 0.264}, -- The Hinterlands <--> Western Plaguelands
{43, 45, 0.619, 0.651}, -- Tirisfal Glades <--> Undercity
{43, 50, 0.851, 0.703}, -- Tirisfal Glades <--> Western Plaguelands
{168, 49, 0.292, 0.024}, -- Stranglethorn Vale <--> Westfall
{48, 35, 0.137, 0.458}, -- Hillsbrad Foothills <--> Silverpine Forest
{48, 42, 0.899, 0.253}, -- Hillsbrad Foothills <--> The Hinterlands
{51, 184, 0.80, 0.47}, -- Wetlands <--> Twilight Highlands
{29, 51, 0.252, 0}, -- Loch Modan <--> Wetlands
{43, 11, 0.687, 0.872}, -- Ashenvale <--> Northern Barrens
{43, 81, 0.423, 0.711}, -- Ashenvale <--> Stonetalon Mountains
{43, 181, 0.954, 0.484}, -- Ashenvale <--> Azshara
{43, 42, 0.289, 0.144}, -- Ashenvale <--> Darkshore
{43, 182, 0.557, 0.29}, -- Ashenvale <--> Felwood
{381, 41, 0.894, 0.358}, -- Darnassus <--> Teldrassil
{9, 607, 0.697, 0.604}, -- Mulgore <--> Southern Barrens
{9, 362, 0.376, 0.33}, -- Mulgore <--> Thunder Bluff
{9, 362, 0.403, 0.193}, -- Mulgore <--> Thunder Bluff
{464, 471, 0.247, 0.494}, -- Azuremyst Isle <--> The Exodar
{464, 471, 0.369, 0.469}, -- Azuremyst Isle <--> The Exodar
{464, 471, 0.310, 0.487}, -- Azuremyst Isle <--> The Exodar
{464, 471, 0.335, 0.494}, -- Azuremyst Isle <--> The Exodar
{464, 476, 0.42, 0.013}, -- Azuremyst Isle <--> Bloodmyst Isle
{101, 81, 0.539, 0.032}, -- Desolace <--> Stonetalon Mountains
{101, 121, 0.428, 0.976}, -- Desolace <--> Feralas
{261, 201, 0.865, 0.115}, -- Silithus <--> Un'Goro Crater
{4, 11, 0.341, 0.424}, -- Durotar <--> Northern Barrens
{161, 201, 0.269, 0.516}, -- Tanaris <--> Un'Goro Crater
{161, 61, 0.512, 0.21}, -- Tanaris <--> Thousand Needles
{141, 61, 0.50, 0.94}, -- Dustwallow Marsh <--> Thousand Needles
{141, 607, 0.287, 0.472}, -- Dustwallow Marsh <--> Southern Barrens
{141, 607, 0.531, 0.104}, -- Dustwallow Marsh <--> Southern Barrens
{607, 11, 0.367, 0.048}, -- Southern Barrens <--> Northern Barrens
{607, 61, 0.43, 0.96}, -- Southern Barrens <--> Thousand Needles
{182, 281, 0.685, 0.06}, -- Felwood <--> Winterspring
{182, 241, 0.669, -0.063}, -- Felwood <--> Moonglade
{121, 61, 0.899, 0.46}, -- Feralas <--> Thousand Needles
{81, 11, 0.29, 0.08}, -- Stonetalon Mountains <--> Northern Barrens IS THIS ONE RIGHT?
{16, 40, 0.454, 0.89}, -- Arathi Highlands <--> Wetlands
{16, 24, 0.2, 0.293}, -- Arathi Highlands <--> Hillsbrad Foothills
{17, 35, 0.47, 0.071}, -- Badlands <--> Loch Modan
{17, 28, 0.05, 0.53}, -- Badlands <--> Searing Gorge
{19, 38, 0.519, 0.051}, -- Blasted Lands <--> Swamp of Sorrows
{29, 36, 0.79, 0.842}, -- Burning Steppes <--> Redridge Mountains
{32, 34, 0.324, 0.363}, -- Deadwind Pass <--> Duskwood
{32, 38, 0.605, 0.41}, -- Deadwind Pass <--> Swamp of Sorrows
{27, 341, 0.534, 0.349}, -- Dun Morogh <--> Ironforge
{27, 35, 0.863, 0.514}, -- Dun Morogh <--> Loch Modan
{27, 35, 0.844, 0.31}, -- Dun Morogh <--> Loch Modan
{34, 30, 0.801, 0.158}, -- Duskwood <--> Elwynn Forest
{34, 30, 0.15, 0.214}, -- Duskwood <--> Elwynn Forest
{34, 689, 0.447, 0.884}, -- Duskwood <--> Stranglethorn Vale
{34, 689, 0.209, 0.863}, -- Duskwood <--> Stranglethorn Vale
{34, 36, 0.941, 0.103}, -- Duskwood <--> Redridge Mountains
{34, 39, 0.079, 0.638}, -- Duskwood <--> Westfall
{23, 22, 0.077, 0.661}, -- Eastern Plaguelands <--> Western Plaguelands
{23, 463, 0.575, 0.000}, -- Eastern Plaguelands <--> Ghostlands
{30, 301, 0.321, 0.493}, -- Elwynn Forest <--> Stormwind City -- Don't need to convert because it's in Elwynn coordinates, not Stormwind coordinates
{30, 39, 0.202, 0.804}, -- Elwynn Forest <--> Westfall
{30, 36, 0.944, 0.724}, -- Elwynn Forest <--> Redridge Mountains
{462, 480, 0.567, 0.494}, -- Eversong Woods <--> Silvermoon City
{462, 463, 0.486, 0.916}, -- Eversong Woods <--> Ghostlands
{21, 20, 0.678, 0.049}, -- Silverpine Forest <--> Tirisfal Glades
{26, 22, 0.217, 0.264}, -- The Hinterlands <--> Western Plaguelands
{20, 382, 0.619, 0.651}, -- Tirisfal Glades <--> Undercity
{20, 22, 0.851, 0.703}, -- Tirisfal Glades <--> Western Plaguelands
{689, 39, 0.292, 0.024}, -- Stranglethorn Vale <--> Westfall
{24, 21, 0.137, 0.458}, -- Hillsbrad Foothills <--> Silverpine Forest
{24, 26, 0.899, 0.253}, -- Hillsbrad Foothills <--> The Hinterlands
{40, 700, 0.80, 0.47}, -- Wetlands <--> Twilight Highlands
{35, 40, 0.252, 0}, -- Loch Modan <--> Wetlands
-- Outland
{58, 60, 0.783, 0.545}, -- Nagrand <--> Shattrath City -- this is aldor-only
{60, 55, 0.782, 0.492}, -- Shattrath City <--> Terokkar Forest
{54, 59, 0.842, 0.284}, -- Blade's Edge Mountains <--> Netherstorm
{54, 57, 0.522, 0.996}, -- Blade's Edge Mountains <--> Zangarmarsh
{54, 57, 0.312, 0.94}, -- Blade's Edge Mountains <--> Zangarmarsh
{56, 55, 0.353, 0.901}, -- Hellfire Peninsula <--> Terokkar Forest
{56, 57, 0.093, 0.519}, -- Hellfire Peninsula <--> Zangarmarsh
{58, 55, 0.8, 0.817}, -- Nagrand <--> Terokkar Forest
{58, 57, 0.343, 0.159}, -- Nagrand <--> Zangarmarsh
{58, 57, 0.754, 0.331}, -- Nagrand <--> Zangarmarsh
{53, 55, 0.208, 0.271}, -- Shadowmoon Valley <--> Terokkar Forest
{55, 57, 0.341, 0.098}, -- Terokkar Forest <--> Zangarmarsh
{477, 481, 0.783, 0.545}, -- Nagrand <--> Shattrath City -- this is aldor-only
{481, 478, 0.782, 0.492}, -- Shattrath City <--> Terokkar Forest
{475, 479, 0.842, 0.284}, -- Blade's Edge Mountains <--> Netherstorm
{475, 467, 0.522, 0.996}, -- Blade's Edge Mountains <--> Zangarmarsh
{475, 467, 0.312, 0.94}, -- Blade's Edge Mountains <--> Zangarmarsh
{465, 478, 0.353, 0.901}, -- Hellfire Peninsula <--> Terokkar Forest
{465, 467, 0.093, 0.519}, -- Hellfire Peninsula <--> Zangarmarsh
{477, 478, 0.8, 0.817}, -- Nagrand <--> Terokkar Forest
{477, 467, 0.343, 0.159}, -- Nagrand <--> Zangarmarsh
{477, 467, 0.754, 0.331}, -- Nagrand <--> Zangarmarsh
{473, 478, 0.208, 0.271}, -- Shadowmoon Valley <--> Terokkar Forest
{478, 467, 0.341, 0.098}, -- Terokkar Forest <--> Zangarmarsh
-- Northrend
{65, 68, 0.967, 0.359}, -- Borean Tundra <--> Dragonblight
{74, 72, 0.208, 0.191}, -- Wintergrasp <--> Sholazar
{68, 74, 0.250, 0.410}, -- Dragonblight <--> Wintergrasp
{68, 71, 0.359, 0.155}, -- Dragonblight <--> Icecrown
{68, 66, 0.612, 0.142}, -- Dragonblight <--> Crystalsong
{68, 75, 0.900, 0.200}, -- Dragonblight <--> Zul'Drak
{68, 69, 0.924, 0.304}, -- Dragonblight <--> Grizzly Hills
{68, 69, 0.931, 0.634}, -- Dragonblight <--> Grizzly Hills
{70, 69, 0.540, 0.042}, -- Howling Fjord <--> Grizzly Hills
{70, 69, 0.233, 0.074}, -- Howling Fjord <--> Grizzly Hills
{70, 69, 0.753, 0.060}, -- Howling Fjord <--> Grizzly Hills
{69, 75, 0.432, 0.253}, -- Grizzly Hills <--> Zul'Drak
{69, 75, 0.583, 0.136}, -- Grizzly Hills <--> Zul'Drak
{66, 75, 0.967, 0.599}, -- Crystalsong <--> Zul'Drak
{66, 71, 0.156, 0.085}, -- Crystalsong <--> Icecrown
{66, 73, 0.706, 0.315}, -- Crystalsong <--> Storm Peaks
{66, 73, 0.839, 0.340}, -- Crystalsong <--> Storm Peaks
{71, 73, 0.920, 0.767}, -- Icecrown <--> Storm Peaks
{486, 488, 0.967, 0.359}, -- Borean Tundra <--> Dragonblight
{501, 493, 0.208, 0.191}, -- Wintergrasp <--> Sholazar
{488, 501, 0.250, 0.410}, -- Dragonblight <--> Wintergrasp
{488, 492, 0.359, 0.155}, -- Dragonblight <--> Icecrown
{488, 510, 0.612, 0.142}, -- Dragonblight <--> Crystalsong
{488, 496, 0.900, 0.200}, -- Dragonblight <--> Zul'Drak
{488, 490, 0.924, 0.304}, -- Dragonblight <--> Grizzly Hills
{488, 490, 0.931, 0.634}, -- Dragonblight <--> Grizzly Hills
{491, 490, 0.540, 0.042}, -- Howling Fjord <--> Grizzly Hills
{491, 490, 0.233, 0.074}, -- Howling Fjord <--> Grizzly Hills
{491, 490, 0.753, 0.060}, -- Howling Fjord <--> Grizzly Hills
{490, 496, 0.432, 0.253}, -- Grizzly Hills <--> Zul'Drak
{490, 496, 0.583, 0.136}, -- Grizzly Hills <--> Zul'Drak
{510, 496, 0.967, 0.599}, -- Crystalsong <--> Zul'Drak
{510, 492, 0.156, 0.085}, -- Crystalsong <--> Icecrown
{510, 495, 0.706, 0.315}, -- Crystalsong <--> Storm Peaks
{510, 495, 0.839, 0.340}, -- Crystalsong <--> Storm Peaks
{492, 495, 0.920, 0.767}, -- Icecrown <--> Storm Peaks
}
if QuestHelper:IsWrath32() then
table.insert(static_zone_transitions, {153, 71, 0.5, 0.5}) -- Hrothgar's Landing <--> Icecrown
table.insert(static_zone_transitions, {541, 492, 0.5, 0.5}) -- Hrothgar's Landing <--> Icecrown
end
local function convertLostIsles(current, other1, other2)
@ -457,7 +451,7 @@ end
function load_graph_links()
local function convert_coordinate(coord)
QuestHelper: Assert(coord[1] and coord[2] and coord[3])
--[==[
-- I hate Blizzard... They can't make up their mind weather we are on TwilightHighlands or TwilightHiglands_terrain1, but we only seem to be on one or the other.
if coord[1] == 177 and not QuestHelper_ZoneLookup[coord[1]] then
coord[1] = 184
@ -489,10 +483,8 @@ function load_graph_links()
-- Use the lookup table to get the real coordinate.
if converter[coord[1]] then coord[1] = converter[coord[1]]() end
]==]
local QHZL = QuestHelper_ZoneLookup
local test = QHZL[181] or QHZL[208] or QHZL[209]
QuestHelper: Assert(test, "Umm, something is seriously wrong... We're missing a LostIsles terrain.")
QuestHelper: Assert(QuestHelper_ZoneLookup[coord[1]], string.format("Coord[1] = %d", coord[1]))
local c, x, y = QuestHelper.Astrolabe:GetAbsoluteContinentPosition(QuestHelper_ZoneLookup[coord[1]][1], QuestHelper_ZoneLookup[coord[1]][2], coord[2], coord[3])
QuestHelper: Assert(c)

Voir le fichier

@ -109,67 +109,6 @@ QuestHelper_Zones =
[3]="The Lost Isles",
[4]="The Maelstrom"
},
[-77]={[0]="ScarletEnclave_Continent", [1]="ScarletEnclave"},
[-78]={[0]="GilneasCity_Continent", [1]="GilneasCity"},
[-79]={[0]="GilneasZone_Continent", [1]="GilneasZone"},
[-80]={[0]="UtgardeKeep1_Continent", [1]="UtgardeKeep1"},
[-81]={[0]="UtgardeKeep2_Continent", [1]="UtgardeKeep2"},
[-82]={[0]="UtgardeKeep3_Continent", [1]="UtgardeKeep3"},
[-83]={[0]="TheNexus_Continent", [1]="TheNexus"},
[-84]={[0]="AzjolNerub1_Continent", [1]="AzjolNerub1"},
[-85]={[0]="AzjolNerub2_Continent", [1]="AzjolNerub2"},
[-86]={[0]="AzjolNerub3_Continent", [1]="AzjolNerub3"},
[-87]={[0]="Ahnkahet_Continent", [1]="Ahnkahet"},
[-88]={[0]="DrakTharonKeep1_Continent", [1]="DrakTharonKeep1"},
[-89]={[0]="DrakTharonKeep2_Continent", [1]="DrakTharonKeep2"},
[-90]={[0]="VioletHold_Continent", [1]="VioletHold"},
[-91]={[0]="Gundrak_Continent", [1]="Gundrak"},
[-92]={[0]="Ulduar77_Continent", [1]="Ulduar77"},
[-93]={[0]="HallsofLightning1_Continent", [1]="HallsofLightning1"},
[-94]={[0]="HallsofLightning2_Continent", [1]="HallsofLightning2"},
[-95]={[0]="Nexus801_Continent", [1]="Nexus801"},
[-96]={[0]="Nexus802_Continent", [1]="Nexus802"},
[-97]={[0]="Nexus803_Continent", [1]="Nexus803"},
[-98]={[0]="Nexus804_Continent", [1]="Nexus804"},
[-99]={[0]="CoTStratholme1_Continent", [1]="CoTStratholme1"},
[-100]={[0]="CoTStratholme2_Continent", [1]="CoTStratholme2"},
[-101]={[0]="UtgardePinnacle1_Continent", [1]="UtgardePinnacle1"},
[-102]={[0]="UtgardePinnacle2_Continent", [1]="UtgardePinnacle2"},
[-103]={[0]="VaultofArchavon_Continent", [1]="VaultofArchavon"},
[-104]={[0]="Naxxramas1_Continent", [1]="Naxxramas1"},
[-105]={[0]="Naxxramas2_Continent", [1]="Naxxramas2"},
[-106]={[0]="Naxxramas3_Continent", [1]="Naxxramas3"},
[-107]={[0]="Naxxramas4_Continent", [1]="Naxxramas4"},
[-108]={[0]="Naxxramas5_Continent", [1]="Naxxramas5"},
[-109]={[0]="Naxxramas6_Continent", [1]="Naxxramas6"},
[-110]={[0]="TheObsidianSanctum_Continent", [1]="TheObsidianSanctum"},
[-111]={[0]="TheEyeOfEternity_Continent", [1]="TheEyeOfEternity"},
[-112]={[0]="Ulduar_Continent", [1]="Ulduar"},
[-113]={[0]="Ulduar1_Continent", [1]="Ulduar1"},
[-114]={[0]="Ulduar2_Continent", [1]="Ulduar2"},
[-115]={[0]="Ulduar3_Continent", [1]="Ulduar3"},
[-116]={[0]="Ulduar4_Continent", [1]="Ulduar4"},
[-117]={[0]="TheForgeofSouls_Continent", [1]="TheForgeofSouls"},
[-118]={[0]="PitofSaron_Continent", [1]="PitofSaron"},
[-119]={[0]="DeeprunTram_Continent", [1]="DeeprunTram"},
}
@ -177,177 +116,109 @@ QuestHelper_Zones =
-- Additionally, [CONT_INDEX][ZONE_INDEX] = INDEX will also be added.
QuestHelper_IndexLookup =
{
["Orgrimmar"] = {1, 1, 17},
["Ashenvale"] = {2, 1, 2},
["AzuremystIsle"] = {3, 1, 4},
["Desolace"] = {4, 1, 8},
["Silithus"] = {5, 1, 18},
["StonetalonMountains"] = {6, 1, 20},
["Durotar"] = {7, 1, 9},
["Tanaris"] = {8, 1, 21},
["BloodmystIsle"] = {9, 1, 5},
["Dustwallow"] = {10, 1, 10},
["Orgrimmar"] = {321, 1, 17},
["Ashenvale"] = {43, 1, 2},
["AzuremystIsle"] = {464, 1, 4},
["Desolace"] = {101, 1, 8},
["Silithus"] = {261, 1, 18},
["StonetalonMountains"] = {81, 1, 20},
["Durotar"] = {4, 1, 9},
["Tanaris"] = {161, 1, 21},
["BloodmystIsle"] = {476, 1, 5},
["Dustwallow"] = {141, 1, 10},
["Barrens"] = {11, 1, 16},
["TheExodar"] = {12, 1, 23},
["Felwood"] = {13, 1, 11},
["ThousandNeedles"] = {14, 1, 24},
["Aszhara"] = {15, 1, 3},
["Darkshore"] = {16, 1, 6},
["Feralas"] = {17, 1, 12},
["UngoroCrater"] = {18, 1, 27},
["Winterspring"] = {19, 1, 28},
["Moonglade"] = {20, 1, 13},
["Darnassus"] = {21, 1, 7},
["Mulgore"] = {22, 1, 15},
["ThunderBluff"] = {23, 1, 25},
["Teldrassil"] = {24, 1, 22},
["Ironforge"] = {25, 2, 14},
["Badlands"] = {27, 2, 3},
["DunMorogh"] = {28, 2, 7},
["LochModan"] = {29, 2, 17},
["Redridge"] = {30, 2, 19},
["Duskwood"] = {31, 2, 8},
["SearingGorge"] = {32, 2, 22},
["BlastedLands"] = {33, 2, 4},
["EasternPlaguelands"] = {34, 2, 9},
["Silverpine"] = {35, 2, 25},
["StormwindCity"] = {36, 2, 26},
["Elwynn"] = {37, 2, 10},
["StranglethornVale"] = {38, 2, 27},
["Arathi"] = {39, 2, 2},
["BurningSteppes"] = {40, 2, 5},
["EversongWoods"] = {41, 2, 11},
["Hinterlands"] = {42, 2, 30},
["Tirisfal"] = {43, 2, 31},
["Ghostlands"] = {44, 2, 12},
["Undercity"] = {45, 2, 35},
["SwampOfSorrows"] = {46, 2, 28},
["DeadwindPass"] = {47, 2, 6},
["HillsbradFoothills"] = {48, 2, 13},
["Westfall"] = {49, 2, 38},
["WesternPlaguelands"] = {50, 2, 37},
["Wetlands"] = {51, 2, 39},
["SilvermoonCity"] = {52, 2, 24},
["ShadowmoonValley"] = {53, 3, 5},
["BladesEdgeMountains"] = {54, 3, 1},
["TerokkarForest"] = {55, 3, 7},
["Hellfire"] = {56, 3, 2},
["Zangarmarsh"] = {57, 3, 8},
["Nagrand"] = {58, 3, 3},
["Netherstorm"] = {59, 3, 4},
["ShattrathCity"] = {60, 3, 6},
["Kalimdor"] = {61, 1, 0},
["Azeroth"] = {62, 2, 0},
["Expansion01"] = {63, 3, 0},
["Sunwell"] = {64, 2, 15},
["BoreanTundra"] = {65, 4, 1},
["CrystalsongForest"] = {66, 4, 2},
["Dalaran"] = {67, 4, 3},
["Dragonblight"] = {68, 4, 4},
["GrizzlyHills"] = {69, 4, 5},
["HowlingFjord"] = {70, 4, 6},
["IcecrownGlacier"] = {71, 4, 8},
["SholazarBasin"] = {72, 4, 9},
["TheStormPeaks"] = {73, 4, 10},
["LakeWintergrasp"] = {74, 4, 11},
["ZulDrak"] = {75, 4, 12},
["Northrend"] = {76, 4, 0},
["TheExodar"] = {471, 1, 23},
["Felwood"] = {182, 1, 11},
["ThousandNeedles"] = {61, 1, 24},
["Aszhara"] = {181, 1, 3},
["Darkshore"] = {42, 1, 6},
["Feralas"] = {121, 1, 12},
["UngoroCrater"] = {201, 1, 27},
["Winterspring"] = {281, 1, 28},
["Moonglade"] = {241, 1, 13},
["Darnassus"] = {381, 1, 7},
["Mulgore"] = {9, 1, 15},
["ThunderBluff"] = {362, 1, 25},
["Teldrassil"] = {41, 1, 22},
["Ironforge"] = {341, 2, 14},
["Badlands"] = {17, 2, 3},
["DunMorogh"] = {27, 2, 7},
["LochModan"] = {35, 2, 17},
["Redridge"] = {36, 2, 19},
["Duskwood"] = {34, 2, 8},
["SearingGorge"] = {28, 2, 22},
["BlastedLands"] = {19, 2, 4},
["EasternPlaguelands"] = {23, 2, 9},
["Silverpine"] = {21, 2, 25},
["StormwindCity"] = {301, 2, 26},
["Elwynn"] = {30, 2, 10},
["StranglethornVale"] = {689, 2, 27},
["Arathi"] = {16, 2, 2},
["BurningSteppes"] = {29, 2, 5},
["EversongWoods"] = {462, 2, 11},
["Hinterlands"] = {26, 2, 30},
["Tirisfal"] = {20, 2, 31},
["Ghostlands"] = {463, 2, 12},
["Undercity"] = {382, 2, 35},
["SwampOfSorrows"] = {38, 2, 28},
["DeadwindPass"] = {32, 2, 6},
["HillsbradFoothills"] = {24, 2, 13},
["Westfall"] = {39, 2, 38},
["WesternPlaguelands"] = {22, 2, 37},
["Wetlands"] = {40, 2, 39},
["SilvermoonCity"] = {480, 2, 24},
["ShadowmoonValley"] = {473, 3, 5},
["BladesEdgeMountains"] = {475, 3, 1},
["TerokkarForest"] = {478, 3, 7},
["Hellfire"] = {465, 3, 2},
["Zangarmarsh"] = {467, 3, 8},
["Nagrand"] = {477, 3, 3},
["Netherstorm"] = {479, 3, 4},
["ShattrathCity"] = {481, 3, 6},
["Kalimdor"] = {13, 1, 0},
["Azeroth"] = {-1, 2, 0},
["Expansion01"] = {466, 3, 0},
["Sunwell"] = {789, 2, 15},
["BoreanTundra"] = {486, 4, 1},
["CrystalsongForest"] = {510, 4, 2},
["Dalaran"] = {504, 4, 3},
["Dragonblight"] = {488, 4, 4},
["GrizzlyHills"] = {490, 4, 5},
["HowlingFjord"] = {491, 4, 6},
["IcecrownGlacier"] = {492, 4, 8},
["SholazarBasin"] = {493, 4, 9},
["TheStormPeaks"] = {495, 4, 10},
["LakeWintergrasp"] = {501, 4, 11},
["ZulDrak"] = {496, 4, 12},
["Northrend"] = {485, 4, 0},
["HrothgarsLanding"] = {153, 4, 7}, -- wooo consecutive numbering
["AhnQirajTheFallenKingdom"] = {158, 1, 1},
["Hyjal"] = {198, 1, 14}, -- Check
["SouthernBarrens"] = {203, 1, 19},
["Uldum"] = {164, 1, 26}, -- Check
["Uldum_terrain1"] = {210, 1, 26}, -- Check
["VashjirDepths"] = {165, 2, 1}, -- Check
["VashjirKelpForest"] = {167, 2, 16}, -- Check
["StranglethornJungle"] = {168, 2, 18},
["RuinsofGilneas"] = {169, 2, 20},
["RuinsofGilneasCity"] = {170, 2, 21},
["VashjirRuins"] = {171, 2, 23}, -- Check
["TheCapeOfStranglethorn"] = {174, 2, 29},
["TolBarad"] = {175, 2, 32},
["TolBaradDailyArea"] = {176, 2, 33},
["TwilightHighlands_terrain1"] = {177, 2, 34},
["Vashjir"] = {178, 2, 36}, -- Check
["Deepholm"] = {179, 5, 1},
["Kezan"] = {180, 5, 2},
["TheLostIsles"] = {181, 5, 3},
["TheLostIsles_terrain1"] = {208, 5, 3},
["TheLostIsles_terrain2"] = {209, 5, 3},
["TheMaelstrom"] = {182, 5, 4},
["TheMaelstromContinent"] = {183, 5, 0},
["TwilightHighlands"] = {184, 2, 34},
["Hyjal_terrain1"] = {185, 1, 14},
["ScarletEnclave_Continent"] = {77, -77, 0}, ["ScarletEnclave"] = {78, -77, 1},
["UtgardeKeep1_Continent"] = {79, -80, 0}, ["UtgardeKeep1"] = {80, -80, 1},
["UtgardeKeep2_Continent"] = {81, -81, 0}, ["UtgardeKeep2"] = {82, -81, 1},
["UtgardeKeep3_Continent"] = {83, -82, 0}, ["UtgardeKeep3"] = {84, -82, 1},
["TheNexus_Continent"] = {85, -83, 0}, ["TheNexus"] = {86, -83, 1},
["AzjolNerub1_Continent"] = {87, -84, 0}, ["AzjolNerub1"] = {88, -84, 1},
["AzjolNerub2_Continent"] = {89, -85, 0}, ["AzjolNerub2"] = {90, -85, 1},
["AzjolNerub3_Continent"] = {91, -86, 0}, ["AzjolNerub3"] = {92, -86, 1},
["Ahnkahet_Continent"] = {93, -87, 0}, ["Ahnkahet"] = {94, -87, 1},
["DrakTharonKeep1_Continent"] = {95, -88, 0}, ["DrakTharonKeep1"] = {96, -88, 1},
["DrakTharonKeep2_Continent"] = {97, -89, 0}, ["DrakTharonKeep2"] = {98, -89, 1},
["VioletHold_Continent"] = {99, -90, 0}, ["VioletHold"] = {100, -90, 1},
["Gundrak_Continent"] = {101, -91, 0}, ["Gundrak"] = {102, -91, 1},
["Ulduar77_Continent"] = {103, -92, 0}, ["Ulduar77"] = {104, -92, 1}, -- HoS
["HallsofLightning1_Continent"] = {105, -93, 0}, ["HallsofLightning1"] = {106, -93, 1},
["HallsofLightning2_Continent"] = {107, -94, 0}, ["HallsofLightning2"] = {108, -94, 1},
["Nexus801_Continent"] = {109, -95, 0}, ["Nexus801"] = {110 , -95, 1},
["Nexus802_Continent"] = {111, -96, 0}, ["Nexus802"] = {112, -96, 1},
["Nexus803_Continent"] = {113, -97, 0}, ["Nexus803"] = {114, -97, 1},
["Nexus804_Continent"] = {115, -98, 0}, ["Nexus804"] = {116, -98, 1},
["CoTStratholme1_Continent"] = {117, -99, 0}, ["CoTStratholme1"] = {118, -99, 1},
["CoTStratholme2_Continent"] = {119, -100, 0}, ["CoTStratholme2"] = {120, -100, 1},
["UtgardePinnacle1_Continent"] = {121, -101, 0}, ["UtgardePinnacle1"] = {122, -101, 1},
["UtgardePinnacle2_Continent"] = {123, -102, 0}, ["UtgardePinnacle2"] = {124, -102, 1},
["VaultofArchavon_Continent"] = {125, -103, 0}, ["VaultofArchavon"] = {126, -103, 1},
["Naxxramas1_Continent"] = {127, -104, 0}, ["Naxxramas1"] = {128, -104, 1},
["Naxxramas2_Continent"] = {129, -105, 0}, ["Naxxramas2"] = {130, -105, 1},
["Naxxramas3_Continent"] = {131, -106, 0}, ["Naxxramas3"] = {132, -106, 1},
["Naxxramas4_Continent"] = {133, -107, 0}, ["Naxxramas4"] = {134, -107, 1},
["Naxxramas5_Continent"] = {135, -108, 0}, ["Naxxramas5"] = {136, -108, 1},
["Naxxramas6_Continent"] = {137, -109, 0}, ["Naxxramas6"] = {138, -109, 1},
["TheObsidianSanctum_Continent"] = {139, -110, 0}, ["TheObsidianSanctum"] = {140, -110, 1},
["TheEyeOfEternity_Continent"] = {141, -111, 0}, ["TheEyeOfEternity"] = {142, -111, 1},
["Ulduar_Continent"] = {143, -112, 0}, ["Ulduar"] = {144, -112, 1},
["Ulduar1_Continent"] = {145, -113, 0}, ["Ulduar1"] = {146, -113, 1},
["Ulduar2_Continent"] = {147, -114, 0}, ["Ulduar2"] = {148, -114, 1},
["Ulduar3_Continent"] = {149, -115, 0}, ["Ulduar3"] = {150, -115, 1},
["Ulduar4_Continent"] = {151, -116, 0}, ["Ulduar4"] = {152, -116, 1},
["TheForgeofSouls_Continent"] = {154, -117, 0}, ["TheForgeofSouls"] = {155, -117, 1},
["PitofSaron_Continent"] = {156, -118, 0}, ["PitofSaron"] = {157, -118, 1},
["GilneasCity_Continent"] = {204, -78, 0}, ["GilneasCity"] = {205, -78, 1},
["GilneasZone_Continent"] = {206, -79, 0}, ["GilneasZone"] = {207, -79, 1},
["DeeprunTram_Continent"] = {208, -119, 0}, ["DeeprunTram"] = {209, -119, 1},
-- yes virginia 183 is currently the end
["HrothgarsLanding"] = {541, 4, 7}, -- wooo consecutive numbering
["AhnQirajTheFallenKingdom"] = {772, 1, 1},
["Hyjal"] = {606, 1, 14}, -- Check
["SouthernBarrens"] = {607, 1, 19},
["Uldum"] = {720, 1, 26}, -- Check
["Uldum_terrain1"] = {720, 1, 26}, -- Check
["VashjirDepths"] = {614, 2, 1}, -- Check
["VashjirKelpForest"] = {610, 2, 16}, -- Check
["StranglethornJungle"] = {37, 2, 18},
["RuinsofGilneas"] = {684, 2, 20},
["RuinsofGilneasCity"] = {685, 2, 21},
["VashjirRuins"] = {615, 2, 23}, -- Check
["TheCapeOfStranglethorn"] = {673, 2, 29},
["TolBarad"] = {708, 2, 32},
["TolBaradDailyArea"] = {709, 2, 33},
["TwilightHighlands_terrain1"] = {700, 2, 34},
["Vashjir"] = {613, 2, 36}, -- Check
["Deepholm"] = {640, 5, 1},
["Kezan"] = {605, 5, 2},
["TheLostIsles"] = {544, 5, 3},
["TheLostIsles_terrain1"] = {544, 5, 3},
["TheLostIsles_terrain2"] = {544, 5, 3},
["TheMaelstrom"] = {737, 5, 4},
["TheMaelstromContinent"] = {751, 5, 0},
["TwilightHighlands"] = {700, 2, 34},
["Hyjal_terrain1"] = {606, 1, 14},
}
QuestHelper_RestrictedZones = { -- Everything defaults to "nil"