mirror of
https://github.com/Blaststar/Questie-Octo-Vanilla.git
synced 2026-10-19 20:00:49 +00:00
Several additions and changes
This commit is contained in:
+3
-4
@@ -812,15 +812,15 @@ function M:Finish(generation,doPrune)
|
||||
end
|
||||
|
||||
function M:ApplyHighlight()
|
||||
local hq=QuestieOcto.MapHighlight and QuestieOcto.MapHighlight.questID
|
||||
local V=QuestieOcto.Visuals
|
||||
local hq=QuestieOcto.MapHighlight and QuestieOcto.MapHighlight.questID
|
||||
if not V then return end
|
||||
for _,pin in pairs(self.activeFrames or {}) do
|
||||
if pin then
|
||||
if not hq then
|
||||
V:SetHighlight(pin,false)
|
||||
V:SetAlpha(pin,1)
|
||||
elseif tonumber(pin.questID)==hq and V:IsObjectiveRole(pin.role) then
|
||||
elseif tonumber(pin.questID)==hq and (V:IsObjectiveRole(pin.role) or pin.role=="turnin") then
|
||||
V:SetHighlight(pin,true)
|
||||
else
|
||||
V:SetHighlight(pin,false)
|
||||
@@ -1457,5 +1457,4 @@ if WorldMapFrame and not M.worldMapShowHooked then
|
||||
OnWorldMapShow()
|
||||
end)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
+2
-2
@@ -880,7 +880,7 @@ function MM:ApplyHighlight()
|
||||
if not hq then
|
||||
V:SetHighlight(pin,false)
|
||||
V:SetAlpha(pin,1)
|
||||
elseif tonumber(pin.questID)==hq and V:IsObjectiveRole(pin.role) then
|
||||
elseif tonumber(pin.questID)==hq and (V:IsObjectiveRole(pin.role) or pin.role=="turnin") then
|
||||
V:SetHighlight(pin,true)
|
||||
else
|
||||
V:SetHighlight(pin,false)
|
||||
@@ -985,4 +985,4 @@ end
|
||||
QuestieOcto:RegisterMessage("PREPARED_MAP_READY",MM,"OnPreparedMapReady")
|
||||
QuestieOcto:RegisterMessage("NODES_READY",MM,"OnNodesReady")
|
||||
|
||||
MM:Start()
|
||||
MM:Start()
|
||||
+11
-1
@@ -230,7 +230,17 @@ local function LiveObjectiveText(node)
|
||||
if state and objectiveIndex then
|
||||
for _,row in pairs(state.objectives or {}) do
|
||||
if tonumber(row.index)==objectiveIndex then
|
||||
return row.text or row.rawText or node.objectiveText
|
||||
local text=row.text or row.rawText or node.objectiveText or ""
|
||||
-- When the row text is only the entity name (its live objective ID did
|
||||
-- not resolve, so LocalizeObjectiveRows left off the counter) append the
|
||||
-- x/y progress from the row so the tooltip still shows it.
|
||||
local current=tonumber(row.current)
|
||||
local required=tonumber(row.required)
|
||||
if current and required and required>0 and not string.find(text,"%d+%s*/%s*%d+") then
|
||||
if text~="" then text=text.." "..tostring(current).."/"..tostring(required)
|
||||
else text=tostring(current).."/"..tostring(required) end
|
||||
end
|
||||
return text
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
+24
-1
@@ -70,6 +70,20 @@ local function ReadObjectives(index,questID)
|
||||
if current==nil then current=parsedCurrent end
|
||||
if required==nil then required=parsedRequired end
|
||||
end
|
||||
-- Turtle's C_QuestLog.GetQuestObjectives can omit the counter (and its
|
||||
-- count-bearing text) for some quests; the native per-objective
|
||||
-- leaderboard still carries "x/y", so borrow the count and text from it.
|
||||
if (current==nil or required==nil) and GetQuestLogLeaderBoard then
|
||||
local lbText=GetQuestLogLeaderBoard(i,index)
|
||||
if lbText and lbText~="" then
|
||||
local lbc,lbr=ParseObjectiveProgress(lbText)
|
||||
if current==nil then current=lbc end
|
||||
if required==nil then required=lbr end
|
||||
if lbc and lbr and (not text or not string.find(text,"%d+%s*/%s*%d+")) then
|
||||
text=lbText
|
||||
end
|
||||
end
|
||||
end
|
||||
local finished=row.finished and true or false
|
||||
local objectiveID=QuestieOcto.API and QuestieOcto.API.GetQuestLogLeaderBoardID
|
||||
and QuestieOcto.API:GetQuestLogLeaderBoardID(i,index) or nil
|
||||
@@ -121,7 +135,16 @@ local function ReadObjectives(index,questID)
|
||||
end
|
||||
end
|
||||
|
||||
return objectives,table.concat(snapshot,"\\030"),allDone,"QuestieAPI",table.concat(mapSnapshot,"\\030")
|
||||
-- If the modern objectives API returned fewer entries than the native quest
|
||||
-- log (some Turtle quests expose incomplete data here), discard it and
|
||||
-- rebuild from the leaderboard below so no objective is dropped.
|
||||
local lbCount=GetNumQuestLeaderBoards and tonumber(GetNumQuestLeaderBoards(index)) or nil
|
||||
if not lbCount or table.getn(objectiveKeys)>=lbCount then
|
||||
return objectives,table.concat(snapshot,"\\030"),allDone,"QuestieAPI",table.concat(mapSnapshot,"\\030")
|
||||
end
|
||||
objectives={}
|
||||
snapshot={}
|
||||
mapSnapshot={}
|
||||
end
|
||||
|
||||
-- 1.12 compatibility fallback. The legacy leaderboard API only supplies
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
<Bindings>
|
||||
<Binding name="QUESTIE_TOGGLE_JOURNEY" category="Questie">
|
||||
QuestieLoader:ImportModule("QuestieJourney"):ToggleJourneyWindow()
|
||||
</Binding>
|
||||
</Bindings>
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@@ -1,66 +0,0 @@
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
|
||||
QuestieDB.sortKeys = {
|
||||
EPIC = -1,
|
||||
HALLOWS_END = -21,
|
||||
SEASONAL = -22,
|
||||
UNDERCITY = -23,
|
||||
HERBALISM = -24,
|
||||
BATTLEGROUNDS = -25,
|
||||
DAY_OF_THE_DEAD = -41,
|
||||
WARLOCK = -61,
|
||||
WARRIOR = -81,
|
||||
SHAMAN = -82,
|
||||
FISHING = -101,
|
||||
BLACKSMITHING = -121,
|
||||
PALADIN = -141,
|
||||
MAGE = -161,
|
||||
ROGUE = -162,
|
||||
ALCHEMY = -181,
|
||||
LEATHERWORKING = -182,
|
||||
ENGINEERING = -201,
|
||||
TREASURE_MAP = -221,
|
||||
TOURNAMENT = -241,
|
||||
HUNTER = -261,
|
||||
PRIEST = -262,
|
||||
DRUID = -263,
|
||||
TAILORING = -264,
|
||||
SPECIAL = -284,
|
||||
COOKING = -304,
|
||||
FIRST_AID = -324,
|
||||
LEGENDARY = -344,
|
||||
DARKMOON_FAIRE = -364,
|
||||
AHN_QIRAJ_WAR = -365,
|
||||
LUNAR_FESTIVAL = -366,
|
||||
REPUTATION = -367,
|
||||
INVASION = -368,
|
||||
MIDSUMMER = -369,
|
||||
BREWFEST = -370,
|
||||
INSCRIPTION = -371,
|
||||
DEATHKNIGHT = -372,
|
||||
JEWELCRAFTING = -373,
|
||||
NOBLEGARDEN = -374,
|
||||
PILGRIMS_BOUNTY = -375,
|
||||
LOVE_IS_IN_THE_AIR = -376,
|
||||
ARCHAEOLOGY = -377,
|
||||
CHILDRENS_WEEK = -378,
|
||||
FIRELANDS_INVASION = -379,
|
||||
THE_ZANDALARI = -380,
|
||||
ELEMENTAL_BONDS = -381,
|
||||
PANDAREN_BREWMASTERS = -391,
|
||||
SCENARIO = -392,
|
||||
PET_BATTLE = -394,
|
||||
MONK = -395,
|
||||
LANDFALL = -396,
|
||||
PANDAREN_CAMPAIGN = -397,
|
||||
RIDING = -398,
|
||||
BRAWLERS_GUILD = -399,
|
||||
PROVING_GROUNDS = -400,
|
||||
HARVEST_FESTIVAL = -402,
|
||||
WINTER_VEIL = -404,
|
||||
NIGHTMARE_INCURSIONS = -641,
|
||||
BLACKROCK_ERUPTION = -644,
|
||||
TITAN_REFORGED_REALM = -662,
|
||||
SPECIALTEMP = -1000,
|
||||
}
|
||||
@@ -1,440 +0,0 @@
|
||||
-- this file is used for large table updates that are automatically generated, since fitting those into corrections is a bad idea
|
||||
-- not all of this data is validated as its generated from external sources
|
||||
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
|
||||
if Questie.IsClassic then
|
||||
local npcsToUpdate = {
|
||||
[239] = 2,
|
||||
[240] = 2,
|
||||
[313] = 18,
|
||||
[384] = 7,
|
||||
[715] = 2,
|
||||
[786] = 2,
|
||||
[931] = 9,
|
||||
[1218] = 19,
|
||||
[1261] = 7,
|
||||
[1295] = 16388,
|
||||
[1298] = 16388,
|
||||
[1299] = 16388,
|
||||
[1303] = 4,
|
||||
[1304] = 4,
|
||||
[1308] = 4,
|
||||
[1310] = 16388,
|
||||
[1314] = 16388,
|
||||
[1318] = 4,
|
||||
[1319] = 16388,
|
||||
[1324] = 16388,
|
||||
[1341] = 16388,
|
||||
[1348] = 16388,
|
||||
[1349] = 16388,
|
||||
[1350] = 16388,
|
||||
[1351] = 4,
|
||||
[1387] = 8,
|
||||
[1411] = 18,
|
||||
[1458] = 19,
|
||||
[1459] = 16404,
|
||||
[1460] = 7,
|
||||
[1519] = 2,
|
||||
[1571] = 9,
|
||||
[1701] = 16,
|
||||
[1755] = 2,
|
||||
[2122] = 18,
|
||||
[2130] = 18,
|
||||
[2153] = 2,
|
||||
[2299] = 8,
|
||||
[2389] = 8,
|
||||
[2397] = 4,
|
||||
[2405] = 0,
|
||||
[2409] = 8,
|
||||
[2432] = 8,
|
||||
[2439] = 2,
|
||||
[2464] = 2,
|
||||
[2465] = 2,
|
||||
[2487] = 2,
|
||||
[2491] = 2,
|
||||
[2497] = 2,
|
||||
[2621] = 0,
|
||||
[2663] = 4,
|
||||
[2670] = 6,
|
||||
[2700] = 2,
|
||||
[2708] = 2,
|
||||
[2737] = 0,
|
||||
[2771] = 2,
|
||||
[2785] = 2,
|
||||
[2789] = 2,
|
||||
[2796] = 0,
|
||||
[2801] = 16,
|
||||
[2802] = 16,
|
||||
[2808] = 6,
|
||||
[2818] = 16,
|
||||
[2835] = 8,
|
||||
[2851] = 8,
|
||||
[2858] = 9,
|
||||
[2859] = 9,
|
||||
[2861] = 8,
|
||||
[2870] = 16,
|
||||
[2880] = 20,
|
||||
[2881] = 20,
|
||||
[2910] = 2,
|
||||
[2920] = 2,
|
||||
[2941] = 9,
|
||||
[2981] = 2,
|
||||
[3001] = 16,
|
||||
[3079] = 16388,
|
||||
[3137] = 16,
|
||||
[3139] = 2,
|
||||
[3155] = 18,
|
||||
[3170] = 18,
|
||||
[3182] = 0,
|
||||
[3233] = 2,
|
||||
[3292] = 2,
|
||||
[3293] = 2,
|
||||
[3305] = 9,
|
||||
[3327] = 18,
|
||||
[3357] = 16,
|
||||
[3362] = 7,
|
||||
[3370] = 1536,
|
||||
[3401] = 18,
|
||||
[3411] = 6,
|
||||
[3418] = 2,
|
||||
[3443] = 2,
|
||||
[3467] = 0,
|
||||
[3502] = 0,
|
||||
[3628] = 0,
|
||||
[3679] = 0,
|
||||
[3685] = 7,
|
||||
[3841] = 8,
|
||||
[3845] = 2,
|
||||
[3846] = 2,
|
||||
[3848] = 2,
|
||||
[3881] = 6,
|
||||
[3936] = 2,
|
||||
[4161] = 1536,
|
||||
[4254] = 16,
|
||||
[4256] = 7,
|
||||
[4265] = 6,
|
||||
[4267] = 8,
|
||||
[4312] = 8,
|
||||
[4314] = 9,
|
||||
[4317] = 8,
|
||||
[4319] = 8,
|
||||
[4321] = 8,
|
||||
[4407] = 8,
|
||||
[4453] = 2,
|
||||
[4501] = 2,
|
||||
[4508] = 3,
|
||||
[4582] = 18,
|
||||
[4584] = 18,
|
||||
[4598] = 16,
|
||||
[4606] = 18,
|
||||
[4607] = 18,
|
||||
[4613] = 1536,
|
||||
[4618] = 2,
|
||||
[4730] = 7,
|
||||
[4731] = 7,
|
||||
[4885] = 7,
|
||||
[4921] = 2,
|
||||
[4941] = 2,
|
||||
[4963] = 2,
|
||||
[4974] = 1536,
|
||||
[4981] = 4,
|
||||
[5032] = 17,
|
||||
[5037] = 17,
|
||||
[5038] = 17,
|
||||
[5040] = 17,
|
||||
[5041] = 17,
|
||||
[5054] = 1536,
|
||||
[5086] = 3,
|
||||
[5130] = 1536,
|
||||
[5392] = 16,
|
||||
[5395] = 2,
|
||||
[5509] = 16388,
|
||||
[5510] = 16388,
|
||||
[5512] = 16390,
|
||||
[5698] = 0,
|
||||
[5749] = 7,
|
||||
[5750] = 7,
|
||||
[5753] = 7,
|
||||
[5782] = 2,
|
||||
[5843] = 0,
|
||||
[5848] = 0,
|
||||
[5875] = 2,
|
||||
[6026] = 8,
|
||||
[6027] = 7,
|
||||
[6030] = 16390,
|
||||
[6091] = 6,
|
||||
[6301] = 6,
|
||||
[6328] = 7,
|
||||
[6373] = 7,
|
||||
[6374] = 7,
|
||||
[6376] = 7,
|
||||
[6548] = 7,
|
||||
[6706] = 8,
|
||||
[6707] = 18,
|
||||
[6726] = 8,
|
||||
[6749] = 8192,
|
||||
[6782] = 2,
|
||||
[7172] = 3,
|
||||
[7233] = 2,
|
||||
[7770] = 2,
|
||||
[7823] = 8,
|
||||
[7824] = 8,
|
||||
[7879] = 6,
|
||||
[7937] = 2,
|
||||
[7952] = 7,
|
||||
[7955] = 7,
|
||||
[7957] = 3,
|
||||
[8018] = 9,
|
||||
[8019] = 8,
|
||||
[8020] = 8,
|
||||
[8214] = 0,
|
||||
[8320] = 0,
|
||||
[8383] = 2,
|
||||
[8416] = 2,
|
||||
[8582] = 2,
|
||||
[8586] = 2,
|
||||
[8609] = 8,
|
||||
[8610] = 8,
|
||||
[8664] = 2,
|
||||
[8665] = 20,
|
||||
[8923] = 0,
|
||||
[9022] = 0,
|
||||
[9087] = 7,
|
||||
[9177] = 2,
|
||||
[9460] = 0,
|
||||
[9540] = 2,
|
||||
[9598] = 2,
|
||||
[9679] = 0,
|
||||
[9976] = 8192,
|
||||
[9977] = 8192,
|
||||
[9978] = 8192,
|
||||
[9979] = 8192,
|
||||
[9980] = 8192,
|
||||
[9981] = 8192,
|
||||
[9982] = 8192,
|
||||
[9983] = 8192,
|
||||
[9984] = 8192,
|
||||
[9985] = 8192,
|
||||
[9986] = 8192,
|
||||
[9987] = 8192,
|
||||
[9988] = 8192,
|
||||
[9989] = 8192,
|
||||
[10045] = 8192,
|
||||
[10046] = 8192,
|
||||
[10047] = 8192,
|
||||
[10048] = 8192,
|
||||
[10049] = 8192,
|
||||
[10050] = 8192,
|
||||
[10051] = 8192,
|
||||
[10052] = 8192,
|
||||
[10053] = 8192,
|
||||
[10054] = 8192,
|
||||
[10055] = 8192,
|
||||
[10056] = 8192,
|
||||
[10057] = 8192,
|
||||
[10058] = 8192,
|
||||
[10059] = 8192,
|
||||
[10060] = 8192,
|
||||
[10061] = 8192,
|
||||
[10062] = 8192,
|
||||
[10063] = 8192,
|
||||
[10076] = 2,
|
||||
[10085] = 8192,
|
||||
[10118] = 6,
|
||||
[10181] = 2,
|
||||
[10260] = 2,
|
||||
[10296] = 0,
|
||||
[10299] = 0,
|
||||
[10370] = 16,
|
||||
[10378] = 9,
|
||||
[10540] = 0,
|
||||
[10583] = 8,
|
||||
[10665] = 2,
|
||||
[10666] = 2,
|
||||
[10740] = 2,
|
||||
[10776] = 1,
|
||||
[10897] = 8,
|
||||
[10917] = 2,
|
||||
[10931] = 2,
|
||||
[10941] = 2,
|
||||
[11064] = 3,
|
||||
[11069] = 8192,
|
||||
[11073] = 16,
|
||||
[11079] = 2,
|
||||
[11104] = 8192,
|
||||
[11105] = 8192,
|
||||
[11117] = 8192,
|
||||
[11119] = 8192,
|
||||
[11138] = 8,
|
||||
[11139] = 8,
|
||||
[11176] = 3,
|
||||
[11194] = 2,
|
||||
[11277] = 0,
|
||||
[11278] = 5,
|
||||
[11279] = 0,
|
||||
[11281] = 0,
|
||||
[11286] = 2,
|
||||
[11316] = 0,
|
||||
[11390] = 0,
|
||||
[11470] = 0,
|
||||
[11486] = 0,
|
||||
[11491] = 1,
|
||||
[11555] = 6,
|
||||
[11625] = 2,
|
||||
[11626] = 2,
|
||||
[11627] = 0,
|
||||
[11696] = 2,
|
||||
[11701] = 0,
|
||||
[11832] = 2,
|
||||
[11899] = 8,
|
||||
[11900] = 8,
|
||||
[11901] = 8,
|
||||
[11948] = 2,
|
||||
[11949] = 2,
|
||||
[12096] = 6,
|
||||
[12144] = 0,
|
||||
[12246] = 4,
|
||||
[12338] = 0,
|
||||
[12577] = 8,
|
||||
[12578] = 8,
|
||||
[12596] = 8,
|
||||
[12616] = 8,
|
||||
[12617] = 8,
|
||||
[12636] = 8,
|
||||
[12740] = 8,
|
||||
[12776] = 7,
|
||||
[12777] = 4,
|
||||
[12782] = 4,
|
||||
[12792] = 4,
|
||||
[12807] = 7,
|
||||
[13018] = 6,
|
||||
[13076] = 0,
|
||||
[13088] = 0,
|
||||
[13089] = 0,
|
||||
[13097] = 0,
|
||||
[13176] = 2,
|
||||
[13177] = 8,
|
||||
[13256] = 0,
|
||||
[13257] = 2,
|
||||
[13316] = 0,
|
||||
[13429] = 7,
|
||||
[13431] = 7,
|
||||
[13437] = 2,
|
||||
[13438] = 2,
|
||||
[13439] = 2,
|
||||
[13442] = 2,
|
||||
[13443] = 0,
|
||||
[13444] = 2,
|
||||
[13447] = 2,
|
||||
[13577] = 2,
|
||||
[13616] = 8194,
|
||||
[13617] = 8194,
|
||||
[14321] = 1,
|
||||
[14323] = 1,
|
||||
[14337] = 16389,
|
||||
[14338] = 2,
|
||||
[14351] = 0,
|
||||
[14353] = 0,
|
||||
[14358] = 2,
|
||||
[14368] = 2,
|
||||
[14369] = 0,
|
||||
[14371] = 4,
|
||||
[14381] = 2,
|
||||
[14382] = 2,
|
||||
[14383] = 2,
|
||||
[14395] = 0,
|
||||
[14401] = 1,
|
||||
[14450] = 6,
|
||||
[14522] = 4,
|
||||
[14581] = 4,
|
||||
[14624] = 16391,
|
||||
[14625] = 2,
|
||||
[14637] = 6,
|
||||
[14753] = 16390,
|
||||
[14754] = 16390,
|
||||
[14774] = 0,
|
||||
[14776] = 0,
|
||||
[14871] = 1,
|
||||
[15077] = 2,
|
||||
[15126] = 16390,
|
||||
[15127] = 16390,
|
||||
[15131] = 8192,
|
||||
[15165] = 2,
|
||||
[15177] = 9,
|
||||
[15178] = 9,
|
||||
[15199] = 7,
|
||||
[15293] = 4,
|
||||
[15350] = 3,
|
||||
[15351] = 3,
|
||||
[15354] = 5,
|
||||
[15362] = 3,
|
||||
[15378] = 2,
|
||||
[15379] = 2,
|
||||
[15380] = 2,
|
||||
[15458] = 1,
|
||||
[15459] = 3,
|
||||
[15460] = 3,
|
||||
[15469] = 3,
|
||||
[15471] = 7,
|
||||
[15477] = 3,
|
||||
[15508] = 3,
|
||||
[15512] = 3,
|
||||
[15515] = 3,
|
||||
[15522] = 3,
|
||||
[15525] = 3,
|
||||
[15528] = 3,
|
||||
[15529] = 3,
|
||||
[15532] = 3,
|
||||
[15533] = 3,
|
||||
[15534] = 3,
|
||||
[15535] = 3,
|
||||
[15589] = 2,
|
||||
[15609] = 3,
|
||||
[15610] = 3,
|
||||
[15611] = 3,
|
||||
[15700] = 3,
|
||||
[15702] = 3,
|
||||
[15703] = 3,
|
||||
[15704] = 3,
|
||||
[15707] = 3,
|
||||
[15736] = 3,
|
||||
[15737] = 3,
|
||||
[15738] = 3,
|
||||
[15739] = 3,
|
||||
[16002] = 2,
|
||||
[16031] = 2,
|
||||
[16032] = 2,
|
||||
[16033] = 3,
|
||||
[16094] = 8192,
|
||||
[16227] = 8,
|
||||
[16230] = 1,
|
||||
[16285] = 1,
|
||||
[16359] = 1,
|
||||
[16365] = 3,
|
||||
[16376] = 16391,
|
||||
[16384] = 1,
|
||||
[16395] = 1,
|
||||
[16431] = 3,
|
||||
[16433] = 1,
|
||||
[16434] = 1,
|
||||
[16435] = 1,
|
||||
[16436] = 1,
|
||||
[16439] = 1,
|
||||
[16478] = 3,
|
||||
[16484] = 3,
|
||||
[16531] = 3,
|
||||
[16543] = 4,
|
||||
[16786] = 2,
|
||||
[16787] = 0
|
||||
}
|
||||
|
||||
-- npcFlags table update
|
||||
for id, flags in pairs(npcsToUpdate) do
|
||||
if QuestieDB.npcData[id] then
|
||||
QuestieDB.npcData[id][QuestieDB.npcKeys.npcFlags] = flags
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
-12775
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,15 +0,0 @@
|
||||
---@class BlacklistFilter
|
||||
local BlacklistFilter = QuestieLoader:CreateModule("BlacklistFilter")
|
||||
|
||||
--- Removes all entries from the blacklist that are not marked as `true`.
|
||||
---@param blacklist table<QuestId, boolean>
|
||||
---@return table<QuestId, boolean>
|
||||
function BlacklistFilter.filterExpansion(blacklist)
|
||||
for questId, flag in pairs(blacklist) do
|
||||
if flag == false then
|
||||
blacklist[questId] = nil
|
||||
end
|
||||
end
|
||||
|
||||
return blacklist
|
||||
end
|
||||
@@ -1,786 +0,0 @@
|
||||
---@type ContentPhases
|
||||
local ContentPhases = QuestieLoader:ImportModule("ContentPhases")
|
||||
|
||||
-- This function blacklists any quests in phases LATER than the currentPhase value
|
||||
-- so in Phase 1, quests in phases 2+ are blacklisted, in phase 2, phases 3+ are blacklisted, etc
|
||||
-- Phase 1 is omitted, because everything not in this list is supposed to be available in Phase 1
|
||||
local questsToBlacklistByPhase = {
|
||||
[1] = {}, -- Phase 1 - Molten Core (this is required for counting, but should stay empty)
|
||||
[2] = { -- Phase 2 - World Bosses + Dire Maul
|
||||
[1193] = true,
|
||||
[1318] = true,
|
||||
[5518] = true,
|
||||
[5519] = true,
|
||||
[5525] = true,
|
||||
[5528] = true,
|
||||
[7429] = true,
|
||||
[7441] = true,
|
||||
[7461] = true,
|
||||
[7462] = true,
|
||||
[7463] = true,
|
||||
[7481] = true,
|
||||
[7482] = true,
|
||||
[7483] = true,
|
||||
[7484] = true,
|
||||
[7485] = true,
|
||||
[7488] = true,
|
||||
[7489] = true,
|
||||
[7492] = true,
|
||||
[7494] = true,
|
||||
[7498] = true,
|
||||
[7499] = true,
|
||||
[7500] = true,
|
||||
[7501] = true,
|
||||
[7502] = true,
|
||||
[7503] = true,
|
||||
[7504] = true,
|
||||
[7505] = true,
|
||||
[7506] = true,
|
||||
[7507] = true,
|
||||
[7508] = true,
|
||||
[7509] = true,
|
||||
[7581] = true,
|
||||
[7649] = true,
|
||||
[7650] = true,
|
||||
[7651] = true,
|
||||
[7703] = true,
|
||||
[7877] = true,
|
||||
},
|
||||
[3] = { -- Phase 3 - BWL + Darkmoon Faire
|
||||
[7761] = true, -- Blackhand's Command BWL pre quest
|
||||
[7787] = true,
|
||||
[7781] = true, -- The Lord of Blackrock
|
||||
[7782] = true, -- The Lord of Blackrock
|
||||
[7783] = true, -- The Lord of Blackrock
|
||||
[7784] = true, -- The Lord of Blackrock
|
||||
-- Darkmoon Faire quests
|
||||
[7902] = true,
|
||||
[7903] = true,
|
||||
[8222] = true,
|
||||
[7901] = true,
|
||||
[7899] = true,
|
||||
[7940] = true,
|
||||
[7900] = true,
|
||||
[7907] = true,
|
||||
[7927] = true,
|
||||
[7929] = true,
|
||||
[7928] = true,
|
||||
[7946] = true,
|
||||
[8223] = true,
|
||||
[7934] = true,
|
||||
[7981] = true,
|
||||
[7943] = true,
|
||||
[7894] = true,
|
||||
[7933] = true,
|
||||
[7898] = true,
|
||||
[7885] = true,
|
||||
[7942] = true,
|
||||
[7883] = true,
|
||||
[7892] = true,
|
||||
[7937] = true,
|
||||
[7939] = true,
|
||||
[7893] = true,
|
||||
[7891] = true,
|
||||
[7896] = true,
|
||||
[7884] = true,
|
||||
[7882] = true,
|
||||
[7897] = true,
|
||||
[7895] = true,
|
||||
[7941] = true,
|
||||
[7881] = true,
|
||||
[7890] = true,
|
||||
[7889] = true,
|
||||
[7945] = true,
|
||||
[7935] = true,
|
||||
[7938] = true,
|
||||
[7944] = true,
|
||||
[7932] = true,
|
||||
[7930] = true,
|
||||
[7931] = true,
|
||||
[7936] = true,
|
||||
[9249] = true,
|
||||
[10938] = true,
|
||||
[10939] = true,
|
||||
[10940] = true,
|
||||
[10941] = true,
|
||||
-----------------
|
||||
[8410] = true, -- Shaman Sunken Temple
|
||||
[8411] = true, -- Shaman Sunken Temple
|
||||
[8412] = true, -- Shaman Sunken Temple
|
||||
[8413] = true, -- Shaman Sunken Temple
|
||||
[8414] = true, -- Paladin Sunken Temple
|
||||
[8415] = true, -- Paladin Sunken Temple
|
||||
[8416] = true, -- Paladin Sunken Temple
|
||||
[8417] = true, -- Warrior Sunken Temple
|
||||
[8418] = true, -- Paladin Sunken Temple
|
||||
[8419] = true, -- Warlock Sunken Temple
|
||||
[8420] = true, -- Warlock Sunken Temple
|
||||
[8421] = true, -- Warlock Sunken Temple
|
||||
[8422] = true, -- Warlock Sunken Temple
|
||||
[8423] = true, -- Warrior Sunken Temple
|
||||
[8424] = true, -- Warrior Sunken Temple
|
||||
[8425] = true, -- Warrior Sunken Temple
|
||||
[8151] = true, -- Hunter Sunken Temple
|
||||
[8153] = true, -- Hunter Sunken Temple
|
||||
[8231] = true, -- Hunter Sunken Temple
|
||||
[8232] = true, -- Hunter Sunken Temple
|
||||
[8233] = true, -- Rogue Sunken Temple
|
||||
[8234] = true, -- Rogue Sunken Temple
|
||||
[8235] = true, -- Rogue Sunken Temple
|
||||
[8236] = true, -- Rogue Sunken Temple
|
||||
[8250] = true, -- Mage Sunken Temple
|
||||
[8251] = true, -- Mage Sunken Temple
|
||||
[8252] = true, -- Mage Sunken Temple
|
||||
[8253] = true, -- Mage Sunken Temple
|
||||
[8254] = true, -- Priest Sunken Temple
|
||||
[8255] = true, -- Priest Sunken Temple
|
||||
[8256] = true, -- Priest Sunken Temple
|
||||
[8257] = true, -- Priest Sunken Temple
|
||||
[9051] = true, -- Druid Sunken Temple
|
||||
[9052] = true, -- Druid Sunken Temple
|
||||
[9053] = true, -- Druid Sunken Temple
|
||||
[9063] = true, -- Druid Sunken Temple
|
||||
},
|
||||
[4] = { -- Phase 4 - Zul'Gurub
|
||||
[8056] = true,
|
||||
[8057] = true,
|
||||
[8064] = true,
|
||||
[8065] = true,
|
||||
[8074] = true,
|
||||
[8075] = true,
|
||||
[8110] = true,
|
||||
[8111] = true,
|
||||
[8112] = true,
|
||||
[8113] = true,
|
||||
[8114] = true,
|
||||
[8115] = true,
|
||||
[8116] = true,
|
||||
[8117] = true,
|
||||
[8118] = true,
|
||||
[8119] = true,
|
||||
[8041] = true,
|
||||
[8042] = true,
|
||||
[8043] = true,
|
||||
[8044] = true,
|
||||
[8045] = true,
|
||||
[8046] = true,
|
||||
[8047] = true,
|
||||
[8048] = true,
|
||||
[8049] = true,
|
||||
[8050] = true,
|
||||
[8051] = true,
|
||||
[8052] = true,
|
||||
[8053] = true,
|
||||
[8054] = true,
|
||||
[8055] = true,
|
||||
[8058] = true,
|
||||
[8059] = true,
|
||||
[8060] = true,
|
||||
[8061] = true,
|
||||
[8062] = true,
|
||||
[8063] = true,
|
||||
[8066] = true,
|
||||
[8067] = true,
|
||||
[8068] = true,
|
||||
[8069] = true,
|
||||
[8070] = true,
|
||||
[8071] = true,
|
||||
[8072] = true,
|
||||
[8073] = true,
|
||||
[8076] = true,
|
||||
[8077] = true,
|
||||
[8078] = true,
|
||||
[8079] = true,
|
||||
[8101] = true,
|
||||
[8102] = true,
|
||||
[8103] = true,
|
||||
[8104] = true,
|
||||
[8106] = true,
|
||||
[8107] = true,
|
||||
[8108] = true,
|
||||
[8109] = true,
|
||||
[8141] = true,
|
||||
[8142] = true,
|
||||
[8143] = true,
|
||||
[8144] = true,
|
||||
[8145] = true,
|
||||
[8146] = true,
|
||||
[8147] = true,
|
||||
[8148] = true,
|
||||
[8183] = true,
|
||||
[8184] = true,
|
||||
[8185] = true,
|
||||
[8186] = true,
|
||||
[8187] = true,
|
||||
[8188] = true,
|
||||
[8189] = true,
|
||||
[8190] = true,
|
||||
[8191] = true,
|
||||
[8192] = true,
|
||||
[8195] = true,
|
||||
[8196] = true,
|
||||
[8201] = true,
|
||||
[8227] = true,
|
||||
[8238] = true,
|
||||
[8239] = true,
|
||||
[8240] = true,
|
||||
[8243] = true,
|
||||
[8246] = true,
|
||||
[8275] = true,
|
||||
[8276] = true,
|
||||
[8277] = true,
|
||||
[8278] = true,
|
||||
[8279] = true,
|
||||
[8280] = true,
|
||||
[8281] = true,
|
||||
[8282] = true,
|
||||
[8283] = true,
|
||||
[8284] = true,
|
||||
[8285] = true,
|
||||
[8287] = true,
|
||||
[8323] = true,
|
||||
[8324] = true,
|
||||
[8446] = true,
|
||||
[8447] = true,
|
||||
[9208] = true,
|
||||
[9209] = true,
|
||||
[9210] = true,
|
||||
[8304] = true,
|
||||
[8307] = true,
|
||||
[8308] = true,
|
||||
[8313] = true,
|
||||
[8317] = true,
|
||||
[8309] = true,
|
||||
[8310] = true,
|
||||
[8315] = true,
|
||||
[8318] = true,
|
||||
[8319] = true,
|
||||
[8341] = true,
|
||||
[8342] = true,
|
||||
[8343] = true,
|
||||
[8331] = true,
|
||||
[8332] = true,
|
||||
[8333] = true,
|
||||
[8348] = true,
|
||||
[8349] = true,
|
||||
[8306] = true,
|
||||
[8320] = true,
|
||||
[8321] = true,
|
||||
[8351] = true,
|
||||
[8352] = true,
|
||||
[8361] = true,
|
||||
[8362] = true,
|
||||
[8363] = true,
|
||||
[8364] = true,
|
||||
[9248] = true,
|
||||
[8314] = true,
|
||||
[8105] = true, -- The Battle for Arathi Basin
|
||||
[8120] = true, -- The Battle for Arathi Basin
|
||||
[8121] = true, -- Take Four Bases
|
||||
[8122] = true, -- Take Five Bases
|
||||
[8166] = true, -- The Battle for Arathi Basin
|
||||
[8167] = true, -- The Battle for Arathi Basin
|
||||
[8168] = true, -- The Battle for Arathi Basin
|
||||
[8169] = true, -- The Battle for Arathi Basin
|
||||
[8170] = true, -- The Battle for Arathi Basin
|
||||
[8171] = true, -- The Battle for Arathi Basin
|
||||
[8370] = true, -- Conquering Arathi Basin
|
||||
[8374] = true, -- Claiming Arathi Basin
|
||||
[8393] = true, -- Claiming Arathi Basin
|
||||
[8394] = true, -- Claiming Arathi Basin
|
||||
[8395] = true, -- Claiming Arathi Basin
|
||||
[8396] = true, -- Claiming Arathi Basin
|
||||
[8436] = true, -- Conquering Arathi Basin
|
||||
[8437] = true, -- Conquering Arathi Basin
|
||||
[8438] = true, -- Conquering Arathi Basin
|
||||
[8439] = true, -- Conquering Arathi Basin
|
||||
[8367] = true, -- For Great Honor
|
||||
[8371] = true, -- Concerted Efforts
|
||||
[8385] = true, -- Concerted Efforts
|
||||
[8388] = true, -- For Great Honor
|
||||
|
||||
-- Tier 0.5 quests
|
||||
[8905] = true,
|
||||
[8906] = true,
|
||||
[8907] = true,
|
||||
[8908] = true,
|
||||
[8909] = true,
|
||||
[8910] = true,
|
||||
[8911] = true,
|
||||
[8912] = true,
|
||||
[8913] = true,
|
||||
[8914] = true,
|
||||
[8915] = true,
|
||||
[8916] = true,
|
||||
[8917] = true,
|
||||
[8918] = true,
|
||||
[8919] = true,
|
||||
[8920] = true,
|
||||
[8921] = true,
|
||||
[8922] = true,
|
||||
[8923] = true,
|
||||
[8924] = true,
|
||||
[8925] = true,
|
||||
[8926] = true,
|
||||
[8927] = true,
|
||||
[8928] = true,
|
||||
[8929] = true,
|
||||
[8930] = true,
|
||||
[8931] = true,
|
||||
[8932] = true,
|
||||
[8933] = true,
|
||||
[8934] = true,
|
||||
[8935] = true,
|
||||
[8936] = true,
|
||||
[8937] = true,
|
||||
[8938] = true,
|
||||
[8939] = true,
|
||||
[8940] = true,
|
||||
[8941] = true,
|
||||
[8942] = true,
|
||||
[8943] = true,
|
||||
[8944] = true,
|
||||
[8945] = true,
|
||||
[8946] = true,
|
||||
[8947] = true,
|
||||
[8948] = true,
|
||||
[8949] = true,
|
||||
[8950] = true,
|
||||
[8951] = true,
|
||||
[8952] = true,
|
||||
[8953] = true,
|
||||
[8954] = true,
|
||||
[8955] = true,
|
||||
[8956] = true,
|
||||
[8957] = true,
|
||||
[8958] = true,
|
||||
[8959] = true,
|
||||
[8960] = true,
|
||||
[8961] = true,
|
||||
[8962] = true,
|
||||
[8963] = true,
|
||||
[8964] = true,
|
||||
[8965] = true,
|
||||
[8966] = true,
|
||||
[8967] = true,
|
||||
[8968] = true,
|
||||
[8969] = true,
|
||||
[8970] = true,
|
||||
[8977] = true,
|
||||
[8978] = true,
|
||||
[8985] = true,
|
||||
[8986] = true,
|
||||
[8987] = true,
|
||||
[8988] = true,
|
||||
[8989] = true,
|
||||
[8990] = true,
|
||||
[8991] = true,
|
||||
[8992] = true,
|
||||
[8994] = true,
|
||||
[8995] = true,
|
||||
[8996] = true,
|
||||
[8997] = true,
|
||||
[8998] = true,
|
||||
[8999] = true,
|
||||
[9000] = true,
|
||||
[9001] = true,
|
||||
[9002] = true,
|
||||
[9003] = true,
|
||||
[9004] = true,
|
||||
[9005] = true,
|
||||
[9006] = true,
|
||||
[9007] = true,
|
||||
[9008] = true,
|
||||
[9009] = true,
|
||||
[9010] = true,
|
||||
[9011] = true,
|
||||
[9012] = true,
|
||||
[9013] = true,
|
||||
[9014] = true,
|
||||
[9015] = true,
|
||||
[9016] = true,
|
||||
[9017] = true,
|
||||
[9018] = true,
|
||||
[9019] = true,
|
||||
[9020] = true,
|
||||
[9021] = true,
|
||||
[9022] = true,
|
||||
[9030] = true, -- probably not in the game
|
||||
[9031] = true, -- probably not in the game
|
||||
[9032] = true,
|
||||
},
|
||||
[5] = { -- Phase 5 - AQ
|
||||
[8286] = true,
|
||||
[8288] = true,
|
||||
[8301] = true,
|
||||
[8302] = true,
|
||||
[8303] = true,
|
||||
[8305] = true,
|
||||
[8316] = true,
|
||||
[8376] = true,
|
||||
[8377] = true,
|
||||
[8378] = true,
|
||||
[8379] = true,
|
||||
[8380] = true,
|
||||
[8381] = true,
|
||||
[8382] = true,
|
||||
[8496] = true,
|
||||
[8497] = true,
|
||||
[8498] = true,
|
||||
[8501] = true,
|
||||
[8502] = true,
|
||||
[8507] = true,
|
||||
[8508] = true,
|
||||
[8519] = true,
|
||||
[8534] = true,
|
||||
[8535] = true,
|
||||
[8536] = true,
|
||||
[8537] = true,
|
||||
[8538] = true,
|
||||
[8539] = true,
|
||||
[8540] = true,
|
||||
[8541] = true,
|
||||
[8544] = true,
|
||||
[8548] = true,
|
||||
[8555] = true,
|
||||
[8556] = true,
|
||||
[8557] = true,
|
||||
[8558] = true,
|
||||
[8559] = true,
|
||||
[8560] = true,
|
||||
[8561] = true,
|
||||
[8562] = true,
|
||||
[8572] = true,
|
||||
[8573] = true,
|
||||
[8574] = true,
|
||||
[8575] = true,
|
||||
[8576] = true,
|
||||
[8577] = true,
|
||||
[8578] = true,
|
||||
[8579] = true,
|
||||
[8584] = true,
|
||||
[8585] = true,
|
||||
[8586] = true,
|
||||
[8587] = true,
|
||||
[8592] = true,
|
||||
[8593] = true,
|
||||
[8594] = true,
|
||||
[8595] = true,
|
||||
[8596] = true,
|
||||
[8597] = true,
|
||||
[8598] = true,
|
||||
[8599] = true,
|
||||
[8602] = true,
|
||||
[8603] = true,
|
||||
[8606] = true,
|
||||
[8620] = true,
|
||||
[8621] = true,
|
||||
[8622] = true,
|
||||
[8623] = true,
|
||||
[8624] = true,
|
||||
[8625] = true,
|
||||
[8626] = true,
|
||||
[8627] = true,
|
||||
[8628] = true,
|
||||
[8629] = true,
|
||||
[8630] = true,
|
||||
[8631] = true,
|
||||
[8632] = true,
|
||||
[8633] = true,
|
||||
[8634] = true,
|
||||
[8637] = true,
|
||||
[8638] = true,
|
||||
[8639] = true,
|
||||
[8640] = true,
|
||||
[8641] = true,
|
||||
[8655] = true,
|
||||
[8656] = true,
|
||||
[8657] = true,
|
||||
[8658] = true,
|
||||
[8659] = true,
|
||||
[8660] = true,
|
||||
[8661] = true,
|
||||
[8662] = true,
|
||||
[8663] = true,
|
||||
[8664] = true,
|
||||
[8665] = true,
|
||||
[8666] = true,
|
||||
[8667] = true,
|
||||
[8668] = true,
|
||||
[8669] = true,
|
||||
[8687] = true,
|
||||
[8689] = true,
|
||||
[8690] = true,
|
||||
[8691] = true,
|
||||
[8692] = true,
|
||||
[8693] = true,
|
||||
[8694] = true,
|
||||
[8695] = true,
|
||||
[8696] = true,
|
||||
[8697] = true,
|
||||
[8698] = true,
|
||||
[8699] = true,
|
||||
[8700] = true,
|
||||
[8701] = true,
|
||||
[8702] = true,
|
||||
[8703] = true,
|
||||
[8704] = true,
|
||||
[8705] = true,
|
||||
[8706] = true,
|
||||
[8707] = true,
|
||||
[8708] = true,
|
||||
[8709] = true,
|
||||
[8710] = true,
|
||||
[8711] = true,
|
||||
[8712] = true,
|
||||
[8728] = true,
|
||||
[8729] = true,
|
||||
[8730] = true,
|
||||
[8731] = true,
|
||||
[8732] = true,
|
||||
[8733] = true,
|
||||
[8734] = true,
|
||||
[8735] = true,
|
||||
[8736] = true,
|
||||
[8737] = true,
|
||||
[8738] = true,
|
||||
[8739] = true,
|
||||
[8740] = true,
|
||||
[8741] = true,
|
||||
[8742] = true,
|
||||
[8743] = true,
|
||||
[8745] = true,
|
||||
[8747] = true,
|
||||
[8748] = true,
|
||||
[8749] = true,
|
||||
[8750] = true,
|
||||
[8751] = true,
|
||||
[8752] = true,
|
||||
[8753] = true,
|
||||
[8754] = true,
|
||||
[8755] = true,
|
||||
[8756] = true,
|
||||
[8757] = true,
|
||||
[8758] = true,
|
||||
[8759] = true,
|
||||
[8760] = true,
|
||||
[8761] = true,
|
||||
[8764] = true,
|
||||
[8765] = true,
|
||||
[8766] = true,
|
||||
[8770] = true,
|
||||
[8771] = true,
|
||||
[8772] = true,
|
||||
[8773] = true,
|
||||
[8774] = true,
|
||||
[8775] = true,
|
||||
[8776] = true,
|
||||
[8777] = true,
|
||||
[8778] = true,
|
||||
[8779] = true,
|
||||
[8780] = true,
|
||||
[8781] = true,
|
||||
[8782] = true,
|
||||
[8783] = true,
|
||||
[8784] = true,
|
||||
[8785] = true,
|
||||
[8786] = true,
|
||||
[8787] = true,
|
||||
[8789] = true,
|
||||
[8790] = true,
|
||||
[8791] = true,
|
||||
[8800] = true,
|
||||
[8801] = true,
|
||||
[8802] = true,
|
||||
[8804] = true,
|
||||
[8805] = true,
|
||||
[8806] = true,
|
||||
[8807] = true,
|
||||
[8808] = true,
|
||||
[8809] = true,
|
||||
[8810] = true,
|
||||
[8829] = true,
|
||||
[8856] = true,
|
||||
[8857] = true,
|
||||
[8858] = true,
|
||||
[8859] = true,
|
||||
[9023] = true,
|
||||
[9208] = true,
|
||||
[9209] = true,
|
||||
[9210] = true,
|
||||
[9338] = true,
|
||||
},
|
||||
[6] = { -- Phase 6 - Naxxramas with invasion quests inactive
|
||||
[9033] = true,
|
||||
[9034] = true,
|
||||
[9036] = true,
|
||||
[9037] = true,
|
||||
[9038] = true,
|
||||
[9039] = true,
|
||||
[9040] = true,
|
||||
[9041] = true,
|
||||
[9042] = true,
|
||||
[9043] = true,
|
||||
[9044] = true,
|
||||
[9045] = true,
|
||||
[9046] = true,
|
||||
[9047] = true,
|
||||
[9048] = true,
|
||||
[9049] = true,
|
||||
[9050] = true,
|
||||
[9054] = true,
|
||||
[9055] = true,
|
||||
[9056] = true,
|
||||
[9057] = true,
|
||||
[9058] = true,
|
||||
[9059] = true,
|
||||
[9060] = true,
|
||||
[9061] = true,
|
||||
[9068] = true,
|
||||
[9069] = true,
|
||||
[9070] = true,
|
||||
[9071] = true,
|
||||
[9072] = true,
|
||||
[9073] = true,
|
||||
[9074] = true,
|
||||
[9075] = true,
|
||||
[9077] = true,
|
||||
[9078] = true,
|
||||
[9079] = true,
|
||||
[9080] = true,
|
||||
[9081] = true,
|
||||
[9082] = true,
|
||||
[9083] = true,
|
||||
[9084] = true,
|
||||
[9086] = true,
|
||||
[9087] = true,
|
||||
[9088] = true,
|
||||
[9089] = true,
|
||||
[9090] = true,
|
||||
[9091] = true,
|
||||
[9092] = true,
|
||||
[9093] = true,
|
||||
[9095] = true,
|
||||
[9096] = true,
|
||||
[9097] = true,
|
||||
[9098] = true,
|
||||
[9099] = true,
|
||||
[9100] = true,
|
||||
[9101] = true,
|
||||
[9102] = true,
|
||||
[9103] = true,
|
||||
[9104] = true,
|
||||
[9105] = true,
|
||||
[9106] = true,
|
||||
[9107] = true,
|
||||
[9108] = true,
|
||||
[9109] = true,
|
||||
[9110] = true,
|
||||
[9111] = true,
|
||||
[9112] = true,
|
||||
[9113] = true,
|
||||
[9114] = true,
|
||||
[9115] = true,
|
||||
[9116] = true,
|
||||
[9117] = true,
|
||||
[9118] = true,
|
||||
[9120] = true,
|
||||
[9121] = true,
|
||||
[9122] = true,
|
||||
[9123] = true,
|
||||
[9124] = true,
|
||||
[9125] = true,
|
||||
[9126] = true,
|
||||
[9127] = true,
|
||||
[9128] = true,
|
||||
[9129] = true,
|
||||
[9131] = true,
|
||||
[9132] = true,
|
||||
[9136] = true,
|
||||
[9137] = true,
|
||||
[9141] = true,
|
||||
[9142] = true,
|
||||
[9165] = true,
|
||||
[9211] = true,
|
||||
[9213] = true,
|
||||
[9221] = true,
|
||||
[9222] = true,
|
||||
[9223] = true,
|
||||
[9224] = true,
|
||||
[9225] = true,
|
||||
[9226] = true,
|
||||
[9227] = true,
|
||||
[9228] = true,
|
||||
[9229] = true,
|
||||
[9230] = true,
|
||||
[9232] = true,
|
||||
[9233] = true,
|
||||
[9234] = true,
|
||||
[9235] = true,
|
||||
[9236] = true,
|
||||
[9237] = true,
|
||||
[9238] = true,
|
||||
[9239] = true,
|
||||
[9240] = true,
|
||||
[9241] = true,
|
||||
[9242] = true,
|
||||
[9243] = true,
|
||||
[9244] = true,
|
||||
[9245] = true,
|
||||
[9246] = true,
|
||||
[9250] = true,
|
||||
[9251] = true,
|
||||
-- Silithus/EPL PvP
|
||||
[9248] = true,
|
||||
[9415] = true,
|
||||
[9416] = true,
|
||||
[9419] = true,
|
||||
[9422] = true,
|
||||
[9664] = true,
|
||||
[9665] = true,
|
||||
},
|
||||
[7] = { -- Phase 7 is a pseudo-phase that represents Phase 6 but with the Invasion quests active.
|
||||
[9085] = true, -- Shadows of Doom
|
||||
[9094] = true, -- Argent Dawn Gloves
|
||||
[9153] = true, -- Under the Shadow
|
||||
[9154] = true, -- Light's Hope Chapel
|
||||
[9260] = true, -- Investigate the Scourge of Stormwind
|
||||
[9261] = true, -- Investigate the Scourge of Ironforge
|
||||
[9262] = true, -- Investigate the Scourge of Darnassus
|
||||
[9263] = true, -- Investigate the Scourge of Orgrimmar
|
||||
[9264] = true, -- Investigate the Scourge of Thunder Bluff
|
||||
[9265] = true, -- Investigate the Scourge of the Undercity
|
||||
[9292] = true, -- Cracked Necrotic Crystal
|
||||
[9295] = true, -- Letter from the Front
|
||||
[9299] = true, -- Note from the Front
|
||||
[9300] = true, -- Page from the Front
|
||||
[9301] = true, -- Envelope from the Front
|
||||
[9302] = true, -- Missive from the Front
|
||||
[9304] = true, -- Document from the Front
|
||||
[9310] = true, -- Faint Necrotic Crystal
|
||||
[9317] = true, -- Consecrated Sharpening Stones
|
||||
[9318] = true, -- Blessed Wizard Oil
|
||||
[9320] = true, -- Major Mana Potion
|
||||
[9321] = true, -- Major Healing Potion
|
||||
[9333] = true, -- Argent Dawn Gloves
|
||||
[9334] = true, -- Blessed Wizard Oil
|
||||
[9335] = true, -- Consecrated Sharpening Stones
|
||||
[9336] = true, -- Major Healing Potion
|
||||
[9337] = true, -- Major Mana Potion
|
||||
[9341] = true, -- Tabard of the Argent Dawn
|
||||
[9343] = true, -- Tabard of the Argent Dawn
|
||||
},
|
||||
}
|
||||
|
||||
---@param questsToBlacklist table<QuestId, boolean>
|
||||
---@param contentPhase number
|
||||
---@return table<QuestId, boolean>
|
||||
function ContentPhases.BlacklistAnniversaryQuestsByPhase(questsToBlacklist, contentPhase)
|
||||
for phase = contentPhase + 1, #questsToBlacklistByPhase do
|
||||
for questId in pairs(questsToBlacklistByPhase[phase]) do
|
||||
questsToBlacklist[questId] = true
|
||||
end
|
||||
end
|
||||
|
||||
return questsToBlacklist
|
||||
end
|
||||
@@ -1,243 +0,0 @@
|
||||
---@type ContentPhases
|
||||
local ContentPhases = QuestieLoader:ImportModule("ContentPhases")
|
||||
|
||||
-- This function blacklists any quests in phases LATER than the currentPhase value
|
||||
-- so in Phase 1, quests in phases 2+ are blacklisted, in phase 2, phases 3+ are blacklisted, etc
|
||||
-- Phase 1 is omitted, because everything not in this list is supposed to be available in Phase 1
|
||||
local questsToBlacklistByPhase = {
|
||||
[1] = {}, -- Phase 1 - T4 (Kara, Gruul, Mag) (this is required for counting, but should stay empty)
|
||||
[2] = { -- Phase 2 - T5 (SSC, TK)
|
||||
[10445] = true,
|
||||
[10944] = true,
|
||||
[10946] = true,
|
||||
[10984] = true,
|
||||
[11007] = true,
|
||||
|
||||
-- Druid Swift Flight Form
|
||||
[10955] = true,
|
||||
[10961] = true,
|
||||
[10964] = true,
|
||||
[10965] = true,
|
||||
[10978] = true,
|
||||
[10979] = true,
|
||||
[10980] = true,
|
||||
[10986] = true,
|
||||
[10987] = true,
|
||||
[10988] = true,
|
||||
[10990] = true,
|
||||
[10991] = true,
|
||||
[10992] = true,
|
||||
[10993] = true,
|
||||
[10994] = true,
|
||||
[11001] = true,
|
||||
[11011] = true,
|
||||
|
||||
-- Ogri'la & Sha'tari Skyguard
|
||||
[11004] = true,
|
||||
[11005] = true,
|
||||
[11006] = true,
|
||||
[11008] = true,
|
||||
[11010] = true,
|
||||
[11021] = true,
|
||||
[11023] = true,
|
||||
[11024] = true,
|
||||
[11025] = true,
|
||||
[11026] = true,
|
||||
[11027] = true,
|
||||
[11028] = true,
|
||||
[11029] = true,
|
||||
[11030] = true,
|
||||
[11051] = true,
|
||||
[11056] = true,
|
||||
[11057] = true,
|
||||
[11058] = true,
|
||||
[11059] = true,
|
||||
[11060] = true,
|
||||
[11061] = true,
|
||||
[11062] = true,
|
||||
[11065] = true,
|
||||
[11066] = true,
|
||||
[11072] = true,
|
||||
[11073] = true,
|
||||
[11074] = true,
|
||||
[11078] = true,
|
||||
[11079] = true,
|
||||
[11080] = true,
|
||||
[11085] = true,
|
||||
[11091] = true,
|
||||
[11093] = true,
|
||||
[11096] = true,
|
||||
[11098] = true,
|
||||
[11102] = true,
|
||||
[11119] = true,
|
||||
[11885] = true,
|
||||
|
||||
-- Mount Hyjal ring quests
|
||||
[10460] = true,
|
||||
[10461] = true,
|
||||
[10462] = true,
|
||||
[10463] = true,
|
||||
[10464] = true,
|
||||
[10465] = true,
|
||||
[10466] = true,
|
||||
[10467] = true,
|
||||
[10468] = true,
|
||||
[10469] = true,
|
||||
[10470] = true,
|
||||
[10471] = true,
|
||||
[10472] = true,
|
||||
[10473] = true,
|
||||
[10474] = true,
|
||||
[10475] = true,
|
||||
[10947] = true,
|
||||
[11103] = true,
|
||||
[11104] = true,
|
||||
[11105] = true,
|
||||
[11106] = true,
|
||||
|
||||
-- Arena rating reset quest
|
||||
[95158] = true,
|
||||
[95251] = true,
|
||||
[95252] = true,
|
||||
},
|
||||
[3] = { -- Phase 3 - T6 (Hyjal, BT)
|
||||
[10948] = true,
|
||||
[10949] = true,
|
||||
[10957] = true,
|
||||
[10958] = true,
|
||||
[10959] = true,
|
||||
[10985] = true,
|
||||
|
||||
-- Netherwing
|
||||
[11012] = true,
|
||||
[11013] = true,
|
||||
[11014] = true,
|
||||
[11015] = true,
|
||||
[11016] = true,
|
||||
[11017] = true,
|
||||
[11018] = true,
|
||||
[11019] = true,
|
||||
[11020] = true,
|
||||
[11035] = true,
|
||||
[11041] = true,
|
||||
[11049] = true,
|
||||
[11050] = true,
|
||||
[11053] = true,
|
||||
[11054] = true,
|
||||
[11055] = true,
|
||||
[11063] = true,
|
||||
[11064] = true,
|
||||
[11067] = true,
|
||||
[11068] = true,
|
||||
[11069] = true,
|
||||
[11070] = true,
|
||||
[11071] = true,
|
||||
[11075] = true,
|
||||
[11076] = true,
|
||||
[11077] = true,
|
||||
[11081] = true,
|
||||
[11082] = true,
|
||||
[11083] = true,
|
||||
[11084] = true,
|
||||
[11086] = true,
|
||||
[11089] = true,
|
||||
[11090] = true,
|
||||
[11092] = true,
|
||||
[11094] = true,
|
||||
[11095] = true,
|
||||
[11097] = true,
|
||||
[11099] = true,
|
||||
[11100] = true,
|
||||
[11101] = true,
|
||||
[11107] = true,
|
||||
[11108] = true,
|
||||
[11109] = true,
|
||||
[11110] = true,
|
||||
[11111] = true,
|
||||
[11112] = true,
|
||||
[11113] = true,
|
||||
[11114] = true,
|
||||
},
|
||||
[4] = { -- Phase 3.5 - Zul'Aman
|
||||
[9524] = true,
|
||||
[9525] = true,
|
||||
[11130] = true,
|
||||
[11132] = true,
|
||||
[11163] = true,
|
||||
[11164] = true,
|
||||
[11165] = true,
|
||||
[11166] = true,
|
||||
[11171] = true,
|
||||
[11178] = true,
|
||||
[11195] = true,
|
||||
},
|
||||
[5] = { -- Phase 4 - Sunwell, Isle of Quel'Danas
|
||||
[9681] = true, -- check these.
|
||||
[9684] = true, -- check these.
|
||||
[9721] = true,
|
||||
[9722] = true,
|
||||
[9723] = true,
|
||||
[9725] = true,
|
||||
[9735] = true,
|
||||
[9736] = true,
|
||||
-- [9737] = true, -- actually available
|
||||
[11481] = true,
|
||||
[11482] = true,
|
||||
[11488] = true,
|
||||
[11490] = true,
|
||||
[11492] = true,
|
||||
[11496] = true,
|
||||
[11499] = true,
|
||||
[11500] = true,
|
||||
[11513] = true,
|
||||
[11514] = true,
|
||||
[11515] = true,
|
||||
[11516] = true,
|
||||
[11517] = true,
|
||||
[11520] = true,
|
||||
[11521] = true,
|
||||
[11523] = true,
|
||||
[11524] = true,
|
||||
[11525] = true,
|
||||
[11526] = true,
|
||||
[11532] = true,
|
||||
[11533] = true,
|
||||
[11534] = true,
|
||||
[11535] = true,
|
||||
[11536] = true,
|
||||
[11537] = true,
|
||||
[11538] = true,
|
||||
[11539] = true,
|
||||
[11540] = true,
|
||||
[11541] = true,
|
||||
[11542] = true,
|
||||
[11543] = true,
|
||||
[11544] = true,
|
||||
[11545] = true,
|
||||
[11546] = true,
|
||||
[11547] = true,
|
||||
[11548] = true,
|
||||
[11549] = true,
|
||||
[11550] = true,
|
||||
[11554] = true,
|
||||
[11555] = true,
|
||||
[11556] = true,
|
||||
[11557] = true,
|
||||
[11875] = true,
|
||||
[11877] = true,
|
||||
[11880] = true,
|
||||
}
|
||||
}
|
||||
|
||||
---@param questsToBlacklist table<QuestId, boolean>
|
||||
---@param contentPhase number
|
||||
---@return table<QuestId, boolean>
|
||||
function ContentPhases.BlacklistTbcQuestsByPhase(questsToBlacklist, contentPhase)
|
||||
for phase = contentPhase + 1, #questsToBlacklistByPhase do
|
||||
for questId in pairs(questsToBlacklistByPhase[phase]) do
|
||||
questsToBlacklist[questId] = true
|
||||
end
|
||||
end
|
||||
|
||||
return questsToBlacklist
|
||||
end
|
||||
@@ -1,19 +0,0 @@
|
||||
---@class ContentPhases
|
||||
local ContentPhases = QuestieLoader:CreateModule("ContentPhases")
|
||||
|
||||
-- TODO: Use API function which hopefully will come in the future
|
||||
-- Central place to define the active phases of the different game modes
|
||||
ContentPhases.activePhases = {
|
||||
SoM = 5,
|
||||
SoD = 7,
|
||||
Anniversary = 6, -- Phase 6 is the final state of the game, with invasions inactive.
|
||||
MoP = Questie.IsChinaRegion and 4 or 5,
|
||||
TBC = 2,
|
||||
}
|
||||
|
||||
-- Central place to activate Invasion event
|
||||
ContentPhases.IsInvasionActive = {
|
||||
[1] = Questie.IsSoD and true or false, -- Era
|
||||
[2] = false, -- TBC
|
||||
[3] = false, -- Wotlk - Remember Questie.IsTitanReforged is WotLK technically
|
||||
}
|
||||
@@ -1,793 +0,0 @@
|
||||
---@type ContentPhases
|
||||
local ContentPhases = QuestieLoader:ImportModule("ContentPhases")
|
||||
|
||||
-- This function blacklists any quests in phases LATER than the currentPhase value
|
||||
-- so in Phase 1, quests in phases 2+ are blacklisted, in phase 2, phases 3+ are blacklisted, etc
|
||||
-- Phase 1 is omitted, because everything not in this list is supposed to be available in Phase 1
|
||||
local questsToBlacklistByPhase = {
|
||||
[1] = {}, -- Phase 1 (this is required for counting, but should stay empty)
|
||||
[2] = { -- Phase 2 (Patch 5.1 Landfall (Brawlers Guild, New Scenarios)
|
||||
[32106] = true, -- A Winter Veil Gift
|
||||
[32108] = true, -- Domination Point
|
||||
[32109] = true, -- Lion's Landing
|
||||
[32112] = true, -- FLAG - Been to Fight Club
|
||||
[32113] = true, -- FLAG - Been to Fight Club Today
|
||||
[32115] = true, -- Shackles of the Past
|
||||
[32116] = true, -- Priorities, People!
|
||||
[32118] = true, -- Taking Advantage
|
||||
[32119] = true, -- It Is A Mystery
|
||||
[32120] = true, -- Legacy of Ogudei
|
||||
[32121] = true, -- The Spirit Trap
|
||||
[32122] = true, -- Ogudei's Lieutenants
|
||||
[32123] = true, -- Death on Two Legs
|
||||
[32126] = true, -- Tear It Up
|
||||
[32127] = true, -- All Dead, All Dead
|
||||
[32128] = true, -- Another One Bites the Dust
|
||||
[32130] = true, -- Good Luck, Have Fun
|
||||
[32131] = true, -- We Require More Minerals!
|
||||
[32132] = true, -- Worker Harassment
|
||||
[32133] = true, -- Sentry Wards
|
||||
[32134] = true, -- Hard Counter
|
||||
[32135] = true, -- Hero Killer
|
||||
[32136] = true, -- Work Order: Fuel
|
||||
[32137] = true, -- Runnin' On Empty
|
||||
[32138] = true, -- Work Order: Lumber
|
||||
[32139] = true, -- Stacked!
|
||||
[32140] = true, -- Work Order: Iron
|
||||
[32141] = true, -- Power Metal
|
||||
[32142] = true, -- We Will Rock You
|
||||
[32143] = true, -- A Kind of Magic
|
||||
[32144] = true, -- Under Pressure
|
||||
[32145] = true, -- Don't Lose Your Head
|
||||
[32146] = true, -- Hammer to Fall
|
||||
[32147] = true, -- Attack Daily 06
|
||||
[32148] = true, -- Attack! Move!
|
||||
[32149] = true, -- Resource Gathering
|
||||
[32150] = true, -- Supply Block
|
||||
[32151] = true, -- Tower Defense
|
||||
[32152] = true, -- Siege Damage
|
||||
[32153] = true, -- Hero Killer
|
||||
[32154] = true, -- Burn Out!
|
||||
[32155] = true, -- Necessary Breaks
|
||||
[32156] = true, -- It's Only Right
|
||||
[32157] = true, -- The Only Good Goblin...
|
||||
[32158] = true, -- Two Step Program
|
||||
[32159] = true, -- Circle of Life
|
||||
[32161] = true, -- Beastmaster's Hunt: The Crane
|
||||
[32162] = true, -- Beastmaster's Hunt: The Tiger
|
||||
[32163] = true, -- Beastmaster's Hunt: The Crab
|
||||
[32164] = true, -- Beastmaster's Hunt: The Crane
|
||||
[32165] = true, -- Beastmaster's Hunt: The Tiger
|
||||
[32166] = true, -- Beastmaster's Hunt: The Crab
|
||||
[32167] = true, -- Ancient's Fall
|
||||
[32168] = true, -- End of an Elder
|
||||
[32169] = true, -- A Colossal Victory
|
||||
[32170] = true, -- Ancient's Fall
|
||||
[32171] = true, -- End of an Elder
|
||||
[32172] = true, -- A Colossal Victory
|
||||
[32181] = true, -- Beastmaster's Quarry: The Crane
|
||||
[32182] = true, -- Beastmaster's Quarry: The Tiger
|
||||
[32183] = true, -- Beastmaster's Quarry: The Crab
|
||||
[32184] = true, -- Beastmaster's Quarry: The Crane
|
||||
[32185] = true, -- Beastmaster's Quarry: The Tiger
|
||||
[32186] = true, -- Beastmaster's Quarry: The Crab
|
||||
[32189] = true, -- A Shabby New Face
|
||||
[32190] = true, -- To Mogujia
|
||||
[32191] = true, -- Ancient Guardians
|
||||
[32192] = true, -- Bloodlines
|
||||
[32193] = true, -- To Mogujia
|
||||
[32194] = true, -- Bad Blood
|
||||
[32197] = true, -- Mystery Meatloaf
|
||||
[32198] = true, -- One Magical, Flying Kingdom's Trash...
|
||||
[32199] = true, -- Krasarang Steampot
|
||||
[32214] = true, -- Bilgewater Infiltrators
|
||||
[32221] = true, -- Storming the Beach
|
||||
[32222] = true, -- WANTED: Chief Engineer Cogwrench
|
||||
[32223] = true, -- WANTED: Lieutenant Ethan Jacobson
|
||||
[32235] = true, -- Flash! Aaaaaahhhh!
|
||||
[32236] = true, -- Bug Off!
|
||||
[32237] = true, -- Precious Resource
|
||||
[32238] = true, -- Universal Remote-Explode
|
||||
[32242] = true, -- Buried Secrets
|
||||
[32243] = true, -- The Source of Korune Power
|
||||
[32244] = true, -- The Korune
|
||||
[32246] = true, -- Meet the Scout
|
||||
[32247] = true, -- A King Among Men
|
||||
[32248] = true, -- A Little Patience
|
||||
[32249] = true, -- Meet the Scout
|
||||
[32250] = true, -- The Might of the Warchief
|
||||
[32251] = true, -- Dagger in the Dark
|
||||
[32256] = true, -- Rise Of An Empire
|
||||
[32257] = true, -- Voice of the Gods
|
||||
[32284] = true, -- Someone You Should See
|
||||
[32306] = true, -- Lumber Collection Tracking
|
||||
[32315] = true, -- Anduin's Plea
|
||||
[32316] = true, -- Heart Of The Alliance
|
||||
[32319] = true, -- Find Thrall!
|
||||
[32320] = true, -- The Horde Is Family
|
||||
[32321] = true, -- The Monkey King
|
||||
[32326] = true, -- Insertion
|
||||
[32327] = true, -- The Darnassus Mission
|
||||
[32328] = true, -- Victorious Return
|
||||
[32329] = true, -- Get My Results!
|
||||
[32330] = true, -- What's in the Box?
|
||||
[32331] = true, -- The Kirin Tor
|
||||
[32333] = true, -- The Second Riddle: Fellowship
|
||||
[32334] = true, -- The Third Riddle: Strength
|
||||
[32335] = true, -- The Greatest Prank
|
||||
[32336] = true, -- The Handle
|
||||
[32337] = true, -- The Head
|
||||
[32338] = true, -- The Harmonic Ointment
|
||||
[32339] = true, -- Rebuilding the Mallet (Tracker)
|
||||
[32340] = true, -- Plunder the Black Temple
|
||||
[32342] = true, -- The Spirit Trap
|
||||
[32343] = true, -- Ogudei's Lieutenants
|
||||
[32344] = true, -- It Is A Mystery
|
||||
[32345] = true, -- We're Not Monsters!
|
||||
[32346] = true, -- Oi Ain't Afraid o' No Ghosts!
|
||||
[32347] = true, -- Eviction Notice
|
||||
[32348] = true, -- Kick 'em While They're Down
|
||||
[32351] = true, -- Echoes of Thunder
|
||||
[32352] = true, -- A Gathering Storm
|
||||
[32355] = true, -- The Harmonic Mallet
|
||||
[32356] = true, -- Tracking Event: Ambassadors Summoned
|
||||
[32357] = true, -- Tracking Event: Event Complete
|
||||
[32358] = true, -- The Soulcore
|
||||
[32361] = true, -- Tracking Event: Event Complete
|
||||
[32362] = true, -- The Fate of Dalaran
|
||||
[32363] = true, -- The Kun-Lai Expedition
|
||||
[32365] = true, -- Tracking Event: Epilogue Complete
|
||||
[32368] = true, -- Memory Wine
|
||||
[32370] = true, -- The Kun-Lai Expedition
|
||||
[32371] = true, -- Memory Wine
|
||||
[32372] = true, -- De-Subjugation
|
||||
[32375] = true, -- A Dash of That
|
||||
[32376] = true, -- To the Valley!
|
||||
[32377] = true, -- A Kor'kron In Our Midst
|
||||
[32378] = true, -- Clearing a Path
|
||||
[32379] = true, -- Legacy of the Korune
|
||||
[32380] = true, -- The Best Around
|
||||
[32381] = true, -- To Catch A Spy
|
||||
[32382] = true, -- He's In Deep
|
||||
[32383] = true, -- Bugging Out
|
||||
[32384] = true, -- Trapping the Leader
|
||||
[32391] = true, -- The Ruins of Korune
|
||||
[32392] = true, -- The Divine Bell
|
||||
[32393] = true, -- The Ruins of Korune
|
||||
[32394] = true, -- The Divine Bell
|
||||
[32395] = true, -- Tracking Event: Saw Avartu
|
||||
[32397] = true, -- He Won't Even Miss It
|
||||
[32398] = true, -- The Bell Speaks
|
||||
[32399] = true, -- Breath of Darkest Shadow
|
||||
[32400] = true, -- The Bell Speaks
|
||||
[32401] = true, -- Breath of Darkest Shadow
|
||||
[32402] = true, -- The Situation In Dalaran
|
||||
[32403] = true, -- It Starts in the Sewers
|
||||
[32404] = true, -- Violence in the Arena
|
||||
[32405] = true, -- Hand of the Silver Covenant
|
||||
[32406] = true, -- A Tactical Assault
|
||||
[32408] = true, -- The Silver Covenant's Stronghold
|
||||
[32409] = true, -- The Kirin Tor's True Colors
|
||||
[32410] = true, -- Krasus' Landing
|
||||
[32411] = true, -- The Remaining Sunreavers
|
||||
[32412] = true, -- One Last Grasp
|
||||
[32413] = true, -- A Return to Krasarang
|
||||
[32414] = true, -- Darnassus Attacked?
|
||||
[32416] = true, -- Jaina's Resolution
|
||||
[32417] = true, -- Sewer Cleaning
|
||||
[32418] = true, -- Unfair Trade
|
||||
[32419] = true, -- Nowhere to Hide
|
||||
[32420] = true, -- Cashing Out
|
||||
[32421] = true, -- Nowhere to Run
|
||||
[32423] = true, -- What Had To Be Done
|
||||
[32426] = true, -- Stirred, Not Shaken
|
||||
[32433] = true, -- Undermining the Under Miner
|
||||
[32435] = true, -- Second Place
|
||||
[32436] = true, -- Third Place
|
||||
[32437] = true, -- Tracking Event: Saw Sarannha 1
|
||||
[32438] = true, -- Tracking Event: Saw Sarannha 2
|
||||
[32442] = true, -- Impending Danger
|
||||
[32444] = true, -- FLAG - Earned Brawler Title (Weekly)
|
||||
[32446] = true, -- Dis-Assembly Required
|
||||
[32448] = true, -- Ties with the Past
|
||||
[32449] = true, -- The Ruins of Ogudei
|
||||
[32450] = true, -- The Time Is Now!
|
||||
[32451] = true, -- Send A Message
|
||||
[32452] = true, -- And Then There Were Goblins
|
||||
[32455] = true, -- The Silence
|
||||
[32460] = true, -- Tracking the Thieves
|
||||
[32461] = true, -- The Order of the Cloud Serpent
|
||||
[32477] = true, -- Tracking Event: Player is Back in Time
|
||||
[33252] = true, -- A Winter Veil Gift
|
||||
[33354] = true, -- Den Mother's Demise
|
||||
},
|
||||
[3] = { -- Phase 3 (Patch 5.2 The Thunder King (Isle of Thunder, Throne of Thunder))
|
||||
[32200] = true, -- Dangers of Za'Tual
|
||||
[32201] = true, -- Grave Circumstances
|
||||
[32204] = true, -- The Skumblade Threat
|
||||
[32205] = true, -- Gather Scout Reports
|
||||
[32206] = true, -- This Just Won't Do
|
||||
[32207] = true, -- Saur Loser
|
||||
[32208] = true, -- Maximum Capacitor
|
||||
[32209] = true, -- Save Our Scouts!
|
||||
[32212] = true, -- The Assault on Zeb'tula
|
||||
[32213] = true, -- Old Enemies
|
||||
[32215] = true, -- Heinous Sacrifice
|
||||
[32216] = true, -- Pterrible Ptorment
|
||||
[32217] = true, -- Dark Offerings
|
||||
[32218] = true, -- Ashes of the Enemy
|
||||
[32219] = true, -- Stone Cold
|
||||
[32220] = true, -- Soul Surrender
|
||||
[32224] = true, -- Rise No More!
|
||||
[32225] = true, -- The Call of Thunder
|
||||
[32226] = true, -- Into the Crypts
|
||||
[32227] = true, -- Preventing a Future Threat
|
||||
[32228] = true, -- The Shuddering Moor
|
||||
[32230] = true, -- The Zandalari Colossus
|
||||
[32231] = true, -- Trailing Light in the Dark
|
||||
[32232] = true, -- What's Inside Counts
|
||||
[32233] = true, -- Very Disarming
|
||||
[32234] = true, -- Knowledge Is Power
|
||||
[32252] = true, -- Harbingers of the Loa
|
||||
[32254] = true, -- Manipulating the Saurok
|
||||
[32255] = true, -- De-Constructed
|
||||
[32258] = true, -- Horde Quest Choice: PvP
|
||||
[32259] = true, -- Horde Quest Choice: PvE
|
||||
[32260] = true, -- Alliance Quest Choice: PvE
|
||||
[32261] = true, -- Alliance Quest Choice: PvP
|
||||
[32262] = true, -- Captive Audience
|
||||
[32264] = true, -- Spellbound
|
||||
[32265] = true, -- Charged Moganite
|
||||
[32266] = true, -- Mana Manifestations
|
||||
[32268] = true, -- Tactical Mana Bombs
|
||||
[32269] = true, -- Breaking Down the Defenses
|
||||
[32274] = true, -- The Residents of Ihgaluk
|
||||
[32275] = true, -- Surgical Death
|
||||
[32276] = true, -- Tear Down This Wall!
|
||||
[32277] = true, -- To the Skies!
|
||||
[32278] = true, -- Decisive Action
|
||||
[32279] = true, -- The Fall of Shan Bu
|
||||
[32282] = true, -- Compy Stomp
|
||||
[32283] = true, -- Loa-saur
|
||||
[32285] = true, -- The Sleepless Legion
|
||||
[32287] = true, -- Enemies Beneath the Tower
|
||||
[32288] = true, -- Bolstering the Defenses
|
||||
[32292] = true, -- Forge Ahead!
|
||||
[32293] = true, -- Among the Bones
|
||||
[32294] = true, -- Raining Bones
|
||||
[32295] = true, -- An Unusual Tome
|
||||
[32296] = true, -- Treasures of the Thunder King
|
||||
[32297] = true, -- Direhorn or Devilsaur
|
||||
[32298] = true, -- Dino Might
|
||||
[32299] = true, -- Just Some Light Clean-Up Work
|
||||
[32300] = true, -- Disarming Irony
|
||||
[32301] = true, -- Old Enemies
|
||||
[32302] = true, -- Desconstruction
|
||||
[32303] = true, -- Made for War
|
||||
[32304] = true, -- High Recognition
|
||||
[32305] = true, -- Overpowered
|
||||
[32307] = true, -- Reader for the Dead Tongue
|
||||
[32309] = true, -- A Tale of Six Masters
|
||||
[32310] = true, -- A Tale of Six Masters
|
||||
[32317] = true, -- Seeking the Soulstones
|
||||
[32324] = true, -- Seek the Signal
|
||||
[32325] = true, -- Infiltrating the Black Temple
|
||||
[32467] = true, -- Sacrificial Prevention [PH]
|
||||
[32468] = true, -- Crystal Clarity
|
||||
[32469] = true, -- Crystal Clarity
|
||||
[32470] = true, -- Light Camera Action
|
||||
[32471] = true, -- Light Camera Action
|
||||
[32472] = true, -- Frighten Pterodactyls [PH]
|
||||
[32485] = true, -- Bolstering the Defenses
|
||||
[32489] = true, -- The Creeping Carpet of Ihgaluk
|
||||
[32491] = true, -- Left To Rot
|
||||
[32492] = true, -- Destroy Cauldrons
|
||||
[32493] = true, -- They All Fall Down
|
||||
[32494] = true, -- Power Play
|
||||
[32495] = true, -- The Bloodletter
|
||||
[32496] = true, -- Desecrate this Fire!
|
||||
[32497] = true, -- Honor the Flame
|
||||
[32498] = true, -- Honor the Flame
|
||||
[32499] = true, -- Honor the Flame
|
||||
[32500] = true, -- Honor the Flame
|
||||
[32501] = true, -- Honor the Flame
|
||||
[32502] = true, -- Honor the Flame
|
||||
[32503] = true, -- Desecrate this Fire!
|
||||
[32506] = true, -- A Wing to Fly On
|
||||
[32507] = true, -- Skin of the Saurok
|
||||
[32508] = true, -- Welcome to the Island
|
||||
[32509] = true, -- Honor the Flame
|
||||
[32510] = true, -- Honor the Flame
|
||||
[32517] = true, -- The Conquest of Stone
|
||||
[32518] = true, -- Short-Supply Reward
|
||||
[32519] = true, -- Short-Supply Reward
|
||||
[32520] = true, -- Competing Magic
|
||||
[32521] = true, -- Encroaching Force
|
||||
[32522] = true, -- Imposing Threat
|
||||
[32523] = true, -- The Beast Pens
|
||||
[32524] = true, -- The Beating of Troll Drums
|
||||
[32525] = true, -- Ashes of the Enemy
|
||||
[32526] = true, -- Soul Surrender
|
||||
[32527] = true, -- Grave Circumstances
|
||||
[32528] = true, -- Into the Crypts
|
||||
[32529] = true, -- The Call of Thunder
|
||||
[32530] = true, -- The Bloodletter
|
||||
[32531] = true, -- The Conquest of Stone
|
||||
[32532] = true, -- Rise No More!
|
||||
[32533] = true, -- Stone Cold
|
||||
[32535] = true, -- The Skumblade Threat
|
||||
[32536] = true, -- Manipulating the Saurok
|
||||
[32537] = true, -- De-Constructed
|
||||
[32538] = true, -- Heinous Sacrifice
|
||||
[32539] = true, -- Dark Offerings
|
||||
[32540] = true, -- Harbingers of the Loa
|
||||
[32541] = true, -- Preventing a Future Threat
|
||||
[32542] = true, -- Surgical Strike
|
||||
[32543] = true, -- Dangers of Za'Tual
|
||||
[32544] = true, -- Pterrible Ptorment
|
||||
[32545] = true, -- The Residents of Ihgaluk
|
||||
[32546] = true, -- Just Some Light Clean-Up Work
|
||||
[32547] = true, -- The Creeping Carpet of Ihgaluk
|
||||
[32548] = true, -- Left To Rot
|
||||
[32549] = true, -- Skin of the Saurok
|
||||
[32550] = true, -- Saur Loser
|
||||
[32551] = true, -- Compy Stomp
|
||||
[32552] = true, -- Loa-saur
|
||||
[32553] = true, -- Direhorn vs Devilsaur
|
||||
[32554] = true, -- Dino Might
|
||||
[32555] = true, -- Centuries in Sentries
|
||||
[32556] = true, -- The More You Know
|
||||
[32557] = true, -- Out of Enemy Hands
|
||||
[32558] = true, -- All In the Family
|
||||
[32559] = true, -- Even Giants Fall
|
||||
[32560] = true, -- Keep It Secret
|
||||
[32561] = true, -- Competing Magic
|
||||
[32562] = true, -- Imposing Threat
|
||||
[32563] = true, -- Encroaching Force
|
||||
[32564] = true, -- Zandalari on the Rise
|
||||
[32565] = true, -- Encroaching Force
|
||||
[32567] = true, -- The Beast Pens
|
||||
[32568] = true, -- No Time To Rest
|
||||
[32569] = true, -- Trailing Light in the Dark
|
||||
[32570] = true, -- Gather Scout Reports
|
||||
[32571] = true, -- A Wing to Fly On
|
||||
[32572] = true, -- The Sleepless Legion
|
||||
[32573] = true, -- Enemies Beneath the Tower
|
||||
[32574] = true, -- The Shuddering Moor
|
||||
[32575] = true, -- The Zandalari Colossus
|
||||
[32576] = true, -- Competing Magic
|
||||
[32577] = true, -- Imposing Threat
|
||||
[32578] = true, -- Among the Bones
|
||||
[32579] = true, -- Competing Magic
|
||||
[32580] = true, -- Encroaching Force
|
||||
[32581] = true, -- Imposing Threat
|
||||
[32582] = true, -- Raining Bones
|
||||
[32583] = true, -- Zandalari on the Rise
|
||||
[32584] = true, -- Encroaching Force
|
||||
[32585] = true, -- Encroaching Force
|
||||
[32586] = true, -- Maximum Capacitor
|
||||
[32587] = true, -- Forge Ahead!
|
||||
[32588] = true, -- On Her Magic-ey Secret Service
|
||||
[32589] = true, -- Life Blood
|
||||
[32590] = true, -- Meet Me Upstairs
|
||||
[32591] = true, -- Secrets of the First Empire
|
||||
[32592] = true, -- I Need a Champion
|
||||
[32593] = true, -- The Thunder Forge
|
||||
[32594] = true, -- Spirit of the Storm Lord
|
||||
[32595] = true, -- The Crown of Heaven
|
||||
[32596] = true, -- Echoes of the Titans
|
||||
[32597] = true, -- Heart of the Thunder King
|
||||
[32598] = true, -- A Reckoning
|
||||
[32599] = true, -- Securing A Future
|
||||
[32600] = true, -- The Zandalari Prophecy
|
||||
[32601] = true, -- Rumbles of Thunder
|
||||
[32602] = true, -- Gods and Monsters
|
||||
[32605] = true, -- Subtle Encouragement
|
||||
[32606] = true, -- Subtle Encouragement
|
||||
[32607] = true, -- Extended Shore Leave
|
||||
[32608] = true, -- Raiding the Vault
|
||||
[32609] = true, -- Rare Chest Tracking Quest
|
||||
[32610] = true, -- Rare Boss Tracking Quest
|
||||
[32611] = true, -- Rare Drop Tracking Quest
|
||||
[32613] = true, -- Giant Dinosaur Bone
|
||||
[32614] = true, -- More Giant Dinosaur Bones
|
||||
[32615] = true, -- Many More Giant Dinosaur Bones
|
||||
[32616] = true, -- A Large Pile of Giant Dinosaur Bones
|
||||
[32617] = true, -- A Mountain of Giant Dinosaur Bones
|
||||
[32621] = true, -- Lightning Steel
|
||||
[32622] = true, -- Intro Flight
|
||||
[32626] = true, -- Loot Room Key Tracking Quest
|
||||
[32627] = true, -- Charged Moganite
|
||||
[32628] = true, -- Tactical Mana Bombs
|
||||
[32629] = true, -- Thunderwing Captured Tracking Quest
|
||||
[32630] = true, -- Chief Engineer Jard's Journal
|
||||
[32631] = true, -- High Recognition
|
||||
[32632] = true, -- Made for War
|
||||
[32633] = true, -- Spellbound
|
||||
[32634] = true, -- Breaking Down the Defenses
|
||||
[32635] = true, -- Enough with the Bombs!
|
||||
[32636] = true, -- Captive Audience
|
||||
[32637] = true, -- Overpowered
|
||||
[32638] = true, -- Mana Scavengers
|
||||
[32639] = true, -- Deconstruction
|
||||
[32640] = true, -- Champions of the Thunder King
|
||||
[32641] = true, -- Champions of the Thunder King
|
||||
[32642] = true, -- Work Order: Dominance Offensive I
|
||||
[32643] = true, -- Work Order: Dominance Offensive II
|
||||
[32644] = true, -- The Assault on Shaol'mara
|
||||
[32645] = true, -- Work Order: Operation: Shieldwall I
|
||||
[32646] = true, -- Work Order: Operation: Shieldwall II
|
||||
[32647] = true, -- Work Order: Golden Lotus I
|
||||
[32648] = true, -- Work Order: Golden Lotus II
|
||||
[32649] = true, -- Work Order: Shado-Pan I
|
||||
[32650] = true, -- Work Order: Shado-Pan II
|
||||
[32652] = true, -- To the Skies!
|
||||
[32653] = true, -- Work Order: The August Celestials I
|
||||
[32654] = true, -- Tear Down This Wall!
|
||||
[32655] = true, -- A Bold Idea
|
||||
[32656] = true, -- The Fall of Shan Bu
|
||||
[32657] = true, -- Work Order: The August Celestials II
|
||||
[32658] = true, -- Work Order: The Klaxxi I
|
||||
[32659] = true, -- Work Order: The Klaxxi II
|
||||
[32666] = true, -- FLAG - Warlock - Green Fire
|
||||
[32676] = true, -- Extended Shore Leave
|
||||
[32677] = true, -- Raiding the Vault
|
||||
[32678] = true, -- Thunder Calls
|
||||
[32679] = true, -- Thunder Calls
|
||||
[32680] = true, -- The Storm Gathers
|
||||
[32681] = true, -- The Storm Gathers
|
||||
[32683] = true, -- So You Want to Be a Blacksmith...
|
||||
[32684] = true, -- You Want Fish?
|
||||
[32685] = true, -- No Fishing Pole Necessary!
|
||||
[32686] = true, -- Pristine Banner of the Mantid Empire
|
||||
[32687] = true, -- Pristine Ancient Sap Feeder
|
||||
[32688] = true, -- Pristine Praying Mantid
|
||||
[32689] = true, -- Pristine Sound Beacon
|
||||
[32690] = true, -- Pristine Remains of a Paragon
|
||||
[32691] = true, -- Pristine Mantid Lamp
|
||||
[32692] = true, -- Pristine Pollen Collector
|
||||
[32693] = true, -- Pristine Kypari Sap Container
|
||||
[32694] = true, -- Quest Reward Summary: PvP Stage 1-5
|
||||
[32695] = true, -- Quest Reward Summary: PvE Stage 0-2
|
||||
[32697] = true, -- Quest Reward Summary: PvE Stage 3
|
||||
[32698] = true, -- Quest Reward Summary: PvE Stage 4-5
|
||||
[32700] = true, -- Quest Reward Summary: PvP Stage 1-5
|
||||
[32701] = true, -- Quest Reward Summary: PvE Stage 0-2
|
||||
[32703] = true, -- Quest Reward Summary: PvE Stage 3
|
||||
[32704] = true, -- Quest Reward Summary: PvE Stage 4-5
|
||||
[32706] = true, -- Allies in the Shadows
|
||||
[32707] = true, -- Secrets in the Isle of Thunder
|
||||
[32708] = true, -- Setting the Trap
|
||||
[32709] = true, -- Allies in the Shadows
|
||||
[32710] = true, -- Something Foul is Afoot
|
||||
[32711] = true, -- Agony and Anima
|
||||
[32712] = true, -- Zao'cho the Wicked
|
||||
[32713] = true, -- Rocks Fall, People Die
|
||||
[32714] = true, -- Taming the Tempest
|
||||
[32715] = true, -- Requiem for a Queen
|
||||
[32716] = true, -- Eyes of the Thunder King
|
||||
[32720] = true, -- Choose Your Assignment
|
||||
[32721] = true, -- Choose Your Assignment
|
||||
[32722] = true, -- Forge Ahead!
|
||||
[32724] = true, -- Forge Ahead!
|
||||
[32725] = true, -- FLAG - Warlock - Reached Kanrethad
|
||||
[32726] = true, -- So You Want to Be a Blacksmith...
|
||||
[32727] = true, -- Contributed to Server Percentage Daily Tracking Quest
|
||||
[32728] = true, -- The Court of Bones
|
||||
[32729] = true, -- Za'Tual
|
||||
[32730] = true, -- Ihgaluk Crag
|
||||
[32731] = true, -- The Court of Bones
|
||||
[32732] = true, -- Ihgaluk Crag
|
||||
[32733] = true, -- Za'Tual
|
||||
[32744] = true, -- Jin'rokh Dead
|
||||
[32745] = true, -- Horridon Dead
|
||||
[32746] = true, -- Zandalari Council Dead
|
||||
[32747] = true, -- Tortos Dead
|
||||
[32748] = true, -- Maegaera Dead
|
||||
[32749] = true, -- Ji'kun Dead
|
||||
[32750] = true, -- Durumu Dead
|
||||
[32751] = true, -- Primordious Dead
|
||||
[32752] = true, -- Dark Animus Dead
|
||||
[32753] = true, -- Ra-Den Dead
|
||||
[32754] = true, -- Iron Qon Dead
|
||||
[32755] = true, -- Empyreal Queens Dead
|
||||
[32756] = true, -- Lei Shen Dead
|
||||
[32758] = true, -- Reader for the Dead Tongue
|
||||
[32942] = true, -- Work Order: Sunreaver Onslaught I
|
||||
[32943] = true, -- Work Order: Sunreaver Onslaught II
|
||||
[32944] = true, -- Work Order: Kirin Tor Offensive I
|
||||
[32945] = true, -- Work Order: Kirin Tor Offensive II
|
||||
},
|
||||
[4] = { -- Phase 4 (Patch 5.3 Escalation (Deepwind Gorge, New Scenarios, Heroic Scenarios))
|
||||
[32892] = true, -- War is Coming
|
||||
[32805] = true, -- Celestial Blessings
|
||||
[32806] = true, -- The King and the Council
|
||||
[32807] = true, -- The Warchief and the Darkness
|
||||
[32808] = true, -- A Little Field Work
|
||||
[32809] = true, -- Gathering Intelligence
|
||||
[32810] = true, -- The Darkspear Rebellion
|
||||
[32811] = true, -- Battlefield: Barrens
|
||||
[32812] = true, -- The Darkspear Rebellion
|
||||
[32813] = true, -- Battle of Sen'jin Village
|
||||
[32814] = true, -- Battle of Razor Hill
|
||||
[32815] = true, -- The Old Seer
|
||||
[32816] = true, -- Path of the Last Emperor
|
||||
[32819] = true, -- Battlefield: Barrens
|
||||
[32836] = true, -- A Knockoff Grumplefloot
|
||||
[32837] = true, -- Grandpa Grumplefloot
|
||||
[32838] = true, -- A Tale of Romance and Chivalry
|
||||
[32839] = true, -- The Bear and the Lady Fair
|
||||
[32840] = true, -- Boom Boom's Fuse
|
||||
[32841] = true, -- Master Boom Boom
|
||||
[32842] = true, -- Teeth Like Swords
|
||||
[32843] = true, -- Razorgrin
|
||||
[32844] = true, -- Secret of the Ooze
|
||||
[32845] = true, -- Splat
|
||||
[32846] = true, -- Modified Chomping Apparatus
|
||||
[32847] = true, -- Mecha-Bruce
|
||||
[32848] = true, -- Frost-Tipped Eggshell
|
||||
[32849] = true, -- Dippy and Doopy
|
||||
[32850] = true, -- Last Year's Model
|
||||
[32851] = true, -- Blingtron 3000
|
||||
[32852] = true, -- The Digmaster's Earthblade
|
||||
[32853] = true, -- Mingus Diggs
|
||||
[32854] = true, -- Well-Worn Blindfold
|
||||
[32855] = true, -- The Blind Hero
|
||||
[32856] = true, -- Paper-Covered Rock
|
||||
[32857] = true, -- Ro-Shambo
|
||||
[32858] = true, -- Raptorhide Boxing Gloves
|
||||
[32859] = true, -- Ty'thar
|
||||
[32861] = true, -- Cloak of Virtue
|
||||
[32862] = true, -- Battlefield: Barrens
|
||||
[32870] = true, -- Preparing to Strike
|
||||
[32871] = true, -- Vol'jin of the Darkspear
|
||||
[32872] = true, -- Battlefield: Barrens
|
||||
[32895] = true, -- The Road to War
|
||||
[32896] = true, -- The Road to War
|
||||
[32900] = true, -- Heroic Deeds
|
||||
[32901] = true, -- Heroic Deeds
|
||||
},
|
||||
[5] = { -- Phase 5 (Patch 5.4 Siege of Orgrimmar (Raid, Timeless Isle, Proving Grounds)
|
||||
[32919] = true, -- Short-Supply Reward
|
||||
[32922] = true, -- Short-Supply Reward
|
||||
[32923] = true, -- Short-Supply Reward
|
||||
[32924] = true, -- Short-Supply Reward
|
||||
[32949] = true, -- Tracking Quest: Guru Kukuru
|
||||
[32956] = true, -- Tracking Quest - Spectral Pirate Treasure
|
||||
[32957] = true, -- Sunken Hozen Treasure - Tracking Quest
|
||||
[32959] = true, -- Tracking Quest - Daily - Zhu-Gon the Sour/Skunky Beer
|
||||
[32960] = true, -- Cave-In - Tracking Quest
|
||||
[32961] = true, -- Scary Ghosts and Nice Sprites - Tracking Quest
|
||||
[32962] = true, -- \"Tom\" Bone Apart - Tracking Quest
|
||||
[32964] = true, -- Tracking Quest: Ghost Pirate Battle - Completed
|
||||
[32965] = true, -- Tracking Quest: Ghost Pirate Battle - Looted Treasure
|
||||
[32966] = true, -- Tracking Quest - Daily - Chelon
|
||||
[32967] = true, -- Tracking Quest - Daily - Cranegnasher
|
||||
[32968] = true, -- Rope Drop Tracking Quest
|
||||
[32969] = true, -- Pillar Hopping Tracking Quest
|
||||
[32970] = true, -- Pirate Ship Mast Tracking Quest
|
||||
[32971] = true, -- Feather Fall Tracking Quest
|
||||
[32972] = true, -- Avatar of Flame Transform Tracking Quest
|
||||
[32973] = true, -- Avatar of Flame Kill Tracking Quest
|
||||
[32974] = true, -- Rolo's Riddle
|
||||
[32975] = true, -- Rolo's Riddle
|
||||
[32976] = true, -- Rolo's Riddle
|
||||
[32997] = true, -- Tracking Quest - First - Zesqua
|
||||
[33018] = true, -- Noodle Secrets Long Forgotten
|
||||
[33020] = true, -- The Lost Secret of the Secret Ingredient
|
||||
[33021] = true, -- Secrets Lost, Forever?
|
||||
[33022] = true, -- Catch and Carry
|
||||
[33024] = true, -- Is That A Real Measurement?
|
||||
[33026] = true, -- These Aren't Your Fatty Goatsteaks
|
||||
[33027] = true, -- The Secret Ingredient Is...
|
||||
[33047] = true, -- Short-Supply Reward
|
||||
[33087] = true, -- Meet Me Back at the Inn
|
||||
[33088] = true, -- A Timeless Discovery
|
||||
[33089] = true, -- FLAG - Proving Grounds - Damage Bronze
|
||||
[33090] = true, -- FLAG - Proving Grounds - Damage Silver
|
||||
[33091] = true, -- FLAG - Proving Grounds - Damage Gold
|
||||
[33092] = true, -- FLAG - Proving Grounds - Tank Bronze
|
||||
[33093] = true, -- FLAG - Proving Grounds - Tank Silver
|
||||
[33094] = true, -- FLAG - Proving Grounds - Tank Gold
|
||||
[33095] = true, -- FLAG - Proving Grounds - Healer Bronze
|
||||
[33096] = true, -- FLAG - Proving Grounds - Healer Silver
|
||||
[33097] = true, -- FLAG - Proving Grounds - Healer Gold
|
||||
[33098] = true, -- Secrets of the Timeless Isle
|
||||
[33100] = true, -- The Emperor's Way
|
||||
[33104] = true, -- A Pandaren Legend
|
||||
[33105] = true, -- Judgment of the Black Prince
|
||||
[33107] = true, -- Bad Feeling, Worse Result
|
||||
[33109] = true, -- Short-Supply Reward
|
||||
[33117] = true, -- Short-Supply Reward
|
||||
[33118] = true, -- Short-Supply Reward
|
||||
[33124] = true, -- Fishing with Fin - Tracking Quest
|
||||
[33133] = true, -- Warforged Seals
|
||||
[33134] = true, -- Warforged Seals
|
||||
[33136] = true, -- The Rainy Day is Here
|
||||
[33137] = true, -- The Celestial Tournament
|
||||
[33138] = true, -- Why Do We Fight?
|
||||
[33139] = true, -- Secrets Lost, Forever?
|
||||
[33146] = true, -- Noodle Time
|
||||
[33147] = true, -- The Last Gasp of Y'Shaarj
|
||||
[33156] = true, -- Time Keeper Kairoz
|
||||
[33160] = true, -- Time Keeper Kairoz
|
||||
[33161] = true, -- A Timeless Tour
|
||||
[33162] = true, -- Weekly Vignette Boss Kill - Tracking Quest
|
||||
[33163] = true, -- Weekly Vignette Loot Chest - Tracking Quest
|
||||
[33164] = true, -- Weekly Vignette Event Compeltion - Tracking Quest
|
||||
[33170] = true, -- One-Time Chest 000
|
||||
[33171] = true, -- One-Time Chest 001
|
||||
[33172] = true, -- One-Time Chest 002
|
||||
[33173] = true, -- One-Time Chest 003
|
||||
[33174] = true, -- One-Time Chest 004
|
||||
[33175] = true, -- One-Time Chest 005
|
||||
[33176] = true, -- One-Time Chest 006
|
||||
[33177] = true, -- One-Time Chest 007
|
||||
[33178] = true, -- One-Time Chest 008
|
||||
[33179] = true, -- One-Time Chest 009
|
||||
[33180] = true, -- One-Time Chest 010
|
||||
[33181] = true, -- One-Time Chest 011
|
||||
[33182] = true, -- One-Time Chest 012
|
||||
[33183] = true, -- One-Time Chest 013
|
||||
[33184] = true, -- One-Time Chest 014
|
||||
[33185] = true, -- One-Time Chest 015
|
||||
[33186] = true, -- One-Time Chest 016
|
||||
[33187] = true, -- One-Time Chest 017
|
||||
[33188] = true, -- One-Time Chest 018
|
||||
[33189] = true, -- One-Time Chest 019
|
||||
[33190] = true, -- One-Time Chest 020
|
||||
[33191] = true, -- One-Time Chest 021
|
||||
[33192] = true, -- One-Time Chest 022
|
||||
[33193] = true, -- One-Time Chest 023
|
||||
[33194] = true, -- One-Time Chest 024
|
||||
[33195] = true, -- One-Time Chest 025
|
||||
[33196] = true, -- One-Time Chest 026
|
||||
[33197] = true, -- One-Time Chest 027
|
||||
[33198] = true, -- One-Time Chest - Stump Center
|
||||
[33199] = true, -- One-Time Chest - Stump SW Shore
|
||||
[33200] = true, -- One-Time Chest - Stump West
|
||||
[33201] = true, -- One-Time Chest - Ordo Lake Lower
|
||||
[33202] = true, -- One-Time Chest - Steam Shore
|
||||
[33203] = true, -- One-Time Chest - Cavern of Lost Spirits
|
||||
[33204] = true, -- One-Time Chest - Carry Bird 2
|
||||
[33205] = true, -- One-Time Chest - Carry Bird 1
|
||||
[33206] = true, -- One-Time Chest - Gulp Frogs
|
||||
[33207] = true, -- One-Time Chest - Hammer Cavern
|
||||
[33208] = true, -- One-Time Chest - Ordo Chest 000
|
||||
[33209] = true, -- One-Time Chest - Ordo Chest 001
|
||||
[33210] = true, -- One-Time Chest - Blazing Chest
|
||||
[33211] = true, -- A Timeless Question
|
||||
[33216] = true, -- One-Time Chest - T1G1
|
||||
[33217] = true, -- One-Time Chest - T1G2
|
||||
[33218] = true, -- One-Time Chest - T1G3
|
||||
[33219] = true, -- One-Time Chest - T1G4
|
||||
[33220] = true, -- One-Time Chest - T2
|
||||
[33221] = true, -- One-Time Chest - T3
|
||||
[33222] = true, -- Little Tommy Newcomer
|
||||
[33225] = true, -- Short-Supply Reward
|
||||
[33226] = true, -- Short-Supply Reward
|
||||
[33227] = true, -- One-Time Chest 028
|
||||
[33228] = true, -- Time In Your Hands
|
||||
[33229] = true, -- A Flash of Bronze...
|
||||
[33230] = true, -- A Flash of Bronze...
|
||||
[33231] = true, -- Journey to the Timeless Isle
|
||||
[33232] = true, -- Journey to the Timeless Isle
|
||||
[33233] = true, -- Short-Supply Reward
|
||||
[33234] = true, -- Meaty Crane Leg
|
||||
[33235] = true, -- Great Turtle Meat
|
||||
[33236] = true, -- Heavy Yak Flank
|
||||
[33238] = true, -- Thick Tiger Haunch
|
||||
[33239] = true, -- Pristine Firestorm Egg
|
||||
[33248] = true, -- Proving Grounds - Available on release?
|
||||
[33249] = true, -- Proving Grounds - Available on release?
|
||||
[33250] = true, -- A Time-Lost Treasure
|
||||
[33257] = true, -- Sprite Fright - Tracking Quest
|
||||
[33258] = true, -- Tracking Quest - First - Karkanos
|
||||
[33259] = true, -- Tracking Quest - First - Spirit of Jadefire
|
||||
[33260] = true, -- Tracking Quest - First - Gu'chi the Swarmbringer
|
||||
[33261] = true, -- Tracking Quest - First - Emerald Gander
|
||||
[33270] = true, -- Tracking Quest - First - Ironfur Steelhorn
|
||||
[33272] = true, -- Tracking Quest - First - Great Turtle Furyshell
|
||||
[33273] = true, -- Tracking Quest - First - Leafmender
|
||||
[33274] = true, -- Tracking Quest - First - Champion of the Black Flame
|
||||
[33275] = true, -- Tracking Quest - First - Garnia
|
||||
[33276] = true, -- Tracking Quest - First - Bufo
|
||||
[33277] = true, -- Tracking Quest - First - Monstrous Spineclaw
|
||||
[33278] = true, -- Tracking Quest - First - Imperial Python
|
||||
[33279] = true, -- Tracking Quest - First - Tsavo'ka
|
||||
[33280] = true, -- Tracking Quest - First - Stinkbraid
|
||||
[33281] = true, -- Tracking Quest - First - Jakur of Ordon
|
||||
[33283] = true, -- Tracking Quest - First - Rock Moss
|
||||
[33284] = true, -- Tracking Quest - First - Urdur the Cauterizer
|
||||
[33285] = true, -- Tracking Quest - First - Flintlord Gairan
|
||||
[33286] = true, -- Tracking Quest - First - Cinderfall
|
||||
[33287] = true, -- Tracking Quest - First - Huolon
|
||||
[33288] = true, -- Tracking Quest - First - Archiereus of Flame
|
||||
[33289] = true, -- Tracking Quest - First - Evermaw
|
||||
[33290] = true, -- Tracking Quest - First - Dread Ship Vazuvius
|
||||
[33291] = true, -- Tracking Quest - First - Golganarr
|
||||
[33292] = true, -- Tracking Quest - Daily - Karkanos
|
||||
[33293] = true, -- Tracking Quest - Daily - Spirit of Jadefire
|
||||
[33294] = true, -- Tracking Quest - Daily - Gu'chi the Swarmbringer
|
||||
[33295] = true, -- Tracking Quest - Daily - Emerald Gander
|
||||
[33296] = true, -- Tracking Quest - Daily - Ironfur Steelhorn
|
||||
[33297] = true, -- Tracking Quest - Daily - Great Turtle Furyshell
|
||||
[33298] = true, -- Tracking Quest - Daily - Leafmender
|
||||
[33299] = true, -- Tracking Quest - Daily - Champion of the Black Flame
|
||||
[33300] = true, -- Tracking Quest - Daily - Garnia
|
||||
[33301] = true, -- Tracking Quest - Daily - Bufo
|
||||
[33302] = true, -- Tracking Quest - Daily - Monstrous Spineclaw
|
||||
[33303] = true, -- Tracking Quest - Daily - Imperial Python
|
||||
[33304] = true, -- Tracking Quest - Daily - Tsavo'ka
|
||||
[33305] = true, -- Tracking Quest - Daily - Stinkbraid
|
||||
[33306] = true, -- Tracking Quest - Daily - Jakur of Ordon
|
||||
[33307] = true, -- Tracking Quest - Daily - Rock Moss
|
||||
[33308] = true, -- Tracking Quest - Daily - Urdur the Cauterizer
|
||||
[33309] = true, -- Tracking Quest - Daily - Flintlord Gairan
|
||||
[33310] = true, -- Tracking Quest - Daily - Cinderfall
|
||||
[33311] = true, -- Tracking Quest - Daily - Huolon
|
||||
[33312] = true, -- Tracking Quest - Daily - Archiereus of Flame
|
||||
[33313] = true, -- Tracking Quest - Daily - Evermaw
|
||||
[33314] = true, -- Tracking Quest - Daily - Dread Ship Vazuvius
|
||||
[33315] = true, -- Tracking Quest - Daily - Golganarr
|
||||
[33316] = true, -- Tracking Quest - Daily - Zesqua
|
||||
[33317] = true, -- Tracking Quest - First - Zhu-Gon the Bitter/Skunky Beer
|
||||
[33318] = true, -- Tracking Quest - First - Chelon
|
||||
[33319] = true, -- Tracking Quest - First - Cranegnasher
|
||||
[33321] = true, -- Tracking Quest - First - Watcher Osu
|
||||
[33322] = true, -- Tracking Quest - Daily - Watcher Osu
|
||||
[33332] = true, -- Hints From The Past
|
||||
[33333] = true, -- Timeless Treasures
|
||||
[33334] = true, -- Strong Enough To Survive
|
||||
[33335] = true, -- The Last Emperor
|
||||
[33336] = true, -- The Essence of Time
|
||||
[33337] = true, -- A Vision in Time
|
||||
[33338] = true, -- Empowering the Hourglass
|
||||
[33340] = true, -- Timeless Nutriment
|
||||
[33341] = true, -- Wayshrines Of The Celestials
|
||||
[33342] = true, -- Drive Back The Flame
|
||||
[33343] = true, -- The Archiereus Of Flame
|
||||
[33345] = true, -- Dark Shaman Weekly Attempt
|
||||
[33348] = true, -- \"Tom\" Bone Apart - Intro Tracking Quest
|
||||
[33358] = true, -- Noodle Time: Bonus
|
||||
[33360] = true, -- 5.4 Raid - RRP - Boss 1 Legendary Quest
|
||||
[33361] = true, -- 5.4 Raid - RRP - Boss 2 Legendary Quest
|
||||
[33362] = true, -- 5.4 Raid - RRP - Boss 3 Legendary Quest
|
||||
[33363] = true, -- 5.4 Raid - RRP - Boss 4 Legendary Quest
|
||||
[33364] = true, -- 5.4 Raid - RRP - Boss 5 Legendary Quest
|
||||
[33365] = true, -- 5.4 Raid - RRP - Boss 6 Legendary Quest
|
||||
[33366] = true, -- 5.4 Raid - RRP - Boss 7 Legendary Quest
|
||||
[33367] = true, -- 5.4 Raid - RRP - Boss 8 Legendary Quest
|
||||
[33368] = true, -- 5.4 Raid - RRP - Boss 9 Legendary Quest
|
||||
[33369] = true, -- 5.4 Raid - RRP - Boss 10 Legendary Quest
|
||||
[33370] = true, -- 5.4 Raid - RRP - Boss 11 Legendary Quest
|
||||
[33371] = true, -- 5.4 Raid - RRP - Boss 12 Legendary Quest
|
||||
[33372] = true, -- 5.4 Raid - RRP - Boss 13 Legendary Quest
|
||||
[33373] = true, -- 5.4 Raid - RRP - Boss 14 Legendary Quest
|
||||
[33374] = true, -- Path of the Mistwalker
|
||||
[33375] = true, -- Refining The Vision
|
||||
[33376] = true, -- Seeking Fate
|
||||
[33377] = true, -- Hidden Threads
|
||||
[33378] = true, -- Courting Destiny
|
||||
[33379] = true, -- One Final Turn
|
||||
[33385] = true, -- Kairoz Weekly Tracking Quest
|
||||
[33602] = true, -- Short-Supply Reward
|
||||
[33603] = true, -- Short-Supply Reward
|
||||
[34060] = true, -- Krasarang RRP - Daily Vignette - Rogue Boss
|
||||
[34061] = true, -- Krasarang RRP - Daily Vignette - Priest Boss
|
||||
[34062] = true, -- Krasarang RRP - Daily Vignette - Warrior Boss
|
||||
},
|
||||
}
|
||||
|
||||
---@param questsToBlacklist table<QuestId, boolean>
|
||||
---@param contentPhase number
|
||||
---@return table<QuestId, boolean>
|
||||
function ContentPhases.BlacklistMoPQuestsByPhase(questsToBlacklist, contentPhase)
|
||||
for phase = contentPhase + 1, #questsToBlacklistByPhase do
|
||||
for questId in pairs(questsToBlacklistByPhase[phase]) do
|
||||
questsToBlacklist[questId] = true
|
||||
end
|
||||
end
|
||||
|
||||
return questsToBlacklist
|
||||
end
|
||||
@@ -1,799 +0,0 @@
|
||||
---@type ContentPhases
|
||||
local ContentPhases = QuestieLoader:ImportModule("ContentPhases")
|
||||
|
||||
-- This function blacklists any quests in phases LATER than the currentPhase value
|
||||
-- so in Phase 1, quests in phases 2+ are blacklisted, in phase 2, phases 3+ are blacklisted, etc
|
||||
-- Phase 1 is omitted, because everything not in this list is supposed to be available in Phase 1
|
||||
local questsToBlacklistByPhase = {
|
||||
[1] = { -- SoD Phase 1: level cap 25 (this is required for counting, but should stay empty)
|
||||
},
|
||||
[2] = { -- SoD Phase 2: level cap 40
|
||||
[1152] = true, -- Test of Lore; minLevel raised to 26 in P1 for some reason, might be retooled as part of P2?
|
||||
[1488] = true, -- The Corruptor; minLevel raised to 26 in P1
|
||||
[8370] = true, -- Conquering Arathi Basin
|
||||
[8374] = true, -- Conquering Arathi Basin
|
||||
[8171] = true, -- The Battle for Arathi Basin!
|
||||
[8168] = true, -- The Battle for Arathi Basin!
|
||||
},
|
||||
[3] = { -- SoD Phase 3: level cap 50
|
||||
[2847] = true, -- Wild Leather Armor
|
||||
[2854] = true, -- Wild Leather Armor
|
||||
[3526] = true, -- Goblin Engineering
|
||||
[3629] = true, -- Goblin Engineering
|
||||
[3630] = true, -- Gnome Engineering
|
||||
[3632] = true, -- Gnome Engineering
|
||||
[3633] = true, -- Goblin Engineering
|
||||
[3634] = true, -- Gnome Engineering
|
||||
[3635] = true, -- Gnome Engineering
|
||||
[3637] = true, -- Gnome Engineering
|
||||
[4181] = true, -- Goblin Engineering
|
||||
[5284] = true, -- The Way of the Weaponsmith
|
||||
[5302] = true, -- The Way of the Weaponsmith
|
||||
[6607] = true, -- Nat Pagle, Angler Extreme (Fishing 225+ quest)
|
||||
[6608] = true, -- You Too Good. (Fishing 225+ quest)
|
||||
[6609] = true, -- I Got Nothin' Left! (Fishing 225+ pre quest)
|
||||
[6610] = true, -- Clamlette Surprise (Cooking 225+ quest)
|
||||
[6611] = true, -- To Gadgetzan You Go! (Cooking 225+ pre quest)
|
||||
[6612] = true, -- I Know A Guy... (Cooking 225+ pre quest)
|
||||
[6622] = true, -- Horde Triage
|
||||
[6623] = true, -- Horde Trauma
|
||||
[6624] = true, -- Alliance Triage
|
||||
[6625] = true, -- Alliance Trauma
|
||||
},
|
||||
[4] = { -- SoD Phase 4 == Era Phase 1+2: level cap 60, MC, Ony, world bosses
|
||||
},
|
||||
[5] = { -- SoD Phase 5 == Era Phase 3: BWL + Zul'Gurub
|
||||
[4788] = true, -- The Final Tablets
|
||||
[5065] = true, -- The Lost Tablets of Mosh'aru
|
||||
[7761] = true, -- Blackhand's Command; BWL attune
|
||||
[7783] = true, -- The Lord of Blackrock Part 1
|
||||
[7784] = true, -- The Lord of Blackrock Part 2
|
||||
[7787] = true, -- Rise, Thunderfury!
|
||||
[8181] = true, -- Confront Yeh'kinya
|
||||
[8182] = true, -- The Hand of Rastakhan
|
||||
[8411] = true,
|
||||
[8056] = true,
|
||||
[8057] = true,
|
||||
[8064] = true,
|
||||
[8065] = true,
|
||||
[8074] = true,
|
||||
[8075] = true,
|
||||
[8110] = true,
|
||||
[8111] = true,
|
||||
[8112] = true,
|
||||
[8116] = true,
|
||||
[8117] = true,
|
||||
[8118] = true,
|
||||
[8041] = true,
|
||||
[8042] = true,
|
||||
[8043] = true,
|
||||
[8045] = true,
|
||||
[8046] = true,
|
||||
[8047] = true,
|
||||
[8049] = true,
|
||||
[8050] = true,
|
||||
[8051] = true,
|
||||
[8053] = true,
|
||||
[8054] = true,
|
||||
[8055] = true,
|
||||
[8058] = true,
|
||||
[8059] = true,
|
||||
[8060] = true,
|
||||
[8061] = true,
|
||||
[8062] = true,
|
||||
[8063] = true,
|
||||
[8066] = true,
|
||||
[8067] = true,
|
||||
[8068] = true,
|
||||
[8069] = true,
|
||||
[8070] = true,
|
||||
[8071] = true,
|
||||
[8072] = true,
|
||||
[8073] = true,
|
||||
[8076] = true,
|
||||
[8077] = true,
|
||||
[8078] = true,
|
||||
[8079] = true,
|
||||
[8101] = true,
|
||||
[8102] = true,
|
||||
[8103] = true,
|
||||
[8106] = true,
|
||||
[8107] = true,
|
||||
[8108] = true,
|
||||
[8141] = true,
|
||||
[8142] = true,
|
||||
[8143] = true,
|
||||
[8145] = true,
|
||||
[8146] = true,
|
||||
[8147] = true,
|
||||
[8195] = true,
|
||||
[8196] = true,
|
||||
[8201] = true,
|
||||
[8227] = true,
|
||||
[8238] = true,
|
||||
[8239] = true,
|
||||
[8240] = true,
|
||||
[8243] = true,
|
||||
[8246] = true,
|
||||
[8447] = true,
|
||||
[9208] = true,
|
||||
[9209] = true,
|
||||
[9210] = true,
|
||||
[8307] = true,
|
||||
[8313] = true,
|
||||
[8317] = true,
|
||||
[8282] = true,
|
||||
[8278] = true,
|
||||
[8323] = true,
|
||||
[8324] = true,
|
||||
[8275] = true, -- Taking Back Silithus
|
||||
[8276] = true, -- Taking Back Silithus
|
||||
[8309] = true,
|
||||
[8310] = true,
|
||||
[8315] = true,
|
||||
[8319] = true,
|
||||
[8341] = true,
|
||||
[8342] = true,
|
||||
[8343] = true,
|
||||
[8331] = true,
|
||||
[8332] = true,
|
||||
[8333] = true,
|
||||
[8306] = true,
|
||||
[8321] = true,
|
||||
[8362] = true,
|
||||
[8364] = true,
|
||||
[9248] = true,
|
||||
[8281] = true,
|
||||
[8285] = true,
|
||||
[8279] = true,
|
||||
[8287] = true,
|
||||
[8314] = true,
|
||||
[9415] = true,
|
||||
[9416] = true,
|
||||
[9419] = true,
|
||||
[9422] = true,
|
||||
},
|
||||
[6] = { -- SoD Phase 6 == Era Phase 5: AQ
|
||||
[8286] = true, -- Shifting Sands questline - What Tomorrow Brings
|
||||
[8288] = true, -- Shifting Sands questline - Only One May Rise
|
||||
[8301] = true, -- Shifting Sands questline - The Path of the Righteous
|
||||
[8302] = true, -- Shifting Sands questline - The Hand of the Righteous
|
||||
[8303] = true, -- Shifting Sands questline - Anachronos
|
||||
[8305] = true, -- Shifting Sands questline - Long Forgotten Memories
|
||||
[8519] = true, -- Shifting Sands questline - A Pawn on the Eternal Board
|
||||
[8555] = true, -- Shifting Sands questline - The Charge of the Dragonflights
|
||||
[8730] = true, -- Shifting Sands questline - Nefarius's Corruption
|
||||
[8733] = true, -- Shifting Sands questline - Eranikus, Tyrant of the Dream
|
||||
[8734] = true, -- Shifting Sands questline - Tyrande and Remulos
|
||||
[8735] = true, -- Shifting Sands questline - The Nightmare's Corruption
|
||||
[8736] = true, -- Shifting Sands questline - The Nightmare Manifests
|
||||
[8741] = true, -- Shifting Sands questline - The Champion Returns
|
||||
[8575] = true, -- Shifting Sands questline - Azuregos's Magical Ledger
|
||||
[8576] = true, -- Shifting Sands questline - Translating the Ledger
|
||||
[8577] = true, -- Shifting Sands questline - Stewvul, Ex-B.F.F.
|
||||
[8578] = true, -- Shifting Sands questline - Scrying Goggles? No Problem!
|
||||
[8584] = true, -- Shifting Sands questline - Never Ask Me About My Business
|
||||
[8585] = true, -- Shifting Sands questline - The Isle of Dread!
|
||||
[8586] = true, -- Shifting Sands questline - Dirge's Kickin' Chimaerok Chops
|
||||
[8587] = true, -- Shifting Sands questline - Return to Narain
|
||||
[8597] = true, -- Shifting Sands questline - Draconic for Dummies
|
||||
[8598] = true, -- Shifting Sands questline - rAnS0m
|
||||
[8599] = true, -- Shifting Sands questline - Love Song for Narain
|
||||
[8606] = true, -- Shifting Sands questline - Decoy!
|
||||
[8620] = true, -- Shifting Sands questline - The Only Prescription
|
||||
[8728] = true, -- Shifting Sands questline - The Good News and The Bad News
|
||||
[8729] = true, -- Shifting Sands questline - The Wrath of Neptulon
|
||||
[8742] = true, -- Shifting Sands questline - The Might of Kalimdor
|
||||
[8743] = true, -- Shifting Sands questline - Bang a Gong!
|
||||
[8745] = true, -- Shifting Sands questline - Treasure of the Timeless One
|
||||
|
||||
[8579] = true, -- Mortal Champions
|
||||
[8789] = true, -- Imperial Qiraji Armaments
|
||||
[8790] = true, -- Imperial Qiraji Regalia
|
||||
[8791] = true, -- The Fall of Ossirian
|
||||
[8801] = true, -- C'Thun's Legacy
|
||||
},
|
||||
[7] = { -- SoD Phase 7 == Era Phase 6: Naxxramas
|
||||
[9142] = true,
|
||||
[9165] = true,
|
||||
[9141] = true,
|
||||
[9033] = true,
|
||||
[9034] = true,
|
||||
[9036] = true,
|
||||
[9037] = true,
|
||||
[9038] = true,
|
||||
[9039] = true,
|
||||
[9040] = true,
|
||||
[9041] = true,
|
||||
[9042] = true,
|
||||
[9043] = true,
|
||||
[9044] = true,
|
||||
[9045] = true,
|
||||
[9046] = true,
|
||||
[9047] = true,
|
||||
[9048] = true,
|
||||
[9049] = true,
|
||||
[9050] = true,
|
||||
[9054] = true,
|
||||
[9055] = true,
|
||||
[9056] = true,
|
||||
[9057] = true,
|
||||
[9058] = true,
|
||||
[9059] = true,
|
||||
[9060] = true,
|
||||
[9061] = true,
|
||||
[9068] = true,
|
||||
[9069] = true,
|
||||
[9070] = true,
|
||||
[9071] = true,
|
||||
[9072] = true,
|
||||
[9073] = true,
|
||||
[9074] = true,
|
||||
[9075] = true,
|
||||
[9077] = true,
|
||||
[9078] = true,
|
||||
[9079] = true,
|
||||
[9080] = true,
|
||||
[9081] = true,
|
||||
[9082] = true,
|
||||
[9083] = true,
|
||||
[9084] = true,
|
||||
[9086] = true,
|
||||
[9087] = true,
|
||||
[9088] = true,
|
||||
[9089] = true,
|
||||
[9090] = true,
|
||||
[9091] = true,
|
||||
[9092] = true,
|
||||
[9093] = true,
|
||||
[9095] = true,
|
||||
[9096] = true,
|
||||
[9097] = true,
|
||||
[9098] = true,
|
||||
[9099] = true,
|
||||
[9100] = true,
|
||||
[9101] = true,
|
||||
[9102] = true,
|
||||
[9103] = true,
|
||||
[9104] = true,
|
||||
[9105] = true,
|
||||
[9106] = true,
|
||||
[9107] = true,
|
||||
[9108] = true,
|
||||
[9109] = true,
|
||||
[9110] = true,
|
||||
[9111] = true,
|
||||
[9112] = true,
|
||||
[9113] = true,
|
||||
[9114] = true,
|
||||
[9115] = true,
|
||||
[9116] = true,
|
||||
[9117] = true,
|
||||
[9118] = true,
|
||||
[9121] = true,
|
||||
[9122] = true,
|
||||
[9123] = true,
|
||||
[9124] = true,
|
||||
[9125] = true,
|
||||
[9126] = true,
|
||||
[9127] = true,
|
||||
[9128] = true,
|
||||
[9129] = true,
|
||||
[9131] = true,
|
||||
[9132] = true,
|
||||
[9136] = true,
|
||||
[9137] = true,
|
||||
[9154] = true,
|
||||
[9260] = true,
|
||||
[9261] = true,
|
||||
[9262] = true,
|
||||
[9263] = true,
|
||||
[9264] = true,
|
||||
[9265] = true,
|
||||
[9211] = true,
|
||||
[9213] = true,
|
||||
[9229] = true,
|
||||
[9230] = true,
|
||||
[9233] = true,
|
||||
[9234] = true,
|
||||
[9235] = true,
|
||||
[9236] = true,
|
||||
[9237] = true,
|
||||
[9238] = true,
|
||||
[9239] = true,
|
||||
[9240] = true,
|
||||
[9241] = true,
|
||||
[9242] = true,
|
||||
[9243] = true,
|
||||
[9244] = true,
|
||||
[9245] = true,
|
||||
[9246] = true,
|
||||
[9250] = true,
|
||||
[9251] = true,
|
||||
-- Silithus/EPL PvP
|
||||
[9248] = true,
|
||||
[87360] = true, -- The Fall of Kel'Thuzad
|
||||
[87361] = true, -- Laid to Rest
|
||||
[87362] = true, -- Hope Begins in the Dark
|
||||
[87364] = true, -- Seal the Deal
|
||||
[88721] = true, -- Superior Armaments of Battle - Friend of the Dawn
|
||||
[88722] = true, -- Superior Armaments of Battle - Honored Amongst the Dawn
|
||||
[88723] = true, -- Superior Armaments of Battle - Revered Amongst the Dawn
|
||||
[88724] = true, -- Superior Armaments of Battle - Exalted Amongst the Dawn
|
||||
[88725] = true, -- Epic Armaments of Battle - Friend of the Dawn
|
||||
[88726] = true, -- Epic Armaments of Battle - Honored Amongst the Dawn
|
||||
[88727] = true, -- Epic Armaments of Battle - Revered Amongst the Dawn
|
||||
[88728] = true, -- Epic Armaments of Battle - Exalted Amongst the Dawn
|
||||
[88730] = true, -- The Only Song I Know...
|
||||
[88744] = true, -- Under the Shadow
|
||||
[88745] = true, -- Shadows of Doom
|
||||
[88748] = true, -- Cracked Necrotic Crystal
|
||||
},
|
||||
[8] = { -- Never appearing in Season of Discovery
|
||||
[1203] = true, -- Jarl Needs a Blade - Replaced by 81570
|
||||
[1878] = true, -- Water Pouch Bounty - Replaced by 82209
|
||||
[2758] = true, -- The Origins of Smithing - Replaced by 80241
|
||||
[2849] = true, -- Wild Leather Vest - Replaced by 82657
|
||||
[2856] = true, -- Wild Leather Vest - Replaced by 82656
|
||||
[2881] = true, -- Troll Necklace Bounty - Replaced by 82210
|
||||
[2950] = true, -- Nogg's Ring Redo - Replaced by 80141
|
||||
[3446] = true, -- Into the Depths - Replaced by 82096
|
||||
[4146] = true, -- Zapper Fuel - Replcaed by 82101
|
||||
[4148] = true, -- Bloodpetal Zapper
|
||||
[5283] = true, -- The Art of the Armorsmith -- Replaced by 85713
|
||||
[5301] = true, -- The Art of the Armorsmith -- Replaced by 85712
|
||||
[5124] = true, -- Fiery Plate Gauntlets -- Replaced by 84495
|
||||
[5141] = true, -- Dragonscale Leatherworking -- Replaced by 85702
|
||||
[5143] = true, -- Tribal Leatherworking -- Replaced by 85705
|
||||
[5144] = true, -- Elemental Leatherworking -- Replaced by 85703
|
||||
[5145] = true, -- Dragonscale Leatherworking -- Replaced by 85701
|
||||
[5146] = true, -- Elemental Leatherworking -- Replaced by 85704
|
||||
[5148] = true, -- Tribal Leatherworking -- Replaced by 85706
|
||||
[5284] = true, -- The Way of the Weaponsmith - Replaced by 82662
|
||||
[5302] = true, -- The Way of the Weaponsmith - Replaced by 82665
|
||||
[5305] = true, -- Sweet Serenity - Replaced by 85700
|
||||
[5306] = true, -- Snakestone of the Shadow Huntress - Replaced by 85700
|
||||
[5307] = true, -- Corruption - Replaced by 85700
|
||||
[7604] = true, -- A Binding Contract - Replaced by 84338
|
||||
[7636] = true, -- Stave of the Ancients - Replaced by 84546
|
||||
[7486] = true, -- A Hero's Reward - Replaced by 84545
|
||||
[7782] = true, -- The Lord of Blackrock - Replaced by 85643
|
||||
[7784] = true, -- The Lord of Blackrock - Replaced by 85644
|
||||
[8467] = true, -- Feathers for Nafien - Replaced by 84777
|
||||
[8769] = true, -- A Ticking Present - Replaced by 79637
|
||||
[8781] = true, -- Arms for the Field - Replaced by 85798
|
||||
[7622] = true, -- The Balance of Light and Shadow - Replaced by 84590
|
||||
[7785] = true, -- Examine the Vessel - Replaced by 85442
|
||||
[7786] = true, -- Thunderaan the Windseeker - Replaced by 85441
|
||||
[7787] = true, -- Rise, Thunderfury! - Replaced by 85443
|
||||
[8446] = true, -- Shrouded in Nightmare (Emerald Dream Dragons) - Replaced by 86679
|
||||
[8447] = true, -- Waking Legends (Emerald Dream Dragons) - Replaced by 86680
|
||||
[8620] = true, -- The Only Prescription - Replaced by 86444
|
||||
[9023] = true, -- The Perfect Poison - Replaced by 86674
|
||||
[8729] = true, -- The Wrath of Neptulon - Replaced by 86445
|
||||
[8730] = true, -- Nefarius's Corruption - Replaced by 86442
|
||||
[8736] = true, -- The Nightmare Manifests - Replaced by 86443
|
||||
[8745] = true, -- Treasure of the Timeless One - Replaced by 86449
|
||||
[8791] = true, -- The Fall of Ossirian - Replaced by 86673
|
||||
[8802] = true, -- The Savior of Kalimdor - Replaced by 86670
|
||||
[85643] = true, -- The Lord of Blackrock - Replaced by 88969
|
||||
[85644] = true, -- The Lord of Blackrock - Replaced by 88968
|
||||
|
||||
-- Original Blackfathom Deeps quests (instance reworked to raid, new quest IDs)
|
||||
[909] = true,
|
||||
[971] = true,
|
||||
[1198] = true,
|
||||
[1199] = true,
|
||||
[1200] = true,
|
||||
[1275] = true,
|
||||
[6561] = true,
|
||||
[6565] = true,
|
||||
[6921] = true,
|
||||
[6922] = true,
|
||||
|
||||
-- Original Gnomeregan quests (instance reworked to raid, new quest IDs)
|
||||
[2841] = true,
|
||||
[2842] = true,
|
||||
[2843] = true,
|
||||
[2904] = true,
|
||||
[2922] = true,
|
||||
[2923] = true,
|
||||
[2924] = true,
|
||||
[2925] = true,
|
||||
[2926] = true,
|
||||
[2927] = true,
|
||||
[2928] = true,
|
||||
[2929] = true,
|
||||
[2930] = true,
|
||||
[2931] = true,
|
||||
[2945] = true,
|
||||
[2947] = true,
|
||||
[2949] = true,
|
||||
[2951] = true,
|
||||
[2952] = true,
|
||||
[2953] = true,
|
||||
[2962] = true,
|
||||
[4601] = true,
|
||||
[4602] = true,
|
||||
[4603] = true,
|
||||
[4604] = true,
|
||||
[4605] = true,
|
||||
[4606] = true,
|
||||
[81975] = true, -- Never was made available as it seems
|
||||
|
||||
-- Original Sunken Temple quests (instance reworked to raid, new quest IDs)
|
||||
[1445] = true,
|
||||
[1446] = true,
|
||||
[1475] = true,
|
||||
[3373] = true,
|
||||
[3374] = true,
|
||||
[3447] = true,
|
||||
[3512] = true,
|
||||
[3528] = true,
|
||||
[4143] = true,
|
||||
[8232] = true,
|
||||
[8236] = true,
|
||||
[8253] = true,
|
||||
[8257] = true,
|
||||
[8413] = true,
|
||||
[8418] = true,
|
||||
[8422] = true,
|
||||
[8425] = true,
|
||||
[9053] = true,
|
||||
|
||||
-- Original Dire Maul Book quests
|
||||
[7498] = true, -- Replaced by 84548
|
||||
[7499] = true, -- Replaced by 84550
|
||||
[7500] = true, -- Replaced by 84549
|
||||
[7501] = true, -- Replaced by 84551
|
||||
|
||||
-- Original ZG quests
|
||||
[8044] = true, -- The Rage of Mugamba - Replaced by 85612
|
||||
[8048] = true, -- The Hero's Brand - Replaced by 85617
|
||||
[8052] = true, -- The All-Seeing Eye of Zuldazar - Replaced by 85616
|
||||
[8104] = true, -- The Jewel of Kajaro - Replaced by 85629
|
||||
[8109] = true, -- Kezan's Unstoppable Taint - Replaced by 85625
|
||||
[8113] = true, -- Pristine Enchanted South Seas Kelp - Replaced by 85608
|
||||
[8119] = true, -- The Unmarred Vision of Voodress - Replaced by 85604
|
||||
[8144] = true, -- Zandalarian Shadow Mastery Talisman - Replaced by 85633
|
||||
[8148] = true, -- Maelstrom's Wrath - Replaced by 85637
|
||||
[8183] = true, -- The Heart of Hakkar - Replaced by 85660
|
||||
[8184] = true, -- Presence of Might - Replaced by 85595
|
||||
[8185] = true, -- Syncretist's Sigil - Replaced by 85601
|
||||
[8186] = true, -- Death's Embrace - Replaced by 85596
|
||||
[8187] = true, -- Falcon's Call - Replaced by 85597
|
||||
[8188] = true, -- Vodouisant's Vigilant Embrace - Replaced by 85603
|
||||
[8189] = true, -- Presence of Sight - Replaced by 85600
|
||||
[8190] = true, -- Hoodoo Hex - Replaced by 85599
|
||||
[8191] = true, -- Prophetic Aura - Replaced by 85598
|
||||
[8192] = true, -- Animist's Caress - Replaced by 85602
|
||||
|
||||
-- Old T0.5 exchange quests
|
||||
[8905] = true, -- An Earnest Proposition
|
||||
[8906] = true, -- An Earnest Proposition
|
||||
[8907] = true, -- An Earnest Proposition
|
||||
[8908] = true, -- An Earnest Proposition
|
||||
[8909] = true, -- An Earnest Proposition
|
||||
[8910] = true, -- An Earnest Proposition
|
||||
[8911] = true, -- An Earnest Proposition
|
||||
[8912] = true, -- An Earnest Proposition
|
||||
[8913] = true, -- An Earnest Proposition
|
||||
[8914] = true, -- An Earnest Proposition
|
||||
[8915] = true, -- An Earnest Proposition
|
||||
[8916] = true, -- An Earnest Proposition
|
||||
[8917] = true, -- An Earnest Proposition
|
||||
[8918] = true, -- An Earnest Proposition
|
||||
[8919] = true, -- An Earnest Proposition
|
||||
[8920] = true, -- An Earnest Proposition
|
||||
[8926] = true, -- Just Compensation
|
||||
[8927] = true, -- Just Compensation
|
||||
[8931] = true, -- Just Compensation
|
||||
[8932] = true, -- Just Compensation
|
||||
[8933] = true, -- Just Compensation
|
||||
[8934] = true, -- Just Compensation
|
||||
[8935] = true, -- Just Compensation
|
||||
[8936] = true, -- Just Compensation
|
||||
[8937] = true, -- Just Compensation
|
||||
[8938] = true, -- Just Compensation
|
||||
[8939] = true, -- Just Compensation
|
||||
[8940] = true, -- Just Compensation
|
||||
[8941] = true, -- Just Compensation
|
||||
[8942] = true, -- Just Compensation
|
||||
[8943] = true, -- Just Compensation
|
||||
[8944] = true, -- Just Compensation
|
||||
[8951] = true, -- Anthion's Parting Words
|
||||
[8952] = true, -- Anthion's Parting Words
|
||||
[8953] = true, -- Anthion's Parting Words
|
||||
[8954] = true, -- Anthion's Parting Words
|
||||
[8955] = true, -- Anthion's Parting Words
|
||||
[8956] = true, -- Anthion's Parting Words
|
||||
[8957] = true, -- Anthion's Parting Words
|
||||
[8958] = true, -- Anthion's Parting Words
|
||||
[8959] = true, -- Anthion's Parting Words
|
||||
[8999] = true, -- Saving the Best for Last
|
||||
[9000] = true, -- Saving the Best for Last
|
||||
[9001] = true, -- Saving the Best for Last
|
||||
[9002] = true, -- Saving the Best for Last
|
||||
[9003] = true, -- Saving the Best for Last
|
||||
[9004] = true, -- Saving the Best for Last
|
||||
[9005] = true, -- Saving the Best for Last
|
||||
[9006] = true, -- Saving the Best for Last
|
||||
[9007] = true, -- Saving the Best for Last
|
||||
[9008] = true, -- Saving the Best for Last
|
||||
[9009] = true, -- Saving the Best for Last
|
||||
[9010] = true, -- Saving the Best for Last
|
||||
[9011] = true, -- Saving the Best for Last
|
||||
[9012] = true, -- Saving the Best for Last
|
||||
[9013] = true, -- Saving the Best for Last
|
||||
[9014] = true, -- Saving the Best for Last
|
||||
[9016] = true, -- Anthion's Parting Words
|
||||
[9017] = true, -- Anthion's Parting Words
|
||||
[9018] = true, -- Anthion's Parting Words
|
||||
[9019] = true, -- Anthion's Parting Words
|
||||
[9020] = true, -- Anthion's Parting Words
|
||||
[9021] = true, -- Anthion's Parting Words
|
||||
[9022] = true, -- Anthion's Parting Words
|
||||
|
||||
-- Darkmoon Faire quests
|
||||
[7902] = true, -- Vibrant Plumes
|
||||
[7903] = true, -- Evil Bat Eyes
|
||||
[8222] = true, -- Glowing Scorpid Blood
|
||||
[7901] = true, -- Soft Bushy Tails
|
||||
[7899] = true, -- Small Furry Paws
|
||||
[7900] = true, -- Torn Bear Pelts
|
||||
[7946] = true, -- Spawn of Jubjub
|
||||
[8223] = true, -- More Glowing Scorpid Blood
|
||||
[7943] = true, -- More Bat Eyes
|
||||
[7894] = true, -- Copper Modulator
|
||||
[7898] = true, -- Thorium Widget
|
||||
[7885] = true, -- Armor Kits
|
||||
[7942] = true, -- More Thorium Widgets
|
||||
[7883] = true, -- The World's Largest Gnome!
|
||||
[7892] = true, -- Big Black Mace
|
||||
[7939] = true, -- More Dense Grinding Stones
|
||||
[7893] = true, -- Rituals of Strength
|
||||
[7891] = true, -- Green Iron Bracers
|
||||
[7896] = true, -- Green Fireworks
|
||||
[7884] = true, -- Crocolisk Boy and the Bearded Murloc
|
||||
[7882] = true, -- Carnival Jerkins
|
||||
[7897] = true, -- Mechanical Repair Kits
|
||||
[7895] = true, -- Whirring Bronze Gizmo
|
||||
[7941] = true, -- More Armor Kits
|
||||
[7881] = true, -- Carnival Boots
|
||||
[7890] = true, -- Heavy Grinding Stone
|
||||
[7889] = true, -- Coarse Weightstone
|
||||
[7907] = true, -- Darkmoon Beast Deck
|
||||
[7927] = true, -- Darkmoon Warlords Deck
|
||||
[7928] = true, -- Darkmoon Elementals Deck
|
||||
[7929] = true, -- Darkmoon Portals Deck
|
||||
|
||||
-- ZG quests
|
||||
[8053] = true, -- Paragons of Power: The Freethinker's Armguards
|
||||
[8054] = true, -- Paragons of Power: The Freethinker's Belt
|
||||
[8055] = true, -- Paragons of Power: The Freethinker's Breastplate
|
||||
[8056] = true, -- Paragons of Power: The Augur's Bracers
|
||||
[8057] = true, -- Paragons of Power: The Haruspex's Bracers
|
||||
[8058] = true, -- Paragons of Power: The Vindicator's Armguards
|
||||
[8059] = true, -- Paragons of Power: The Demoniac's Wraps
|
||||
[8060] = true, -- Paragons of Power: The Illusionist's Wraps
|
||||
[8061] = true, -- Paragons of Power: The Confessor's Wraps
|
||||
[8062] = true, -- Paragons of Power: The Predator's Bracers
|
||||
[8063] = true, -- Paragons of Power: The Madcap's Bracers
|
||||
[8064] = true, -- Paragons of Power: The Haruspex's Belt
|
||||
[8065] = true, -- Paragons of Power: The Haruspex's Tunic
|
||||
[8066] = true, -- Paragons of Power: The Predator's Belt
|
||||
[8067] = true, -- Paragons of Power: The Predator's Mantle
|
||||
[8068] = true, -- Paragons of Power: The Illusionist's Mantle
|
||||
[8069] = true, -- Paragons of Power: The Illusionist's Robes
|
||||
[8070] = true, -- Paragons of Power: The Confessor's Bindings
|
||||
[8071] = true, -- Paragons of Power: The Confessor's Mantle
|
||||
[8072] = true, -- Paragons of Power: The Madcap's Mantle
|
||||
[8073] = true, -- Paragons of Power: The Madcap's Tunic
|
||||
[8074] = true, -- Paragons of Power: The Augur's Belt
|
||||
[8075] = true, -- Paragons of Power: The Augur's Hauberk
|
||||
[8076] = true, -- Paragons of Power: The Demoniac's Mantle
|
||||
[8077] = true, -- Paragons of Power: The Demoniac's Robes
|
||||
[8078] = true, -- Paragons of Power: The Vindicator's Belt
|
||||
[8079] = true, -- Paragons of Power: The Vindicator's Breastplate
|
||||
|
||||
-- AQ War Efforts
|
||||
[8548] = true, -- Volunteer's Battlegear - Replaced by 86675
|
||||
[8572] = true, -- Veteran's Battlegear - Replaced by 86676
|
||||
[8573] = true, -- Champion's Battlegear - Replaced by 86677
|
||||
[8574] = true, -- Stalwart's Battlegear - Replaced by 86678
|
||||
[8792] = true, -- The Horde Needs Your Help!
|
||||
[8793] = true, -- The Horde Needs Your Help!
|
||||
[8794] = true, -- The Horde Needs Your Help!
|
||||
[8795] = true, -- The Alliance Needs Your Help!
|
||||
[8796] = true, -- The Alliance Needs Your Help!
|
||||
[8797] = true, -- The Alliance Needs Your Help!
|
||||
|
||||
-- AQ Raid quests
|
||||
[8789] = true, -- Imperial Qiraji Armaments - Replaced by 86672
|
||||
[8790] = true, -- Imperial Qiraji Regalia - Replaced by 86671
|
||||
|
||||
[78265] = true, -- Fish Oil (replaced by 82850)
|
||||
[78266] = true, -- Dark Iron Ordinance (replaced by 82851)
|
||||
[78267] = true, -- Shredder Turbochargers (replaced by 82853)
|
||||
|
||||
[81716] = true, -- Recover Incursion Field Report: Duskwood
|
||||
[81727] = true, -- Recover Incursion Field Report: Ashenvale
|
||||
[81728] = true, -- Recover Incursion Field Report: Hinterlands
|
||||
[81729] = true, -- Recover Incursion Field Report: Feralas
|
||||
|
||||
-- AQ Brood of Nozdormu Rings (replaced with vendor)
|
||||
[8747] = true, -- The Path of the Protector
|
||||
[8748] = true, -- The Path of the Protector
|
||||
[8749] = true, -- The Path of the Protector
|
||||
[8750] = true, -- The Path of the Protector
|
||||
[8751] = true, -- The Protector of Kalimdor
|
||||
[8752] = true, -- The Path of the Conqueror
|
||||
[8753] = true, -- The Path of the Conqueror
|
||||
[8754] = true, -- The Path of the Conqueror
|
||||
[8755] = true, -- The Path of the Conqueror
|
||||
[8756] = true, -- The Qiraji Conqueror
|
||||
[8757] = true, -- The Path of the Invoker
|
||||
[8758] = true, -- The Path of the Invoker
|
||||
[8759] = true, -- The Path of the Invoker
|
||||
[8760] = true, -- The Path of the Invoker
|
||||
[8761] = true, -- The Grand Invoker
|
||||
[8764] = true, -- The Changing of Paths - Protector No More
|
||||
[8765] = true, -- The Changing of Paths - Invoker No More
|
||||
[8766] = true, -- The Changing of Paths - Conqueror No More
|
||||
|
||||
-- AQ Tier 2.5 Gear (replaced with vendor)
|
||||
[8556] = true, -- Signet of Unyielding Strength
|
||||
[8557] = true, -- Drape of Unyielding Strength
|
||||
[8558] = true, -- Sickle of Unyielding Strength
|
||||
[8689] = true, -- Shroud of Infinite Wisdom
|
||||
[8690] = true, -- Cloak of the Gathering Storm
|
||||
[8691] = true, -- Drape of Vaulted Secrets
|
||||
[8692] = true, -- Cloak of Unending Life
|
||||
[8693] = true, -- Cloak of Veiled Shadows
|
||||
[8694] = true, -- Shroud of Unspoken Names
|
||||
[8695] = true, -- Cape of Eternal Justice
|
||||
[8696] = true, -- Cloak of the Unseen Path
|
||||
[8697] = true, -- Ring of Infinite Wisdom
|
||||
[8698] = true, -- Ring of the Gathering Storm
|
||||
[8699] = true, -- Band of Vaulted Secrets
|
||||
[8700] = true, -- Band of Unending Life
|
||||
[8701] = true, -- Band of Veiled Shadows
|
||||
[8702] = true, -- Ring of Unspoken Names
|
||||
[8703] = true, -- Ring of Eternal Justice
|
||||
[8704] = true, -- Signet of the Unseen Path
|
||||
[8705] = true, -- Gavel of Infinite Wisdom
|
||||
[8706] = true, -- Hammer of the Gathering Storm
|
||||
[8707] = true, -- Blade of Vaulted Secrets
|
||||
[8708] = true, -- Mace of Unending Life
|
||||
[8709] = true, -- Dagger of Veiled Shadows
|
||||
[8710] = true, -- Kris of Unspoken Names
|
||||
[8711] = true, -- Blade of Eternal Justice
|
||||
[8712] = true, -- Scythe of the Unseen Path
|
||||
|
||||
-- Original Naxxramas quests
|
||||
[9120] = true, -- The Fall of Kel'Thuzad - Replaced by 87360
|
||||
[9230] = true, -- Ramaladni's Icy Grasp - Replaced by 88729
|
||||
[9232] = true, -- The Only Song I Know... - Replaced by 88730
|
||||
|
||||
-- Invasion quests
|
||||
[9094] = true, -- Argent Dawn Gloves
|
||||
[9085] = true, -- Shadows of Doom
|
||||
[9153] = true, -- Under the Shadow
|
||||
[9292] = true, -- Cracked Necrotic Crystal
|
||||
[9310] = true, -- Faint Necrotic Crystal
|
||||
[9318] = true, -- Blessed Wizard Oil
|
||||
[9317] = true, -- Consecrated Sharpening Stones
|
||||
[9333] = true, -- Argent Dawn Gloves
|
||||
[9334] = true, -- Blessed Wizard Oil
|
||||
[9335] = true, -- Consecrated Sharpening Stones
|
||||
|
||||
[9221] = true, -- Superior Armaments of Battle - Friend of the Dawn
|
||||
[9222] = true, -- Epic Armaments of Battle - Friend of the Dawn
|
||||
[9223] = true, -- Superior Armaments of Battle - Honored Amongst the Dawn
|
||||
[9224] = true, -- Epic Armaments of Battle - Honored Amongst the Dawn
|
||||
[9225] = true, -- Epic Armaments of Battle - Revered Amongst the Dawn
|
||||
[9226] = true, -- Superior Armaments of Battle - Revered Amongst the Dawn
|
||||
[9227] = true, -- Superior Armaments of Battle - Exalted Amongst the Dawn
|
||||
[9228] = true, -- Epic Armaments of Battle - Exalted Amongst the Dawn
|
||||
|
||||
[78506] = true, -- Elemental Distress - Replaced by 85772
|
||||
|
||||
[88713] = true, -- Never at Rest - Same as 87377 but in a different catch-up version
|
||||
[88714] = true, -- Never at Rest - Same as 87377 but in a different catch-up version
|
||||
[88715] = true, -- Never at Rest - Same as 87377 but in a different catch-up version
|
||||
[88716] = true, -- Never at Rest - Same as 87377 but in a different catch-up version
|
||||
[88717] = true, -- Never at Rest - Same as 87377 but in a different catch-up version
|
||||
[88718] = true, -- Never at Rest - Same as 87377 but in a different catch-up version
|
||||
|
||||
-- Tier 3 quests
|
||||
[9034] = true, -- Warrior
|
||||
[9036] = true, -- Warrior
|
||||
[9037] = true, -- Warrior
|
||||
[9038] = true, -- Warrior
|
||||
[9039] = true, -- Warrior
|
||||
[9040] = true, -- Warrior
|
||||
[9041] = true, -- Warrior
|
||||
[9042] = true, -- Warrior
|
||||
[9043] = true, -- Paladin
|
||||
[9044] = true, -- Paladin
|
||||
[9045] = true, -- Paladin
|
||||
[9046] = true, -- Paladin
|
||||
[9047] = true, -- Paladin
|
||||
[9048] = true, -- Paladin
|
||||
[9049] = true, -- Paladin
|
||||
[9050] = true, -- Paladin
|
||||
[9054] = true, -- Hunter
|
||||
[9055] = true, -- Hunter
|
||||
[9056] = true, -- Hunter
|
||||
[9057] = true, -- Hunter
|
||||
[9058] = true, -- Hunter
|
||||
[9059] = true, -- Hunter
|
||||
[9060] = true, -- Hunter
|
||||
[9061] = true, -- Hunter
|
||||
[9068] = true, -- Shaman
|
||||
[9069] = true, -- Shaman
|
||||
[9070] = true, -- Shaman
|
||||
[9071] = true, -- Shaman
|
||||
[9072] = true, -- Shaman
|
||||
[9073] = true, -- Shaman
|
||||
[9074] = true, -- Shaman
|
||||
[9075] = true, -- Shaman
|
||||
[9077] = true, -- Rogue
|
||||
[9078] = true, -- Rogue
|
||||
[9079] = true, -- Rogue
|
||||
[9080] = true, -- Rogue
|
||||
[9081] = true, -- Rogue
|
||||
[9082] = true, -- Rogue
|
||||
[9083] = true, -- Rogue
|
||||
[9084] = true, -- Rogue
|
||||
[9086] = true, -- Druid
|
||||
[9087] = true, -- Druid
|
||||
[9088] = true, -- Druid
|
||||
[9089] = true, -- Druid
|
||||
[9090] = true, -- Druid
|
||||
[9091] = true, -- Druid
|
||||
[9092] = true, -- Druid
|
||||
[9093] = true, -- Druid
|
||||
[9095] = true, -- Mage
|
||||
[9096] = true, -- Mage
|
||||
[9097] = true, -- Mage
|
||||
[9098] = true, -- Mage
|
||||
[9099] = true, -- Mage
|
||||
[9100] = true, -- Mage
|
||||
[9101] = true, -- Mage
|
||||
[9102] = true, -- Mage
|
||||
[9103] = true, -- Warlock
|
||||
[9104] = true, -- Warlock
|
||||
[9105] = true, -- Warlock
|
||||
[9106] = true, -- Warlock
|
||||
[9107] = true, -- Warlock
|
||||
[9108] = true, -- Warlock
|
||||
[9109] = true, -- Warlock
|
||||
[9110] = true, -- Warlock
|
||||
[9111] = true, -- Priest
|
||||
[9112] = true, -- Priest
|
||||
[9113] = true, -- Priest
|
||||
[9114] = true, -- Priest
|
||||
[9115] = true, -- Priest
|
||||
[9116] = true, -- Priest
|
||||
[9117] = true, -- Priest
|
||||
[9118] = true, -- Priest
|
||||
|
||||
-- Atiesh
|
||||
[9257] = true,
|
||||
[9269] = true,
|
||||
[9270] = true,
|
||||
[9271] = true,
|
||||
},
|
||||
}
|
||||
|
||||
---@return table<number, table<number, boolean>> @All quests that should be blacklisted separated by phase
|
||||
function ContentPhases.BlacklistSoDQuestsByPhase(questsToBlacklist, contentPhase)
|
||||
for phase = contentPhase + 1, #questsToBlacklistByPhase do
|
||||
for questId in pairs(questsToBlacklistByPhase[phase]) do
|
||||
questsToBlacklist[questId] = true
|
||||
end
|
||||
end
|
||||
|
||||
return questsToBlacklist
|
||||
end
|
||||
@@ -1,535 +0,0 @@
|
||||
---@type ContentPhases
|
||||
local ContentPhases = QuestieLoader:ImportModule("ContentPhases")
|
||||
|
||||
-- This function blacklists any quests in phases LATER than the currentPhase value
|
||||
-- so in Phase 1, quests in phases 2+ are blacklisted, in phase 2, phases 3+ are blacklisted, etc
|
||||
-- Phase 1 is omitted, because everything not in this list is supposed to be available in Phase 1
|
||||
local questsToBlacklistByPhase = {
|
||||
[1] = {}, -- Phase 1 - Regular Phase 1 + Dire Maul + Tier 0.5 quests (this is required for counting, but should stay empty)
|
||||
[2] = { -- Phase 2 - World Bosses
|
||||
},
|
||||
[3] = { -- Phase 3 - BWL + Darkmoon Faire
|
||||
[7761] = true, -- Blackhand's Command BWL pre quest
|
||||
[7787] = true,
|
||||
-- Darkmoon Faire quests
|
||||
[7902] = true,
|
||||
[7903] = true,
|
||||
[8222] = true,
|
||||
[7901] = true,
|
||||
[7899] = true,
|
||||
[7940] = true,
|
||||
[7900] = true,
|
||||
[7907] = true,
|
||||
[7927] = true,
|
||||
[7929] = true,
|
||||
[7928] = true,
|
||||
[7946] = true,
|
||||
[8223] = true,
|
||||
[7934] = true,
|
||||
[7981] = true,
|
||||
[7943] = true,
|
||||
[7894] = true,
|
||||
[7933] = true,
|
||||
[7898] = true,
|
||||
[7885] = true,
|
||||
[7942] = true,
|
||||
[7883] = true,
|
||||
[7892] = true,
|
||||
[7937] = true,
|
||||
[7939] = true,
|
||||
[7893] = true,
|
||||
[7891] = true,
|
||||
[7896] = true,
|
||||
[7884] = true,
|
||||
[7882] = true,
|
||||
[7897] = true,
|
||||
[7895] = true,
|
||||
[7941] = true,
|
||||
[7881] = true,
|
||||
[7890] = true,
|
||||
[7889] = true,
|
||||
[7945] = true,
|
||||
[7935] = true,
|
||||
[7938] = true,
|
||||
[7944] = true,
|
||||
[7932] = true,
|
||||
[7930] = true,
|
||||
[7931] = true,
|
||||
[7936] = true,
|
||||
[9249] = true,
|
||||
[10939] = true,
|
||||
[10940] = true,
|
||||
[10941] = true,
|
||||
-----------------
|
||||
},
|
||||
[4] = { -- Phase 4 - Zul'Gurub
|
||||
[8411] = true,
|
||||
[8056] = true,
|
||||
[8057] = true,
|
||||
[8064] = true,
|
||||
[8065] = true,
|
||||
[8074] = true,
|
||||
[8075] = true,
|
||||
[8110] = true,
|
||||
[8111] = true,
|
||||
[8112] = true,
|
||||
[8113] = true,
|
||||
[8116] = true,
|
||||
[8117] = true,
|
||||
[8118] = true,
|
||||
[8119] = true,
|
||||
[8041] = true,
|
||||
[8042] = true,
|
||||
[8043] = true,
|
||||
[8044] = true,
|
||||
[8045] = true,
|
||||
[8046] = true,
|
||||
[8047] = true,
|
||||
[8048] = true,
|
||||
[8049] = true,
|
||||
[8050] = true,
|
||||
[8051] = true,
|
||||
[8052] = true,
|
||||
[8053] = true,
|
||||
[8054] = true,
|
||||
[8055] = true,
|
||||
[8058] = true,
|
||||
[8059] = true,
|
||||
[8060] = true,
|
||||
[8061] = true,
|
||||
[8062] = true,
|
||||
[8063] = true,
|
||||
[8066] = true,
|
||||
[8067] = true,
|
||||
[8068] = true,
|
||||
[8069] = true,
|
||||
[8070] = true,
|
||||
[8071] = true,
|
||||
[8072] = true,
|
||||
[8073] = true,
|
||||
[8076] = true,
|
||||
[8077] = true,
|
||||
[8078] = true,
|
||||
[8079] = true,
|
||||
[8101] = true,
|
||||
[8102] = true,
|
||||
[8103] = true,
|
||||
[8104] = true,
|
||||
[8106] = true,
|
||||
[8107] = true,
|
||||
[8108] = true,
|
||||
[8109] = true,
|
||||
[8141] = true,
|
||||
[8142] = true,
|
||||
[8143] = true,
|
||||
[8144] = true,
|
||||
[8145] = true,
|
||||
[8146] = true,
|
||||
[8147] = true,
|
||||
[8148] = true,
|
||||
[8184] = true,
|
||||
[8185] = true,
|
||||
[8186] = true,
|
||||
[8187] = true,
|
||||
[8188] = true,
|
||||
[8189] = true,
|
||||
[8190] = true,
|
||||
[8191] = true,
|
||||
[8192] = true,
|
||||
[8195] = true,
|
||||
[8196] = true,
|
||||
[8201] = true,
|
||||
[8227] = true,
|
||||
[8238] = true,
|
||||
[8239] = true,
|
||||
[8240] = true,
|
||||
[8243] = true,
|
||||
[8246] = true,
|
||||
[8446] = true,
|
||||
[8447] = true,
|
||||
[9208] = true,
|
||||
[9209] = true,
|
||||
[9210] = true,
|
||||
[8307] = true,
|
||||
[8313] = true,
|
||||
[8317] = true,
|
||||
[8282] = true,
|
||||
[8278] = true,
|
||||
[8323] = true,
|
||||
[8324] = true,
|
||||
[8275] = true,
|
||||
[8276] = true,
|
||||
[8309] = true,
|
||||
[8310] = true,
|
||||
[8315] = true,
|
||||
[8319] = true,
|
||||
[8341] = true,
|
||||
[8342] = true,
|
||||
[8343] = true,
|
||||
[8331] = true,
|
||||
[8332] = true,
|
||||
[8333] = true,
|
||||
[8306] = true,
|
||||
[8321] = true,
|
||||
[8362] = true,
|
||||
[8364] = true,
|
||||
[9248] = true,
|
||||
[8281] = true,
|
||||
[8285] = true,
|
||||
[8279] = true,
|
||||
[8287] = true,
|
||||
[8314] = true,
|
||||
},
|
||||
[5] = { -- Phase 5 - AQ
|
||||
[8277] = true,
|
||||
[8280] = true,
|
||||
[8283] = true,
|
||||
[8284] = true,
|
||||
[8304] = true,
|
||||
[8318] = true,
|
||||
[8320] = true,
|
||||
[8361] = true,
|
||||
[8747] = true,
|
||||
[8748] = true,
|
||||
[8749] = true,
|
||||
[8750] = true,
|
||||
[8752] = true,
|
||||
[8753] = true,
|
||||
[8754] = true,
|
||||
[8755] = true,
|
||||
[8757] = true,
|
||||
[8758] = true,
|
||||
[8759] = true,
|
||||
[8760] = true,
|
||||
[8800] = true,
|
||||
[8751] = true,
|
||||
[8756] = true,
|
||||
[8761] = true,
|
||||
[8801] = true,
|
||||
[8802] = true,
|
||||
[8764] = true,
|
||||
[8765] = true,
|
||||
[8766] = true,
|
||||
[8620] = true,
|
||||
[8621] = true,
|
||||
[8622] = true,
|
||||
[8623] = true,
|
||||
[8624] = true,
|
||||
[8625] = true,
|
||||
[8626] = true,
|
||||
[8627] = true,
|
||||
[8628] = true,
|
||||
[8629] = true,
|
||||
[8630] = true,
|
||||
[8631] = true,
|
||||
[8632] = true,
|
||||
[8633] = true,
|
||||
[8634] = true,
|
||||
[8637] = true,
|
||||
[8638] = true,
|
||||
[8639] = true,
|
||||
[8640] = true,
|
||||
[8641] = true,
|
||||
[8655] = true,
|
||||
[8656] = true,
|
||||
[8657] = true,
|
||||
[8658] = true,
|
||||
[8659] = true,
|
||||
[8660] = true,
|
||||
[8661] = true,
|
||||
[8662] = true,
|
||||
[8663] = true,
|
||||
[8664] = true,
|
||||
[8665] = true,
|
||||
[8666] = true,
|
||||
[8667] = true,
|
||||
[8668] = true,
|
||||
[8669] = true,
|
||||
[8689] = true,
|
||||
[8690] = true,
|
||||
[8691] = true,
|
||||
[8692] = true,
|
||||
[8693] = true,
|
||||
[8694] = true,
|
||||
[8695] = true,
|
||||
[8696] = true,
|
||||
[8697] = true,
|
||||
[8698] = true,
|
||||
[8699] = true,
|
||||
[8700] = true,
|
||||
[8701] = true,
|
||||
[8702] = true,
|
||||
[8703] = true,
|
||||
[8704] = true,
|
||||
[8705] = true,
|
||||
[8706] = true,
|
||||
[8707] = true,
|
||||
[8708] = true,
|
||||
[8709] = true,
|
||||
[8710] = true,
|
||||
[8711] = true,
|
||||
[8712] = true,
|
||||
[8728] = true,
|
||||
[8729] = true,
|
||||
[8730] = true,
|
||||
[8733] = true,
|
||||
[8734] = true,
|
||||
[8735] = true,
|
||||
[8736] = true,
|
||||
[8741] = true,
|
||||
[8742] = true,
|
||||
[8743] = true,
|
||||
[8745] = true,
|
||||
[8783] = true,
|
||||
[8784] = true,
|
||||
[8789] = true,
|
||||
[8790] = true,
|
||||
[8791] = true,
|
||||
[8602] = true,
|
||||
[8603] = true,
|
||||
[8606] = true,
|
||||
[8592] = true,
|
||||
[8593] = true,
|
||||
[8594] = true,
|
||||
[8595] = true,
|
||||
[8596] = true,
|
||||
[8597] = true,
|
||||
[8598] = true,
|
||||
[8599] = true,
|
||||
[8584] = true,
|
||||
[8585] = true,
|
||||
[8586] = true,
|
||||
[8587] = true,
|
||||
[8555] = true,
|
||||
[8556] = true,
|
||||
[8557] = true,
|
||||
[8558] = true,
|
||||
[8559] = true,
|
||||
[8560] = true,
|
||||
[8561] = true,
|
||||
[8562] = true,
|
||||
[8572] = true,
|
||||
[8573] = true,
|
||||
[8574] = true,
|
||||
[8575] = true,
|
||||
[8576] = true,
|
||||
[8577] = true,
|
||||
[8578] = true,
|
||||
[8496] = true,
|
||||
[8579] = true,
|
||||
[8544] = true,
|
||||
[8519] = true,
|
||||
[8856] = true,
|
||||
[8829] = true,
|
||||
[8497] = true,
|
||||
[8804] = true,
|
||||
[8805] = true,
|
||||
[8536] = true,
|
||||
[8857] = true,
|
||||
[8498] = true,
|
||||
[8806] = true,
|
||||
[8308] = true,
|
||||
[8858] = true,
|
||||
[8859] = true,
|
||||
[8807] = true,
|
||||
[8771] = true,
|
||||
[8773] = true,
|
||||
[8775] = true,
|
||||
[8777] = true,
|
||||
[8809] = true,
|
||||
[8787] = true,
|
||||
[8785] = true,
|
||||
[8538] = true,
|
||||
[8534] = true,
|
||||
[8738] = true,
|
||||
[8502] = true,
|
||||
[8537] = true,
|
||||
[8539] = true,
|
||||
[8786] = true,
|
||||
[8737] = true,
|
||||
[8687] = true,
|
||||
[8739] = true,
|
||||
[8501] = true,
|
||||
[8535] = true,
|
||||
[8808] = true,
|
||||
[8810] = true,
|
||||
[8740] = true,
|
||||
[8381] = true,
|
||||
[8779] = true,
|
||||
[8540] = true,
|
||||
[8541] = true,
|
||||
[8778] = true,
|
||||
[8780] = true,
|
||||
[8781] = true,
|
||||
[8782] = true,
|
||||
[8770] = true,
|
||||
[8772] = true,
|
||||
[8774] = true,
|
||||
[8776] = true,
|
||||
[8316] = true,
|
||||
[9023] = true,
|
||||
[8382] = true,
|
||||
[8286] = true,
|
||||
[8288] = true,
|
||||
[8301] = true,
|
||||
[8302] = true,
|
||||
[8303] = true,
|
||||
[8305] = true,
|
||||
[8548] = true,
|
||||
[8818] = true,
|
||||
[8817] = true,
|
||||
[8816] = true,
|
||||
[8815] = true,
|
||||
[8814] = true,
|
||||
[8820] = true,
|
||||
[8826] = true,
|
||||
[8825] = true,
|
||||
[8824] = true,
|
||||
[8823] = true,
|
||||
[8822] = true,
|
||||
[8821] = true,
|
||||
[8819] = true,
|
||||
},
|
||||
[6] = { --Phase 6 - Naxxramas
|
||||
[9085] = true,
|
||||
[9142] = true,
|
||||
[9165] = true,
|
||||
[9141] = true,
|
||||
[9033] = true,
|
||||
[9034] = true,
|
||||
[9036] = true,
|
||||
[9037] = true,
|
||||
[9038] = true,
|
||||
[9039] = true,
|
||||
[9040] = true,
|
||||
[9041] = true,
|
||||
[9042] = true,
|
||||
[9043] = true,
|
||||
[9044] = true,
|
||||
[9045] = true,
|
||||
[9046] = true,
|
||||
[9047] = true,
|
||||
[9048] = true,
|
||||
[9049] = true,
|
||||
[9050] = true,
|
||||
[9054] = true,
|
||||
[9055] = true,
|
||||
[9056] = true,
|
||||
[9057] = true,
|
||||
[9058] = true,
|
||||
[9059] = true,
|
||||
[9060] = true,
|
||||
[9061] = true,
|
||||
[9068] = true,
|
||||
[9069] = true,
|
||||
[9070] = true,
|
||||
[9071] = true,
|
||||
[9072] = true,
|
||||
[9073] = true,
|
||||
[9074] = true,
|
||||
[9075] = true,
|
||||
[9077] = true,
|
||||
[9078] = true,
|
||||
[9079] = true,
|
||||
[9080] = true,
|
||||
[9081] = true,
|
||||
[9082] = true,
|
||||
[9083] = true,
|
||||
[9084] = true,
|
||||
[9086] = true,
|
||||
[9087] = true,
|
||||
[9088] = true,
|
||||
[9089] = true,
|
||||
[9090] = true,
|
||||
[9091] = true,
|
||||
[9092] = true,
|
||||
[9093] = true,
|
||||
[9095] = true,
|
||||
[9096] = true,
|
||||
[9097] = true,
|
||||
[9098] = true,
|
||||
[9099] = true,
|
||||
[9100] = true,
|
||||
[9101] = true,
|
||||
[9102] = true,
|
||||
[9103] = true,
|
||||
[9104] = true,
|
||||
[9105] = true,
|
||||
[9106] = true,
|
||||
[9107] = true,
|
||||
[9108] = true,
|
||||
[9109] = true,
|
||||
[9110] = true,
|
||||
[9111] = true,
|
||||
[9112] = true,
|
||||
[9113] = true,
|
||||
[9114] = true,
|
||||
[9115] = true,
|
||||
[9116] = true,
|
||||
[9117] = true,
|
||||
[9118] = true,
|
||||
[9120] = true,
|
||||
[9121] = true,
|
||||
[9122] = true,
|
||||
[9123] = true,
|
||||
[9124] = true,
|
||||
[9125] = true,
|
||||
[9126] = true,
|
||||
[9127] = true,
|
||||
[9128] = true,
|
||||
[9129] = true,
|
||||
[9131] = true,
|
||||
[9132] = true,
|
||||
[9136] = true,
|
||||
[9137] = true,
|
||||
[9153] = true,
|
||||
[9211] = true,
|
||||
[9213] = true,
|
||||
[9221] = true,
|
||||
[9222] = true,
|
||||
[9223] = true,
|
||||
[9224] = true,
|
||||
[9225] = true,
|
||||
[9226] = true,
|
||||
[9227] = true,
|
||||
[9228] = true,
|
||||
[9229] = true,
|
||||
[9230] = true,
|
||||
[9232] = true,
|
||||
[9233] = true,
|
||||
[9234] = true,
|
||||
[9235] = true,
|
||||
[9236] = true,
|
||||
[9237] = true,
|
||||
[9238] = true,
|
||||
[9239] = true,
|
||||
[9240] = true,
|
||||
[9241] = true,
|
||||
[9242] = true,
|
||||
[9243] = true,
|
||||
[9244] = true,
|
||||
[9245] = true,
|
||||
[9246] = true,
|
||||
[9250] = true,
|
||||
[9251] = true,
|
||||
-- Silithus/EPL PvP
|
||||
[9248] = true,
|
||||
[9422] = true,
|
||||
[9415] = true,
|
||||
[9419] = true,
|
||||
[9416] = true,
|
||||
},
|
||||
}
|
||||
|
||||
---@param questsToBlacklist table<QuestId, boolean>
|
||||
---@param contentPhase number
|
||||
---@return table<QuestId, boolean>
|
||||
function ContentPhases.BlacklistSoMQuestsByPhase(questsToBlacklist, contentPhase)
|
||||
for phase = contentPhase + 1, #questsToBlacklistByPhase do
|
||||
for questId in pairs(questsToBlacklistByPhase[phase]) do
|
||||
questsToBlacklist[questId] = true
|
||||
end
|
||||
end
|
||||
|
||||
return questsToBlacklist
|
||||
end
|
||||
@@ -1,211 +0,0 @@
|
||||
---@class HardcoreBlacklist
|
||||
local HardcoreBlacklist = QuestieLoader:CreateModule("HardcoreBlacklist")
|
||||
|
||||
|
||||
---@return table<QuestId, boolean>
|
||||
function HardcoreBlacklist:Load()
|
||||
return {
|
||||
[5892] = true, -- Irondeep Supplies
|
||||
[5893] = true, -- Coldtooth Supplies
|
||||
[6741] = true, -- More Booty!
|
||||
[6781] = true, -- More Armor Scraps
|
||||
[6801] = true, -- Lokholar the Ice Lord
|
||||
[6825] = true, -- Call of Air - Guse's Fleet
|
||||
[6826] = true, -- Call of Air - Jeztor's Fleet
|
||||
[6827] = true, -- Call of Air - Mulverick's Fleet
|
||||
[6846] = true, -- Begin the Attack!
|
||||
[6847] = true, -- Master Ryson's All Seeing Eye
|
||||
[6848] = true, -- Master Ryson's All Seeing Eye
|
||||
[6861] = true, -- Zinfizzlex's Portable Shredder Unit
|
||||
[6862] = true, -- Zinfizzlex's Portable Shredder Unit
|
||||
[6881] = true, -- Ivus the Forest Lord
|
||||
[6901] = true, -- Launch the Attack!
|
||||
[6941] = true, -- Call of Air - Vipore's Fleet
|
||||
[6942] = true, -- Call of Air - Slidore's Fleet
|
||||
[6943] = true, -- Call of Air - Ichman's Fleet
|
||||
[6982] = true, -- Coldtooth Supplies
|
||||
[6985] = true, -- Irondeep Supplies
|
||||
[7001] = true, -- Empty Stables
|
||||
[7002] = true, -- Ram Hide Harnesses
|
||||
[7026] = true, -- Ram Riding Harnesses
|
||||
[7027] = true, -- Empty Stables
|
||||
[7081] = true, -- Alterac Valley Graveyards
|
||||
[7082] = true, -- The Graveyards of Alterac
|
||||
[7101] = true, -- Towers and Bunkers
|
||||
[7102] = true, -- Towers and Bunkers
|
||||
[7121] = true, -- The Quartermaster
|
||||
[7122] = true, -- Capture a Mine
|
||||
[7123] = true, -- Speak with our Quartermaster
|
||||
[7124] = true, -- Capture a Mine
|
||||
[7141] = true, -- The Battle of Alterac
|
||||
[7142] = true, -- The Battle for Alterac
|
||||
[7161] = true, -- Proving Grounds
|
||||
[7162] = true, -- Proving Grounds
|
||||
[7163] = true, -- Rise and Be Recognized
|
||||
[7164] = true, -- Honored Amongst the Clan
|
||||
[7165] = true, -- Earned Reverence
|
||||
[7166] = true, -- Legendary Heroes
|
||||
[7167] = true, -- The Eye of Command
|
||||
[7168] = true, -- Rise and Be Recognized
|
||||
[7169] = true, -- Honored Amongst the Guard
|
||||
[7170] = true, -- Earned Reverence
|
||||
[7171] = true, -- Legendary Heroes
|
||||
[7172] = true, -- The Eye of Command
|
||||
[7181] = true, -- The Legend of Korrak
|
||||
[7202] = true, -- Korrak the Bloodrager
|
||||
[7221] = true, -- Speak with Prospector Stonehewer
|
||||
[7222] = true, -- Speak with Voggah Deathgrip
|
||||
[7223] = true, -- Armor Scraps
|
||||
[7224] = true, -- Enemy Booty
|
||||
[7241] = true, -- In Defense of Frostwolf
|
||||
[7261] = true, -- The Sovereign Imperative
|
||||
[7281] = true, -- Brotherly Love
|
||||
[7282] = true, -- Brotherly Love
|
||||
[7301] = true, -- Fallen Sky Lords
|
||||
[7302] = true, -- Fallen Sky Lords
|
||||
[7361] = true, -- Favor Amongst the Darkspear
|
||||
[7362] = true, -- Ally of the Tauren
|
||||
[7363] = true, -- The Human Condition
|
||||
[7364] = true, -- Gnomeregan Bounty
|
||||
[7365] = true, -- Staghelm's Requiem
|
||||
[7366] = true, -- The Archbishop's Mercy
|
||||
[7367] = true, -- Defusing the Threat
|
||||
[7368] = true, -- Defusing the Threat
|
||||
[7381] = true, -- The Return of Korrak
|
||||
[7382] = true, -- Korrak the Everliving
|
||||
[7385] = true, -- A Gallon of Blood
|
||||
[7386] = true, -- Crystal Cluster
|
||||
[7401] = true, -- WANTED: Dwarves!
|
||||
[7402] = true, -- WANTED: Orcs!
|
||||
[7421] = true, -- Darkspear Defense
|
||||
[7422] = true, -- Tuft it Out
|
||||
[7423] = true, -- I've Got A Fever For More Bone Chips
|
||||
[7424] = true, -- What the Hoof?
|
||||
[7425] = true, -- Staghelm's Mojo Jamboree
|
||||
[7426] = true, -- One Man's Love
|
||||
[7427] = true, -- Wanted: MORE DWARVES!
|
||||
[7428] = true, -- Wanted: MORE ORCS!
|
||||
[7788] = true, -- Vanquish the Invaders!
|
||||
[7789] = true, -- Quell the Silverwing Usurpers
|
||||
[7871] = true, -- Vanquish the Invaders!
|
||||
[7872] = true, -- Vanquish the Invaders!
|
||||
[7873] = true, -- Vanquish the Invaders!
|
||||
[7874] = true, -- Quell the Silverwing Usurpers
|
||||
[7875] = true, -- Quell the Silverwing Usurpers
|
||||
[7876] = true, -- Quell the Silverwing Usurpers
|
||||
[7886] = true, -- Talismans of Merit
|
||||
[7887] = true, -- Talismans of Merit
|
||||
[7888] = true, -- Talismans of Merit
|
||||
[7921] = true, -- Talismans of Merit
|
||||
[7922] = true, -- Mark of Honor
|
||||
[7923] = true, -- Mark of Honor
|
||||
[7924] = true, -- Mark of Honor
|
||||
[7925] = true, -- Mark of Honor
|
||||
[8001] = true, -- Warsong Outriders <NYI> <TXT>
|
||||
[8002] = true, -- Silverwing Sentinels <NYI> <TXT>
|
||||
[8080] = true, -- Arathi Basin Resources!
|
||||
[8081] = true, -- More Resource Crates
|
||||
[8105] = true, -- The Battle for Arathi Basin!
|
||||
[8114] = true, -- Control Four Bases
|
||||
[8115] = true, -- Control Five Bases
|
||||
[8120] = true, -- The Battle for Arathi Basin!
|
||||
[8121] = true, -- Take Four Bases
|
||||
[8122] = true, -- Take Five Bases
|
||||
[8123] = true, -- Cut Arathor Supply Lines
|
||||
[8124] = true, -- More Resource Crates
|
||||
[8154] = true, -- Arathi Basin Resources!
|
||||
[8155] = true, -- Arathi Basin Resources!
|
||||
[8156] = true, -- Arathi Basin Resources!
|
||||
[8157] = true, -- More Resource Crates
|
||||
[8158] = true, -- More Resource Crates
|
||||
[8159] = true, -- More Resource Crates
|
||||
[8160] = true, -- Cut Arathor Supply Lines
|
||||
[8161] = true, -- Cut Arathor Supply Lines
|
||||
[8162] = true, -- Cut Arathor Supply Lines
|
||||
[8163] = true, -- More Resource Crates
|
||||
[8164] = true, -- More Resource Crates
|
||||
[8165] = true, -- More Resource Crates
|
||||
[8166] = true, -- The Battle for Arathi Basin!
|
||||
[8167] = true, -- The Battle for Arathi Basin!
|
||||
[8168] = true, -- The Battle for Arathi Basin!
|
||||
[8169] = true, -- The Battle for Arathi Basin!
|
||||
[8170] = true, -- The Battle for Arathi Basin!
|
||||
[8171] = true, -- The Battle for Arathi Basin!
|
||||
[8260] = true, -- Arathor Basic Care Package
|
||||
[8261] = true, -- Arathor Standard Care Package
|
||||
[8262] = true, -- Arathor Advanced Care Package
|
||||
[8263] = true, -- Defiler's Basic Care Package
|
||||
[8264] = true, -- Defiler's Standard Care Package
|
||||
[8265] = true, -- Defiler's Advanced Care Package
|
||||
[8266] = true, -- Ribbons of Sacrifice
|
||||
[8267] = true, -- Ribbons of Sacrifice
|
||||
[8268] = true, -- Ribbons of Sacrifice
|
||||
[8269] = true, -- Ribbons of Sacrifice
|
||||
[8271] = true, -- Hero of the Stormpike
|
||||
[8272] = true, -- Hero of the Frostwolf
|
||||
[8289] = true, -- Talismans of Merit
|
||||
[8290] = true, -- Vanquish the Invaders
|
||||
[8291] = true, -- Vanquish the Invaders!
|
||||
[8292] = true, -- Talismans of Merit
|
||||
[8293] = true, -- Mark of Honor
|
||||
[8294] = true, -- Quell the Silverwing Usurpers
|
||||
[8295] = true, -- Quell the Silverwing Usurpers
|
||||
[8296] = true, -- Mark of Honor
|
||||
[8297] = true, -- Arathi Basin Resources!
|
||||
[8298] = true, -- More Resource Crates
|
||||
[8299] = true, -- Cut Arathor Supply Lines
|
||||
[8300] = true, -- More Resource Crates
|
||||
[8368] = true, -- Battle of Warsong Gulch
|
||||
[8367] = true, -- For Great Honor
|
||||
[8369] = true, -- Invaders of Alterac Valley
|
||||
[8370] = true, -- Conquering Arathi Basin
|
||||
[8371] = true, -- Concerted Efforts
|
||||
[8372] = true, -- Fight for Warsong Gulch
|
||||
[8374] = true, -- Claiming Arathi Basin
|
||||
[8375] = true, -- Remember Alterac Valley
|
||||
[8383] = true, -- Remember Alterac Valley
|
||||
[8384] = true, -- Claiming Arathi Basin
|
||||
[8385] = true, -- Concerted Efforts
|
||||
[8386] = true, -- Fight for Warsong Gulch
|
||||
[8387] = true, -- Invaders of Alterac Valley
|
||||
[8388] = true, -- For Great Honor
|
||||
[8389] = true, -- Battle of Warsong Gulch
|
||||
[8390] = true, -- Conquering Arathi Basin
|
||||
[8391] = true, -- Claiming Arathi Basin
|
||||
[8392] = true, -- Claiming Arathi Basin
|
||||
[8393] = true, -- Claiming Arathi Basin
|
||||
[8394] = true, -- Claiming Arathi Basin
|
||||
[8395] = true, -- Claiming Arathi Basin
|
||||
[8396] = true, -- Claiming Arathi Basin
|
||||
[8397] = true, -- Claiming Arathi Basin
|
||||
[8398] = true, -- Claiming Arathi Basin
|
||||
[8399] = true, -- Fight for Warsong Gulch
|
||||
[8400] = true, -- Fight for Warsong Gulch
|
||||
[8401] = true, -- Fight for Warsong Gulch
|
||||
[8402] = true, -- Fight for Warsong Gulch
|
||||
[8403] = true, -- Fight for Warsong Gulch
|
||||
[8404] = true, -- Fight for Warsong Gulch
|
||||
[8405] = true, -- Fight for Warsong Gulch
|
||||
[8406] = true, -- Fight for Warsong Gulch
|
||||
[8407] = true, -- Fight for Warsong Gulch
|
||||
[8408] = true, -- Fight for Warsong Gulch
|
||||
[8426] = true, -- Battle of Warsong Gulch
|
||||
[8427] = true, -- Battle of Warsong Gulch
|
||||
[8428] = true, -- Battle of Warsong Gulch
|
||||
[8429] = true, -- Battle of Warsong Gulch
|
||||
[8430] = true, -- Battle of Warsong Gulch
|
||||
[8431] = true, -- Battle of Warsong Gulch
|
||||
[8432] = true, -- Battle of Warsong Gulch
|
||||
[8433] = true, -- Battle of Warsong Gulch
|
||||
[8434] = true, -- Battle of Warsong Gulch
|
||||
[8435] = true, -- Battle of Warsong Gulch
|
||||
[8436] = true, -- Conquering Arathi Basin
|
||||
[8437] = true, -- Conquering Arathi Basin
|
||||
[8438] = true, -- Conquering Arathi Basin
|
||||
[8439] = true, -- Conquering Arathi Basin
|
||||
[8440] = true, -- Conquering Arathi Basin
|
||||
[8441] = true, -- Conquering Arathi Basin
|
||||
[8442] = true, -- Conquering Arathi Basin
|
||||
[8443] = true, -- Conquering Arathi Basin
|
||||
}
|
||||
end
|
||||
@@ -1,676 +0,0 @@
|
||||
--[[
|
||||
Feast of Winter Veil 1.2.0 18 December 2004
|
||||
Noblegarden 1.3.0 7 March 2005 X
|
||||
Children's Week 1.4.0 5 May 2005
|
||||
Darkmoon Faire 1.6.0 2 July 2005
|
||||
Harvest Festival 1.6.0 2 July 2005 X
|
||||
Hallow's End 1.8.0 10 October 2005
|
||||
Lunar Festival 1.9.0 3 January 2006 X
|
||||
Love is in the Air 1.9.3 7 February 2006
|
||||
Midsummer Fire Festival 1.11.0 20 June 2006
|
||||
Peon Day 1.12.1 22 August 2006 X
|
||||
|
||||
New Year 31st Dec - 1st Jan New Year's Eve Gregorian calendar
|
||||
Lunar Festival Varies (Spring) Lunar New Year Chinese calendar
|
||||
Love is in the Air 7th Feb - 20th Feb Valentine's Day
|
||||
Noblegarden Varies (Easter) Easter
|
||||
Children's Week 1st May - 7th May Children's Day - Japan
|
||||
Mother's Day - US (and in most other countries, including: Belgium and the Netherlands)
|
||||
Midsummer Fire Festival 21st June - 5th July Midsummer
|
||||
Canada Day - CAN
|
||||
Independence Day - US US observed! Fire in the Sky Engineers' Explosive Extravaganza
|
||||
Pirates' Day 19th Sept International Talk Like a Pirate Day First observed Sept 19th, 2008.
|
||||
Brewfest 20th Sept - 4th Oct Oktoberfest - Germany
|
||||
Harvest Festival 27th Sept - 4th Oct Roughly Thanksgiving - Canada, US (actually celebrated in October and November in Canada and US, respectively)
|
||||
Columbus Day - US
|
||||
US Stress Test ended: September 12, 2004
|
||||
Peon Day 30th Sept EU Closed Beta began: September 30, 2004 Observed only in Europe[1]
|
||||
Hallow's End 18th Oct - 1st Nov Halloween
|
||||
Day of the Dead 1st Nov - 2nd Nov Day of the Dead
|
||||
WoW's Anniversary 16th Nov - 30th Nov
|
||||
Pilgrim's Bounty 22nd Nov - 28th Nov Thanksgiving
|
||||
Feast of Winter Veil 15th Dec - 2nd Jan Christmas
|
||||
|
||||
Harvest Festival history: lunar calendar 15/8 in gregorian calendar:
|
||||
2009: Su-Sa 27/9 - 3/10 (wowpedia) 3/10
|
||||
2010: Th-We 16/9 - 22/9 (wowpedia) 22/9
|
||||
2011: Tu-Mo 6/9 - 12/9 (wowpedia) 12/9
|
||||
2012: Mo-Mo 24/9 - 1/10 (wowpedia) 30/9
|
||||
2013: Fr-Fr 13/9 - 20/9 (wowpedia) 19/9
|
||||
2014: Tu-Tu 2/9 - 9/9 (Blizz post) 8/9
|
||||
2015: Mo-Mo 21/9 - 28/9 (wowpedia) 27/9
|
||||
2016: Fr-Fr 9/9 - 16/9 (Blizz post) 15/9
|
||||
2017: Fr-Fr 29/9 - 6/10 (wowpedia) 4/10
|
||||
2018: Tu-Tu 18/9 - 25/9 (wowpedia) 24/9
|
||||
2019: Tu-Tu 10/9 - 17/9 (classic Blizz post) 13/9
|
||||
2020: Tu-Tu 29/9 - 6/10 (retail Blizz post) 1/10
|
||||
2021: Fr-Fr 17/9 - 24/9 (retail Blizz post) 21/9
|
||||
]] --
|
||||
|
||||
---@class QuestieEvent
|
||||
---@field public private QuestieEventPrivate
|
||||
local QuestieEvent = QuestieLoader:CreateModule("QuestieEvent")
|
||||
---@class QuestieEventPrivate
|
||||
local _QuestieEvent = QuestieEvent.private
|
||||
|
||||
---[1] = Event Name
|
||||
---[2] = QuestId
|
||||
---[3] = Start Date (format: "DD/MM")
|
||||
---[4] = End Date (format: "DD/MM")
|
||||
---[5] = Start Hour and Minute (format: "HH:MM")
|
||||
---[6] = End Hour and Minute (format: "HH:MM")
|
||||
---[7] = Hide Quest even during event (optional, default: false)
|
||||
---@alias EventQuestEntry {[1]: string, [2]: QuestId, [3]: string?, [4]: string?, [5]: string?, [6]: string?, [7]: boolean?}
|
||||
|
||||
-- This variable will be cleared at the end of the load, do not use, use QuestieEvent.activeQuests.
|
||||
---@type EventQuestEntry[]
|
||||
QuestieEvent.eventQuests = {}
|
||||
|
||||
---@type table<QuestId, boolean>
|
||||
QuestieEvent.activeQuests = {}
|
||||
QuestieEvent.calendarDataCached = false
|
||||
|
||||
---@type table<QuestId, string>
|
||||
local eventNamesForQuests = {}
|
||||
|
||||
local alwaysTurnInAbleQuests = {
|
||||
[7937] = true, -- Your Fortune Awaits You...
|
||||
[7938] = true, -- Your Fortune Awaits You...
|
||||
[7944] = true, -- Your Fortune Awaits You...
|
||||
[7945] = true, -- Your Fortune Awaits You...
|
||||
}
|
||||
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
---@type QuestieCorrections
|
||||
local QuestieCorrections = QuestieLoader:ImportModule("QuestieCorrections")
|
||||
---@type ContentPhases
|
||||
local ContentPhases = QuestieLoader:ImportModule("ContentPhases")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
---@type QuestieNPCFixes
|
||||
local QuestieNPCFixes = QuestieLoader:ImportModule("QuestieNPCFixes")
|
||||
---@type QuestieTBCNpcFixes
|
||||
local QuestieTBCNpcFixes = QuestieLoader:ImportModule("QuestieTBCNpcFixes")
|
||||
---@type l10n
|
||||
local l10n = QuestieLoader:ImportModule("l10n")
|
||||
|
||||
local _WithinDates, _LoadDarkmoonFaire, _GetDarkmoonFaireLocation, _GetDarkmoonFaireLocationEra, _GetDarkmoonFaireLocationSoD, _GetDarkmoonFaireLocationTBC, _IsDarkmoonFaireWeek, _GetLunarFestivalDates
|
||||
|
||||
---@enum DMFLocation
|
||||
local DMF_LOCATIONS = {
|
||||
NONE = 0,
|
||||
MULGORE = 1,
|
||||
ELWYNN_FOREST = 2,
|
||||
TEROKKAR_FOREST = 3,
|
||||
}
|
||||
|
||||
local DMF_LOCATION_NAMES = {
|
||||
[1] = "Mulgore",
|
||||
[2] = "Elwynn Forest",
|
||||
[3] = "Terokkar Forest",
|
||||
}
|
||||
|
||||
-- The ingame calender adds a texture to the DMF event.
|
||||
-- We use this to identify the event without relying on dates or localized event titles.
|
||||
local DMF_CALENDAR_ICON_TEXTURES = {
|
||||
[235446] = true, -- End Texture
|
||||
[235447] = true, -- Ongoing Texture
|
||||
[235448] = true, -- Start Texture
|
||||
}
|
||||
|
||||
-- Determine the DMF start day for the month based on what weekday the 1st is.
|
||||
-- We also require the Monday start to have reached 03:00 server time before considering the event active.
|
||||
local DMF_START_DAY_BY_FIRST_WEEKDAY = {
|
||||
[1] = 9, -- 1st is a Sunday -> Monday is 9th
|
||||
[2] = 8, -- 1st is a Monday -> Monday is 8th
|
||||
[3] = 7, -- 1st is a Tuesday -> Monday is 7th
|
||||
[4] = 6, -- 1st is a Wednesday -> Monday is 6th
|
||||
[5] = 5, -- 1st is a Thursday -> Monday is 5th
|
||||
[6] = 4, -- 1st is a Friday -> Monday is 4th
|
||||
[7] = 10, -- 1st is a Saturday -> Monday is 10th
|
||||
}
|
||||
|
||||
function QuestieEvent.Initialize()
|
||||
Questie:RegisterEvent("CALENDAR_UPDATE_EVENT_LIST", function()
|
||||
QuestieEvent:Load()
|
||||
Questie:UnregisterEvent("CALENDAR_UPDATE_EVENT_LIST")
|
||||
end)
|
||||
|
||||
-- According to the docs, OpenCalendar queries the server to force a CALENDAR_UPDATE_EVENT_LIST update.
|
||||
-- In reality SetMonth is the reliable one. So we simply call both.
|
||||
C_Calendar.OpenCalendar()
|
||||
C_Calendar.SetMonth(0)
|
||||
end
|
||||
|
||||
function QuestieEvent:Load()
|
||||
local year = date("%y")
|
||||
local lunarData = _GetLunarFestivalDates(year)
|
||||
|
||||
if lunarData then
|
||||
QuestieEvent.eventDates["Lunar Festival"] = lunarData
|
||||
end
|
||||
|
||||
local activeEvents = {}
|
||||
|
||||
local eventCorrections
|
||||
if Expansions.Current == Expansions.Tbc then
|
||||
eventCorrections = QuestieEvent.eventDateCorrections["TBC"]
|
||||
elseif Expansions.Current == Expansions.Era then
|
||||
eventCorrections = QuestieEvent.eventDateCorrections["CLASSIC"]
|
||||
else
|
||||
eventCorrections = {}
|
||||
end
|
||||
|
||||
for eventName, dates in pairs(eventCorrections) do
|
||||
if dates then
|
||||
QuestieEvent.eventDates[eventName] = dates
|
||||
end
|
||||
end
|
||||
|
||||
for eventName, eventData in pairs(QuestieEvent.eventDates) do
|
||||
local startDay, startMonth = strsplit("/", eventData.startDate)
|
||||
local endDay, endMonth = strsplit("/", eventData.endDate)
|
||||
local startHour, startMinute, endHour, endMinute
|
||||
|
||||
startDay = tonumber(startDay)
|
||||
startMonth = tonumber(startMonth)
|
||||
startHour = eventData.startHour
|
||||
startMinute = eventData.startMinute
|
||||
endDay = tonumber(endDay)
|
||||
endMonth = tonumber(endMonth)
|
||||
endHour = eventData.endHour
|
||||
endMinute = eventData.endMinute
|
||||
|
||||
if _WithinDates(startDay, startMonth, startHour, startMinute, endDay, endMonth, endHour, endMinute) and (eventCorrections[eventName] ~= false) then
|
||||
if Questie.db.profile.showEventQuests then
|
||||
print(Questie:Colorize("[Questie]"), "|cFF6ce314" .. l10n("The '%s' world event is active!", l10n(eventName)))
|
||||
end
|
||||
activeEvents[eventName] = true
|
||||
end
|
||||
end
|
||||
|
||||
-- Store the current setting to restore later
|
||||
local shouldShowDmfEvents = GetCVarBool("calendarShowDarkmoon")
|
||||
SetCVar("calendarShowDarkmoon", "1")
|
||||
|
||||
local dmfIsActive = false
|
||||
if Expansions.Current >= Expansions.MoP then
|
||||
local currentDate = QuestieCompat.GetCurrentCalendarTime()
|
||||
local numDayEvents = C_Calendar.GetNumDayEvents(0, currentDate.monthDay)
|
||||
|
||||
for i = 1, numDayEvents do
|
||||
local event = C_Calendar.GetHolidayInfo(0, currentDate.monthDay, i)
|
||||
if event and DMF_CALENDAR_ICON_TEXTURES[event.texture] then
|
||||
dmfIsActive = true
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
for _, questData in pairs(QuestieEvent.eventQuests) do
|
||||
local eventName = questData[1]
|
||||
local questId = questData[2]
|
||||
local hideQuest = questData[7]
|
||||
local startDay, startMonth = nil, nil
|
||||
local endDay, endMonth = nil, nil
|
||||
local startHour, startMinute = nil, nil
|
||||
local endHour, endMinute = nil, nil
|
||||
|
||||
if questData[3] and questData[4] then
|
||||
startDay, startMonth = strsplit("/", questData[3])
|
||||
endDay, endMonth = strsplit("/", questData[4])
|
||||
startDay = tonumber(startDay)
|
||||
startMonth = tonumber(startMonth)
|
||||
endDay = tonumber(endDay)
|
||||
endMonth = tonumber(endMonth)
|
||||
end
|
||||
|
||||
if questData[5] and questData[6] then
|
||||
startHour, startMinute = strsplit(":", questData[5])
|
||||
endHour, endMinute = strsplit(":", questData[6])
|
||||
startHour = tonumber(startHour)
|
||||
startMinute = tonumber(startMinute)
|
||||
endHour = tonumber(endHour)
|
||||
endMinute = tonumber(endMinute)
|
||||
end
|
||||
|
||||
if (not hideQuest) then
|
||||
eventNamesForQuests[questId] = eventName
|
||||
|
||||
if (activeEvents[eventName] == true and _WithinDates(startDay, startMonth, startHour, startMinute, endDay, endMonth, endHour, endMinute)) or (dmfIsActive and eventName == "Darkmoon Faire") then
|
||||
QuestieCorrections.hiddenQuests[questId] = nil
|
||||
QuestieEvent.activeQuests[questId] = true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if dmfIsActive then
|
||||
if Questie.db.profile.showEventQuests then
|
||||
print(Questie:Colorize("[Questie]"), "|cFF6ce314" .. l10n("The '%s' world event is active!", l10n("Darkmoon Faire")))
|
||||
end
|
||||
end
|
||||
|
||||
SetCVar("calendarShowDarkmoon", shouldShowDmfEvents and "1" or "0")
|
||||
|
||||
-- TODO: Also handle WotLK which has a different starting schedule
|
||||
if (Questie.IsClassic and (((not Questie.IsAnniversaryEra) and (not Questie.IsAnniversaryHardcore)) or (ContentPhases.activePhases.Anniversary >= 3)))
|
||||
or Questie.IsTBC then
|
||||
_LoadDarkmoonFaire()
|
||||
end
|
||||
|
||||
-- Clear the quests to save memory
|
||||
QuestieEvent.eventQuests = nil
|
||||
end
|
||||
|
||||
---@param year string
|
||||
---@return QuestieEventDateRange|nil
|
||||
_GetLunarFestivalDates = function(year)
|
||||
if Questie.IsTitanReforged and QuestieEvent.lunarFestival.TITAN[year] then
|
||||
return QuestieEvent.lunarFestival.TITAN[year]
|
||||
end
|
||||
|
||||
return QuestieEvent.lunarFestival.DEFAULT[year]
|
||||
end
|
||||
|
||||
---@return DMFLocation
|
||||
_GetDarkmoonFaireLocation = function()
|
||||
if C_Calendar == nil then
|
||||
-- This is a band aid fix for private servers which do not support the `C_Calendar` API.
|
||||
-- They won't see Darkmoon Faire quests, but that's the price to pay.
|
||||
return DMF_LOCATIONS.NONE
|
||||
end
|
||||
|
||||
local currentDate = QuestieCompat.GetCurrentCalendarTime()
|
||||
|
||||
if Questie.IsSoD then
|
||||
return _GetDarkmoonFaireLocationSoD(currentDate)
|
||||
elseif Questie.IsTBC then
|
||||
return _GetDarkmoonFaireLocationTBC(currentDate)
|
||||
else
|
||||
return _GetDarkmoonFaireLocationEra(currentDate)
|
||||
end
|
||||
end
|
||||
|
||||
---@param currentDate CalendarTime
|
||||
---@return DMFLocation
|
||||
_GetDarkmoonFaireLocationEra = function(currentDate)
|
||||
if (not _IsDarkmoonFaireWeek(currentDate)) then
|
||||
return DMF_LOCATIONS.NONE
|
||||
end
|
||||
|
||||
local remainder = currentDate.month % 2
|
||||
if remainder == 1 then
|
||||
return DMF_LOCATIONS.ELWYNN_FOREST
|
||||
end
|
||||
return DMF_LOCATIONS.MULGORE
|
||||
end
|
||||
|
||||
--- DMF in TBC rotates monthly through three locations: Mulgore, Terokkar Forest, and Elwynn Forest.
|
||||
--- The timing follows the same Monday-start, 7-day schedule as Classic Era.
|
||||
---@param currentDate CalendarTime
|
||||
---@return DMFLocation
|
||||
_GetDarkmoonFaireLocationTBC = function(currentDate)
|
||||
if (not _IsDarkmoonFaireWeek(currentDate)) then
|
||||
return DMF_LOCATIONS.NONE
|
||||
end
|
||||
|
||||
local remainder = currentDate.month % 3
|
||||
if remainder == 1 then
|
||||
return DMF_LOCATIONS.MULGORE
|
||||
elseif remainder == 2 then
|
||||
return DMF_LOCATIONS.ELWYNN_FOREST
|
||||
end
|
||||
return DMF_LOCATIONS.TEROKKAR_FOREST
|
||||
end
|
||||
|
||||
---@param currentDate CalendarTime
|
||||
---@return boolean
|
||||
_IsDarkmoonFaireWeek = function(currentDate)
|
||||
local baseInfo = C_Calendar.GetMonthInfo()
|
||||
-- Calculate the offset in months from baseInfo to make C_Calendar.GetMonthInfo return the correct month
|
||||
local monthOffset = (currentDate.year - baseInfo.year) * 12 + (currentDate.month - baseInfo.month)
|
||||
local firstWeekday = C_Calendar.GetMonthInfo(monthOffset).firstWeekday
|
||||
|
||||
local startDay = DMF_START_DAY_BY_FIRST_WEEKDAY[firstWeekday]
|
||||
local endDay = startDay + 7
|
||||
local dayOfMonth = currentDate.monthDay
|
||||
|
||||
-- If we're on the first day (Monday) require hour >= 3
|
||||
if dayOfMonth == startDay and currentDate.hour < 3 then
|
||||
return false
|
||||
end
|
||||
|
||||
-- The event ends at 03:00 on the following Monday
|
||||
if dayOfMonth == endDay and currentDate.hour >= 3 then
|
||||
return false
|
||||
end
|
||||
|
||||
return dayOfMonth >= startDay and dayOfMonth <= endDay
|
||||
end
|
||||
|
||||
-- DMF in SoD is every second week, starting on the 4th of December 2023
|
||||
---@param currentDate CalendarTime
|
||||
---@return DMFLocation
|
||||
_GetDarkmoonFaireLocationSoD = function(currentDate)
|
||||
local initialStartDate = time({year = 2023, month = 12, day = 4, hour = 0, min = 1}) -- The first time DMF started in SoD
|
||||
local initialEndDate = time({year = 2023, month = 12, day = 10, hour = 23, min = 59}) -- The first time DMF ended in SoD
|
||||
local currentDateTimestamp = time({year = currentDate.year, month = currentDate.month, day = currentDate.monthDay, hour = 0, min = 1})
|
||||
|
||||
local eventDuration = initialEndDate - initialStartDate
|
||||
local timeSinceStart = currentDateTimestamp - initialStartDate
|
||||
|
||||
local positionInCurrentCycle = timeSinceStart % (eventDuration * 2) -- * 2 because the event repeats every two weeks
|
||||
|
||||
local isEventActive = positionInCurrentCycle < eventDuration
|
||||
|
||||
if (not isEventActive) then
|
||||
return DMF_LOCATIONS.NONE
|
||||
end
|
||||
|
||||
local weeksSinceStart = math.floor(timeSinceStart / eventDuration)
|
||||
|
||||
if weeksSinceStart % 4 == 0 then
|
||||
return DMF_LOCATIONS.MULGORE
|
||||
else
|
||||
return DMF_LOCATIONS.ELWYNN_FOREST
|
||||
end
|
||||
end
|
||||
|
||||
--- https://classic.wowhead.com/guides/classic-darkmoon-faire#darkmoon-faire-location-and-schedule
|
||||
--- Darkmoon Faire starts its setup the first Friday of the month and will begin the following Monday.
|
||||
--- The faire ends the sunday after it has begun.
|
||||
_LoadDarkmoonFaire = function()
|
||||
local eventLocation = _GetDarkmoonFaireLocation()
|
||||
if (eventLocation == DMF_LOCATIONS.NONE) then
|
||||
return
|
||||
end
|
||||
|
||||
local isInMulgore = eventLocation == DMF_LOCATIONS.MULGORE
|
||||
local isInTerokkar = eventLocation == DMF_LOCATIONS.TEROKKAR_FOREST
|
||||
|
||||
local npcFixes
|
||||
if Questie.IsTBC then
|
||||
npcFixes = QuestieTBCNpcFixes:LoadDarkmoonFixes(isInMulgore, isInTerokkar)
|
||||
else
|
||||
npcFixes = QuestieNPCFixes:LoadDarkmoonFixes(isInMulgore)
|
||||
end
|
||||
|
||||
for _, questData in pairs(QuestieEvent.eventQuests) do
|
||||
local hideQuest = questData[7]
|
||||
if questData[1] == "Darkmoon Faire" and (not hideQuest) then
|
||||
local questId = questData[2]
|
||||
QuestieCorrections.hiddenQuests[questId] = nil
|
||||
QuestieEvent.activeQuests[questId] = true
|
||||
|
||||
-- Update the NPC spawns based on the place of the faire
|
||||
for id, data in pairs(npcFixes) do
|
||||
QuestieDB.npcDataOverrides[id] = data
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local hordeAnnouncingQuestId = 7926 -- Horde announcement quest
|
||||
local allianceAnnouncingQuestId = 7905 -- Alliance announcement quest
|
||||
|
||||
if isInTerokkar then
|
||||
-- Show both announcing quests
|
||||
QuestieCorrections.hiddenQuests[hordeAnnouncingQuestId] = nil
|
||||
QuestieEvent.activeQuests[hordeAnnouncingQuestId] = true
|
||||
|
||||
QuestieCorrections.hiddenQuests[allianceAnnouncingQuestId] = nil
|
||||
QuestieEvent.activeQuests[allianceAnnouncingQuestId] = true
|
||||
elseif isInMulgore then
|
||||
-- Show only Horde announcing quest
|
||||
QuestieCorrections.hiddenQuests[hordeAnnouncingQuestId] = nil
|
||||
QuestieEvent.activeQuests[hordeAnnouncingQuestId] = true
|
||||
|
||||
QuestieCorrections.hiddenQuests[allianceAnnouncingQuestId] = true
|
||||
QuestieEvent.activeQuests[allianceAnnouncingQuestId] = nil
|
||||
else
|
||||
-- Show only Alliance announcing quest
|
||||
QuestieCorrections.hiddenQuests[allianceAnnouncingQuestId] = nil
|
||||
QuestieEvent.activeQuests[allianceAnnouncingQuestId] = true
|
||||
|
||||
QuestieCorrections.hiddenQuests[hordeAnnouncingQuestId] = true
|
||||
QuestieEvent.activeQuests[hordeAnnouncingQuestId] = nil
|
||||
end
|
||||
|
||||
if Questie.db.profile.showEventQuests then
|
||||
print(Questie:Colorize("[Questie]"), "|cFF6ce314" .. l10n("The Darkmoon Faire is up in %s!", l10n(DMF_LOCATION_NAMES[eventLocation])))
|
||||
end
|
||||
end
|
||||
|
||||
--- Checks wheather the current date is within the given date range
|
||||
---@param startDay number?
|
||||
---@param startMonth number?
|
||||
---@param endDay number?
|
||||
---@param endMonth number?
|
||||
---@return boolean @True if the current date is between the given, false otherwise
|
||||
_WithinDates = function(startDay, startMonth, startHour, startMinute, endDay, endMonth, endHour, endMinute)
|
||||
-- there are corrections that are missing the HH:MM entries (unknown), but we still want to show those correctly
|
||||
if (not startDay) and (not startMonth) and (not endMonth) and (not endDay) then
|
||||
return true
|
||||
end
|
||||
local date = QuestieCompat.GetCurrentCalendarTime()
|
||||
local minute = date.minute
|
||||
local hour = date.hour
|
||||
local day = date.monthDay
|
||||
local month = date.month
|
||||
|
||||
-- For missing HH:MM entries we default to 00:00 start HH:MM, and 23:59 end HH:MM
|
||||
startHour = startHour or 0
|
||||
startMinute = startMinute or 0
|
||||
endHour = endHour or 23
|
||||
endMinute = endMinute or 59
|
||||
|
||||
-- Convert each date into a sortable value: MMDDHHMM
|
||||
local current = month * 1000000 + day * 10000 + hour * 100 + minute
|
||||
local start = startMonth * 1000000 + startDay * 10000 + startHour * 100 + startMinute
|
||||
local finish = endMonth * 1000000 + endDay * 10000 + endHour * 100 + endMinute
|
||||
|
||||
if start <= finish then
|
||||
-- Normal interval (e.g. Mar 10 -> Jul 5)
|
||||
return current >= start and current <= finish
|
||||
else
|
||||
-- Crosses New Year (e.g. Dec 20 -> Jan 10)
|
||||
return current >= start or current <= finish
|
||||
end
|
||||
end
|
||||
|
||||
---@param questId QuestId
|
||||
---@return string
|
||||
function QuestieEvent.GetEventNameFor(questId)
|
||||
return eventNamesForQuests[questId] or ""
|
||||
end
|
||||
|
||||
---@param questId QuestId
|
||||
---@return boolean @True if the quest is part of an event, false otherwise
|
||||
function QuestieEvent.IsEventQuest(questId)
|
||||
return eventNamesForQuests[questId] ~= nil
|
||||
end
|
||||
|
||||
---@param questId QuestId
|
||||
---@return boolean @True if the quest is part of an event and the event is currently active, false otherwise
|
||||
function QuestieEvent.IsEventActiveForQuest(questId)
|
||||
return QuestieEvent.activeQuests[questId] == true
|
||||
end
|
||||
|
||||
---@param questId QuestId
|
||||
---@return boolean @True if the quest can be turned in outside of the event, false otherwise
|
||||
function QuestieEvent.CanQuestBeTurnedInOutsideOfEvent(questId)
|
||||
return alwaysTurnInAbleQuests[questId] == true
|
||||
end
|
||||
|
||||
-- EUROPEAN FORMAT! NO FUCKING AMERICAN SHIDAZZLE FORMAT!
|
||||
QuestieEvent.eventDates = {
|
||||
["Winter Veil"] = {
|
||||
startDate = "15/12",
|
||||
startHour = 10,
|
||||
startMinute = 0,
|
||||
endDate = "2/1",
|
||||
endHour = 10,
|
||||
endMinute = 0,
|
||||
},
|
||||
["Love is in the Air"] = { -- WARNING THIS DATE VARIES!!!!
|
||||
startDate = "9/2",
|
||||
startHour = 10,
|
||||
startMinute = 0,
|
||||
endDate = "23/2",
|
||||
endHour = 10,
|
||||
endMinute = 0,
|
||||
},
|
||||
["Noblegarden"] = { -- WARNING THIS DATE VARIES!!!!
|
||||
startDate = "5/4",
|
||||
startHour = 0,
|
||||
startMinute = 1,
|
||||
endDate = "11/4",
|
||||
endHour = 23,
|
||||
endMinute = 59,
|
||||
},
|
||||
["Children's Week"] = { -- TODO: Usually it is only a week long
|
||||
startDate = "27/4",
|
||||
startHour = 10,
|
||||
startMinute = 0,
|
||||
endDate = "4/5",
|
||||
endHour = 10,
|
||||
endMinute = 0,
|
||||
},
|
||||
["Midsummer"] =
|
||||
-- Fixed calendar days: 21 Jun 4 AM - 4 Jul 4 AM
|
||||
not Questie.IsTitanReforged and { -- regular servers
|
||||
startDate = "21/6",
|
||||
startHour = 4,
|
||||
startMinute = 0,
|
||||
endDate = "5/7",
|
||||
endHour = 4,
|
||||
endMinute = 0,
|
||||
} or { -- Titan servers
|
||||
startDate = "28/6",
|
||||
startHour = 4,
|
||||
startMinute = 0,
|
||||
endDate = "12/7",
|
||||
endHour = 4,
|
||||
endMinute = 0,
|
||||
},
|
||||
["Pirates' Day"] = { -- no quests associated with it, but listed here to have a reminder in chat
|
||||
startDate = "19/9",
|
||||
startHour = 10,
|
||||
startMinute = 0,
|
||||
endDate = "20/10",
|
||||
endHour = 10,
|
||||
endMinute = 0,
|
||||
},
|
||||
["Brewfest"] = { -- TODO: This might be different (retail date)
|
||||
startDate = "20/9",
|
||||
startHour = 10,
|
||||
startMinute = 0,
|
||||
endDate = "6/10",
|
||||
endHour = 10,
|
||||
endMinute = 0,
|
||||
},
|
||||
["Harvest Festival"] = { -- WARNING THIS DATE VARIES!!!!
|
||||
startDate = "21/9",
|
||||
startHour = 0,
|
||||
startMinute = 1,
|
||||
endDate = "27/9",
|
||||
endHour = 23,
|
||||
endMinute = 59,
|
||||
},
|
||||
["Hallow's End"] = { -- WARNING THIS DATE VARIES!!!!
|
||||
startDate = "18/10",
|
||||
startHour = 10,
|
||||
startMinute = 0,
|
||||
endDate = "1/11",
|
||||
endHour = 11,
|
||||
endMinute = 0,
|
||||
},
|
||||
["Day of the Dead"] = {
|
||||
startDate = "1/11",
|
||||
startHour = 10,
|
||||
startMinute = 0,
|
||||
endDate = "3/11",
|
||||
endHour = 10,
|
||||
endMinute = 0,
|
||||
},
|
||||
["Pilgrim's Bounty"] = { -- WARNING THIS DATE VARIES!!!!
|
||||
startDate = "24/11",
|
||||
startHour = 1,
|
||||
startMinute = 0,
|
||||
endDate = "30/11",
|
||||
endHour = 23,
|
||||
endMinute = 59,
|
||||
},
|
||||
}
|
||||
|
||||
-- ["EventName"] = false -> event doesn't exists in expansion
|
||||
-- ["EventName"] = {startDate = "12/3", endDate = "12/3"} -> change dates for the expansion
|
||||
QuestieEvent.eventDateCorrections = {
|
||||
["CLASSIC"] = {
|
||||
["Brewfest"] = false,
|
||||
["Pilgrim's Bounty"] = false,
|
||||
["Noblegarden"] = { -- WARNING THIS DATE VARIES!!!! -- One day event, on the actual day of Easter.
|
||||
-- Date is set for 2027. Please update this every year.
|
||||
startDate = "28/3",
|
||||
startHour = 0,
|
||||
startMinute = 1,
|
||||
endDate = "28/3",
|
||||
endHour = 23,
|
||||
endMinute = 59
|
||||
},
|
||||
["Love is in the Air"] = { -- WARNING THIS DATE VARIES!!!!
|
||||
startDate = "11/2",
|
||||
startHour = 10,
|
||||
startMinute = 0,
|
||||
endDate = "15/2",
|
||||
endHour = 10,
|
||||
endMinute = 0
|
||||
},
|
||||
},
|
||||
["TBC"] = {
|
||||
["Noblegarden"] = { -- WARNING THIS DATE VARIES!!!! -- One day event, on the actual day of Easter.
|
||||
-- Date is set for 2027. Please update this every year.
|
||||
startDate = "28/3",
|
||||
startHour = 0,
|
||||
startMinute = 1,
|
||||
endDate = "28/3",
|
||||
endHour = 23,
|
||||
endMinute = 59
|
||||
},
|
||||
["Love is in the Air"] = { -- WARNING THIS DATE VARIES!!!!
|
||||
startDate = "11/2",
|
||||
startHour = 10,
|
||||
startMinute = 0,
|
||||
endDate = "15/2",
|
||||
endHour = 10,
|
||||
endMinute = 0
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
---@class QuestieEventDateRange
|
||||
---@field startDate string
|
||||
---@field endDate string
|
||||
|
||||
---@class QuestieLunarFestivalTable
|
||||
---@field DEFAULT table<string, QuestieEventDateRange>
|
||||
---@field TITAN table<string, QuestieEventDateRange>
|
||||
QuestieEvent.lunarFestival = {
|
||||
DEFAULT = { -- Global default (US/EU, etc.)
|
||||
["19"] = {startDate = "5/2", startHour = 6, startMinute = 0, endDate = "19/2", endHour = 6, endMinute = 0},
|
||||
["20"] = {startDate = "23/1", startHour = 6, startMinute = 0, endDate = "10/2", endHour = 6, endMinute = 0},
|
||||
["21"] = {startDate = "5/2", startHour = 6, startMinute = 0, endDate = "19/2", endHour = 6, endMinute = 0},
|
||||
["22"] = {startDate = "30/1", startHour = 6, startMinute = 0, endDate = "18/2", endHour = 6, endMinute = 0},
|
||||
["23"] = {startDate = "20/1", startHour = 6, startMinute = 0, endDate = "10/2", endHour = 6, endMinute = 0},
|
||||
["24"] = {startDate = "3/2", startHour = 6, startMinute = 0, endDate = "23/2", endHour = 6, endMinute = 0},
|
||||
["25"] = {startDate = "28/1", startHour = 6, startMinute = 0, endDate = "17/2", endHour = 6, endMinute = 0},
|
||||
["26"] = {startDate = "16/2", startHour = 6, startMinute = 0, endDate = "9/3", endHour = 6, endMinute = 0},
|
||||
["27"] = {startDate = "5/2", startHour = 6, startMinute = 0, endDate = "19/2", endHour = 6, endMinute = 0},
|
||||
["28"] = {startDate = "24/1", startHour = 6, startMinute = 0, endDate = "14/2", endHour = 6, endMinute = 0},
|
||||
},
|
||||
TITAN = { -- Chinese Titan Reforged
|
||||
["26"] = {startDate = "29/1", startHour = 6, startMinute = 0, endDate = "25/2", endHour = 6, endMinute = 0},
|
||||
["27"] = {startDate = "5/2", startHour = 6, startMinute = 0, endDate = "19/2", endHour = 6, endMinute = 0},
|
||||
["28"] = {startDate = "24/1", startHour = 6, startMinute = 0, endDate = "14/2", endHour = 6, endMinute = 0},
|
||||
}
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
-- TBC quests
|
||||
tinsert(eventQuests, {"Brewfest", 11117, nil, nil, nil, nil, Questie.IsEURegion}) -- Catch the Wild Wolpertinger!
|
||||
tinsert(eventQuests, {"Brewfest", 11118, nil, nil, nil, nil, Questie.IsEURegion}) -- Pink Elekks On Parade
|
||||
tinsert(eventQuests, {"Brewfest", 11120, nil, nil, nil, nil, Questie.IsEURegion}) -- Pink Elekks On Parade
|
||||
tinsert(eventQuests, {"Brewfest", 11122}) -- There and Back Again
|
||||
tinsert(eventQuests, {"Brewfest", 11293}) -- Bark for the Barleybrews!
|
||||
tinsert(eventQuests, {"Brewfest", 11294}) -- Bark for the Thunderbrews!
|
||||
tinsert(eventQuests, {"Brewfest", 11318}) -- Now This is Ram Racing... Almost.
|
||||
tinsert(eventQuests, {"Brewfest", 11400, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Brewfest Riding Rams
|
||||
tinsert(eventQuests, {"Brewfest", 11407}) -- Bark for Drohn's Distillery!
|
||||
tinsert(eventQuests, {"Brewfest", 11408}) -- Bark for T'chali's Voodoo Brewery!
|
||||
tinsert(eventQuests, {"Brewfest", 11409}) -- Now This is Ram Racing... Almost.
|
||||
tinsert(eventQuests, {"Brewfest", 11412}) -- There and Back Again
|
||||
tinsert(eventQuests, {"Brewfest", 11419, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Brewfest Riding Rams
|
||||
tinsert(eventQuests, {"Brewfest", 11431, nil, nil, nil, nil, Questie.IsEURegion}) -- Catch the Wild Wolpertinger!
|
||||
tinsert(eventQuests, {"Brewfest", 11441}) -- Brewfest!
|
||||
tinsert(eventQuests, {"Brewfest", 11442}) -- Welcome to Brewfest!
|
||||
tinsert(eventQuests, {"Brewfest", 11446}) -- Brewfest!
|
||||
tinsert(eventQuests, {"Brewfest", 11447}) -- Welcome to Brewfest!
|
||||
tinsert(eventQuests, {"Brewfest", 12020}) -- This One Time, When I Was Drunk...
|
||||
tinsert(eventQuests, {"Brewfest", 12022}) -- Chug and Chuck!
|
||||
tinsert(eventQuests, {"Brewfest", 12062, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Insult Coren Direbrew
|
||||
tinsert(eventQuests, {"Brewfest", 12191}) -- Chug and Chuck!
|
||||
tinsert(eventQuests, {"Brewfest", 12192}) -- This One Time, When I Was Drunk...
|
||||
--tinsert(eventQuests, {"Brewfest", 12193}) -- Say, There Wouldn't Happen to be a Souvenir This Year, Would There?
|
||||
--tinsert(eventQuests, {"Brewfest", 12194}) -- Say, There Wouldn't Happen to be a Souvenir This Year, Would There?
|
||||
tinsert(eventQuests, {"Brewfest", 12278, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Brew of the Month Club
|
||||
tinsert(eventQuests, {"Brewfest", 12306, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Brew of the Month Club
|
||||
tinsert(eventQuests, {"Brewfest", 12318}) -- Save Brewfest!
|
||||
tinsert(eventQuests, {"Brewfest", 12420, nil, nil, nil, nil, Expansions.Current < Expansions.Wotlk}) -- Brew of the Month Club
|
||||
tinsert(eventQuests, {"Brewfest", 12421, nil, nil, nil, nil, Expansions.Current < Expansions.Wotlk}) -- Brew of the Month Club
|
||||
tinsert(eventQuests, {"Brewfest", 12491}) -- Direbrew's Dire Brew
|
||||
tinsert(eventQuests, {"Brewfest", 12492}) -- Direbrew's Dire Brew
|
||||
|
||||
-- WotLK quests
|
||||
tinsert(eventQuests, {"Brewfest", 13931, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Another Year, Another Souvenir. -- Doesn't seem to be in the game
|
||||
tinsert(eventQuests, {"Brewfest", 13932, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Another Year, Another Souvenir. -- Doesn't seem to be in the game
|
||||
|
||||
-- Cata quests
|
||||
--tinsert(eventQuests, {"Brewfest", 11413}) -- Did Someone Say "Souvenir?"
|
||||
tinsert(eventQuests, {"Brewfest", 29393}) -- Brew For Brewfest
|
||||
tinsert(eventQuests, {"Brewfest", 29394}) -- Brew For Brewfest
|
||||
tinsert(eventQuests, {"Brewfest", 29396}) -- A New Supplier of Souvenirs
|
||||
tinsert(eventQuests, {"Brewfest", 29397}) -- A New Supplier of Souvenirs
|
||||
@@ -1,74 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
---@type ContentPhases
|
||||
local ContentPhases = QuestieLoader:ImportModule("ContentPhases")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
tinsert(eventQuests, {"Children's Week", 171}) -- A Warden of the Alliance
|
||||
tinsert(eventQuests, {"Children's Week", 172}) -- Children's Week
|
||||
tinsert(eventQuests, {"Children's Week", 558}) -- Jaina's Autograph
|
||||
tinsert(eventQuests, {"Children's Week", 910}) -- Down at the Docks
|
||||
tinsert(eventQuests, {"Children's Week", 911}) -- Gateway to the Frontier
|
||||
tinsert(eventQuests, {"Children's Week", 915}) -- You Scream, I Scream...
|
||||
tinsert(eventQuests, {"Children's Week", 925}) -- Cairne's Hoofprint
|
||||
tinsert(eventQuests, {"Children's Week", 1468}) -- Children's Week
|
||||
tinsert(eventQuests, {"Children's Week", 1479}) -- The Bough of the Eternals
|
||||
tinsert(eventQuests, {"Children's Week", 1558}) -- The Stonewrought Dam
|
||||
tinsert(eventQuests, {"Children's Week", 1687}) -- Spooky Lighthouse
|
||||
tinsert(eventQuests, {"Children's Week", 1800}) -- Lordaeron Throne Room
|
||||
tinsert(eventQuests, {"Children's Week", 4822}) -- You Scream, I Scream...
|
||||
tinsert(eventQuests, {"Children's Week", 5502}) -- A Warden of the Horde
|
||||
|
||||
-- TBC quests
|
||||
tinsert(eventQuests, {"Children's Week", 10942}) -- Children's Week
|
||||
tinsert(eventQuests, {"Children's Week", 10943}) -- Children's Week
|
||||
tinsert(eventQuests, {"Children's Week", 10945}) -- Hch'uu and the Mushroom People
|
||||
tinsert(eventQuests, {"Children's Week", 10950}) -- Auchindoun and the Ring of Observance
|
||||
tinsert(eventQuests, {"Children's Week", 10951}) -- A Trip to the Dark Portal
|
||||
tinsert(eventQuests, {"Children's Week", 10952}) -- A Trip to the Dark Portal
|
||||
tinsert(eventQuests, {"Children's Week", 10953}) -- Visit the Throne of the Elements
|
||||
tinsert(eventQuests, {"Children's Week", 10954}) -- Jheel is at Aeris Landing!
|
||||
tinsert(eventQuests, {"Children's Week", 10956}) -- The Seat of the Naaru
|
||||
tinsert(eventQuests, {"Children's Week", 10960, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk or (Expansions.Current == Expansions.Tbc and ContentPhases.activePhases.TBC >= 5)}) -- When I Grow Up...
|
||||
tinsert(eventQuests, {"Children's Week", 10962}) -- Time to Visit the Caverns
|
||||
tinsert(eventQuests, {"Children's Week", 10963}) -- Time to Visit the Caverns
|
||||
tinsert(eventQuests, {"Children's Week", 10966}) -- Back to the Orphanage
|
||||
tinsert(eventQuests, {"Children's Week", 10967}) -- Back to the Orphanage
|
||||
tinsert(eventQuests, {"Children's Week", 10968}) -- Call on the Farseer
|
||||
tinsert(eventQuests, {"Children's Week", 11975, nil, nil, nil, nil, Expansions.Current == Expansions.Tbc and ContentPhases.activePhases.TBC < 5}) -- Now, When I Grow Up...
|
||||
|
||||
-- WotLK quests
|
||||
tinsert(eventQuests, {"Children's Week", 13926}) -- Little Orphan Roo Of The Oracles
|
||||
tinsert(eventQuests, {"Children's Week", 13927}) -- Little Orphan Kekek Of The Wolvar
|
||||
tinsert(eventQuests, {"Children's Week", 13929}) -- The Biggest Tree Ever!
|
||||
tinsert(eventQuests, {"Children's Week", 13930}) -- Home Of The Bear-Men
|
||||
tinsert(eventQuests, {"Children's Week", 13933}) -- The Bronze Dragonshrine
|
||||
tinsert(eventQuests, {"Children's Week", 13934}) -- The Bronze Dragonshrine
|
||||
tinsert(eventQuests, {"Children's Week", 13937}) -- A Trip To The Wonderworks
|
||||
tinsert(eventQuests, {"Children's Week", 13938}) -- A Visit To The Wonderworks
|
||||
tinsert(eventQuests, {"Children's Week", 13950}) -- Playmates!
|
||||
tinsert(eventQuests, {"Children's Week", 13951}) -- Playmates!
|
||||
tinsert(eventQuests, {"Children's Week", 13954}) -- The Dragon Queen
|
||||
tinsert(eventQuests, {"Children's Week", 13955}) -- The Dragon Queen
|
||||
tinsert(eventQuests, {"Children's Week", 13956}) -- Meeting a Great One
|
||||
tinsert(eventQuests, {"Children's Week", 13957}) -- The Mighty Hemet Nesingwary
|
||||
tinsert(eventQuests, {"Children's Week", 13959}) -- Back To The Orphanage
|
||||
tinsert(eventQuests, {"Children's Week", 13960}) -- Back To The Orphanage
|
||||
|
||||
-- Cata quests
|
||||
--tinsert(eventQuests, {"Children's Week", 28879}) -- Back To The Orphanage -- not available yet in children's week 2024
|
||||
--tinsert(eventQuests, {"Children's Week", 28880}) -- Back To The Orphanage -- not available yet in children's week 2024
|
||||
tinsert(eventQuests, {"Children's Week", 29093}) -- Cruisin' the Chasm
|
||||
tinsert(eventQuests, {"Children's Week", 29106}) -- The Biggest Diamond Ever!
|
||||
tinsert(eventQuests, {"Children's Week", 29107}) -- Malfurion Has Returned!
|
||||
tinsert(eventQuests, {"Children's Week", 29117}) -- Let's Go Fly a Kite
|
||||
tinsert(eventQuests, {"Children's Week", 29119}) -- You Scream, I Scream...
|
||||
tinsert(eventQuests, {"Children's Week", 29146}) -- Ridin' the Rocketway
|
||||
tinsert(eventQuests, {"Children's Week", 29167}) -- The Banshee Queen
|
||||
tinsert(eventQuests, {"Children's Week", 29176}) -- The Fallen Chieftain
|
||||
tinsert(eventQuests, {"Children's Week", 29190}) -- Let's Go Fly a Kite
|
||||
tinsert(eventQuests, {"Children's Week", 29191}) -- You Scream, I Scream...
|
||||
@@ -1,141 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7881, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Carnival Boots
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7882, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Carnival Jerkins
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7883, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- The World's Largest Gnome!
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7884, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Crocolisk Boy and the Bearded Murloc
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7885, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Armor Kits
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7889, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Coarse Weightstone
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7890, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Heavy Grinding Stone
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7891, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Green Iron Bracers
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7892, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Big Black Mace
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7893, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Rituals of Strength
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7894, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Copper Modulator
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7895, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Whirring Bronze Gizmo
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7896, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Green Fireworks
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7897, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Mechanical Repair Kits
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7898, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Thorium Widget
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7899, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Small Furry Paws
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7900, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Torn Bear Pelts
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7901, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Soft Bushy Tails
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7902, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Vibrant Plumes
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7903, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Evil Bat Eyes
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7905}) -- The Darkmoon Faire
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7907}) -- Darkmoon Beast Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7926}) -- The Darkmoon Faire
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7927}) -- Darkmoon Portals Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7928}) -- Darkmoon Warlords Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7929}) -- Darkmoon Elementals Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7930, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 5 Tickets - Darkmoon Flower
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7931, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 5 Tickets - Minor Darkmoon Prize
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7932, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 12 Tickets - Lesser Darkmoon Prize
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7933, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 40 Tickets - Greater Darkmoon Prize
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7934, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 50 Tickets - Darkmoon Storage Box
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7935, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 10 Tickets - Last Month's Mutton
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7936, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 50 Tickets - Last Year's Mutton
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7937, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Your Fortune Awaits You...
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7938, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Your Fortune Awaits You...
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7939, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- More Dense Grinding Stones
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7940, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 1200 Tickets - Orb of the Darkmoon
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7941, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- More Armor Kits
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7942, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- More Thorium Widgets
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7943, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- More Bat Eyes
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7944, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Your Fortune Awaits You...
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7945, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Your Fortune Awaits You...
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7946, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Spawn of Jubjub
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 7981, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 1200 Tickets - Amulet of the Darkmoon
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 8222, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- Glowing Scorpid Blood
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 8223, nil, nil, nil, nil, Questie.IsSoD or Expansions.Current >= Expansions.Cata}) -- More Glowing Scorpid Blood
|
||||
|
||||
-- SoD quests
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 79588}) -- Small Furry Paws
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 79589}) -- Torn Bear Pelts
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 79590}) -- Heavy Grinding Stone
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 79591}) -- Whirring Bronze Gizmo
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 79592}) -- Carnival Jerkins
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 79593}) -- Coarse Weightstone
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 79594}) -- Copper Modulator
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 79595}) -- Carnival Boots
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 80417}) -- Soft Bushy Tails
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 80421}) -- Green Iron Bracers
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 80422}) -- Green Fireworks
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 80423}) -- The World's Largest Gnome!
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82323}) -- Vibrant Plumes
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82271}) -- More Glowing Scorpid Blood
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82272}) -- Glowing Scorpid Blood
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82273}) -- More Evil Bat Eyes
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82274}) -- Evil Bat Eyes
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82275}) -- Big Black Mace
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82276}) -- Rituals of Strength
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82277}) -- More Dense Grinding Stones
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82278}) -- More Thorium Widgets
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82279}) -- Thorium Widget
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82280}) -- Mechanical Repair Kits
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82281}) -- More Armor Kits
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82282}) -- Armor Kits
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 82283}) -- Crocolisk Boy and the Bearded Murloc
|
||||
|
||||
-- TBC quests
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 9249, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- 40 Tickets - Schematic: Steam Tonk Controller
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 10938}) -- Darkmoon Blessings Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 10939}) -- Darkmoon Storms Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 10940}) -- Darkmoon Furies Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 10941}) -- Darkmoon Lunacy Deck
|
||||
|
||||
-- WotLK quests
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 13324}) -- Darkmoon Prisms Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 13325}) -- Darkmoon Chaos Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 13326}) -- Darkmoon Nobles Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 13327}) -- Darkmoon Undeath Deck
|
||||
|
||||
-- Cata quests
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 27664}) -- Darkmoon Volcanic Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 27665}) -- Darkmoon Hurricane Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 27666}) -- Darkmoon Tsunami Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 27667}) -- Darkmoon Earthquake Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29433}) -- Test Your Strength
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29434}) -- Tonk Commander
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29436}) -- The Humanoid Cannonball
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29438}) -- He Shoots, He Scores!
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29443}) -- A Curious Crystal
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29444}) -- An Exotic Egg
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29445}) -- An Intriguing Grimoire
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29446}) -- A Wondrous Weapon
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29451}) -- The Master Strategist
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29455}) -- Target: Turtle
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29456}) -- A Captured Banner
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29457}) -- The Enemy's Insignia
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29458}) -- The Captured Journal
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29463}) -- It's Hammer Time
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29464}) -- Tools of Divination
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29506}) -- A Fizzy Fusion
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29507}) -- Fun for the Little Ones
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29508}) -- Baby Needs Two Pair of Shoes
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29509}) -- Putting the Crunch in the Frog
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29510}) -- Putting Trash to Good Use
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29511}) -- Talkin' Tonks
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29512}) -- Putting the Carnies Back Together Again
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29513}) -- Spoilin' for Salty Sea Dogs
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29514}) -- Herbs for Healing
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29515}) -- Writing the Future
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29516}) -- Keeping the Faire Sparkling
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29517}) -- Eyes on the Prizes
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29518}) -- Rearm, Reuse, Recycle
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29519}) -- Tan My Hide
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29520}) -- Banners, Banners Everywhere!
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29760}) -- Pit Fighter
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 29761}) -- Master Pit Fighter
|
||||
|
||||
-- MoP quests
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 30449}) -- Darkmoon Crane Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 30450}) -- Darkmoon Ox Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 30451}) -- Darkmoon Serpent Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 30452}) -- Darkmoon Tiger Deck
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 32175}) -- Darkmoon Pet Battle!
|
||||
tinsert(eventQuests, {"Darkmoon Faire", 33354}) -- Den Mother's Demise
|
||||
@@ -1,24 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
-- WotLK quests
|
||||
tinsert(eventQuests, {"Day of the Dead", 13952}) -- The Grateful Dead -- Human
|
||||
tinsert(eventQuests, {"Day of the Dead", 14166}) -- The Grateful Dead -- Dalaran
|
||||
tinsert(eventQuests, {"Day of the Dead", 14167}) -- The Grateful Dead -- Dwarf
|
||||
tinsert(eventQuests, {"Day of the Dead", 14168}) -- The Grateful Dead -- Gnome
|
||||
tinsert(eventQuests, {"Day of the Dead", 14169}) -- The Grateful Dead -- Draenei
|
||||
tinsert(eventQuests, {"Day of the Dead", 14170}) -- The Grateful Dead -- Night Elf
|
||||
tinsert(eventQuests, {"Day of the Dead", 14171}) -- The Grateful Dead -- Blood Elf
|
||||
tinsert(eventQuests, {"Day of the Dead", 14172}) -- The Grateful Dead -- Shattrath Aldor
|
||||
tinsert(eventQuests, {"Day of the Dead", 14173}) -- The Grateful Dead -- Shattrath Scryer
|
||||
tinsert(eventQuests, {"Day of the Dead", 14174}) -- The Grateful Dead -- Undead
|
||||
tinsert(eventQuests, {"Day of the Dead", 14175}) -- The Grateful Dead -- Orc
|
||||
tinsert(eventQuests, {"Day of the Dead", 14176}) -- The Grateful Dead -- Tauren
|
||||
tinsert(eventQuests, {"Day of the Dead", 14177}) -- The Grateful Dead -- Troll
|
||||
|
||||
-- Cata quests
|
||||
tinsert(eventQuests, {"Day of the Dead", 27841}) -- The Grateful Dead -- Goblin
|
||||
tinsert(eventQuests, {"Day of the Dead", 27846}) -- The Grateful Dead -- Worgen
|
||||
@@ -1,291 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
tinsert(eventQuests, {"Hallow's End", 1657}) -- Stinking Up Southshore
|
||||
tinsert(eventQuests, {"Hallow's End", 1658}) -- Crashing the Wickerman Festival
|
||||
tinsert(eventQuests, {"Hallow's End", 8311}) -- Hallow's End Treats for Jesper!
|
||||
tinsert(eventQuests, {"Hallow's End", 8312}) -- Hallow's End Treats for Spoops!
|
||||
tinsert(eventQuests, {"Hallow's End", 8322}) -- Rotten Eggs
|
||||
tinsert(eventQuests, {"Hallow's End", 8353}) -- Chicken Clucking for a Mint
|
||||
tinsert(eventQuests, {"Hallow's End", 8354}) -- Chicken Clucking for a Mint
|
||||
tinsert(eventQuests, {"Hallow's End", 8355}) -- Incoming Gumdrop
|
||||
tinsert(eventQuests, {"Hallow's End", 8356}) -- Flexing for Nougat
|
||||
tinsert(eventQuests, {"Hallow's End", 8357}) -- Dancing for Marzipan
|
||||
tinsert(eventQuests, {"Hallow's End", 8358}) -- Incoming Gumdrop
|
||||
tinsert(eventQuests, {"Hallow's End", 8359}) -- Flexing for Nougat
|
||||
tinsert(eventQuests, {"Hallow's End", 8360}) -- Dancing for Marzipan
|
||||
tinsert(eventQuests, {"Hallow's End", 8373}) -- The Power of Pine
|
||||
tinsert(eventQuests, {"Hallow's End", 8409}) -- Ruined Kegs
|
||||
|
||||
-- TBC quests
|
||||
tinsert(eventQuests, {"Hallow's End", 11131}) -- Stop the Fires!
|
||||
tinsert(eventQuests, {"Hallow's End", 11135, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- The Headless Horseman
|
||||
tinsert(eventQuests, {"Hallow's End", 11219}) -- Stop the Fires!
|
||||
tinsert(eventQuests, {"Hallow's End", 11220, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- The Headless Horseman
|
||||
tinsert(eventQuests, {"Hallow's End", 11242, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Free at Last!
|
||||
tinsert(eventQuests, {"Hallow's End", 11356}) -- Costumed Orphan Matron
|
||||
tinsert(eventQuests, {"Hallow's End", 11357}) -- Masked Orphan Matron
|
||||
tinsert(eventQuests, {"Hallow's End", 11360}) -- Fire Brigade Practice
|
||||
tinsert(eventQuests, {"Hallow's End", 11361}) -- Fire Training
|
||||
tinsert(eventQuests, {"Hallow's End", 11392, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Call the Headless Horseman
|
||||
tinsert(eventQuests, {"Hallow's End", 11401, nil, nil, nil, nil, Expansions.Current == Expansions.Wotlk}) -- Call the Headless Horseman
|
||||
tinsert(eventQuests, {"Hallow's End", 11403, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Free at Last!
|
||||
--tinsert(eventQuests, {"Hallow's End", 11404}) -- Call the Headless Horseman -- phase gated?
|
||||
--tinsert(eventQuests, {"Hallow's End", 11405}) -- Call the Headless Horseman -- phase gated?
|
||||
tinsert(eventQuests, {"Hallow's End", 11439}) -- Fire Brigade Practice
|
||||
tinsert(eventQuests, {"Hallow's End", 11440}) -- Fire Brigade Practice
|
||||
tinsert(eventQuests, {"Hallow's End", 11449}) -- Fire Training
|
||||
tinsert(eventQuests, {"Hallow's End", 11450}) -- Fire Training
|
||||
tinsert(eventQuests, {"Hallow's End", 12133}) -- Smash the Pumpkin
|
||||
tinsert(eventQuests, {"Hallow's End", 12135}) -- Let the Fires Come!
|
||||
tinsert(eventQuests, {"Hallow's End", 12139}) -- Let the Fires Come!
|
||||
tinsert(eventQuests, {"Hallow's End", 12155}) -- Smash the Pumpkin
|
||||
tinsert(eventQuests, {"Hallow's End", 12286}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12331}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12332}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12333}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12334}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12335}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12336}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12337}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12338, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12339}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12340}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12341}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12342}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12343}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12344}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12345}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12346, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12347}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12348}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12349}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12350}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12351}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12352}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12353}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12354}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12355}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12356}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12357}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12358}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12359}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12360}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12361}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12362}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12363}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12364}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12365}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12366}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12367}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12368}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12369}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12370}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12371}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12373}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12374}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12375, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12376}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12377}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12378}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12379, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12380}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12381}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12382}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12383}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12384}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12385, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12386}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12387}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12388}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12389}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12390}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12391}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12392}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12393}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12394}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12395}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12396}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12397}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12398}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12399}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12400}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12401}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12402}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12403}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12404}) -- Candy Bucket
|
||||
--tinsert(eventQuests, {"Hallow's End", 12405}) -- Candy Bucket -- doesn't exist
|
||||
tinsert(eventQuests, {"Hallow's End", 12406}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12407}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12408}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12409}) -- Candy Bucket
|
||||
--tinsert(eventQuests, {"Hallow's End", 12410}) -- Candy Bucket -- doesn't exist
|
||||
|
||||
-- WoTLK quests
|
||||
tinsert(eventQuests, {"Hallow's End", 12940}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12941}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12944}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12945}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12946}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12947}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 12950}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13433}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13434}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13435}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13436}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13437}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13438}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13439}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13448}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13452}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13456}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13459}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13460}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13461}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13462}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13463}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13464}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13465}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13466}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13467}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13468}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13469}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13470}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13471}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13472}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13473}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13474}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13501}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 13548}) -- Candy Bucket
|
||||
|
||||
-- Cata quests
|
||||
tinsert(eventQuests, {"Hallow's End", 28951}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28952}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28953}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28954}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28955}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28956}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28957}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28958}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28959}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28960}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28961}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28962}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28963}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28964}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28965}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28966}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28967}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28968}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28969}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28970}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28971}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28972}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28973}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28974}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28975}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28976}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28977}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28978}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28979}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28980}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28981}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28982}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28983}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28984}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28985}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28986}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28987}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28988}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28989}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28990}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28991}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28992}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28993}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28994}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28995}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28996}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28997}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28998}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 28999}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29000}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29001}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29002}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29003}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29004}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29005}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29006}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29007}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29008}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29009}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29010}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29011}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29012}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29013}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29014}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29016}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29017}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29018}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29019}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29020}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 29054}) -- Stink Bombs Away!
|
||||
tinsert(eventQuests, {"Hallow's End", 29074}) -- A Season for Celebration
|
||||
tinsert(eventQuests, {"Hallow's End", 29075}) -- A Time to Gain
|
||||
tinsert(eventQuests, {"Hallow's End", 29144}) -- Clean Up in Stormwind
|
||||
tinsert(eventQuests, {"Hallow's End", 29371}) -- A Time to Lose
|
||||
tinsert(eventQuests, {"Hallow's End", 29374}) -- Stink Bombs Away!
|
||||
tinsert(eventQuests, {"Hallow's End", 29375}) -- Clean Up in Undercity
|
||||
tinsert(eventQuests, {"Hallow's End", 29376}) -- A Time to Build Up
|
||||
tinsert(eventQuests, {"Hallow's End", 29377}) -- A Time to Break Down
|
||||
tinsert(eventQuests, {"Hallow's End", 29392}) -- Missing Heirlooms
|
||||
tinsert(eventQuests, {"Hallow's End", 29398}) -- Fencing the Goods
|
||||
tinsert(eventQuests, {"Hallow's End", 29399}) -- Shopping Around
|
||||
tinsert(eventQuests, {"Hallow's End", 29400}) -- A Season for Celebration
|
||||
tinsert(eventQuests, {"Hallow's End", 29402}) -- Taking Precautions
|
||||
tinsert(eventQuests, {"Hallow's End", 29403}) -- The Collector's Agent
|
||||
tinsert(eventQuests, {"Hallow's End", 29411}) -- What Now?
|
||||
tinsert(eventQuests, {"Hallow's End", 29413}) -- The Creepy Crate
|
||||
tinsert(eventQuests, {"Hallow's End", 29415}) -- Missing Heirlooms
|
||||
tinsert(eventQuests, {"Hallow's End", 29416}) -- Fencing the Goods
|
||||
tinsert(eventQuests, {"Hallow's End", 29425}) -- Shopping Around
|
||||
tinsert(eventQuests, {"Hallow's End", 29426}) -- Taking Precautions
|
||||
tinsert(eventQuests, {"Hallow's End", 29427}) -- The Collector's Agent
|
||||
tinsert(eventQuests, {"Hallow's End", 29428}) -- What Now?
|
||||
tinsert(eventQuests, {"Hallow's End", 29429}) -- The Creepy Crate
|
||||
tinsert(eventQuests, {"Hallow's End", 29430}) -- A Friend in Need
|
||||
tinsert(eventQuests, {"Hallow's End", 29431}) -- A Friend in Need
|
||||
|
||||
-- MoP quests
|
||||
tinsert(eventQuests, {"Hallow's End", 32020}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32021}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32022}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32023}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32024}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32026}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32027}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32028}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32029}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32031}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32032}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32033}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32034}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32036}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32037}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32039}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32040}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32041}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32042}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32043}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32044}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32046}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32047}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32048}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32049}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32050}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32051}) -- Candy Bucket
|
||||
tinsert(eventQuests, {"Hallow's End", 32052}) -- Candy Bucket
|
||||
@@ -1,8 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
tinsert(eventQuests, {"Harvest Festival", 8149}) -- Honoring a Hero
|
||||
tinsert(eventQuests, {"Harvest Festival", 8150}) -- Honoring a Hero
|
||||
@@ -1,92 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
tinsert(eventQuests, {"Love is in the Air", 8897, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Dearest Colara,
|
||||
tinsert(eventQuests, {"Love is in the Air", 8898, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Dearest Colara,
|
||||
tinsert(eventQuests, {"Love is in the Air", 8899, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Dearest Colara,
|
||||
tinsert(eventQuests, {"Love is in the Air", 8900, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Dearest Elenia,
|
||||
tinsert(eventQuests, {"Love is in the Air", 8901, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Dearest Elenia,
|
||||
tinsert(eventQuests, {"Love is in the Air", 8902, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Dearest Elenia,
|
||||
tinsert(eventQuests, {"Love is in the Air", 8903, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Dangerous Love
|
||||
tinsert(eventQuests, {"Love is in the Air", 8904, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Dangerous Love
|
||||
tinsert(eventQuests, {"Love is in the Air", 8979, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Fenstad's Hunch
|
||||
tinsert(eventQuests, {"Love is in the Air", 8980, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Zinge's Assessment
|
||||
tinsert(eventQuests, {"Love is in the Air", 8981, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Gift Giving
|
||||
tinsert(eventQuests, {"Love is in the Air", 8982, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Tracing the Source
|
||||
tinsert(eventQuests, {"Love is in the Air", 8983, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Tracing the Source
|
||||
tinsert(eventQuests, {"Love is in the Air", 8984, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- The Source Revealed
|
||||
tinsert(eventQuests, {"Love is in the Air", 8993, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Gift Giving
|
||||
tinsert(eventQuests, {"Love is in the Air", 9024, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Aristan's Hunch
|
||||
tinsert(eventQuests, {"Love is in the Air", 9025, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Morgan's Discovery
|
||||
tinsert(eventQuests, {"Love is in the Air", 9026, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Tracing the Source
|
||||
tinsert(eventQuests, {"Love is in the Air", 9027, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Tracing the Source
|
||||
tinsert(eventQuests, {"Love is in the Air", 9028, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- The Source Revealed
|
||||
tinsert(eventQuests, {"Love is in the Air", 9029, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- A Bubbling Cauldron
|
||||
|
||||
-- TBC quests
|
||||
tinsert(eventQuests, {"Love is in the Air", 11558, nil, nil, nil, nil, Expansions.Current >= Expansions.Wotlk}) -- Dangerous Love
|
||||
|
||||
-- WotLK quests
|
||||
tinsert(eventQuests, {"Love is in the Air", 14483}) -- Something is in the Air (and it Ain't Love)
|
||||
tinsert(eventQuests, {"Love is in the Air", 14488, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- You've Been Served
|
||||
tinsert(eventQuests, {"Love is in the Air", 24597}) -- A Gift for the King of Stormwind
|
||||
tinsert(eventQuests, {"Love is in the Air", 24609}) -- A Gift for the Lord of Ironforge
|
||||
tinsert(eventQuests, {"Love is in the Air", 24610}) -- A Gift for the High Priestess of Elune
|
||||
tinsert(eventQuests, {"Love is in the Air", 24611}) -- A Gift for the Prophet
|
||||
tinsert(eventQuests, {"Love is in the Air", 24612}) -- A Gift for the Warchief
|
||||
tinsert(eventQuests, {"Love is in the Air", 24613}) -- A Gift for the Banshee Queen
|
||||
tinsert(eventQuests, {"Love is in the Air", 24614}) -- A Gift for the High Chieftain
|
||||
tinsert(eventQuests, {"Love is in the Air", 24615}) -- A Gift for the Regent Lord of Quel'Thalas
|
||||
tinsert(eventQuests, {"Love is in the Air", 24629}) -- A Perfect Puff of Perfume
|
||||
tinsert(eventQuests, {"Love is in the Air", 24635}) -- A Cloudlet of Classy Cologne
|
||||
tinsert(eventQuests, {"Love is in the Air", 24636}) -- Bonbon Blitz
|
||||
tinsert(eventQuests, {"Love is in the Air", 24536}) -- Something Stinks
|
||||
tinsert(eventQuests, {"Love is in the Air", 24655}) -- Something Stinks
|
||||
tinsert(eventQuests, {"Love is in the Air", 24541}) -- Pilfering Perfume
|
||||
tinsert(eventQuests, {"Love is in the Air", 24656}) -- Pilfering Perfume
|
||||
tinsert(eventQuests, {"Love is in the Air", 24745}) -- Something is in the Air (and it Ain't Love)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24804}) -- Uncommon Scents
|
||||
tinsert(eventQuests, {"Love is in the Air", 24805}) -- Uncommon Scents
|
||||
|
||||
tinsert(eventQuests, {"Love is in the Air", 24576}) -- A Friendly Chat...
|
||||
tinsert(eventQuests, {"Love is in the Air", 24657}) -- A Friendly Chat...
|
||||
|
||||
-- These seem to be breadcrumbs to "You've Been Served" (14488) but aren't available
|
||||
-- Might either not be in game at all or guarded behind finishing one of the two "A Friendly Chat..." quests above
|
||||
tinsert(eventQuests, {"Love is in the Air", 24792}) -- Man on the Inside
|
||||
tinsert(eventQuests, {"Love is in the Air", 24793}) -- Man on the Inside
|
||||
|
||||
tinsert(eventQuests, {"Love is in the Air", 24848}) -- Fireworks At The Gilded Rose
|
||||
tinsert(eventQuests, {"Love is in the Air", 24849}) -- Hot On The Trail
|
||||
tinsert(eventQuests, {"Love is in the Air", 24850}) -- Snivel's Sweetheart
|
||||
tinsert(eventQuests, {"Love is in the Air", 24851}) -- Hot On The Trail
|
||||
|
||||
-- These "Crushing the Crown" quests are dailies, handed out based on the player's current level.
|
||||
-- The Durotar + Elwynn quests are available at level 5, with each successive quest being available
|
||||
-- at 14, 23, 32, 41, 51, 61, and 71, respectively. They are exclusive to each other; once you hit 14,
|
||||
-- you can no longer pick up the level 5 quest.
|
||||
tinsert(eventQuests, {"Love is in the Air", 24638}) -- Crushing the Crown (Durotar)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24645}) -- Crushing the Crown (Ambermill)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24647}) -- Crushing the Crown (Hillsbrad H)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24648}) -- Crushing the Crown (Theramore H)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24649}) -- Crushing the Crown (Aerie Peak H)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24650}) -- Crushing the Crown (Everlook H)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24651}) -- Crushing the Crown (Shattrath H)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24652}) -- Crushing the Crown (Crystalsong H)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24658}) -- Crushing the Crown (Elwynn)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24659}) -- Crushing the Crown (Darkshore)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24660}) -- Crushing the Crown (Hillsbrad A)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24662}) -- Crushing the Crown (Theramore A)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24663}) -- Crushing the Crown (Aerie Peak A)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24664}) -- Crushing the Crown (Everlook A)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24665}) -- Crushing the Crown (Shattrath A)
|
||||
tinsert(eventQuests, {"Love is in the Air", 24666}) -- Crushing the Crown (Crystalsong A)
|
||||
|
||||
-- Cata quests
|
||||
tinsert(eventQuests, {"Love is in the Air", 28934}) -- Crushing the Crown (Uldum A)
|
||||
tinsert(eventQuests, {"Love is in the Air", 28935}) -- Crushing the Crown (Uldum H)
|
||||
@@ -1,125 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
tinsert(eventQuests, {"Lunar Festival", 8619}) -- Morndeep the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8635}) -- Splitrock the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8636}) -- Rumblerock the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8642}) -- Silvervein the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8643}) -- Highpeak the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8644}) -- Stonefort the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8645}) -- Obsidian the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8646}) -- Hammershout the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8647}) -- Bellowrage the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8648}) -- Darkcore the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8649}) -- Stormbrow the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8650}) -- Snowcrown the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8651}) -- Ironband the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8652}) -- Graveborn the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8653}) -- Goldwell the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8654}) -- Primestone the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8670}) -- Runetotem the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8671}) -- Ragetotem the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8672}) -- Stonespire the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8673}) -- Bloodhoof the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8674}) -- Winterhoof the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8675}) -- Skychaser the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8676}) -- Wildmane the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8677}) -- Darkhorn the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8678}) -- Proudhorn the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8679}) -- Grimtotem the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8680}) -- Windtotem the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8681}) -- Thunderhorn the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8682}) -- Skyseer the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8683}) -- Dawnstrider the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8684}) -- Dreamseer the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8685}) -- Mistwalker the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8686}) -- High Mountain the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8688}) -- Windrun the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8713}) -- Starsong the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8714}) -- Moonstrike the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8715}) -- Bladeleaf the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8716}) -- Starglade the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8717}) -- Moonwarden the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8718}) -- Bladeswift the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8719}) -- Bladesing the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8720}) -- Skygleam the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8721}) -- Starweave the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8722}) -- Meadowrun the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8723}) -- Nightwind the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8724}) -- Morningdew the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8725}) -- Riversong the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8726}) -- Brightspear the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8727}) -- Farwhisper the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8862, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Elune's Candle
|
||||
tinsert(eventQuests, {"Lunar Festival", 8863, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Festival Dumplings
|
||||
tinsert(eventQuests, {"Lunar Festival", 8864, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Festive Lunar Dresses
|
||||
tinsert(eventQuests, {"Lunar Festival", 8865, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Festive Lunar Pant Suits
|
||||
tinsert(eventQuests, {"Lunar Festival", 8866}) -- Bronzebeard the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 8867}) -- Lunar Fireworks
|
||||
tinsert(eventQuests, {"Lunar Festival", 8868}) -- Elune's Blessing
|
||||
tinsert(eventQuests, {"Lunar Festival", 8870}) -- The Lunar Festival
|
||||
tinsert(eventQuests, {"Lunar Festival", 8871}) -- The Lunar Festival
|
||||
tinsert(eventQuests, {"Lunar Festival", 8872}) -- The Lunar Festival
|
||||
tinsert(eventQuests, {"Lunar Festival", 8873}) -- The Lunar Festival
|
||||
tinsert(eventQuests, {"Lunar Festival", 8874}) -- The Lunar Festival
|
||||
tinsert(eventQuests, {"Lunar Festival", 8875}) -- The Lunar Festival
|
||||
tinsert(eventQuests, {"Lunar Festival", 8876, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Small Rockets
|
||||
tinsert(eventQuests, {"Lunar Festival", 8877, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Firework Launcher
|
||||
tinsert(eventQuests, {"Lunar Festival", 8878, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Festive Recipes
|
||||
tinsert(eventQuests, {"Lunar Festival", 8879, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Large Rockets
|
||||
tinsert(eventQuests, {"Lunar Festival", 8880, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Cluster Rockets
|
||||
tinsert(eventQuests, {"Lunar Festival", 8881, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Large Cluster Rockets
|
||||
tinsert(eventQuests, {"Lunar Festival", 8882, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Cluster Launcher
|
||||
tinsert(eventQuests, {"Lunar Festival", 8883}) -- Valadar Starsong
|
||||
|
||||
-- SoD quests
|
||||
tinsert(eventQuests, {"Lunar Festival", 80164}) -- Large Cluster Rockets
|
||||
tinsert(eventQuests, {"Lunar Festival", 80165}) -- Cluster Rockets
|
||||
tinsert(eventQuests, {"Lunar Festival", 80166}) -- Small Rockets
|
||||
tinsert(eventQuests, {"Lunar Festival", 80167}) -- Large Rockets
|
||||
tinsert(eventQuests, {"Lunar Festival", 80168}) -- Firework Launcher
|
||||
tinsert(eventQuests, {"Lunar Festival", 80169}) -- Cluster Launcher
|
||||
tinsert(eventQuests, {"Lunar Festival", 80170}) -- Festive Recipes
|
||||
|
||||
-- Northrend Elders
|
||||
tinsert(eventQuests, {"Lunar Festival", 13012}) -- Sardis the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13013}) -- Beldak the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13014}) -- Morthie the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13015}) -- Fargal the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13016}) -- Northal the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13017}) -- Jarten the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13018}) -- Sandrene the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13019}) -- Thoim the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13020}) -- Stonebeard the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13021}) -- Igasho the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13022}) -- Nurgen the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13023}) -- Kilias the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13024}) -- Wanikaya the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13025}) -- Lunaro the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13026}) -- Bluewolf the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13027}) -- Tauros the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13028}) -- Graymane the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13029}) -- Pamuya the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13030}) -- Whurain the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13031}) -- Skywarden the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13032}) -- Muraco the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13033}) -- Arp the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13065}) -- Ohanzee the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13066}) -- Yurauk the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 13067}) -- Chogan'gada the Elder
|
||||
|
||||
-- Cata quests
|
||||
tinsert(eventQuests, {"Lunar Festival", 29734}) -- Deepforge the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 29735}) -- Stonebrand the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 29736}) -- Darkfeather the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 29737}) -- Firebeard the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 29738}) -- Moonlance the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 29739}) -- Windsong the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 29740}) -- Evershade the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 29741}) -- Sekhemi the Elder
|
||||
tinsert(eventQuests, {"Lunar Festival", 29742}) -- Menkhaf the Elder
|
||||
@@ -1,265 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
tinsert(eventQuests, {"Midsummer", 9324}) -- Stealing Orgrimmar's Flame
|
||||
tinsert(eventQuests, {"Midsummer", 9325}) -- Stealing Thunder Bluff's Flame
|
||||
tinsert(eventQuests, {"Midsummer", 9326}) -- Stealing the Undercity's Flame
|
||||
tinsert(eventQuests, {"Midsummer", 9330}) -- Stealing Stormwind's Flame
|
||||
tinsert(eventQuests, {"Midsummer", 9331}) -- Stealing Ironforge's Flame
|
||||
tinsert(eventQuests, {"Midsummer", 9332}) -- Stealing Darnassus's Flame
|
||||
tinsert(eventQuests, {"Midsummer", 9339}) -- A Thief's Reward
|
||||
tinsert(eventQuests, {"Midsummer", 9365}) -- A Thief's Reward
|
||||
|
||||
-- Removed in TBC
|
||||
tinsert(eventQuests, {"Midsummer", 9388, nil, nil, nil, nil, Expansions.Current >= Expansions.Tbc}) -- Flickering Flames in Kalimdor
|
||||
tinsert(eventQuests, {"Midsummer", 9389, nil, nil, nil, nil, Expansions.Current >= Expansions.Tbc}) -- Flickering Flames in the Eastern Kingdoms
|
||||
tinsert(eventQuests, {"Midsummer", 9319, nil, nil, nil, nil, Expansions.Current >= Expansions.Tbc}) -- A Light in Dark Places
|
||||
tinsert(eventQuests, {"Midsummer", 9386, nil, nil, nil, nil, Expansions.Current >= Expansions.Tbc}) -- A Light in Dark Places
|
||||
tinsert(eventQuests, {"Midsummer", 9367, nil, nil, nil, nil, Expansions.Current >= Expansions.Tbc}) -- The Festival of Fire
|
||||
tinsert(eventQuests, {"Midsummer", 9368, nil, nil, nil, nil, Expansions.Current >= Expansions.Tbc}) -- The Festival of Fire
|
||||
tinsert(eventQuests, {"Midsummer", 9322, nil, nil, nil, nil, Expansions.Current >= Expansions.Tbc}) -- Wild Fires in Kalimdor
|
||||
tinsert(eventQuests, {"Midsummer", 9323, nil, nil, nil, nil, Expansions.Current >= Expansions.Tbc}) -- Wild Fires in the Eastern Kingdoms
|
||||
|
||||
-- TBC quests
|
||||
tinsert(eventQuests, {"Midsummer", 11580}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11581}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11583}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11584}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11657}) -- Torch Catching
|
||||
tinsert(eventQuests, {"Midsummer", 11691, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Summon Ahune
|
||||
tinsert(eventQuests, {"Midsummer", 11696, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Ahune is Here!
|
||||
tinsert(eventQuests, {"Midsummer", 11731}) -- Torch Tossing
|
||||
tinsert(eventQuests, {"Midsummer", 11732}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11734}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11735}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11736}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11737}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11738}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11739}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11740}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11741}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11742}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11743}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11744}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11745}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11746}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11747}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11748, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11749}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11750}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11751}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11752}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11753}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11754}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11755}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11756}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11757}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11758}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11759}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11760}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11761}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11762}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11763}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11764}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11765}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11766}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11767}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11768}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11769}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11770}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11771}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11772}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11773}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11774}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11775}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11776}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11777}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11778}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11779}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11780}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11781}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11782}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11783}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11784}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11785, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11786}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11787}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11799}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11800}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11801}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11802}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11803}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 11804}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11805}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11806}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11807}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11808}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11809}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11810}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11811}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11812}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11813}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11814}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11815}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11816}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11817}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11818}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11819, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11820}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11821}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11822}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11823}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11824}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11825}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11826}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11827}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11828}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11829}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11830}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11831}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11832}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11833}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11834}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11835}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11836}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11837}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11838}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11839}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11840}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11841}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11842}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11843}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11844}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11845}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11846}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11847}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11848}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11849}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11850}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11851}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11852}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11853}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11854}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11855}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11856}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11857}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11858}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11859}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11860}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11861, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11862}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11863}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11882}) -- Playing with Fire
|
||||
tinsert(eventQuests, {"Midsummer", 11886}) -- Unusual Activity
|
||||
tinsert(eventQuests, {"Midsummer", 11891}) -- An Innocent Disguise
|
||||
tinsert(eventQuests, {"Midsummer", 11915}) -- Playing with Fire
|
||||
tinsert(eventQuests, {"Midsummer", 11917}) -- Striking Back (level 22)
|
||||
tinsert(eventQuests, {"Midsummer", 11921}) -- Midsummer
|
||||
tinsert(eventQuests, {"Midsummer", 11922}) -- Midsummer
|
||||
tinsert(eventQuests, {"Midsummer", 11923}) -- Torch Catching
|
||||
tinsert(eventQuests, {"Midsummer", 11924}) -- More Torch Catching
|
||||
tinsert(eventQuests, {"Midsummer", 11925}) -- More Torch Catching
|
||||
tinsert(eventQuests, {"Midsummer", 11926}) -- Midsummer
|
||||
tinsert(eventQuests, {"Midsummer", 11933}) -- Stealing the Exodar's Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11935}) -- Stealing Silvermoon's Flame
|
||||
tinsert(eventQuests, {"Midsummer", 11947}) -- Striking Back (level 32)
|
||||
tinsert(eventQuests, {"Midsummer", 11948}) -- Striking Back (level 43)
|
||||
tinsert(eventQuests, {"Midsummer", 11952}) -- Striking Back (level 51)
|
||||
tinsert(eventQuests, {"Midsummer", 11953}) -- Striking Back (level 60)
|
||||
tinsert(eventQuests, {"Midsummer", 11954}) -- Striking Back (level 67)
|
||||
tinsert(eventQuests, {"Midsummer", 11955, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata}) -- Ahune, the Frost Lord
|
||||
tinsert(eventQuests, {"Midsummer", 11964}) -- Incense for the Summer Scorchlings
|
||||
tinsert(eventQuests, {"Midsummer", 11966}) -- Incense for the Festival Scorchlings
|
||||
tinsert(eventQuests, {"Midsummer", 11970}) -- not sure if phase 5 -- The Master of Summer Lore
|
||||
tinsert(eventQuests, {"Midsummer", 11971}) -- not sure if phase 5 -- The Spinner of Summer Tales
|
||||
tinsert(eventQuests, {"Midsummer", 11972}) -- Shards of Ahune
|
||||
tinsert(eventQuests, {"Midsummer", 12012}) -- Inform the Elder
|
||||
|
||||
-- WotLK quests
|
||||
tinsert(eventQuests, {"Midsummer", 13440}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13441}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13442}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13443}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13444}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13445}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13446}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13447}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13449}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13450}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13451}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13453}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13454}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13455}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13457}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13458}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 13485}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13486}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13487}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13488}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13489}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13490}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13491}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13492}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13493}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13494}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13495}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13496}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13497}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13498}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13499}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 13500}) -- Honor the Flame
|
||||
|
||||
-- Cata quests
|
||||
tinsert(eventQuests, {"Midsummer", 28910}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28911}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28912}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28913}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28914}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28915}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28916}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28917}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28918}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28919}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28920}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28921}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28922}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28923}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28924}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28925}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28926}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28927}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28928}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28929}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28930}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28931}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28932}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28933}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28943}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28944}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28945}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28946}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28947}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28948}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 28949}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 28950}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 29030}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 29031}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 29036}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 29092}) -- Inform the Elder
|
||||
|
||||
-- MoP quests
|
||||
tinsert(eventQuests, {"Midsummer", 32496}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 32497}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 32498}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 32499}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 32500}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 32501}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 32502}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 32503}) -- Desecrate this Fire!
|
||||
tinsert(eventQuests, {"Midsummer", 32509}) -- Honor the Flame
|
||||
tinsert(eventQuests, {"Midsummer", 32510}) -- Honor the Flame
|
||||
@@ -1,15 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
-- WotLK quests
|
||||
tinsert(eventQuests, {"Noblegarden", 13483, nil, nil, nil, nil, Expansions.Current == Expansions.Cata}) -- Spring Gatherers
|
||||
tinsert(eventQuests, {"Noblegarden", 13484, nil, nil, nil, nil, Expansions.Current == Expansions.Cata}) -- Spring Collectors
|
||||
tinsert(eventQuests, {"Noblegarden", 13479}) -- The Great Egg Hunt
|
||||
tinsert(eventQuests, {"Noblegarden", 13480}) -- The Great Egg Hunt
|
||||
tinsert(eventQuests, {"Noblegarden", 13502}) -- A Tisket, a Tasket, a Noblegarden Basket
|
||||
tinsert(eventQuests, {"Noblegarden", 13503}) -- A Tisket, a Tasket, a Noblegarden Basket
|
||||
@@ -1,31 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
-- WotLK quests
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14023}) -- Spice Bread Stuffing
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14024}) -- Pumpkin Pie
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14028}) -- Cranberry Chutney
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14030}) -- They're Ravenous In Darnassus
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14033}) -- Candied Sweet Potatoes
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14035}) -- Slow-roasted Turkey
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14037}) -- Spice Bread Stuffing
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14040}) -- Pumpkin Pie
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14041}) -- Cranberry Chutney
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14043}) -- Candied Sweet Potatoes
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14044}) -- Undersupplied in the Undercity
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14047}) -- Slow-roasted Turkey
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14048}) -- Can't Get Enough Turkey
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14051}) -- Don't Forget The Stuffing
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14053}) -- We're Out of Cranberry Chutney Again?
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14054}) -- Easy As Pie
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14055}) -- She Says Potato
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14058}) -- She Says Potato
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14059}) -- We're Out of Cranberry Chutney Again?
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14060}) -- Easy As Pie
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14061}) -- Can't Get Enough Turkey
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14062}) -- Don't Forget The Stuffing
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14064}) -- Sharing a Bountiful Feast
|
||||
tinsert(eventQuests, {"Pilgrim's Bounty", 14065}) -- Sharing a Bountiful Feast
|
||||
@@ -1,67 +0,0 @@
|
||||
---@type QuestieEvent
|
||||
local QuestieEvent = QuestieLoader:ImportModule("QuestieEvent")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
local tinsert = table.insert
|
||||
local eventQuests = QuestieEvent.eventQuests
|
||||
|
||||
tinsert(eventQuests, {"Winter Veil", 6961}) -- Great-father Winter is Here!
|
||||
tinsert(eventQuests, {"Winter Veil", 7021}) -- Great-father Winter is Here!
|
||||
tinsert(eventQuests, {"Winter Veil", 7022}) -- Greatfather Winter is Here!
|
||||
tinsert(eventQuests, {"Winter Veil", 7023}) -- Greatfather Winter is Here!
|
||||
tinsert(eventQuests, {"Winter Veil", 7024}) -- Great-father Winter is Here!
|
||||
tinsert(eventQuests, {"Winter Veil", 6962}) -- Treats for Great-father Winter
|
||||
tinsert(eventQuests, {"Winter Veil", 7025}) -- Treats for Greatfather Winter
|
||||
tinsert(eventQuests, {"Winter Veil", 7043, nil, nil, nil, nil, Questie.IsSoD}) -- You're a Mean One...
|
||||
tinsert(eventQuests, {"Winter Veil", 6983, nil, nil, nil, nil, Questie.IsSoD}) -- You're a Mean One...
|
||||
tinsert(eventQuests, {"Winter Veil", 6984, nil, nil, nil, nil, Questie.IsSoD}) -- A Smokywood Pastures' Thank You!
|
||||
tinsert(eventQuests, {"Winter Veil", 7045, nil, nil, nil, nil, Questie.IsSoD}) -- A Smokywood Pastures' Thank You!
|
||||
tinsert(eventQuests, {"Winter Veil", 7063}) -- The Feast of Winter Veil
|
||||
tinsert(eventQuests, {"Winter Veil", 7061}) -- The Feast of Winter Veil
|
||||
tinsert(eventQuests, {"Winter Veil", 6963, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata or Questie.IsSoD}) -- Stolen Winter Veil Treats
|
||||
tinsert(eventQuests, {"Winter Veil", 7042, nil, nil, nil, nil, Expansions.Current >= Expansions.Cata or Questie.IsSoD}) -- Stolen Winter Veil Treats
|
||||
tinsert(eventQuests, {"Winter Veil", 7062}) -- The Reason for the Season
|
||||
tinsert(eventQuests, {"Winter Veil", 8763, nil, nil, nil, nil, Questie.IsSoD}) -- The Hero of the Day
|
||||
tinsert(eventQuests, {"Winter Veil", 8799, nil, nil, nil, nil, Questie.IsSoD}) -- The Hero of the Day
|
||||
tinsert(eventQuests, {"Winter Veil", 6964}) -- The Reason for the Season
|
||||
tinsert(eventQuests, {"Winter Veil", 8762, nil, nil, nil, nil, Questie.IsSoD}) -- Metzen the Reindeer
|
||||
tinsert(eventQuests, {"Winter Veil", 8746, nil, nil, nil, nil, Questie.IsSoD}) -- Metzen the Reindeer
|
||||
tinsert(eventQuests, {"Winter Veil", 8744, "25/12", "2/1"}) -- A Carefully Wrapped Present
|
||||
tinsert(eventQuests, {"Winter Veil", 8767, "25/12", "2/1"}) -- A Gently Shaken Gift
|
||||
tinsert(eventQuests, {"Winter Veil", 8768, "25/12", "2/1"}) -- A Gaily Wrapped Present
|
||||
tinsert(eventQuests, {"Winter Veil", 8769, "25/12", "2/1", nil, nil, Questie.IsSoD}) -- A Ticking Present
|
||||
tinsert(eventQuests, {"Winter Veil", 8788, "25/12", "2/1"}) -- A Gently Shaken Gift
|
||||
tinsert(eventQuests, {"Winter Veil", 8803, "25/12", "2/1"}) -- A Festive Gift
|
||||
tinsert(eventQuests, {"Winter Veil", 8827, "25/12", "2/1"}) -- Winter's Presents
|
||||
tinsert(eventQuests, {"Winter Veil", 8828, "25/12", "2/1"}) -- Winter's Presents
|
||||
tinsert(eventQuests, {"Winter Veil", 8860, "31/12", "1/1"}) -- New Year Celebrations!
|
||||
tinsert(eventQuests, {"Winter Veil", 8861, "31/12", "1/1"}) -- New Year Celebrations!
|
||||
|
||||
-- SoD quests
|
||||
tinsert(eventQuests, {"Winter Veil", 79482}) -- Stolen Winter Veil Treats
|
||||
tinsert(eventQuests, {"Winter Veil", 79483}) -- Stolen Winter Veil Treats
|
||||
tinsert(eventQuests, {"Winter Veil", 79484}) -- You're a Mean One...
|
||||
tinsert(eventQuests, {"Winter Veil", 79485}) -- You're a Mean One...
|
||||
tinsert(eventQuests, {"Winter Veil", 79486}) -- A Smokywood Pastures' Thank You!
|
||||
tinsert(eventQuests, {"Winter Veil", 79487}) -- A Smokywood Pastures' Thank You!
|
||||
tinsert(eventQuests, {"Winter Veil", 79492}) -- Metzen the Reindeer
|
||||
tinsert(eventQuests, {"Winter Veil", 79495}) -- Metzen the Reindeer
|
||||
tinsert(eventQuests, {"Winter Veil", 79501}) -- The Hero of the Day
|
||||
tinsert(eventQuests, {"Winter Veil", 79502}) -- The Hero of the Day
|
||||
tinsert(eventQuests, {"Winter Veil", 79637, "25/12", "2/1"}) -- A Ticking Present
|
||||
|
||||
-- TBC quests
|
||||
tinsert(eventQuests, {"Winter Veil", 11528, "25/12", "2/1", nil, nil, Expansions.Current >= Expansions.Cata}) -- A Winter Veil Gift
|
||||
tinsert(eventQuests, {"Winter Veil", 13203, "25/12", "2/1", nil, nil, Expansions.Current >= Expansions.Cata}) -- A Winter Veil Gift
|
||||
tinsert(eventQuests, {"Winter Veil", 13966, "25/12", "2/1", nil, nil, Expansions.Current >= Expansions.Cata}) -- A Winter Veil Gift
|
||||
|
||||
-- Cata quests
|
||||
-- tinsert(eventQuests, {"Winter Veil", 28878, "25/12", "2/1"}) -- A Winter Veil Gift -- not offered in classic servers, bad timing?
|
||||
-- tinsert(eventQuests, {"Winter Veil", 29382, "25/12", "2/1"}) -- Thanks, But No Thanks
|
||||
-- tinsert(eventQuests, {"Winter Veil", 29383, "25/12", "2/1"}) -- Thanks, But No Thanks
|
||||
tinsert(eventQuests, {"Winter Veil", 29385, "25/12", "2/1", nil, nil, Expansions.Current >= Expansions.MoP}) -- A Winter Veil Gift -- only offered in cata
|
||||
|
||||
-- MoP quests
|
||||
-- tinsert(eventQuests, {"Winter Veil", 32106, "25/12", "2/1", nil, nil, Expansions.Current >= Expansions.MoP}) -- A Winter Veil Gift -- not offered in classic servers, bad timing?
|
||||
tinsert(eventQuests, {"Winter Veil", 33252, "25/12", "2/1"}) -- A Winter Veil Gift
|
||||
@@ -1,456 +0,0 @@
|
||||
---@class QuestieCorrections
|
||||
local QuestieCorrections = QuestieLoader:CreateModule("QuestieCorrections")
|
||||
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
---@type ZoneDB
|
||||
local ZoneDB = QuestieLoader:ImportModule("ZoneDB")
|
||||
---@type QuestieLib
|
||||
local QuestieLib = QuestieLoader:ImportModule("QuestieLib")
|
||||
---@type RamerDouglasPeucker
|
||||
local RamerDouglasPeucker = QuestieLoader:ImportModule("RamerDouglasPeucker")
|
||||
---@type QuestieQuestBlacklist
|
||||
local QuestieQuestBlacklist = QuestieLoader:ImportModule("QuestieQuestBlacklist")
|
||||
---@type QuestieNPCBlacklist
|
||||
local QuestieNPCBlacklist = QuestieLoader:ImportModule("QuestieNPCBlacklist")
|
||||
---@type QuestieItemBlacklist
|
||||
local QuestieItemBlacklist = QuestieLoader:ImportModule("QuestieItemBlacklist")
|
||||
---@type HardcoreBlacklist
|
||||
local HardcoreBlacklist = QuestieLoader:ImportModule("HardcoreBlacklist")
|
||||
---@type SeasonOfDiscovery
|
||||
local SeasonOfDiscovery = QuestieLoader:ImportModule("SeasonOfDiscovery")
|
||||
---@type BlacklistFilter
|
||||
local BlacklistFilter = QuestieLoader:ImportModule("BlacklistFilter")
|
||||
|
||||
---@type QuestieQuestFixes
|
||||
local QuestieQuestFixes = QuestieLoader:ImportModule("QuestieQuestFixes")
|
||||
---@type QuestieClassicQuestReputationFixes
|
||||
local QuestieClassicQuestReputationFixes = QuestieLoader:ImportModule("QuestieClassicQuestReputationFixes")
|
||||
---@type QuestieNPCFixes
|
||||
local QuestieNPCFixes = QuestieLoader:ImportModule("QuestieNPCFixes")
|
||||
---@type QuestieItemFixes
|
||||
local QuestieItemFixes = QuestieLoader:ImportModule("QuestieItemFixes")
|
||||
---@type QuestieObjectFixes
|
||||
local QuestieObjectFixes = QuestieLoader:ImportModule("QuestieObjectFixes")
|
||||
|
||||
---@type QuestieTBCQuestFixes
|
||||
local QuestieTBCQuestFixes = QuestieLoader:ImportModule("QuestieTBCQuestFixes")
|
||||
---@type QuestieTBCNpcFixes
|
||||
local QuestieTBCNpcFixes = QuestieLoader:ImportModule("QuestieTBCNpcFixes")
|
||||
---@type QuestieTBCItemFixes
|
||||
local QuestieTBCItemFixes = QuestieLoader:ImportModule("QuestieTBCItemFixes")
|
||||
---@type QuestieTBCObjectFixes
|
||||
local QuestieTBCObjectFixes = QuestieLoader:ImportModule("QuestieTBCObjectFixes")
|
||||
|
||||
---@type QuestieWotlkQuestFixes
|
||||
local QuestieWotlkQuestFixes = QuestieLoader:ImportModule("QuestieWotlkQuestFixes")
|
||||
---@type QuestieWotlkNpcFixes
|
||||
local QuestieWotlkNpcFixes = QuestieLoader:ImportModule("QuestieWotlkNpcFixes")
|
||||
---@type QuestieWotlkItemFixes
|
||||
local QuestieWotlkItemFixes = QuestieLoader:ImportModule("QuestieWotlkItemFixes")
|
||||
---@type QuestieWotlkObjectFixes
|
||||
local QuestieWotlkObjectFixes = QuestieLoader:ImportModule("QuestieWotlkObjectFixes")
|
||||
|
||||
---@type CataQuestFixes
|
||||
local CataQuestFixes = QuestieLoader:ImportModule("CataQuestFixes")
|
||||
---@type CataNpcFixes
|
||||
local CataNpcFixes = QuestieLoader:ImportModule("CataNpcFixes")
|
||||
---@type CataItemFixes
|
||||
local CataItemFixes = QuestieLoader:ImportModule("CataItemFixes")
|
||||
---@type CataObjectFixes
|
||||
local CataObjectFixes = QuestieLoader:ImportModule("CataObjectFixes")
|
||||
|
||||
---@type MopQuestFixes
|
||||
local MopQuestFixes = QuestieLoader:ImportModule("MopQuestFixes")
|
||||
---@type MopNpcFixes
|
||||
local MopNpcFixes = QuestieLoader:ImportModule("MopNpcFixes")
|
||||
---@type MopItemFixes
|
||||
local MopItemFixes = QuestieLoader:ImportModule("MopItemFixes")
|
||||
---@type MopObjectFixes
|
||||
local MopObjectFixes = QuestieLoader:ImportModule("MopObjectFixes")
|
||||
|
||||
---@type IsleOfQuelDanas
|
||||
local IsleOfQuelDanas = QuestieLoader:ImportModule("IsleOfQuelDanas")
|
||||
|
||||
--- Automatic corrections
|
||||
local QuestieItemStartFixes = QuestieLoader:ImportModule("QuestieItemStartFixes")
|
||||
|
||||
--[[
|
||||
This file load the corrections of the database files.
|
||||
|
||||
It is a separate file so we can upstream those changes easier to cmangos and can still
|
||||
update the database files with a script.
|
||||
|
||||
Most of the corrections can be done by accessing a specific key instead of copying the
|
||||
whole object over and change it.
|
||||
You can find the keys at the beginning of each file (e.g. 'questKeys' are at the beginning of 'questDB.lua').
|
||||
|
||||
Further information on how to use this can be found at the wiki
|
||||
https://github.com/Questie/Questie/wiki/Corrections
|
||||
]] --
|
||||
|
||||
local filterExpansion = BlacklistFilter.filterExpansion
|
||||
|
||||
QuestieCorrections.killCreditObjectiveFirst = {}
|
||||
QuestieCorrections.objectObjectiveFirst = {}
|
||||
QuestieCorrections.itemObjectiveFirst = {}
|
||||
QuestieCorrections.eventObjectiveFirst = {}
|
||||
QuestieCorrections.spellObjectiveFirst = {}
|
||||
|
||||
do
|
||||
local type, assert = type, assert
|
||||
--- Add runtime overrides for the database
|
||||
---@param override_table table<number, table<number, string|table|number>>
|
||||
---@param new_overrides table<number, table<number, string|table|number>>
|
||||
local function addOverride(override_table, new_overrides)
|
||||
assert(type(override_table) == "table", "Override table must be a table!")
|
||||
assert(type(new_overrides) == "table", "New overrides must be a table!")
|
||||
for id, data in pairs(new_overrides) do
|
||||
assert(type(id) == "number", "Override id must be a number!")
|
||||
assert(type(data) == "table", "Override data must be a table!")
|
||||
-- If no override exist assign it
|
||||
if not override_table[id] then
|
||||
override_table[id] = data
|
||||
else
|
||||
-- Override already exists, merge the new data
|
||||
for key, value in pairs(data) do
|
||||
override_table[id][key] = value
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function QuestieCorrections:MinimalInit() -- db already compiled
|
||||
-- Classic Era Corrections
|
||||
addOverride(QuestieDB.itemDataOverrides, QuestieItemFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.npcDataOverrides, QuestieNPCFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.objectDataOverrides, QuestieObjectFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.questDataOverrides, QuestieQuestFixes:LoadFactionFixes())
|
||||
|
||||
-- TBC Corrections
|
||||
if (Expansions.Current >= Expansions.Tbc) then
|
||||
addOverride(QuestieDB.itemDataOverrides, QuestieTBCItemFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.npcDataOverrides, QuestieTBCNpcFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.objectDataOverrides, QuestieTBCObjectFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.questDataOverrides, QuestieTBCQuestFixes:LoadFactionFixes())
|
||||
|
||||
addOverride(QuestieDB.questDataOverrides, QuestieTBCQuestFixes:LoadContentPhaseFixes())
|
||||
end
|
||||
|
||||
-- WOTLK Corrections
|
||||
if (Expansions.Current >= Expansions.Wotlk) then
|
||||
addOverride(QuestieDB.npcDataOverrides, QuestieWotlkNpcFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.itemDataOverrides, QuestieWotlkItemFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.objectDataOverrides, QuestieWotlkObjectFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.questDataOverrides, QuestieWotlkQuestFixes:LoadFactionFixes())
|
||||
-- TitanReforged Corrections
|
||||
if Questie.IsTitanReforged then
|
||||
addOverride(QuestieDB.npcDataOverrides, QuestieWotlkNpcFixes:LoadTitanReforgedFixes())
|
||||
addOverride(QuestieDB.questDataOverrides, QuestieWotlkQuestFixes:LoadTitanReforgedFixes())
|
||||
addOverride(QuestieDB.itemDataOverrides, QuestieWotlkItemFixes:LoadTitanReforgedFixes())
|
||||
-- TO DO: improve this
|
||||
-- this must be behind locale check to prevent empty table return error
|
||||
if GetLocale() == "zhCN" then
|
||||
addOverride(QuestieDB.questDataOverrides, Questie.LoadTitanQuestLookupOverrides())
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- CATA Corrections
|
||||
if (Expansions.Current >= Expansions.Cata) then
|
||||
addOverride(QuestieDB.questDataOverrides, CataQuestFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.npcDataOverrides, CataNpcFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.itemDataOverrides, CataItemFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.objectDataOverrides, CataObjectFixes:LoadFactionFixes())
|
||||
end
|
||||
|
||||
-- MOP Corrections
|
||||
if (Expansions.Current >= Expansions.MoP) then
|
||||
addOverride(QuestieDB.questDataOverrides, MopQuestFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.npcDataOverrides, MopNpcFixes:LoadFactionFixes())
|
||||
addOverride(QuestieDB.objectDataOverrides, MopObjectFixes:LoadFactionFixes())
|
||||
|
||||
addOverride(QuestieDB.questDataOverrides, MopQuestFixes:LoadContentPhaseFixes())
|
||||
addOverride(QuestieDB.npcDataOverrides, MopNpcFixes:LoadContentPhaseFixes())
|
||||
addOverride(QuestieDB.objectDataOverrides, MopObjectFixes:LoadContentPhaseFixes())
|
||||
end
|
||||
|
||||
-- Season of Discovery Corrections
|
||||
if Questie.IsSoD then
|
||||
addOverride(QuestieDB.questDataOverrides, SeasonOfDiscovery:LoadFactionQuestFixes())
|
||||
end
|
||||
|
||||
QuestieCorrections.questItemBlacklist = filterExpansion(QuestieItemBlacklist:Load())
|
||||
QuestieCorrections.questNPCBlacklist = filterExpansion(QuestieNPCBlacklist:Load())
|
||||
QuestieCorrections.hiddenQuests = filterExpansion(QuestieQuestBlacklist:Load())
|
||||
|
||||
-- TBC Quel Danas Blacklist
|
||||
if Questie.db.global.isleOfQuelDanasPhase == IsleOfQuelDanas.MAX_ISLE_OF_QUEL_DANAS_PHASES then
|
||||
for id, hide in pairs(IsleOfQuelDanas.quests[Questie.db.global.isleOfQuelDanasPhase]) do
|
||||
-- This has to be a nil-check, because the value could be false
|
||||
if (QuestieCorrections.hiddenQuests[id] == nil) then
|
||||
QuestieCorrections.hiddenQuests[id] = hide
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- Wotlk Blacklist
|
||||
if (Expansions.Current >= Expansions.Wotlk) then
|
||||
-- We only add blacklist if no blacklist entry for the quest already exists
|
||||
for id, hide in pairs(QuestieQuestBlacklist.LoadAutoBlacklistWotlk()) do
|
||||
-- This has to be a nil-check, because the value could be false
|
||||
if (QuestieCorrections.hiddenQuests[id] == nil) then
|
||||
QuestieCorrections.hiddenQuests[id] = hide
|
||||
end
|
||||
end
|
||||
-- Also do TitanReforged blacklists
|
||||
if Questie.IsTitanReforged then
|
||||
for id, hide in pairs(QuestieQuestBlacklist.LoadAutoBlacklistIsTitanReforged()) do
|
||||
-- This has to be a nil-check, because the value could be false
|
||||
if (QuestieCorrections.hiddenQuests[id] == nil) then
|
||||
QuestieCorrections.hiddenQuests[id] = hide
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- Hardcore Blacklist
|
||||
if (Questie.IsHardcore) then
|
||||
for id, _ in pairs(HardcoreBlacklist:Load()) do
|
||||
QuestieCorrections.hiddenQuests[id] = true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
---@param databaseTableName string The name of the QuestieDB field that should be manipulated (e.g. "itemData", "questData")
|
||||
---@param corrections table All corrections for the given databaseTableName (e.g. all quest corrections)
|
||||
---@param reversedKeys table The reverted QuestieDB keys for the given databaseTableName (e.g. QuestieDB.questKeys)
|
||||
---@param validationTables table Only used by the CI validation scripts to validate the corrections against the original database values and find irrelevant corrections
|
||||
---@param noOverwrites true? Do not overwrite existing values
|
||||
---@param noNewEntries true? Do not create new entries in the database, unless the entry has a name field (key 1)
|
||||
local _LoadCorrections = function(databaseTableName, corrections, reversedKeys, validationTables, noOverwrites, noNewEntries)
|
||||
for id, data in pairs(corrections) do
|
||||
for key, value in pairs(data) do
|
||||
-- Create a new entry if missing unless noNewEntries is set.
|
||||
-- Entries with a name field (key 1) are always created, as they define something entirely missing
|
||||
if (not QuestieDB[databaseTableName][id]) and ((not noNewEntries) or data[1] ~= nil) then
|
||||
QuestieDB[databaseTableName][id] = {}
|
||||
end
|
||||
if validationTables and QuestieDB[databaseTableName][id] then
|
||||
if value and QuestieLib.equals(QuestieDB[databaseTableName][id][key], value) and validationTables[databaseTableName][id] and
|
||||
QuestieLib.equals(validationTables[databaseTableName][id][key], value) then
|
||||
Questie.Warning("Correction of " ..
|
||||
databaseTableName .. " " .. tostring(id) .. "." .. reversedKeys[key] .. " matches base DB! Value:" .. tostring(value))
|
||||
end
|
||||
end
|
||||
if QuestieDB[databaseTableName][id] then
|
||||
if noOverwrites and QuestieDB[databaseTableName][id][key] == nil then
|
||||
QuestieDB[databaseTableName][id][key] = value
|
||||
elseif not noOverwrites then
|
||||
QuestieDB[databaseTableName][id][key] = value
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
---@param validationTables table? Only used by the CI validation scripts to validate the corrections against the original database values and find irrelevant corrections
|
||||
function QuestieCorrections:Initialize(validationTables)
|
||||
-- Classic Corrections
|
||||
if Questie.IsClassic then
|
||||
-- This data is only correct for Era/SoX, for the other expansions we trust the base DB
|
||||
_LoadCorrections("questData", QuestieClassicQuestReputationFixes:Load(), QuestieDB.questKeysReversed, validationTables)
|
||||
end
|
||||
|
||||
local classicNoNewEntries = Expansions.Current > Expansions.Era or nil
|
||||
_LoadCorrections("questData", QuestieQuestFixes:Load(), QuestieDB.questKeysReversed, validationTables, nil, classicNoNewEntries)
|
||||
_LoadCorrections("npcData", QuestieNPCFixes:Load(), QuestieDB.npcKeysReversed, validationTables, nil, classicNoNewEntries)
|
||||
_LoadCorrections("itemData", QuestieItemFixes:Load(), QuestieDB.itemKeysReversed, validationTables, nil, classicNoNewEntries)
|
||||
_LoadCorrections("objectData", QuestieObjectFixes:Load(), QuestieDB.objectKeysReversed, validationTables, nil, classicNoNewEntries)
|
||||
|
||||
if Expansions.Current >= Expansions.Tbc then
|
||||
local tbcNoNewEntries = Expansions.Current > Expansions.Tbc or nil
|
||||
_LoadCorrections("questData", QuestieTBCQuestFixes:Load(), QuestieDB.questKeysReversed, validationTables, nil, tbcNoNewEntries)
|
||||
_LoadCorrections("npcData", QuestieTBCNpcFixes:Load(), QuestieDB.npcKeysReversed, validationTables, nil, tbcNoNewEntries)
|
||||
_LoadCorrections("itemData", QuestieTBCItemFixes:Load(), QuestieDB.itemKeysReversed, validationTables, nil, tbcNoNewEntries)
|
||||
_LoadCorrections("objectData", QuestieTBCObjectFixes:Load(), QuestieDB.objectKeysReversed, validationTables, nil, tbcNoNewEntries)
|
||||
end
|
||||
|
||||
if Expansions.Current >= Expansions.Wotlk then
|
||||
local wotlkNoNewEntries = Expansions.Current > Expansions.Wotlk or nil
|
||||
_LoadCorrections("questData", QuestieWotlkQuestFixes:Load(), QuestieDB.questKeysReversed, validationTables, nil, wotlkNoNewEntries)
|
||||
_LoadCorrections("npcData", QuestieWotlkNpcFixes:LoadAutomatics(), QuestieDB.npcKeysReversed, validationTables, nil, wotlkNoNewEntries)
|
||||
_LoadCorrections("npcData", QuestieWotlkNpcFixes:Load(), QuestieDB.npcKeysReversed, validationTables, nil, wotlkNoNewEntries)
|
||||
_LoadCorrections("itemData", QuestieWotlkItemFixes:Load(), QuestieDB.itemKeysReversed, validationTables, nil, wotlkNoNewEntries)
|
||||
_LoadCorrections("objectData", QuestieWotlkObjectFixes:Load(), QuestieDB.objectKeysReversed, validationTables, nil, wotlkNoNewEntries)
|
||||
end
|
||||
|
||||
if Expansions.Current >= Expansions.Cata then
|
||||
local cataNoNewEntries = Expansions.Current > Expansions.Cata or nil
|
||||
_LoadCorrections("questData", CataQuestFixes.Load(), QuestieDB.questKeysReversed, validationTables, nil, cataNoNewEntries)
|
||||
_LoadCorrections("npcData", CataNpcFixes.Load(), QuestieDB.npcKeysReversed, validationTables, nil, cataNoNewEntries)
|
||||
_LoadCorrections("itemData", CataItemFixes.Load(), QuestieDB.itemKeysReversed, validationTables, nil, cataNoNewEntries)
|
||||
_LoadCorrections("objectData", CataObjectFixes.Load(), QuestieDB.objectKeysReversed, validationTables, nil, cataNoNewEntries)
|
||||
end
|
||||
|
||||
if Expansions.Current >= Expansions.MoP then
|
||||
_LoadCorrections("questData", MopQuestFixes.Load(), QuestieDB.questKeysReversed, validationTables)
|
||||
_LoadCorrections("npcData", MopNpcFixes.Load(), QuestieDB.npcKeysReversed, validationTables)
|
||||
_LoadCorrections("itemData", MopItemFixes.Load(), QuestieDB.itemKeysReversed, validationTables)
|
||||
_LoadCorrections("objectData", MopObjectFixes.Load(), QuestieDB.objectKeysReversed, validationTables)
|
||||
end
|
||||
|
||||
if Questie.IsSoD then
|
||||
_LoadCorrections("questData", SeasonOfDiscovery:LoadBaseQuests(), QuestieDB.questKeysReversed, validationTables)
|
||||
_LoadCorrections("questData", SeasonOfDiscovery:LoadQuests(), QuestieDB.questKeysReversed, validationTables)
|
||||
_LoadCorrections("npcData", SeasonOfDiscovery:LoadBaseNPCs(), QuestieDB.npcKeysReversed, validationTables)
|
||||
_LoadCorrections("npcData", SeasonOfDiscovery:LoadNPCs(), QuestieDB.npcKeysReversed, validationTables)
|
||||
_LoadCorrections("itemData", SeasonOfDiscovery:LoadBaseItems(), QuestieDB.itemKeysReversed, validationTables)
|
||||
_LoadCorrections("itemData", SeasonOfDiscovery:LoadItems(), QuestieDB.itemKeysReversed, validationTables)
|
||||
_LoadCorrections("objectData", SeasonOfDiscovery:LoadBaseObjects(), QuestieDB.objectKeysReversed, validationTables)
|
||||
_LoadCorrections("objectData", SeasonOfDiscovery:LoadObjects(), QuestieDB.objectKeysReversed, validationTables)
|
||||
end
|
||||
|
||||
_LoadCorrections("itemData", QuestieItemStartFixes:LoadAutomaticQuestStarts(), QuestieDB.itemKeysReversed, validationTables, true, true)
|
||||
|
||||
local patchCount = 0
|
||||
for _, quest in pairs(QuestieDB.questData) do
|
||||
if (not quest[QuestieDB.questKeys.requiredRaces]) or quest[QuestieDB.questKeys.requiredRaces] == 0 then
|
||||
-- check against questgiver
|
||||
local canHorde = false
|
||||
local canAlliance = false
|
||||
local starts = quest[QuestieDB.questKeys.startedBy]
|
||||
if starts then
|
||||
starts = starts[1]
|
||||
if starts then
|
||||
for _, id in pairs(starts) do
|
||||
local npc = QuestieDB.npcData[id]
|
||||
if npc then
|
||||
local friendly = npc[QuestieDB.npcKeys.friendlyToFaction]
|
||||
if friendly then
|
||||
if friendly == "H" then
|
||||
canHorde = true
|
||||
elseif friendly == "A" then
|
||||
canAlliance = true
|
||||
elseif friendly == "AH" then
|
||||
canAlliance = true
|
||||
canHorde = true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
if canAlliance ~= canHorde then
|
||||
patchCount = patchCount + 1
|
||||
if canAlliance then
|
||||
quest[QuestieDB.questKeys.requiredRaces] = QuestieDB.raceKeys.ALL_ALLIANCE
|
||||
else
|
||||
quest[QuestieDB.questKeys.requiredRaces] = QuestieDB.raceKeys.ALL_HORDE
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
QuestieCorrections:MinimalInit()
|
||||
|
||||
end
|
||||
|
||||
local WAYPOINT_MIN_DISTANCE = 1.5 -- todo: make this a config value maybe?
|
||||
local ZONE_SCALES = {
|
||||
[ZoneDB.zoneIDs.STORMWIND_CITY] = 0.5,
|
||||
[ZoneDB.zoneIDs.IRONFORGE] = 0.5,
|
||||
[ZoneDB.zoneIDs.TELDRASSIL] = 0.5,
|
||||
|
||||
[ZoneDB.zoneIDs.ORGRIMMAR] = 0.5,
|
||||
[ZoneDB.zoneIDs.THUNDER_BLUFF] = 0.5,
|
||||
[ZoneDB.zoneIDs.UNDERCITY] = 0.5,
|
||||
}
|
||||
|
||||
|
||||
local abs, sqrt = math.abs, math.sqrt
|
||||
local function euclid(x, y, i, e)
|
||||
local xd = abs(x - i)
|
||||
local yd = abs(y - e)
|
||||
return sqrt(xd * xd + yd * yd)
|
||||
end
|
||||
|
||||
function QuestieCorrections:OptimizeWaypoints(waypointData)
|
||||
local newWaypointZones = {}
|
||||
for zone, waypointList in pairs(waypointData) do
|
||||
local newWaypointList = {}
|
||||
if waypointList[1] and type(waypointList[1][1]) == "number" then
|
||||
waypointList = {waypointList} -- corrections support both {{x,y}, ...} and {{{x,y}, ...}, {{x,y}, ...}, ...}
|
||||
end
|
||||
for _, waypoints in pairs(waypointList) do
|
||||
-- apply RDP algorithm
|
||||
local minDist = WAYPOINT_MIN_DISTANCE * (ZONE_SCALES[zone] or 1)
|
||||
local newWaypoints = RamerDouglasPeucker(waypoints, 0.1, true)
|
||||
|
||||
waypoints = newWaypoints
|
||||
newWaypoints = {}
|
||||
|
||||
-- subdivide waypoints where needed
|
||||
-- We do this because the clickable area of waypoint lines can only be a square, so lines need to be broken up in some places
|
||||
local lastWay
|
||||
for _, way in pairs(waypoints) do
|
||||
if lastWay then
|
||||
local dist = euclid(way[1], way[2], lastWay[1], lastWay[2])
|
||||
if dist > minDist then
|
||||
local divs = math.ceil(dist/minDist)
|
||||
for i=1,divs do
|
||||
local mul0 = i/divs
|
||||
local mul1 = 1-mul0
|
||||
newWaypoints[#newWaypoints+1] = {way[1] * mul0 + lastWay[1] * mul1, way[2] * mul0 + lastWay[2] * mul1}
|
||||
end
|
||||
else
|
||||
newWaypoints[#newWaypoints+1] = way
|
||||
end
|
||||
else
|
||||
newWaypoints[#newWaypoints+1] = way
|
||||
end
|
||||
lastWay = way
|
||||
end
|
||||
newWaypointList[#newWaypointList+1] = newWaypoints
|
||||
end
|
||||
newWaypointZones[zone] = newWaypointList
|
||||
end
|
||||
return newWaypointZones
|
||||
end
|
||||
|
||||
function QuestieCorrections:PreCompile() -- this happens only if we are about to compile the database. Run intensive preprocessing tasks here (like ramer-douglas-peucker)
|
||||
local yieldLimit = 500 -- 500 seems like a good number
|
||||
local waypointKey = QuestieDB.npcKeys["waypoints"]
|
||||
local npcData = QuestieDB.npcData
|
||||
|
||||
local count = 0
|
||||
for id, data in pairs(npcData) do
|
||||
local way = data[waypointKey]
|
||||
if way then
|
||||
npcData[id][waypointKey] = QuestieCorrections:OptimizeWaypoints(way)
|
||||
end
|
||||
|
||||
if count > yieldLimit then
|
||||
count = 0
|
||||
coroutine.yield()
|
||||
end
|
||||
count = count + 1
|
||||
end
|
||||
|
||||
waypointKey = QuestieDB.objectKeys["waypoints"]
|
||||
local objData = QuestieDB.objectData
|
||||
for id, data in pairs(objData) do
|
||||
local way = data[waypointKey]
|
||||
if way then
|
||||
objData[id][waypointKey] = QuestieCorrections:OptimizeWaypoints(way)
|
||||
end
|
||||
|
||||
if count > yieldLimit then
|
||||
count = 0
|
||||
coroutine.yield()
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,252 +0,0 @@
|
||||
---@class QuestieItemBlacklist
|
||||
local QuestieItemBlacklist = QuestieLoader:CreateModule("QuestieItemBlacklist")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
---@return table<ItemId, boolean>
|
||||
function QuestieItemBlacklist:Load()
|
||||
return {
|
||||
[765] = true, -- silverleaf
|
||||
[774] = true, -- malachite
|
||||
[783] = true, -- Light Hide
|
||||
[785] = true, -- mageroyal
|
||||
[929] = true, -- Healing Potion
|
||||
[1179] = true, -- ice cold milk
|
||||
[1206] = true, -- moss agate
|
||||
[1210] = true, -- shadowgem
|
||||
[1529] = true, -- jade
|
||||
[1705] = true, -- lesser moonstone
|
||||
[2318] = true, -- Light Leather
|
||||
[2319] = true, -- Medium Leather
|
||||
[2447] = true, -- peacebloom
|
||||
[2449] = true, -- earthroot
|
||||
[2450] = true, -- briarthorn
|
||||
[2452] = true, -- swiftthistle
|
||||
[2453] = true, -- bruiseweed
|
||||
[2455] = true, -- Minor Mana Potion
|
||||
[2589] = true, -- linen cloth
|
||||
[2592] = true, -- wool cloth
|
||||
[2842] = true, -- Silver Bar
|
||||
[2934] = true, -- Ruined Leather Scraps
|
||||
[2997] = true, -- bolt of wool
|
||||
[3355] = true, -- wild steelbloom
|
||||
[3356] = true, -- kingsblood
|
||||
[3357] = true, -- liferoot
|
||||
[3358] = true, -- khadgar's whisker
|
||||
[3369] = true, -- grave moss
|
||||
[3818] = true, -- fadeleaf
|
||||
[3819] = true, -- wintersbite
|
||||
[3820] = true, -- stranglekelp
|
||||
[3821] = true, -- goldthorn
|
||||
[3864] = true, -- citrine
|
||||
[3927] = true, -- fine aged cheddar
|
||||
[4232] = true, -- Medium Hide
|
||||
[4234] = true, -- Heavy Leather
|
||||
[4235] = true, -- Heavy Hide
|
||||
[4304] = true, -- Thick Leather
|
||||
[4306] = true, -- silk cloth
|
||||
[4338] = true, -- mageweave
|
||||
[4625] = true, -- firebloom
|
||||
[7079] = true, -- globe of water
|
||||
[7909] = true, -- aquamarine
|
||||
[7910] = true, -- star ruby
|
||||
[7923] = Expansions.Current >= Expansions.Cata, -- Defias Tower Key
|
||||
[8072] = Expansions.Current >= Expansions.Cata, -- Silixiz's Tower Key
|
||||
[8153] = true, -- wildvine
|
||||
[8169] = true, -- Thick Hide
|
||||
[8170] = true, -- Rugged Leather
|
||||
[8171] = true, -- Rugged Hide
|
||||
[8244] = true, -- flawless-draenethyst-sphere
|
||||
[8831] = true, -- purple lotus
|
||||
[8836] = true, -- arthas tears
|
||||
[8838] = true, -- sungrass
|
||||
[8839] = true, -- blindweed
|
||||
[8845] = true, -- ghost mushroom
|
||||
[8846] = true, -- gromsblood
|
||||
[8932] = true, -- Alterac Swiss
|
||||
[8956] = true, -- Oil of Immolation
|
||||
[9061] = true, -- Goblin Rocket Fuel
|
||||
[10561] = true, -- Mithril Casing
|
||||
[10593] = true, -- imperfect-draenethyst-fragment
|
||||
[10757] = Expansions.Current >= Expansions.Cata, -- Ward of the Defiler
|
||||
[11178] = true, -- Large Radiant Shard
|
||||
[12207] = true, -- giant egg
|
||||
[12361] = true, -- blue sapphire
|
||||
[12363] = true, -- arcane crystal
|
||||
[12364] = true, -- huge emerald
|
||||
[12799] = true, -- large opal
|
||||
[12800] = true, -- azerothian diamond
|
||||
[13422] = true, -- stonescale-eel
|
||||
[13444] = true, -- major mana potion
|
||||
[13446] = true, -- Major Healing Potion
|
||||
[13461] = true, -- Greater Arcane Protection Potion
|
||||
[13463] = true, -- dreamfoil
|
||||
[13464] = true, -- golden sansam
|
||||
[13465] = true, -- mountain silversage
|
||||
[13466] = true, -- plaguebloom
|
||||
[13467] = true, -- icecap
|
||||
[13468] = true, -- black lotus
|
||||
[13757] = true, -- Lightning Eel
|
||||
[14047] = true, -- runecloth
|
||||
[14048] = true, -- bolt of runecloth
|
||||
[14227] = true, -- Ironweb Spider Silk
|
||||
[14344] = true, -- large brilliant shard
|
||||
[14530] = true, -- Heavy Runecloth Bandage
|
||||
[15992] = true, -- Dense Blasting Powder
|
||||
[18335] = true, -- Pristine Black Diamond
|
||||
[19440] = true, -- Powerful Anti-Venom
|
||||
[15417] = true, -- Devilsaur Leather
|
||||
[15419] = true, -- Warbear Leather
|
||||
[15422] = true, -- Frostsaber Leather
|
||||
[15423] = true, -- Chimera Leather
|
||||
[17012] = true, -- Core Leather
|
||||
[19767] = true, -- Primal Bat Leather
|
||||
[19768] = true, -- Primal Tiger Leather
|
||||
|
||||
[20452] = true, -- Smoked Desert Dumplings
|
||||
|
||||
-- stranglethorn pages
|
||||
[2725] = true,
|
||||
[2728] = true,
|
||||
[2730] = true,
|
||||
[2732] = true,
|
||||
[2734] = true,
|
||||
[2735] = true,
|
||||
[2738] = true,
|
||||
[2740] = true,
|
||||
[2742] = true,
|
||||
[2744] = true,
|
||||
[2745] = true,
|
||||
[2748] = true,
|
||||
[2749] = true,
|
||||
[2750] = true,
|
||||
[2751] = true,
|
||||
|
||||
-- shredder operating manual
|
||||
[16645] = true,
|
||||
[16646] = true,
|
||||
[16647] = true,
|
||||
[16648] = true,
|
||||
[16649] = true,
|
||||
[16650] = true,
|
||||
[16651] = true,
|
||||
[16652] = true,
|
||||
[16653] = true,
|
||||
[16654] = true,
|
||||
[16655] = true,
|
||||
[16656] = true,
|
||||
|
||||
--zul'gurub coins and bijous
|
||||
[19698] = true,
|
||||
[19699] = true,
|
||||
[19700] = true,
|
||||
[19701] = true,
|
||||
[19702] = true,
|
||||
[19703] = true,
|
||||
[19704] = true,
|
||||
[19705] = true,
|
||||
[19706] = true,
|
||||
[19707] = true,
|
||||
[19708] = true,
|
||||
[19709] = true,
|
||||
[19710] = true,
|
||||
[19711] = true,
|
||||
[19712] = true,
|
||||
[19713] = true,
|
||||
[19714] = true,
|
||||
[19715] = true,
|
||||
|
||||
--ahn'qiraj scarabs and idols
|
||||
[20858] = true,
|
||||
[20859] = true,
|
||||
[20860] = true,
|
||||
[20861] = true,
|
||||
[20862] = true,
|
||||
[20863] = true,
|
||||
[20864] = true,
|
||||
[20865] = true,
|
||||
[20866] = true,
|
||||
[20867] = true,
|
||||
[20868] = true,
|
||||
[20869] = true,
|
||||
[20870] = true,
|
||||
[20871] = true,
|
||||
[20872] = true,
|
||||
[20873] = true,
|
||||
[20874] = true,
|
||||
[20875] = true,
|
||||
[20876] = true,
|
||||
[20877] = true,
|
||||
[20878] = true,
|
||||
[20879] = true,
|
||||
[20889] = true,
|
||||
|
||||
--Tier 0.5 & Phase 5
|
||||
[4265] = true, -- Heavy Armor Kit
|
||||
[15564] = true, -- Rugged Armor Kit
|
||||
[16671] = true, -- Bindings of Elements
|
||||
[16673] = true, -- Cord of Elements
|
||||
[16680] = true, -- Beaststalker's Belt
|
||||
[16681] = true, -- Beaststalker's Bindings
|
||||
[16683] = true, -- Magister's Bindings
|
||||
[16685] = true, -- Magister's Belt
|
||||
[16696] = true, -- Devout Belt
|
||||
[16697] = true, -- Devout Bracers
|
||||
[16702] = true, -- Dreadmist Belt
|
||||
[16703] = true, -- Dreadmist Bracers
|
||||
[16705] = true, -- Dreadmist Wraps
|
||||
[16710] = true, -- Shadowcraft Bracers
|
||||
[16713] = true, -- Shadowcraft Belt
|
||||
[16714] = true, -- Wildheart Bracers
|
||||
[16716] = true, -- Wildheart Belt
|
||||
[16722] = true, -- Lightforge Bracers
|
||||
[16723] = true, -- Lightforge Belt
|
||||
[16735] = true, -- Bracers of Valor
|
||||
[16736] = true, -- Belt of Valor
|
||||
[20520] = true, -- Dark Rune
|
||||
|
||||
-- Phase 6
|
||||
[12811] = true, -- righteous orb
|
||||
[22525] = true, -- crypt fiend parts
|
||||
[22526] = true, -- bone fragments
|
||||
[22527] = true, -- core of elements
|
||||
[22528] = true, -- dark iron scraps
|
||||
[22529] = true, -- savage frond
|
||||
|
||||
-- TBC Phase 1
|
||||
[21887] = true, -- Knothide Leather
|
||||
[22445] = true, -- Arcane Dust
|
||||
[22572] = true, -- Mote of Air
|
||||
[22573] = true, -- Mote of Earth
|
||||
[22574] = true, -- Mote of Fire
|
||||
[22575] = true, -- Mote of Life
|
||||
[22576] = true, -- Mote of Mana
|
||||
[22577] = true, -- Mote of Shadow
|
||||
[22578] = true, -- Mote of Water
|
||||
[22786] = true, -- Dreaming Glory
|
||||
[22790] = true, -- Ancient Lichen
|
||||
[22829] = true, -- Super Healing Potion
|
||||
[22832] = true, -- Super Mana Potion
|
||||
[23445] = true, -- Fel Iron Bar
|
||||
[23793] = true, -- Heavy Knothide Leather
|
||||
[24368] = true, -- Coilfang Armaments
|
||||
[24401] = true, -- Unidentified Plant Parts
|
||||
[26042] = true, -- Oshu'gun Crystal Powder Sample
|
||||
[26043] = true, -- Oshu'gun Crystal Powder Sample
|
||||
[29425] = true, -- Mark of Kiljaeden
|
||||
[29426] = true, -- Firewing Signet
|
||||
[29460] = true, -- Ethereum Prison Key
|
||||
[29739] = true, -- Arcane Tome
|
||||
[29740] = true, -- Fel Armament
|
||||
[30809] = true, -- Mark of Sargeras
|
||||
[30810] = true, -- Sunfury Signet
|
||||
|
||||
-- Wrath of the Lich King : Phase 1
|
||||
[33470] = true, -- Frostweave Cloth
|
||||
[42780] = true, -- Relic of Ulduar
|
||||
[43013] = true, -- Chilled Meat
|
||||
|
||||
-- SoD
|
||||
[231313] = true, -- Grimy Rune (dropped by any level 55+ mob)
|
||||
}
|
||||
end
|
||||
@@ -1,31 +0,0 @@
|
||||
---@class QuestieNPCBlacklist
|
||||
local QuestieNPCBlacklist = QuestieLoader:CreateModule("QuestieNPCBlacklist")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
---@type ContentPhases
|
||||
local ContentPhases = QuestieLoader:ImportModule("ContentPhases")
|
||||
|
||||
---@return table<NpcId, boolean>
|
||||
function QuestieNPCBlacklist:Load()
|
||||
return {
|
||||
[3032] = Expansions.Current >= Expansions.Cata, -- Beram Skychaser
|
||||
[7666] = Expansions.Current >= Expansions.Cata, -- Archmage Allistarj
|
||||
[8001] = true,
|
||||
[12397] = Questie.IsSoD, -- Lord Kazzak
|
||||
[13151] = Expansions.Current == Expansions.Era, -- Syndicate Master Ryson
|
||||
[13153] = Expansions.Current == Expansions.Era, -- Commander Mulfort
|
||||
[13154] = Expansions.Current == Expansions.Era, -- Commander Louis Philips
|
||||
[13319] = Expansions.Current == Expansions.Era, -- Commander Duffy
|
||||
[13320] = Expansions.Current == Expansions.Era, -- Commander Karl Philips
|
||||
[13377] = Expansions.Current == Expansions.Era, -- Master Engineer Zinfizzlex
|
||||
[13446] = Expansions.Current == Expansions.Era, -- Field Marshal Teravaine
|
||||
[13449] = Expansions.Current == Expansions.Era, -- Warmaster Garrick
|
||||
[15799] = Expansions.Current == Expansions.Era, -- Colossus Researcher Eazel (AQ Opening event)
|
||||
[17076] = (Expansions.Current == Expansions.Tbc and ContentPhases.activePhases.TBC >= 5) or (Expansions.Current >= Expansions.Wotlk), -- Lady Liadrin - removed starting with SWP patch
|
||||
[17544] = (Expansions.Current == Expansions.Tbc and ContentPhases.activePhases.TBC >= 5) or (Expansions.Current >= Expansions.Wotlk), -- M'uru - removed starting with SWP patch
|
||||
[21155] = true, -- Senior Sergeant Eveningshade
|
||||
[25223] = (Expansions.Current == Expansions.Tbc and ContentPhases.activePhases.TBC < 5), -- Lord Solanar Bloodwrath - added with SWP patch
|
||||
[30676] = Expansions.Current >= Expansions.Cata, -- Chronicler Bah'Kini (outside of dungeon version of this NPC)
|
||||
[178420] = (Expansions.Current == Expansions.Tbc and ContentPhases.activePhases.TBC >= 5) or (Expansions.Current >= Expansions.Wotlk), -- Magister Astalor Bloodsworn - removed starting with SWP patch
|
||||
}
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,660 +0,0 @@
|
||||
---@class SeasonOfDiscovery
|
||||
local SeasonOfDiscovery = QuestieLoader:CreateModule("SeasonOfDiscovery")
|
||||
-------------------------
|
||||
--Import modules.
|
||||
-------------------------
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
---@type ContentPhases
|
||||
local ContentPhases = QuestieLoader:ImportModule("ContentPhases")
|
||||
|
||||
local runeQuestsInSoD = {-- List quests here to have them flagged as Rune quests in Season of Discovery
|
||||
[1470] = 1, -- Warlock Metamorphosis Part 1
|
||||
[4763] = 1, -- Warlock Shadow Bolt Volley Darkshore
|
||||
[76156] = 1, -- Shaman Lava Lash Part 1
|
||||
[76160] = 1, -- Shaman Lava Lash Part 2
|
||||
[76240] = 1, -- Shaman Lava Lash Part 3
|
||||
[77568] = 1, -- Hunter Chimera Shot
|
||||
[77571] = 1, -- Druid Fury of Stormrage Alliance
|
||||
[77573] = 1, -- Rogue Shadowstrike Nightelf
|
||||
[77574] = 1, -- Priest Penance
|
||||
[77575] = 1, -- Warrior Victory Rush
|
||||
[77582] = 1, -- Warrior Victory Rush
|
||||
[77583] = 1, -- Rogue Shadowstrike Orc
|
||||
[77584] = 1, -- Hunter Chimera Shot
|
||||
[77585] = 1, -- Shaman Overload
|
||||
[77586] = 1, -- Warlock Haunt
|
||||
[77587] = 1, -- Shaman Overload
|
||||
[77588] = 1, -- Warrior Victory Rush
|
||||
[77590] = 1, -- Hunter Chimera Shot
|
||||
[77592] = 1, -- Rogue Shadowstrike Troll
|
||||
[77616] = 1, -- Warrior Victory Rush
|
||||
[77617] = 1, -- Paladin Crusader Strike Elwynn Forest
|
||||
[77618] = 1, -- Rogue Shadowstrike Human
|
||||
[77619] = 1, -- Priest Penance
|
||||
[77620] = 1, -- Mage Ice Lance Elwynn Forest
|
||||
[77621] = 1, -- Warlock Haunt
|
||||
[77642] = 1, -- Priest Penance
|
||||
[77643] = 1, -- Mage Ice Lance Durotar
|
||||
[77648] = 1, -- Druid Fury of Stormrage Horde
|
||||
[77649] = 1, -- Hunter Chimera Shot
|
||||
[77651] = 1, -- Warrior Victory Rush
|
||||
[77652] = 1, -- Shaman Overload
|
||||
[77655] = 1, -- Warrior Victory Rush
|
||||
[77656] = 1, -- Warrior Victory Rush
|
||||
[77657] = 1, -- Paladin Crusader Strike Dun Morogh
|
||||
[77658] = 1, -- Rogue Shadowstrike Dwarf
|
||||
[77659] = 1, -- Rogue Shadowstrike Gnome
|
||||
[77660] = 1, -- Hunter Chimera Shot
|
||||
[77661] = 1, -- Priest Penance
|
||||
[77666] = 1, -- Warlock Haunt
|
||||
[77668] = 1, -- Warrior Victory Rush
|
||||
[77667] = 1, -- Mage Ice Lance Dun Morogh
|
||||
[77669] = 1, -- Rogue Shadowstrike Undead
|
||||
[77670] = 1, -- Priest Penance
|
||||
[77671] = 1, -- Mage Ice Lance Tirisfal Glades
|
||||
[77672] = 1, -- Warlock Haunt
|
||||
[78088] = 1, -- Paladin Divine Storm
|
||||
[78089] = 1, -- Paladin Divine Storm
|
||||
[78090] = 1, -- Paladin Divine Storm
|
||||
[78091] = 1, -- Paladin Divine Storm
|
||||
[78092] = 1, -- Paladin Divine Storm
|
||||
[78093] = 1, -- Paladin Divine Storm
|
||||
[78114] = 1, -- Hunter Kill Command Part 1
|
||||
[78121] = 1, -- Hunter Kill Command Part 2
|
||||
[78124] = 1, -- Mage Icy Veins
|
||||
[78127] = 1, -- Mage Icy Veins
|
||||
[78132] = 1, -- Warrior Raging Blows Part 1
|
||||
[78133] = 1, -- Warrior Raging Blows Part 1
|
||||
[78134] = 1, -- Warrior Raging Blows Part 1
|
||||
[78142] = 1, -- Mage Icy Veins
|
||||
[78143] = 1, -- Mage Icy Veins
|
||||
[78144] = 1, -- Warrior Raging Blows Part 2
|
||||
[78145] = 1, -- Mage Icy Veins
|
||||
[78146] = 1, -- Mage Icy Veins
|
||||
[78147] = 1, -- Mage Icy Veins
|
||||
[78148] = 1, -- Mage Icy Veins
|
||||
[78149] = 1, -- Mage Icy Veins
|
||||
[78150] = 1, -- Mage Icy Veins
|
||||
[78229] = 1, -- Druid Wild Growth
|
||||
[78261] = 1, -- Rogue Deadly Brew Part 1
|
||||
[78270] = 1, -- Rogue Deadly Brew Part 3
|
||||
[78277] = 1, -- Mage Horde Living Bomb
|
||||
[78287] = 1, -- Let Me Make You An Offer Alliance
|
||||
[78288] = 1, -- Let Me Make You An Offer Horde
|
||||
[78297] = 1, -- You've Got Yourself A Deal Alliance
|
||||
[78304] = 1, -- You've Got Yourself A Deal Horde
|
||||
[78307] = 1, -- Rogue Deadly Brew Part 3
|
||||
[78506] = 1, -- Shaman Earth Shield Part 1
|
||||
[78537] = 1, -- Shaman Earth Shield Part 2
|
||||
[78561] = 1, -- Shaman Earth Shield Part 3
|
||||
[78575] = 1, -- Shaman Earth Shield Part 4
|
||||
[78676] = 2, -- Rogue Shadowstep Part 1
|
||||
[78680] = 1, -- Warlock Metamorphosis Part 2
|
||||
[78681] = 1, -- Warlock Metamorphosis Part 3
|
||||
[78684] = 1, -- Warlock Metamorphosis Part 4
|
||||
[78699] = 2, -- Rogue Shadowstep Part 2
|
||||
[78702] = 1, -- Warlock Metamorphosis Part 5
|
||||
[78823] = 2, -- Hunter Exposed Weakness Part 1
|
||||
[78830] = 2, -- Hunter Exposed Weakness Part 2
|
||||
[78914] = 2, -- Warlock Grimoire of Synergy Part 2
|
||||
[78994] = 2, -- Warlock Grimoire of Synergy Part 1
|
||||
[79091] = 1, -- Mage Icy Veins
|
||||
[79092] = 1, -- Mage Icy Veins
|
||||
[79093] = 1, -- Mage Icy Veins
|
||||
[79094] = 1, -- Mage Icy Veins
|
||||
[79095] = 1, -- Mage Icy Veins
|
||||
[79096] = 1, -- Mage Icy Veins
|
||||
[79097] = 1, -- Mage Icy Veins
|
||||
[79298] = 2, -- Warlock Grimoire of Synergy Part 3
|
||||
[79348] = 2, -- Druid Nourish (The Lost Ancient)
|
||||
[79377] = 2, -- Druid Nourish (The Lost Saplings)
|
||||
[79229] = 2, -- Highway Robbery
|
||||
[79235] = 2, -- On the Lam
|
||||
[79236] = 2, -- Cherry for Your Thoughts?
|
||||
[79242] = 2, -- No Honor Among Thieves
|
||||
[79358] = 2, -- Shaman MailStrom Weapon (Tattered Note)
|
||||
[79360] = 2, -- Shaman MailStrom Weapon (Elemental Aid)
|
||||
[79361] = 2, -- Shaman MailStrom Weapon (Power of da Wind)
|
||||
[79362] = 2, -- Shaman MailStrom Weapon (Power of da Earth)
|
||||
[79363] = 2, -- Shaman MailStrom Weapon (Power of da Water)
|
||||
[79364] = 2, -- Shaman MailStrom Weapon (A Simple Container)
|
||||
[79365] = 2, -- Shaman MailStrom Weapon (With Wind Beneath Your Wings)
|
||||
[79366] = 2, -- Shaman MailStrom Weapon (Calm Before the Storm)
|
||||
[79442] = 2, -- Shaman MailStrom Weapon (Catching Up)
|
||||
[79535] = 2, -- Mage Icy Veins/Spell Power
|
||||
[79536] = 2, -- Mage Icy Veins/Spell Power
|
||||
[79624] = 2, -- Anyone Can Cook
|
||||
[79677] = 2, -- A Quick Grocery Run
|
||||
[79678] = 2, -- Taste Testing
|
||||
[79731] = 2, -- Priest Dispersion
|
||||
[79939] = 2, -- Paladin Sheath of Light Part 1
|
||||
[79940] = 2, -- Paladin Sheath of Light Part 2
|
||||
[79945] = 2, -- Paladin Sheath of Light Part 3
|
||||
[79946] = 2, -- Paladin Sheath of Light Part 4
|
||||
[79947] = 2, -- Mage Icy Veins/Spell Power
|
||||
[79948] = 2, -- Mage Icy Veins/Spell Power
|
||||
[79949] = 2, -- Mage Icy Veins/Spell Power
|
||||
[79950] = 2, -- Mage Icy Veins/Spell Power
|
||||
[79951] = 2, -- Mage Icy Veins/Spell Power
|
||||
[79952] = 2, -- Mage Icy Veins/Spell Power
|
||||
[79953] = 2, -- Mage Icy Veins/Spell Power
|
||||
[79963] = 2, -- Paladin Sheath of Light 5
|
||||
[79970] = 2, -- Paladin Sheath of Light 6
|
||||
[80098] = 2, -- Curious Dalaran Relic
|
||||
[80120] = 2, -- A Service to Dalaran
|
||||
[80147] = 2, -- Curious Dalaran Relic
|
||||
[80148] = 2, -- Curious Dalaran Relic
|
||||
[80149] = 2, -- Curious Dalaran Relic
|
||||
[80150] = 2, -- Curious Dalaran Relic
|
||||
[80151] = 2, -- Curious Dalaran Relic
|
||||
[80152] = 2, -- Curious Dalaran Relic
|
||||
[81764] = 3, -- Paladin Fanaticism
|
||||
[81765] = 3, -- Paladin Fanaticism
|
||||
[81766] = 3, -- Paladin Fanaticism
|
||||
[81790] = 3, -- Paladin Hammer of the Righteous
|
||||
[81885] = 3, -- Paladin Hammer of the Righteous
|
||||
[81924] = 3, -- Druid Efflorescence
|
||||
[81947] = 3, -- Mage Book Sanguine Sorcery
|
||||
[81949] = 3, -- Mage Book Legends of the Tidesages
|
||||
[81951] = 3, -- Mage Book The Liminal and the Arcane
|
||||
[81952] = 3, -- Mage Book Everyday Etiquette
|
||||
[81953] = 3, -- Mage Book Stonewrought Design
|
||||
[81954] = 3, -- Mage Book Venomous Journeys
|
||||
[81955] = 3, -- Mage Book A Mind of Metal
|
||||
[81956] = 3, -- Mage Book Conjurer's Codex
|
||||
[82208] = 3, -- Mage Deep Freeze
|
||||
[84135] = 4, -- Warrior Shockwave
|
||||
[84137] = 4, -- Warrior Shockwave
|
||||
[84138] = 4, -- Warrior Shockwave
|
||||
[84146] = 4, -- Warrior Shockwave
|
||||
[84211] = 4, -- Warrior Shockwave
|
||||
[84212] = 4, -- Warrior Shockwave
|
||||
[84213] = 4, -- Warrior Shockwave
|
||||
[84317] = 4, -- Warrior Sudden Death
|
||||
[84318] = 4, -- Paladin Shield of Righteousness
|
||||
[84319] = 4, -- Paladin Shield of Righteousness
|
||||
[84330] = 4, -- Paladin Shield of Righteousness
|
||||
[84332] = 4, -- Paladin Shield of Righteousness
|
||||
[84414] = 4, -- Paladin Shield of Righteousness
|
||||
[84418] = 4, -- Paladin Divine Steed
|
||||
|
||||
-- fake IDs
|
||||
--- Mage runes
|
||||
[90000] = 1, -- Mage Arcane Blast
|
||||
[90001] = 1, -- Mage Alliance Burnout
|
||||
[90002] = 1, -- Mage Alliance Burnout
|
||||
[90003] = 1, -- Mage Burnout
|
||||
[90004] = 1, -- Mage Alliance Fingers of Frost
|
||||
[90005] = 1, -- Mage Horde Fingers of Frost
|
||||
[90006] = 1, -- Mage Alliance Regeneration
|
||||
[90007] = 1, -- Mage Horde Regeneration
|
||||
[90008] = 1, -- Mage Alliance Regeneration
|
||||
[90009] = 1, -- Mage Horde Regeneration
|
||||
[90010] = 1, -- Mage Alliance Enlightenment
|
||||
[90011] = 1, -- Mage Horde Enlightenment
|
||||
[90012] = 1, -- Mage Alliance Arcane Surge
|
||||
[90013] = 1, -- Mage Horde Arcane Surge
|
||||
[90014] = 1, -- Mage Mass Regeneration
|
||||
[90015] = 1, -- Mage Alliance Living Flame
|
||||
[90016] = 1, -- Mage Alliance Living Flame
|
||||
[90017] = 1, -- Mage Horde Living Flame
|
||||
[90018] = 1, -- Mage Horde Living Flame
|
||||
[90019] = 1, -- Mage Rewind Time
|
||||
[90020] = 1, -- Mage Alliance Living Bomb
|
||||
[90021] = 1, -- Mage Horde Living Bomb
|
||||
--- Mage runes end
|
||||
|
||||
[90022] = 1, -- Paladin Divine Storm
|
||||
[90023] = 1, -- Druid Wild Strikes
|
||||
[90024] = 1, -- Druid Survival of the Fittest
|
||||
[90025] = 1, -- Priest Serendipity
|
||||
[90026] = 1, -- Paladin Divine Sacrifice
|
||||
[90027] = 1, -- Hunter Lone Wolf
|
||||
[90028] = 1, -- Warrior Warbringer
|
||||
[90029] = 1, -- Warlock Demonic Pact
|
||||
[90030] = 1, -- Rogue Main Gauche
|
||||
[90031] = 1, -- Shaman Dual Wield Specialization
|
||||
[90032] = 1, -- Warlock Lake of Fire Start
|
||||
[90033] = 1, -- Warlock Lake of Fire End
|
||||
[90034] = 1, -- Warlock Master Channeler Alliance
|
||||
[90035] = 1, -- Warlock Master Channeler Alliance
|
||||
[90036] = 1, -- Warlock Master Channeler Westfall
|
||||
[90037] = 1, -- Warlock Master Channeler Horde
|
||||
[90038] = 1, -- Warlock Master Channeler Horde
|
||||
[90039] = 1, -- Warlock Chaos Bolt Dun Morogh
|
||||
[90040] = 1, -- Paladin Beacon of Light Alliance
|
||||
[90041] = 1, -- Shaman Healing Rain Horde
|
||||
[90042] = 1, -- Warlock Everlasting Affliction Alliance
|
||||
[90043] = 1, -- Warlock Everlasting Affliction Horde
|
||||
[90044] = 1, -- Hunter Serpent Spread Alliance
|
||||
[90045] = 1, -- Hunter Serpent Spread Horde
|
||||
[90046] = 1, -- Warrior Single-Minded Fury Alliance
|
||||
[90047] = 1, -- Warrior Single-Minded Fury Horde
|
||||
[90048] = 1, -- Druid Skull Bash Alliance
|
||||
[90049] = 1, -- Druid Skull Bash Horde
|
||||
[90050] = 1, -- Rogue Just a Flesh Wound Alliance
|
||||
[90051] = 1, -- Rogue Just a Flesh Wound Horde
|
||||
[90052] = 1, -- Priest Mind Sear Alliance
|
||||
[90053] = 1, -- Priest Mind Sear Horde
|
||||
[90054] = 1, -- Druid Living Seed Alliance
|
||||
[90055] = 1, -- Druid Living Seed Horde
|
||||
[90056] = 1, -- Druid Starsurge
|
||||
[90057] = 1, -- Druid Sunfire Alliance
|
||||
[90058] = 1, -- Druid Lifebloom
|
||||
[90059] = 1, -- Priest Prayer of Mending
|
||||
[90060] = 1, -- Shaman Ancestral Guidance
|
||||
[90061] = 1, -- Warlock Chaos Bolt Elwynn Forest
|
||||
[90062] = 1, -- Warlock Chaos Bolt The Barrens
|
||||
[90063] = 1, -- Warlock Chaos Bolt Tirisfal Glades
|
||||
[90064] = 1, -- Warlock Shadow Bolt Volley Loch Modan
|
||||
[90065] = 1, -- Warlock Shadow Bolt Volley Westfall start
|
||||
[90066] = 1, -- Warlock Shadow Bolt Volley Westfall end
|
||||
[90067] = 1, -- Warlock Shadow Bolt Volley The Barrens start
|
||||
[90068] = 1, -- Warlock Shadow Bolt Volley The Barrens end
|
||||
[90069] = 1, -- Warlock Shadow Bolt Volley Silverpine Forest
|
||||
[90070] = 1, -- Warlock Incinerate
|
||||
[90071] = 1, -- Warlock Demonic Tactics Alliance
|
||||
[90072] = 1, -- Warlock Demonic Tactics Horde
|
||||
[90073] = 1, -- Warlock Soul Siphon Dun Morogh
|
||||
[90074] = 1, -- Warlock Soul Siphon Elwynn Forest
|
||||
[90075] = 1, -- Warlock Soul Siphon Durotar
|
||||
[90076] = 1, -- Warlock Soul Siphon Tirisfal Galdes
|
||||
[90077] = 1, -- Warlock Demonic Grace Dun Morogh
|
||||
[90078] = 1, -- Warlock Demonic Grace Elwynn Forest
|
||||
[90079] = 1, -- Warlock Demonic Grace Durotar
|
||||
[90080] = 1, -- Warlock Demonic Grace Tirisfal Galdes
|
||||
[90081] = 1, -- Hunter Heart of the Lion
|
||||
[90082] = 1, -- Hunter Master Marksman
|
||||
[90083] = 1, -- Hunter Cobra Strikes
|
||||
[90084] = 1, -- Rogue Blade Dance Darkshore
|
||||
[90085] = 1, -- Rogue Blade Dance Loch Modan
|
||||
[90086] = 1, -- Rogue Blade Dance Westfall
|
||||
[90087] = 1, -- Rogue Blade Dance The Barrens
|
||||
[90088] = 1, -- Druid Wild Growth Ashenvale
|
||||
[90089] = 1, -- Druid Wild Growth Duskwood
|
||||
[90090] = 1, -- Druid Wild Growth Hillsbrad Foothills
|
||||
[90091] = 1, -- Warrior Flagellation
|
||||
[90092] = 1, -- Warrior Blood Frenzy
|
||||
[90093] = 1, -- Warrior Furious Thunder
|
||||
[90094] = 1, -- Warrior Consumed By Rage
|
||||
[90095] = 1, -- Hunter Explosive Shot
|
||||
[90096] = 1, -- Warrior Raging Blows
|
||||
[90097] = 1, -- Warrior Raging Blows
|
||||
[90098] = 1, -- Warrior Raging Blows
|
||||
[90099] = 1, -- Warrior Raging Blows
|
||||
[90100] = 1, -- Warrior Devastate
|
||||
[90101] = 1, -- Warrior Devastate
|
||||
[90102] = 1, -- Warrior Devastate
|
||||
[90103] = 1, -- Warrior Devastate
|
||||
[90104] = 1, -- Warrior Devastate
|
||||
[90105] = 1, -- Warrior Devastate
|
||||
[90106] = 1, -- Warrior Frenzied Assault
|
||||
[90355] = 1, -- Warrior Frenzied Assault
|
||||
[90108] = 1, -- Warrior Frenzied Assault
|
||||
[90109] = 1, -- Warrior Frenzied Assault
|
||||
[90110] = 1, -- Warrior Frenzied Assault
|
||||
[90111] = 1, -- Warrior Frenzied Assault
|
||||
[90112] = 1, -- Warrior Endless Rage Westfall
|
||||
[90113] = 1, -- Warrior Endless Rage Darkshore
|
||||
[90114] = 1, -- Warrior Endless Rage Loch Modan
|
||||
[90115] = 1, -- Warrior Endless Rage The Barrens
|
||||
[90117] = 1, -- Paladin Seal of Martyrdom
|
||||
[90118] = 1, -- Paladin Horn of Lordaeron
|
||||
[90119] = 1, -- Paladin Horn of Lordaeron
|
||||
[90121] = 1, -- Paladin Inspiration Exemplar
|
||||
[90122] = 1, -- Paladin Avenger's Shield
|
||||
[90123] = 1, -- Paladin Rebuke
|
||||
[90124] = 1, -- Paladin Rebuke
|
||||
[90125] = 1, -- Paladin Rebuke
|
||||
[90126] = 1, -- Paladin Hand of Reckoning
|
||||
[90127] = 1, -- Druid Mangle Teldrassil
|
||||
[90128] = 1, -- Druid Lacerate Loch Modan
|
||||
[90129] = 1, -- Druid Lacerate The Barrens
|
||||
[90130] = 1, -- Druid Savage Roar Darkshore
|
||||
[90131] = 1, -- Druid Savage Roar The Barrens
|
||||
[90132] = 1, -- Druid Savage Roar Loch Modan
|
||||
[90133] = 1, -- Rogue Quick Draw Dun Morogh
|
||||
[90134] = 1, -- Rogue Quick Draw Elwynn Forest
|
||||
[90135] = 1, -- Rogue Quick Draw Teldrassil
|
||||
[90136] = 1, -- Rogue Quick Draw Durotar
|
||||
[90137] = 1, -- Rogue Quick Draw Tirisfal Glades
|
||||
[90138] = 1, -- Rogue Slaughter from the Shadows Elwynn Forest, Dun Morogh, Durotar
|
||||
[90139] = 1, -- Warrior Quick Strike Loch Modan
|
||||
[90140] = 1, -- Warrior Quick Strike Westfall
|
||||
[90141] = 1, -- Warrior Quick Strike Darkshore
|
||||
[90142] = 1, -- Warrior Quick Strike The Barrens
|
||||
[90143] = 1, -- Warrior Quick Strike Silverpine Forest
|
||||
[90144] = 1, -- Druid Savage Roar Westfall
|
||||
[90145] = 1, -- Druid Lacerate Darkshore
|
||||
[90146] = 1, -- Druid Mangle Mulgore
|
||||
[90147] = 1, -- Paladin Hand of Reckoning Westfall
|
||||
[90148] = 1, -- Paladin Exorcist Duskwood
|
||||
[90150] = 1, -- Hunter Sniper Training Darkshore
|
||||
[90151] = 1, -- Hunter Sniper Training Westfall
|
||||
[90152] = 1, -- Hunter Sniper Training Loch Modan
|
||||
[90153] = 1, -- Hunter Sniper Training The Barrens
|
||||
[90154] = 1, -- Druid Lacerate Westfall
|
||||
[90155] = 1, -- Priest Void Plague Dun Morogh
|
||||
[90156] = 1, -- Priest Void Plague Elwynn Forest
|
||||
[90157] = 1, -- Priest Void Plague Teldrassil
|
||||
[90158] = 1, -- Priest Void Plague Durotar
|
||||
[90159] = 1, -- Priest Void Plague Tirisfal Glades
|
||||
[90161] = 1, -- Priest Strength of Soul
|
||||
[90162] = 1, -- Priest Twisted Faith Loch Modan
|
||||
[90163] = 1, -- Priest Twisted Faith Westfall
|
||||
[90164] = 1, -- Priest Twisted Faith Darkshore
|
||||
[90165] = 1, -- Priest Twisted Faith The Barrens
|
||||
[90166] = 1, -- Priest Twisted Faith Silverpine Forest
|
||||
[90167] = 1, -- Hunter Flanking Strike Dun Morogh
|
||||
[90168] = 1, -- Hunter Flanking Strike Teldrassil
|
||||
[90169] = 1, -- Priest Power Word: Barrier Redridge Mountains
|
||||
[90170] = 1, -- Hunter Flanking Strike Durotar
|
||||
[90171] = 1, -- Hunter Flanking Strike Mulgore
|
||||
[90172] = 1, -- Hunter Beast Mastery Westfall
|
||||
[90173] = 1, -- Hunter Beast Mastery Darkshore
|
||||
[90174] = 1, -- Hunter Beast Mastery Loch Modan
|
||||
[90175] = 1, -- Hunter Beast Mastery Silverpine Forest
|
||||
[90176] = 1, -- Hunter Beast Mastery The Barrens
|
||||
[90177] = 1, -- Priest Shared Pain Dun Morogh
|
||||
[90178] = 1, -- Priest Shared Pain Elwynn Forest
|
||||
[90179] = 1, -- Priest Shared Pain Teldrassil
|
||||
[90180] = 1, -- Priest Shared Pain Durotar
|
||||
[90181] = 1, -- Priest Shared Pain Tirisfal Glades
|
||||
[90182] = 1, -- Priest Homunculi Dun Morogh
|
||||
[90183] = 1, -- Priest Homunculi Elwynn Forest
|
||||
[90184] = 1, -- Priest Homunculi Teldrassil
|
||||
[90185] = 1, -- Priest Homunculi Durotar
|
||||
[90186] = 1, -- Priest Homunculi Tirisfal Glades
|
||||
[90187] = 1, -- Priest Shadow Word: Death Westfall
|
||||
[90188] = 1, -- Priest Shadow Word: Death The Barrens
|
||||
[90189] = 1, -- Priest Shadow Word: Death Loch Modan
|
||||
[90190] = 1, -- Priest Shadow Word: Death Silverpine Forest
|
||||
[90191] = 1, -- Priest Shadow Word: Death Darkshore
|
||||
[90192] = 1, -- Priest Circle of Healing Duskwood
|
||||
[90193] = 1, -- Rogue Between the Eyes Ironforge
|
||||
[90194] = 1, -- Rogue Between the Eyes Stormwind
|
||||
[90195] = 1, -- Rogue Between the Eyes Orgrimmar
|
||||
[90196] = 1, -- Rogue Between the Eyes Tirisfal Glades
|
||||
[90197] = 1, -- Rogue Between the Eyes Teldrassil
|
||||
[90198] = 1, -- Rogue Envenom Hillsbrad Foothills
|
||||
[90199] = 1, -- Rogue Mutilate Teldrassil
|
||||
[90200] = 1, -- Rogue Mutilate Dun Morogh
|
||||
[90201] = 1, -- Rogue Shiv Duskwood
|
||||
[90202] = 1, -- Shaman Greater Ghost Wolf Stonetalon Mountains
|
||||
[90203] = 1, -- Shaman Way of Earth The Barrens
|
||||
[90204] = 1, -- Shaman Way of Earth Silverpine Forest
|
||||
[90205] = 1, -- Shaman Lava Burst Hillsbrad Foothills
|
||||
[90206] = 1, -- Hunter Carve Dun Morogh
|
||||
[90207] = 1, -- Hunter Carve Teldrassil
|
||||
[90208] = 1, -- Hunter Carve Durotar
|
||||
[90209] = 1, -- Hunter Carve Mulgore
|
||||
[90210] = 1, -- Rogue Saber Slash Loch Modan
|
||||
[90211] = 1, -- Rogue Saber Slash Westfall
|
||||
[90212] = 1, -- Rogue Saber Slash The Barrens
|
||||
[90213] = 1, -- Rogue Saber Slash Silverpine Forest
|
||||
[90214] = 1, -- Rogue Saber Slash Darkshore
|
||||
[90215] = 1, -- Shaman Water Shield Silverpine Forest
|
||||
[90216] = 1, -- Shaman Water Shield The Barrens
|
||||
[90217] = 1, -- Shaman Shield Mastery Durotar Orc & Troll
|
||||
[90218] = 1, -- Shaman Shield Mastery Mulgore Tauren
|
||||
[90219] = 1, -- Shaman Molten Blast Durotar
|
||||
[90220] = 1, -- Shaman Molten Blast Mulgore
|
||||
|
||||
-- P2 SoD Runes
|
||||
[90221] = 2, -- Druid Berserk Thousand Needles
|
||||
[90222] = 2, -- Druid Dreamstate Desolace
|
||||
[90223] = 2, -- Hunter Dual Wield Specialization Stranglethorn Vale
|
||||
[90224] = 2, -- Warrior Intervene Thousand Needles
|
||||
[90225] = 2, -- Warrior Rallying Cry Badlands
|
||||
[90226] = 2, -- Mage Spellfrost Bolt Stranglethorn Vale
|
||||
[90227] = 2, -- Mage Frostfire Bolt Stranglethorn Vale
|
||||
[90228] = 2, -- Rogue Rolling with the Punches Thousand Needles
|
||||
[90229] = 2, -- Paladin Sacred Shield Desolace
|
||||
[90230] = 2, -- Warrior Focused Rage Arathi Highlands
|
||||
[90231] = 2, -- Shaman Spirit of the Alpha
|
||||
[90232] = 2, -- Priest Empowered Renew
|
||||
[90233] = 2, -- Hunter Steady Shot Arathi Highlands
|
||||
[90234] = 2, -- Mage Hot Streak Alterac Mountains
|
||||
[90235] = 2, -- Priest Renewed Hope Desolace
|
||||
[90236] = 2, -- Mage Chronostatic Preservation
|
||||
[90237] = 2, -- Mage Chronostatic Preservation
|
||||
[90238] = 2, -- Mage Chronostatic Preservation
|
||||
[90239] = 2, -- Shaman Fire Nova Step 1
|
||||
[90240] = 2, -- Shaman Fire Nova Step 2
|
||||
[90241] = 2, -- Shaman Fire Nova Step 3
|
||||
[90242] = 2, -- Shaman Fire Nova Step 4
|
||||
[90243] = 2, -- Shaman Fire Nova Step 5
|
||||
[90244] = 2, -- Shaman Fire Nova Step 6
|
||||
[90245] = 2, -- Shaman Fire Nova Final Step
|
||||
[90246] = 2, -- Shaman Power Surge
|
||||
[90247] = 2, -- Shaman Decoy Totem
|
||||
[90248] = 2, -- Paladin Enlightened Judgements
|
||||
[90249] = 2, -- Paladin Guarded by the Light
|
||||
[90250] = 2, -- Paladin Sheath of Light Part 2.5
|
||||
[90251] = 2, -- Hunter Invigoration
|
||||
[90252] = 2, -- Hunter Invigoration
|
||||
[90253] = 2, -- Hunter Invigoration
|
||||
[90254] = 2, -- Hunter Invigoration
|
||||
[90255] = 2, -- Warlock Invocation
|
||||
[90256] = 2, -- Warlock Shadowflame
|
||||
[90257] = 2, -- Warlock Dance of the Wicked
|
||||
[90258] = 2, -- Priest Pain Suppression
|
||||
[90259] = 2, -- Priest Pain Suppression
|
||||
[90260] = 2, -- Priest Pain Suppression
|
||||
[90261] = 2, -- Priest Pain Suppression
|
||||
[90262] = 2, -- Priest Pain Suppression
|
||||
[90263] = 2, -- Rogue Shuriken Toss
|
||||
[90264] = 2, -- Rogue Master of Subtlety
|
||||
[90265] = 2, -- Druid Survival Instincts
|
||||
[90266] = 2, -- Druid Survival Instincts
|
||||
[90267] = 2, -- Druid Survival Instincts
|
||||
[90268] = 2, -- Druid Survival Instincts
|
||||
[90353] = 1, -- Warrior Endless Rage Silverpine Forest
|
||||
[90354] = 1, -- Paladin Aegis
|
||||
|
||||
-- P3 SoD Runes
|
||||
[80411] = 3, -- Rogue Honor Among Thieves
|
||||
[80453] = 3, -- Rogue Honor Among Thieves
|
||||
[80454] = 3, -- Rogue Honor Among Thieves
|
||||
[80455] = 3, -- Rogue Honor Among Thieves
|
||||
[80526] = 3, -- Rogue Honor Among Thieves
|
||||
[81682] = 3, -- Warrior Gladiator Stance
|
||||
[81697] = 3, -- Warrior Gladiator Stance
|
||||
[81801] = 3, -- Warrior Gladiator Stance
|
||||
[81877] = 3, -- Warrior Gladiator Stance
|
||||
[81900] = 3, -- Hunter Rapid Killing
|
||||
[81917] = 3, -- Hunter Rapid Killing
|
||||
[81919] = 3, -- Hunter Rapid Killing
|
||||
[81960] = 3, -- Shaman Overcharged
|
||||
[81968] = 3, -- Shaman Overcharged
|
||||
[82043] = 3, -- Mage Advanced Warding
|
||||
[82044] = 3, -- Mage Advanced Warding
|
||||
[82071] = 3, -- Shaman Overcharged
|
||||
[82072] = 3, -- Shaman Overcharged
|
||||
[82073] = 3, -- Shaman Overcharged
|
||||
[82074] = 3, -- Shaman Overcharged
|
||||
[82075] = 3, -- Shaman Overcharged
|
||||
[82076] = 3, -- Shaman Overcharged
|
||||
[82084] = 3, -- Mage Temporal Anomaly
|
||||
[82316] = 3, -- Priest Eye of the Void
|
||||
[90269] = 3, -- Druid Gale Winds
|
||||
[90270] = 3, -- Druid Gore
|
||||
[90271] = 3, -- Hunter Raptor Fury
|
||||
[90272] = 3, -- Hunter T.N.T
|
||||
[90273] = 3, -- Mage Molten Armor
|
||||
[90274] = 3, -- Paladin Improved Hammer of Wrath
|
||||
[90275] = 3, -- Paladin Wrath
|
||||
[90276] = 3, -- Priest Void Zone
|
||||
[90277] = 3, -- Rogue Cut to the Chase
|
||||
[90278] = 3, -- Shaman Burn
|
||||
[90279] = 3, -- Warlock Unstable Affliction
|
||||
[90280] = 3, -- Warrior Shield Mastery
|
||||
[90281] = 3, -- Warrior Rampage
|
||||
[90282] = 3, -- Warrior Vigilance
|
||||
[90283] = 3, -- Warrior Wrecking Crew
|
||||
[90284] = 3, -- Warlock Immolation Aura
|
||||
[90285] = 3, -- Warlock Summon Felguard
|
||||
[90286] = 3, -- Shaman Static Shock
|
||||
[90287] = 3, -- Shaman Mental Dexterity
|
||||
[90288] = 3, -- Priest Pain and Suffering
|
||||
[90289] = 3, -- Warrior Taste for Blood
|
||||
[90290] = 3, -- Druid Improved Barkskin
|
||||
[90291] = 3, -- Hunter Focus Fire
|
||||
[90292] = 3, -- Hunter Catlike Reflexes
|
||||
[90293] = 3, -- Mage Balefire Bolt
|
||||
[90294] = 3, -- Rogue Unfair Advantage
|
||||
[90295] = 3, -- Rogue Carnage
|
||||
[90296] = 3, -- Rogue Focused Attacks
|
||||
[90297] = 3, -- Shaman Tidal Waves
|
||||
[90298] = 3, -- Shaman Rolling Thunder
|
||||
[90299] = 3, -- Druid Elune's Fires
|
||||
[90300] = 3, -- Mage Displacement
|
||||
[90301] = 3, -- Paladin Purifying Power
|
||||
[90302] = 3, -- Priest Surge of Light
|
||||
[90303] = 3, -- Priest Despair
|
||||
[90304] = 3, -- Priest Eye of the Void
|
||||
[90305] = 3, -- Warlock Pandemic
|
||||
[90306] = 3, -- Warlock Backdraft
|
||||
|
||||
-- P4 SoD Runes
|
||||
[83808] = 4, -- Paladin Righteous Vengeance
|
||||
[83822] = 4, -- Paladin Righteous Vengeance
|
||||
[83823] = 4, -- Paladin Shock and Awe
|
||||
[83935] = 4, -- Paladin Righteous Vengeance
|
||||
[83936] = 4, -- Paladin Righteous Vengeance
|
||||
[84008] = 4, -- Paladin Shock and Awe
|
||||
[84017] = 4, -- Paladin Shock and Awe
|
||||
[84124] = 4, -- Warrior Fresh Meat
|
||||
[84125] = 4, -- Paladin Shock and Awe
|
||||
[84126] = 4, -- Paladin Shock and Awe
|
||||
[84320] = 4, -- Priest Binding Heal
|
||||
[84321] = 4, -- Priest Binding Heal
|
||||
[84322] = 4, -- Priest Binding Heal
|
||||
[84323] = 4, -- Priest Binding Heal
|
||||
[84324] = 4, -- Priest Server-Wide Racials
|
||||
[84325] = 4, -- Priest Server-Wide Racials
|
||||
[84326] = 4, -- Priest Server-Wide Racials
|
||||
[84327] = 4, -- Priest Server-Wide Racials
|
||||
[84328] = 4, -- Priest Server-Wide Racials
|
||||
[84329] = 4, -- Priest Server-Wide Racials
|
||||
[84369] = 4, -- Mage Frozen Orb
|
||||
[84394] = 4, -- Mage Arcance Barrage
|
||||
[84395] = 4, -- Mage Arcance Barrage
|
||||
[84396] = 4, -- Mage Arcance Barrage
|
||||
[84397] = 4, -- Mage Arcance Barrage
|
||||
[84398] = 4, -- Mage Arcance Barrage
|
||||
[84399] = 4, -- Mage Arcance Barrage
|
||||
[84400] = 4, -- Mage Arcance Barrage
|
||||
[84401] = 4, -- Mage Arcance Barrage
|
||||
[84402] = 4, -- Mage Arcance Barrage
|
||||
[84405] = 4, -- Priest Binding Heal
|
||||
[84406] = 4, -- Priest Binding Heal
|
||||
[84407] = 4, -- Priest Binding Heal
|
||||
[84408] = 4, -- Priest Server-Wide Racials
|
||||
[84410] = 4, -- Priest Server-Wide Racials
|
||||
[84411] = 4, -- Priest Server-Wide Racials
|
||||
[84412] = 4, -- Priest Server-Wide Racials
|
||||
[84413] = 4, -- Priest Server-Wide Racials
|
||||
[90307] = 4, -- Druid Improved Swipe
|
||||
[90308] = 4, -- Druid Starfall
|
||||
[90309] = 4, -- Druid Tree of Life
|
||||
[90310] = 4, -- Axe Specialization (Hunter, Paladin, Shaman, Warrior)
|
||||
[90311] = 4, -- Mage Frozen Orb
|
||||
[90312] = 4, -- Priest Vampiric Touch
|
||||
[90313] = 4, -- Arcane Specialization (Druid, Hunter, Mage)
|
||||
[90314] = 4, -- Defense Specialization (Druid, Paladin, Rogue, Shaman, Warlock, Warrior)
|
||||
[90315] = 4, -- Feral Combat Specialization (Druid)
|
||||
[90316] = 4, -- Frost Specialization (Hunter, Mage, Shaman)
|
||||
[90317] = 4, -- Holy Specialization (Paladin, Priest)
|
||||
[90318] = 4, -- Nature Specialization (Druid, Rogue, Shaman)
|
||||
[90319] = 4, -- Ranged Weapon Specialization (Hunter, Rogue, Warrior)
|
||||
[90320] = 4, -- Shadow Specialization (Priest, Warlock)
|
||||
[90321] = 5, -- Healing Specialization (Paladin, Priest, Shaman, Druid, Mage)
|
||||
[90322] = 5, -- Meditation Specialization (Paladin, Priest, Shaman, Druid, Mage)
|
||||
[90323] = 3, -- Paladin Light's Grace
|
||||
[90324] = 3, -- Shaman Overcharged
|
||||
[90325] = 4, -- Dagger Specialization (Druid, Hunter, Mage, Priest, Rogue, Shaman, Warlock, Warrior)
|
||||
[90326] = 4, -- Fire Specialization (Mage, Hunter, Shaman, Warlock)
|
||||
[90327] = 4, -- Fist Weapon Specialization (Druid, Hunter, Rogue, Shaman, Warrior)
|
||||
[90328] = 4, -- Mace Specialization (Druid, Paladin, Priest, Rogue, Shaman, Warrior)
|
||||
[90329] = 4, -- Pole Weapon Specialization (Druid, Hunter, Mage, Paladin, Priest, Shaman, Warlock, Warrior)
|
||||
[90330] = 4, -- Sword Specialization (Hunter, Mage, Paladin, Rogue, Warlock, Warrior)
|
||||
[90331] = 4, -- Hunter Resourcefulness Step 1
|
||||
[90332] = 4, -- Hunter Resourcefulness Step 2
|
||||
[90333] = 4, -- Hunter Hit and Run
|
||||
[90334] = 4, -- Hunter Improved Volley Step 1
|
||||
[90335] = 4, -- Hunter Improved Volley Step 2
|
||||
[90336] = 4, -- Mage Overheat
|
||||
[90337] = 4, -- Rogue Fan of Knives
|
||||
[90338] = 4, -- Shaman Storm, Earth, and Fire
|
||||
[90339] = 4, -- Shaman Feral Spirit
|
||||
[90340] = 4, -- Shaman Coherence
|
||||
[90341] = 4, -- Warlock Mark of Chaos (Alliance)
|
||||
[90342] = 4, -- Warlock Mark of Chaos (Horde)
|
||||
[90343] = 4, -- Warlock Infernal Armor Step 1
|
||||
[90344] = 4, -- Warlock Infernal Armor Step 2
|
||||
[90345] = 4, -- Rogue Blunderbuss
|
||||
[90346] = 4, -- Rogue Crimson Tempest Step 1
|
||||
[90347] = 4, -- Rogue Crimson Tempest Step 2
|
||||
[90348] = 4, -- Rogue Crimson Tempest Step 3
|
||||
[90349] = 4, -- Priest Soul Warding Step 1
|
||||
[90350] = 4, -- Priest Soul Warding Step 2
|
||||
[90351] = 4, -- Warlock Decimation Step 1
|
||||
[90352] = 4, -- Warlock Decimation Step 2
|
||||
[91000] = 1, -- Rune Broker (Alliance)
|
||||
[91001] = 1, -- Rune Broker (Horde)
|
||||
}
|
||||
|
||||
--- "automatic" phase detection for the first few phases;
|
||||
--- gets called slightly later into init because if GetMaxPlayerLevel() is called too
|
||||
--- early after initial login (not reloads), the game returns 60 even in early phases
|
||||
function SeasonOfDiscovery.Initialize()
|
||||
local maxLevel = GetMaxPlayerLevel()
|
||||
local phaseDetected = true
|
||||
if maxLevel == 25 then
|
||||
ContentPhases.activePhases.SoD = 1
|
||||
elseif maxLevel == 40 then
|
||||
ContentPhases.activePhases.SoD = 2
|
||||
elseif maxLevel == 50 then
|
||||
ContentPhases.activePhases.SoD = 3
|
||||
elseif maxLevel == 60 and ContentPhases.activePhases.SoD <= 4 then
|
||||
ContentPhases.activePhases.SoD = 4
|
||||
else
|
||||
phaseDetected = false
|
||||
Questie.Debug(Questie.DEBUG_CRITICAL,
|
||||
"[SeasonOfDiscovery] Automatic phase detection failed, phase remains as " .. tostring(ContentPhases.activePhases.SoD))
|
||||
end
|
||||
if phaseDetected then
|
||||
Questie.Debug(Questie.DEBUG_INFO, "[SeasonOfDiscovery] Phase automatically detected as " .. tostring(ContentPhases.activePhases.SoD))
|
||||
end
|
||||
end
|
||||
|
||||
---@param questId number
|
||||
---@return boolean
|
||||
function QuestieDB.IsSoDRuneQuest(questId)
|
||||
return runeQuestsInSoD[questId] ~= nil
|
||||
end
|
||||
|
||||
---@param questId number
|
||||
---@return boolean Returns true if the quest should be hidden, false otherwise
|
||||
function QuestieDB.IsRuneAndShouldBeHidden(questId)
|
||||
if (not QuestieDB.IsSoDRuneQuest(questId)) then
|
||||
return false
|
||||
end
|
||||
|
||||
if (not Questie.db.profile.showSoDRunes) then
|
||||
return true
|
||||
elseif questId == 91000 or questId == 91001 then
|
||||
return false -- Rune Broker quests are always shown
|
||||
end
|
||||
|
||||
local showRunesOfPhase = Questie.db.profile.showRunesOfPhase
|
||||
local phaseOfRuneQuest = runeQuestsInSoD[questId]
|
||||
|
||||
if showRunesOfPhase["phase" .. phaseOfRuneQuest] ~= nil then
|
||||
return not showRunesOfPhase["phase" .. phaseOfRuneQuest]
|
||||
end
|
||||
|
||||
return false
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -1,637 +0,0 @@
|
||||
---@class QuestieObjectFixes
|
||||
local QuestieObjectFixes = QuestieLoader:CreateModule("QuestieObjectFixes")
|
||||
-------------------------
|
||||
--Import modules.
|
||||
-------------------------
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
---@type ZoneDB
|
||||
local ZoneDB = QuestieLoader:ImportModule("ZoneDB")
|
||||
|
||||
-- Further information on how to use this can be found at the wiki
|
||||
-- https://github.com/Questie/Questie/wiki/Corrections
|
||||
|
||||
function QuestieObjectFixes:Load()
|
||||
local objectKeys = QuestieDB.objectKeys
|
||||
local zoneIDs = ZoneDB.zoneIDs
|
||||
|
||||
return {
|
||||
[167] = { -- Abercrombie's Crate
|
||||
[objectKeys.spawns] = {[zoneIDs.DUSKWOOD] = {{33.42,76.35}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DUSKWOOD,
|
||||
},
|
||||
[331] = { -- Loose Soil
|
||||
[objectKeys.spawns] = {[zoneIDs.WETLANDS] = {{32.2,50.8},{32.3,48.4},{32.3,48.6},{32.7,51},{33.2,46.4},{33.3,49},{33.4,47.4},{33.4,47.6},{33.4,51.5},{33.8,48.6},{33.9,46.6},{34.1,49.7},{34.2,47.6},{34.2,50.8},{34.3,45.7},{34.4,44.4},{34.4,44.5},{34.7,52.5},{34.8,50.3},{34.9,47},{35,47.9},{35.1,51.5},{35.2,44.3},{35.2,44.5},{35.2,48.9},{35.2,51.4},{35.4,46.3},{35.5,45},{35.5,46},{35.6,47.9},{36.1,48.8},{36.1,50},{36.4,42.1},{36.6,42.2}}},
|
||||
},
|
||||
[333] = { -- Ancient Relic
|
||||
[objectKeys.spawns] = {[zoneIDs.WETLANDS] = {{32.2,50.8},{32.3,48.4},{32.3,48.6},{32.7,51},{33.2,46.4},{33.3,49},{33.4,47.4},{33.4,47.6},{33.4,51.5},{33.8,48.6},{33.9,46.6},{34.1,49.7},{34.2,47.6},{34.2,50.8},{34.3,45.7},{34.4,44.4},{34.4,44.5},{34.7,52.5},{34.8,50.3},{34.9,47},{35,47.9},{35.1,51.5},{35.2,44.3},{35.2,44.5},{35.2,48.9},{35.2,51.4},{35.4,46.3},{35.5,45},{35.5,46},{35.6,47.9},{36.1,48.8},{36.1,50},{36.4,42.1},{36.6,42.2}}},
|
||||
},
|
||||
[334] = { -- Ancient Relic
|
||||
[objectKeys.spawns] = {[zoneIDs.WETLANDS] = {{32.2,50.8},{32.3,48.4},{32.3,48.6},{32.7,51},{33.2,46.4},{33.3,49},{33.4,47.4},{33.4,47.6},{33.4,51.5},{33.8,48.6},{33.9,46.6},{34.1,49.7},{34.2,47.6},{34.2,50.8},{34.3,45.7},{34.4,44.4},{34.4,44.5},{34.7,52.5},{34.8,50.3},{34.9,47},{35,47.9},{35.1,51.5},{35.2,44.3},{35.2,44.5},{35.2,48.9},{35.2,51.4},{35.4,46.3},{35.5,45},{35.5,46},{35.6,47.9},{36.1,48.8},{36.1,50},{36.4,42.1},{36.6,42.2}}},
|
||||
},
|
||||
[1738] = { -- Syndicate Documents
|
||||
[objectKeys.questStarts] = {510,511},
|
||||
},
|
||||
[1739] = { -- Syndicate Documents
|
||||
[objectKeys.questStarts] = {510,511},
|
||||
},
|
||||
[2082] = { -- Uther the Lightbringer
|
||||
[objectKeys.name] = "Uther the Lightbringer",
|
||||
[objectKeys.spawns] = {[zoneIDs.WESTERN_PLAGUELANDS] = {{52.08,83.28}}},
|
||||
},
|
||||
[2086] = { -- Bloodsail Charts
|
||||
[objectKeys.spawns] = {[zoneIDs.STRANGLETHORN_VALE] = {{26.96,82.5},{27.15,82.68},{27.73,83.1},{29.59,80.84}}},
|
||||
},
|
||||
[2087] = { -- Bloodsail Orders
|
||||
[objectKeys.spawns] = {[zoneIDs.STRANGLETHORN_VALE] = {{26.96,82.56},{27.18,82.66},{27.74,83.13},{29.57,80.94}}},
|
||||
},
|
||||
[2555] = { -- Musty Scroll
|
||||
[objectKeys.spawns] = {[zoneIDs.DUSTWALLOW_MARSH] = {{31.11,66.14}}},
|
||||
},
|
||||
[2560] = { -- Half-Buried Bottle
|
||||
[objectKeys.spawns] = {[zoneIDs.STRANGLETHORN_VALE] = {{36.26,70.56},{39.73,77.42},{37.41,64.5},{33.79,77.68},{36.11,80.47},{36.56,77.09},{34.29,73.78}}},
|
||||
},
|
||||
[2712] = { -- Calcified Elven Gem
|
||||
[objectKeys.spawns] = {[zoneIDs.ARATHI_HIGHLANDS] = {{18,89},{19,90},{20,85},{21,87},{21,90},{21,92},{22,84},{22,90},{23,84},{23,90},{23,88},{23,89},{23,92},{24,87},{24,88},{24,89},{24,85},{24,86},{25,86},{25,87},{25,89},{25,90},{25,91}}},
|
||||
},
|
||||
[2743] = { -- Carved Stone Urn
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_KINGDOMS] = {{52.32,63.467}},[zoneIDs.BADLANDS] = {{34.72,23.94},{39.79,19.67},{42.81,9.95}},[zoneIDs.LOCH_MODAN] = {{34.64,96.14},{33.84,92.91},{33.87,95.63},{32.16,90.6},{33.03,88.66},{38.78,92.87},{35.13,90.97},{35.46,86.71},{40.06,90.65},{37.34,88.77},{39.73,87.12}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_KINGDOMS,
|
||||
},
|
||||
[2744] = { -- Giant Clam
|
||||
[objectKeys.spawns] = {[zoneIDs.STRANGLETHORN_VALE] = {{23.6,23.4},{23.6,23.5},{23.7,27.2},{23.7,29.8},{23.8,29.1},{24,25.4},{24,25.5},{24.4,28},{24.8,29.5},{24.9,29.1},{25.2,26.9},{25.3,25},{25.3,26.4},{25.3,27.5},{25.4,22.7},{25.4,24.1},{25.7,22.9},{25.7,25.3},{25.8,24.4},{25.8,28.3},{25.9,29.4},{25.9,30.4},{26.1,30.6},{26.3,26.1},{26.4,27.1},{26.5,29.4},{26.5,29.5},{26.6,24.5},{26.8,30.8},{27.1,23.1},{27.1,26.5},{27.2,26.3},{27.3,24},{27.3,27.9},{27.5,24.2},{27.6,25.6},{27.6,29.2},{27.8,23},{27.8,25.3},{27.8,27.7},{28,26.7}}},
|
||||
},
|
||||
[2867] = { -- Excavation Supply Crate
|
||||
[objectKeys.spawns] = {[zoneIDs.BADLANDS] = {{66.6,22}}},
|
||||
},
|
||||
[10076] = { -- Scrying Bowl
|
||||
[objectKeys.spawns] = {[zoneIDs.DARKSHORE] = {{38.6,86.2}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DARKSHORE,
|
||||
},
|
||||
[13891] = { -- Serpentbloom
|
||||
[objectKeys.spawns] = {[zoneIDs.KALIMDOR] = {{51.877,54.964}},[zoneIDs.THE_BARRENS] = {{49.08,33.51},{48.06,31.9},{47.49,32.92},{46.91,32.73},{48.85,32.25},{46.66,34.48},{46.06,32.74},{46.51,35.56},{49.05,34.16},{48.09,32.41},{47.66,32.22},{46.21,34.72},{45.68,33.82},{48.08,34.31},{47.62,33.85}},[zoneIDs.WAILING_CAVERNS] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.WAILING_CAVERNS,
|
||||
},
|
||||
[15885] = { -- Shrine Of Remulos
|
||||
[objectKeys.name] = "Shrine Of Remulos",
|
||||
[objectKeys.spawns] = {[zoneIDs.MOONGLADE] = {{36.0,41.42}}},
|
||||
[objectKeys.zoneID] = zoneIDs.MOONGLADE,
|
||||
},
|
||||
[19021] = { -- Rusty Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.ASHENVALE] = {{69.04,84.77},{77.03,73.8},{79.08,74.48},{70.53,73.58},{70.68,85.06},{69.29,82.67},{71.29,83.83},{77.97,65.82},{77.38,69.77},{77.06,68.3},{69.87,74.11},{78.3,73.6},{76.22,67.48},{76.62,70.67},{76.77,72.19},{78.31,69.73},{68.24,77.68},{77.68,72.63},{74.77,69.6},{78.26,64.58},{70.72,75.24},{74.23,69.47},{74.36,70.21},{75.88,73.52},{75.87,69.99},{69.89,85.32},{74.34,77.92},{70.1,76.08},{74.58,77.19},{74.67,75.39},{76.67,68.46},{68.94,84.86},{74.41,73.38},{74.46,75.56},{73.09,73.23},{71.04,73.8},{71.45,76.97},{73.68,76.95},{72.63,76.86},{70.77,75.99},{72.51,75.12}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ASHENVALE,
|
||||
},
|
||||
[19869] = { -- Rocket Car Rubble
|
||||
[objectKeys.spawns] = {[zoneIDs.THOUSAND_NEEDLES] = {{88.42,81.04},{87.27,73.47},{86.89,70.01},{87.86,76.59},{88.0,79.88},{83.75,86.66},{88.22,65.57},{78.4,89.97},{76.31,89.51},{75.39,56.37},{71.01,56.34},{69.6,61.3},{69.9,59},{70,78.4},{70,78.5},{70.1,60.2},{70.1,61.8},{70.1,63.1},{70.1,64.2},{70.2,57.2},{70.2,58},{70.3,66.2},{70.5,59.1},{70.6,77.1},{70.9,79.1},{71,56.4},{71,74.4},{71,74.5},{71.1,72},{71.4,57},{71.4,64.4},{71.4,64.5},{71.6,64.4},{71.6,64.5},{71.6,66.7},{71.6,78},{71.7,68.4},{71.7,68.7},{71.7,80.1},{72.3,56.5},{72.3,62.8},{72.3,70.3},{72.3,76.9},{72.4,56.4},{72.4,72.3},{72.4,74.4},{72.4,74.6},{72.4,80.7},{72.5,72.2},{72.5,72.5},{72.5,80.7},{73.1,55.6},{73.1,59.8},{73.2,55.4},{73.2,68.5},{73.4,57.9},{73.5,57.9},{74,61.1},{74.2,63.7},{74.4,55.4},{74.5,55.4},{74.6,59.6},{75.3,54},{75.4,56.2},{75.4,56.5},{75.5,54},{75.5,56.4},{75.9,55.3},{76.2,86.9},{76.3,89.4},{76.3,89.6},{76.8,84.3},{76.8,85.1},{77,53.2},{77.3,86.4},{77.3,86.5},{77.4,90.4},{77.4,90.5},{77.5,90.6},{77.6,54.1},{77.7,51.8},{77.9,84.2},{77.9,85.3},{78,85.5},{78.3,53},{78.4,55.1},{78.4,89.8},{78.5,90},{79,54.1},{79.2,56.2},{79.4,85.3},{79.4,85.5},{79.4,86.7},{79.5,59},{79.5,85.3},{79.8,55.1},{80,87.9},{80.7,54.3},{80.7,56.3},{80.7,89},{81.4,86.3},{81.5,86.3},{81.9,87.2},{81.9,87.5},{82.2,56.2},{82.2,90},{82.8,85.4},{82.8,85.5},{82.8,87.9},{82.9,55.3},{82.9,64.7},{83.6,56.3},{83.7,86.6},{85.3,58.4},{85.3,58.5},{85.6,61.6},{85.7,61.4},{85.8,62.5},{85.9,57.4},{86,59.7},{86.2,68.6},{86.2,74.4},{86.2,74.6},{86.6,63.5},{86.6,64.7},{86.7,58.3},{86.7,58.5},{86.7,63.4},{86.8,60.9},{86.8,67.9},{86.9,70.1},{86.9,72.3},{87,75.4},{87.1,75.5},{87.2,73.5},{87.3,66.9},{87.3,73.4},{87.6,62.9},{87.6,71.3},{87.7,78},{87.8,76.5},{87.9,60.9},{88,80},{88.1,67.8},{88.2,65.4},{88.2,65.7},{88.2,74.9},{88.4,80.9},{88.6,76.8},{88.8,66.4},{88.8,66.6}}},
|
||||
},
|
||||
[19870] = { -- Rocket Car Rubble
|
||||
[objectKeys.spawns] = {[zoneIDs.THOUSAND_NEEDLES] = {{87.75,78.07},{88.18,67.74},{85.64,61.5},{79.38,85.41},{77.96,85.39},{78.35,55.15},{73.44,57.79},{73.97,61.17},{70.6,59.13},{72.34,62.76},{69.7,61.1},{69.9,59},{70,63.1},{70,78.4},{70,78.5},{70.1,64.4},{70.1,64.5},{70.2,60.1},{70.2,62},{70.3,57.1},{70.3,58},{70.3,66.3},{70.5,59.2},{70.7,76.9},{70.8,79.2},{71,56.4},{71,71.9},{71,74.4},{71,74.6},{71.4,57},{71.4,64.4},{71.4,64.5},{71.5,64.4},{71.5,64.5},{71.6,66.5},{71.6,78.2},{71.6,80},{71.7,68.5},{72.3,56.6},{72.3,70.2},{72.3,74.4},{72.3,76.7},{72.4,56.4},{72.4,62.7},{72.4,74.6},{72.5,72.4},{72.5,80.7},{73.1,55.4},{73.1,59.6},{73.2,55.6},{73.2,68.7},{73.4,57.8},{73.5,57.7},{74,61.1},{74.2,63.7},{74.4,55.3},{74.5,55.4},{74.7,59.7},{75.4,54},{75.4,56.3},{75.5,53.9},{76,55.3},{76.1,87},{76.2,89.5},{76.3,89.4},{76.8,84.3},{76.8,85.1},{77,53.2},{77.3,86.5},{77.4,86.4},{77.4,90.4},{77.4,90.6},{77.5,54},{77.5,90.4},{77.5,90.5},{77.6,51.8},{77.8,84.3},{77.9,85.5},{78,85.3},{78.3,53},{78.4,55.2},{79.1,54.1},{79.3,56.2},{79.3,86.5},{79.4,85.3},{79.4,85.5},{79.5,59.1},{79.8,55.3},{79.9,88},{80.7,54.2},{80.7,56.3},{80.8,89.2},{81.4,86.2},{81.5,86.3},{81.9,87.3},{81.9,87.5},{82.2,56.2},{82.3,90},{82.8,55.3},{82.8,85.4},{82.8,85.5},{82.8,87.9},{82.9,64.6},{83.6,56.2},{83.7,86.6},{85.3,58.4},{85.3,58.5},{85.6,61.4},{85.7,61.5},{85.7,62.5},{85.9,57.4},{86,59.7},{86.1,68.7},{86.1,74.4},{86.2,74.5},{86.6,63.3},{86.6,63.5},{86.6,64.7},{86.7,58.4},{86.7,58.5},{86.7,60.9},{86.8,67.9},{86.9,70.1},{86.9,72.3},{87,75.4},{87.1,75.5},{87.2,73.5},{87.3,66.9},{87.3,73.4},{87.5,71.3},{87.6,62.9},{87.8,78},{87.9,60.9},{87.9,76.5},{88,79.8},{88.1,67.8},{88.3,65.6},{88.3,75.1},{88.4,81},{88.6,76.8},{88.8,66.4},{88.8,66.5}}},
|
||||
},
|
||||
[21004] = { -- Monument to Grom Hellscream
|
||||
[objectKeys.name] = "Monument to Grom Hellscream",
|
||||
[objectKeys.spawns] = {[zoneIDs.ASHENVALE] = {{82.8,79.09}}},
|
||||
},
|
||||
[21015] = { -- Hoofprints
|
||||
[objectKeys.spawns] = {[zoneIDs.DUSTWALLOW_MARSH] = {{29.7,47.64}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DUSTWALLOW_MARSH,
|
||||
[objectKeys.questStarts] = {1268,1284},
|
||||
},
|
||||
[21016] = { -- Hoofprints
|
||||
[objectKeys.spawns] = {[zoneIDs.DUSTWALLOW_MARSH] = {{29.7,47.64}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DUSTWALLOW_MARSH,
|
||||
[objectKeys.questStarts] = {1268,1284},
|
||||
},
|
||||
[28604] = { -- Scattered Crate
|
||||
[objectKeys.spawns] = {[zoneIDs.SWAMP_OF_SORROWS] = {{37.09,36.16},{64.09,23.35},{45.82,35.58},{56.92,24.7},{62.27,22.5},{43.29,33.26},{33.64,46.01},{29.7,50.11},{14.19,38.22},{9.7,29.84},{54.39,30.59},{60.03,21.73},{29.91,38.31},{64.89,20.44},{4.64,31.2},{37.09,34.15},{12.8,34.43}}},
|
||||
},
|
||||
[35252] = { -- Ancient Relic
|
||||
[objectKeys.spawns] = {[zoneIDs.WETLANDS] = {{32.2,50.8},{32.3,48.4},{32.3,48.6},{32.7,51},{33.2,46.4},{33.3,49},{33.4,47.4},{33.4,47.6},{33.4,51.5},{33.8,48.6},{33.9,46.6},{34.1,49.7},{34.2,47.6},{34.2,50.8},{34.3,45.7},{34.4,44.4},{34.4,44.5},{34.7,52.5},{34.8,50.3},{34.9,47},{35,47.9},{35.1,51.5},{35.2,44.3},{35.2,44.5},{35.2,48.9},{35.2,51.4},{35.4,46.3},{35.5,45},{35.5,46},{35.6,47.9},{36.1,48.8},{36.1,50},{36.4,42.1},{36.6,42.2}}},
|
||||
},
|
||||
[37099] = { -- Atal'ai Tablet
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_KINGDOMS] = {{54.298,79.389}},[zoneIDs.SWAMP_OF_SORROWS] = {{76.17,43.79},{74.7,43.84},{70.55,44.53},{75.68,44.95},{72.09,45.22},{74.77,46.71},{71.0,46.89},{76.07,47.44},{72.83,47.65},{75.85,48.3},{76.61,49.05},{75.81,49.4},{75.31,49.51},{78.27,49.54},{76.71,51.31}},[1477] = {{-1,-1}}},
|
||||
},
|
||||
[92423] = { -- Damaged Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.THOUSAND_NEEDLES] = {{43.44,32.69}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THOUSAND_NEEDLES,
|
||||
},
|
||||
[93192] = { -- Heartswood
|
||||
[objectKeys.spawns] = {[zoneIDs.ASHENVALE] = {{31.55,31.57}}},
|
||||
},
|
||||
[103662] = { -- Bolt Charged Bramble
|
||||
[objectKeys.spawns] = {[zoneIDs.ARATHI_HIGHLANDS] = {{52,50.8}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ARATHI_HIGHLANDS,
|
||||
},
|
||||
[112877] = { -- Talvash's Scrying Bowl
|
||||
[objectKeys.spawns] = {[zoneIDs.ULDAMAN] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDAMAN,
|
||||
},
|
||||
[124388] = { -- Garrett Family Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_KINGDOMS] = {{51.795,63.997}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_KINGDOMS,
|
||||
},
|
||||
[124389] = { -- Krom Stoutarm's Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_KINGDOMS] = {{51.878,64.295}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_KINGDOMS,
|
||||
},
|
||||
[126049] = { -- Magenta Cap Clusters
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_KINGDOMS] = {{52.039,63.9}},[38] = {{33.27,88.68},{37.57,91.57},{39.79,85.71},{35.74,87.49},{40.08,89.74},{36.98,89.97},{37.19,85.58},{37.19,85.58},{36.98,89.97},{37.57,91.57}},[3] = {{34.04,24.42}},[1337] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_KINGDOMS,
|
||||
},
|
||||
[126260] = { -- Ancient Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_KINGDOMS] = {{52.107,64.008}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_KINGDOMS,
|
||||
},
|
||||
[140911] = { -- Spool of Light Chartreuse Silk Thread
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY] = {{39.94,46.14}}},
|
||||
},
|
||||
[140971] = { -- Gahz'ridian
|
||||
[objectKeys.spawns] = {[zoneIDs.TANARIS] = {{36.1,56.4},{36.1,56.5},{36.4,52.3},{36.8,35.2},{37.7,29.6},{38.3,61.9},{38.9,65.8},{38.9,73},{39.1,70.7},{39.4,51.6},{39.7,74.4},{39.9,72.1},{40,31.1},{40.1,47.3},{40.2,73.3},{40.3,68.9},{40.3,77.4},{40.3,77.5},{40.4,74.7},{40.8,39.2},{40.8,43.4},{40.8,43.5},{41,71.6},{41,74.8},{41.1,71.1},{41.4,72.7},{41.5,73.7},{41.7,56.3},{41.9,73.3},{42.1,74.5},{42.2,58.5},{42.8,26.1},{43.1,62.1},{43.2,77.3},{44.2,45.7},{44.8,38.8},{44.8,65.2},{44.9,33.9},{44.9,64.4},{45.1,27},{45.1,52},{45.3,66},{45.6,64.6},{45.8,66.8},{46.1,49.4},{46.1,49.5},{46.1,65.6},{46.2,63.3},{46.2,70.3},{46.4,64.2},{46.5,64.2},{46.9,76.1},{47.1,30.4},{47.1,30.5},{47.1,64.5},{47.1,66},{47.2,67},{47.3,63.4},{47.4,38.4},{47.4,38.5},{47.5,38.4},{47.5,38.5},{47.6,57.2},{47.9,65.8},{48,52.7},{48,64.4},{48,67.4},{48.1,67.5},{48.2,64.7},{48.3,72.8},{48.4,44.4},{48.4,44.5},{48.5,44.4},{48.5,44.5},{48.6,28.7},{49.1,77.3},{49.6,35.9},{49.6,59.2},{49.7,69.1},{50.4,78.5},{50.7,61.1},{51.3,64.1},{52,37.4},{52.1,32.1},{52.3,45.3},{52.4,50.8},{52.9,52.7},{53,44},{53.2,45.2},{53.4,47.7},{53.5,47.6},{53.5,57.8},{53.7,46.2},{53.8,33.3},{54.8,39},{55.6,47.7},{55.6,60},{56.6,35.3},{56.7,52.4},{56.7,52.5},{57.1,47.6},{57.8,28.9},{57.8,57.9},{58.1,24.6},{58.1,48.8}}},
|
||||
},
|
||||
[142122] = { -- Wanted Poster
|
||||
[objectKeys.questStarts] = {2781,2875},
|
||||
},
|
||||
[142194] = { -- Pirate's Treasure!
|
||||
[objectKeys.spawns] = {[zoneIDs.TANARIS] = {{50.7,90.78},{54.06,93.03},{53.09,95.89},{52.16,94.39},{54.54,95.09},{55.56,92.28}}},
|
||||
[objectKeys.zoneID] = zoneIDs.TANARIS,
|
||||
},
|
||||
[142343] = { -- Uldum Pedestal
|
||||
[objectKeys.questStarts] = {2954,2967,2977},
|
||||
},
|
||||
[142345] = { -- Matrix Punchograph 3005-A
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_KINGDOMS] = {{42.83,59.191},{42.854,59.193},{42.838,59.386},{42.798,59.381}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_KINGDOMS,
|
||||
},
|
||||
[143979] = { -- Cage Door
|
||||
[objectKeys.name] = "Cage Door",
|
||||
[objectKeys.spawns] = {[zoneIDs.TANARIS] = {{66.66,46.75}}},
|
||||
[objectKeys.zoneID] = zoneIDs.TANARIS,
|
||||
},
|
||||
[144052] = { -- Sandsorrow Watch Water Hole
|
||||
[objectKeys.spawns] = {[zoneIDs.TANARIS] = {{39,29}}},
|
||||
[objectKeys.zoneID] = zoneIDs.TANARIS,
|
||||
},
|
||||
[144064] = { -- Gordunni Dirt Mound
|
||||
[objectKeys.spawns] = {[zoneIDs.FERALAS] = {{74.3,29},{74.6,30.2},{75.1,32.4},{75.1,32.5},{75.3,28.2},{75.3,33.7},{75.5,30.4},{75.5,30.5},{76,29},{76.3,34.4},{76.4,33.1},{76.4,34.5},{76.5,33.1},{76.7,33.8},{76.9,29.7},{77.5,35.1},{78.4,34},{78.5,34},{79.2,34.9},{80.4,34.3},{80.4,36},{80.5,34.2},{81,35.4},{81,35.5},{81.6,35}}}, -- #1160
|
||||
[objectKeys.zoneID] = zoneIDs.FERALAS,
|
||||
},
|
||||
[148503] = { -- Fire Plume Ridge Hot Spot
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{49.69,45.64}}}, -- only showing it here so we can put the tooltip on it
|
||||
},
|
||||
[148513] = { -- Tablet of Jin'yael
|
||||
[objectKeys.spawns] = {[zoneIDs.AZSHARA] = {{34,59.9},{34.8,53.3},{35.4,58.5},{35.5,52.3},{35.6,49.6},{35.9,51.2},{36,56.9},{36.3,58.7},{36.3,62.2},{36.4,54},{36.4,60.6},{36.5,54.1},{37.4,60.7},{37.5,60.7},{37.7,52.4},{37.9,56.4},{38,51.3},{38.4,53.4},{38.7,63.3},{39.2,61.4},{39.2,61.6},{39.4,56.5},{39.5,56.5},{39.8,53.4},{39.8,53.5},{39.8,59.7},{40.1,62.4},{40.2,62.5},{40.5,61.1},{40.5,64},{41,55},{41.2,62},{42.2,64.6},{43.4,64},{43.9,64.7}}},
|
||||
},
|
||||
[148514] = { -- Tablet of Markri
|
||||
[objectKeys.spawns] = {[zoneIDs.AZSHARA] = {{34.2,57.8},{34.65,55.61},{35.7,56.51},{35.9,59},{36.2,52.6},{37.92,47.75},{39.3,57.6},{39.8,48.8},{39.84,45.88},{39.99,64.19},{40.2,45}}},
|
||||
},
|
||||
[148515] = { -- Tablet of Sael'hai
|
||||
[objectKeys.spawns] = {[zoneIDs.AZSHARA] = {{35.6,55.9},{35.9,53.5},{36.1,59.9},{36.9,49.6},{37,54.5},{37.14,60.51},{37.29,48.08},{38.58,54.62},{38.6,47.5},{39.3,59.9},{41.51,65.04}}},
|
||||
},
|
||||
[148516] = { -- Tablet of Beth'Amara
|
||||
[objectKeys.spawns] = {[zoneIDs.AZSHARA] = {{34.1,50.5},{34.3,55.2},{35.19,58.02},{36,57.6},{36.8,60.5},{37.07,51.86},{38.4,60.3},{38.91,53.46},{39.54,64.32},{39.6,48.14}}},
|
||||
},
|
||||
[153123] = { -- Kim'jael's Equipment
|
||||
[objectKeys.spawns] = {[zoneIDs.AZSHARA] = {{56.1,30.1},{56.3,28.8},{56.4,28.4},{56.5,28.8},{57.0,28.4},{57.0,29.9},{57.9,29.1},{58.2,27.7},{58.4,25.0},{58.5,25.0},{58.6,26.0},{58.6,29.1},{58.9,28.4},{59.2,23.0},{59.6,30.9}}}, --#1413
|
||||
},
|
||||
[154357] = { -- Glinting Mud
|
||||
[objectKeys.spawns] = {[zoneIDs.REDRIDGE_MOUNTAINS] = {{21.9,53.2},{24.1,54.6},{25.9,54.1},{26.4,51.3},{28,56},{30.8,54.3},{33.6,55.2},{36.8,54.3},{37.9,54.5},{19.16,51.74},{34.13,53.37},{29.52,53.72}}}, -- #1176
|
||||
},
|
||||
[157936] = { -- Un'Goro Dirt Pile
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{21.92,38.58},{25.56,46.29},{27.01,40.16},{28.01,62.73},{29.7,30.6},{30.52,69.98},{30.61,56.66},{30.97,78.87},{31.03,34.12},{32.86,22.92},{33.11,65.36},{35.86,46.22},{36.35,69.75},{36.4,76.32},{38.2,23.1},{38.9,39.54},{40.37,26.87},{40.75,59.65},{41.11,79.78},{41.9,53.16},{42.21,45.46},{44.14,33.79},{44.7,54.42},{47,52.9},{48.9,58},{49.46,48.48},{49.4,83.5},{50.21,34.29},{50.45,90.1},{51.1,47},{52.49,78.92},{52.77,45.42},{52.83,55.91},{53.56,39.03},{55.58,28.65},{55.97,56.86},{56.56,83.45},{57.13,44.16},{58.13,36.33},{60,81.8},{62.16,17.57},{62.3,64},{63.3,47.9},{64.06,40.97},{64.9,78.4},{69.4,76.4},{71.67,75.91},{73.11,65.65},{73.41,58.29}}},
|
||||
},
|
||||
[164658] = { -- Blue Power Crystal
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{19.7,38.9},{20.7,50},{23,59.1},{23.1,40.3},{23.7,59},{24,42.8},{25.1,67.0},{25.5,39.9},{25.8,53.9},{25.8,63.3},{26.0,59.9},{27.5,70.1},{27.7,46.3},{27.7,46.5},{30.1,21.3},{30.4,70.5},{30.7,63.3},{32.6,73.5},{33,29.7},{33.8,44.4},{33.9,76.7},{35.8,54.5},{37.7,20.4},{37.7,20.5},{37.8,66.4},{37.8,66.5},{38,41.8},{38.2,81.9},{39.3,14.5},{39.7,26.8},{40.5,49.9},{40.5,75.3},{40.8,79.9},{42.6,34.1},{42.8,86.1},{42.9,52.9},{42.9,66},{43,45.4},{43,45.5},{43.8,16.7},{43.9,21.3},{43.9,21.5},{44.2,88.8},{45.4,38.6},{45.4,66},{45.5,66},{45.7,92.5},{46.3,19.7},{46.8,14.9},{47,61.1},{47.3,13},{49.9,15.7},{50,92.3},{51.3,61.4},{51.6,13.6},{51.8,34.9},{51.9,87.5},{53.7,38.9},{54.1,18.1},{55.8,7.9},{56,18.5},{56.1,18.4},{56.2,60.6},{56.3,73.6},{56.4,12.3},{56.6,12.3},{56.8,76.2},{57.3,10.1},{57.4,82.5},{58.1,8.8},{58.1,49.8},{58.3,10.7},{58.3,65.9},{58.6,78.4},{59.2,20.3},{59.6,60.2},{59.8,49.4},{60.4,77.4},{60.9,68.4},{60.9,68.5},{61,15.1},{62,85.2},{62.1,40.4},{62.1,40.5},{62.3,68.4},{62.4,68.5},{62.4,70.3},{62.4,70.5},{62.6,16.7},{62.6,26.9},{63.2,75.2},{63.4,23},{64.2,53.9},{65.2,79.7},{66.1,21.1},{66.7,46.9},{66.8,73.3},{67.7,40.4},{67.7,40.5},{67.9,51.4},{68.3,25.3},{68.4,25.5},{68.4,59.7},{69.1,28.9},{69.4,79.9},{69.5,79.9},{69.6,35.1},{69.6,69.4},{69.6,69.5},{69.9,18.9},{70.1,77.1},{70.3,64.2},{71.1,42.9},{71.6,73.6},{71.7,63.5},{71.8,63.4},{71.9,23},{72.1,33.1},{72.2,21.1},{72.4,35.4},{72.4,35.6},{73,46.8},{73,65.4},{73,65.5},{73.8,53.4},{73.8,53.5},{74.4,56.9},{74.4,63.8},{74.5,57},{74.5,63.8},{74.8,29.6},{74.8,58.9},{74.9,70.5},{75.1,37.7},{75.2,61.6},{75.3,61.4},{75.9,40.1},{76.6,43.8},{76.8,57.7},{78.2,40.1},{79.3,57.9},{79.9,61.9},{80.4,49.7},{80.5,49.7},{80.7,43},{81.4,39.1},{81.5,39.1},{81.6,60.6}}}, -- #1156
|
||||
},
|
||||
[164659] = { -- Green Power Crystal
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{19.7,38.9},{20.7,50},{23,59.1},{23.1,40.3},{23.7,59},{24,42.8},{25.1,67.0},{25.5,39.9},{25.8,53.9},{25.8,63.3},{26.0,59.9},{27.5,70.1},{27.7,46.3},{27.7,46.5},{30.1,21.3},{30.4,70.5},{30.7,63.3},{32.6,73.5},{33,29.7},{33.8,44.4},{33.9,76.7},{35.8,54.5},{37.7,20.4},{37.7,20.5},{37.8,66.4},{37.8,66.5},{38,41.8},{38.2,81.9},{39.3,14.5},{39.7,26.8},{40.5,49.9},{40.5,75.3},{40.8,79.9},{42.6,34.1},{42.8,86.1},{42.9,52.9},{42.9,66},{43,45.4},{43,45.5},{43.8,16.7},{43.9,21.3},{43.9,21.5},{44.2,88.8},{45.4,38.6},{45.4,66},{45.5,66},{45.7,92.5},{46.3,19.7},{46.8,14.9},{47,61.1},{47.3,13},{49.9,15.7},{50,92.3},{51.3,61.4},{51.6,13.6},{51.8,34.9},{51.9,87.5},{53.7,38.9},{54.1,18.1},{55.8,7.9},{56,18.5},{56.1,18.4},{56.2,60.6},{56.3,73.6},{56.4,12.3},{56.6,12.3},{56.8,76.2},{57.3,10.1},{57.4,82.5},{58.1,8.8},{58.1,49.8},{58.3,10.7},{58.3,65.9},{58.6,78.4},{59.2,20.3},{59.6,60.2},{59.8,49.4},{60.4,77.4},{60.9,68.4},{60.9,68.5},{61,15.1},{62,85.2},{62.1,40.4},{62.1,40.5},{62.3,68.4},{62.4,68.5},{62.4,70.3},{62.4,70.5},{62.6,16.7},{62.6,26.9},{63.2,75.2},{63.4,23},{64.2,53.9},{65.2,79.7},{66.1,21.1},{66.7,46.9},{66.8,73.3},{67.7,40.4},{67.7,40.5},{67.9,51.4},{68.3,25.3},{68.4,25.5},{68.4,59.7},{69.1,28.9},{69.4,79.9},{69.5,79.9},{69.6,35.1},{69.6,69.4},{69.6,69.5},{69.9,18.9},{70.1,77.1},{70.3,64.2},{71.1,42.9},{71.6,73.6},{71.7,63.5},{71.8,63.4},{71.9,23},{72.1,33.1},{72.2,21.1},{72.4,35.4},{72.4,35.6},{73,46.8},{73,65.4},{73,65.5},{73.8,53.4},{73.8,53.5},{74.4,56.9},{74.4,63.8},{74.5,57},{74.5,63.8},{74.8,29.6},{74.8,58.9},{74.9,70.5},{75.1,37.7},{75.2,61.6},{75.3,61.4},{75.9,40.1},{76.6,43.8},{76.8,57.7},{78.2,40.1},{79.3,57.9},{79.9,61.9},{80.4,49.7},{80.5,49.7},{80.7,43},{81.4,39.1},{81.5,39.1},{81.6,60.6}}}, -- #1156
|
||||
},
|
||||
[164660] = { -- Red Power Crystal
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{19.7,38.9},{20.7,50},{23,59.1},{23.1,40.3},{23.7,59},{24,42.8},{25.1,67.0},{25.5,39.9},{25.8,53.9},{25.8,63.3},{26.0,59.9},{27.5,70.1},{27.7,46.3},{27.7,46.5},{30.1,21.3},{30.4,70.5},{30.7,63.3},{32.6,73.5},{33,29.7},{33.8,44.4},{33.9,76.7},{35.8,54.5},{37.7,20.4},{37.7,20.5},{37.8,66.4},{37.8,66.5},{38,41.8},{38.2,81.9},{39.3,14.5},{39.7,26.8},{40.5,49.9},{40.5,75.3},{40.8,79.9},{42.6,34.1},{42.8,86.1},{42.9,52.9},{42.9,66},{43,45.4},{43,45.5},{43.8,16.7},{43.9,21.3},{43.9,21.5},{44.2,88.8},{45.4,38.6},{45.4,66},{45.5,66},{45.7,92.5},{46.3,19.7},{46.8,14.9},{47,61.1},{47.3,13},{49.9,15.7},{50,92.3},{51.3,61.4},{51.6,13.6},{51.8,34.9},{51.9,87.5},{53.7,38.9},{54.1,18.1},{55.8,7.9},{56,18.5},{56.1,18.4},{56.2,60.6},{56.3,73.6},{56.4,12.3},{56.6,12.3},{56.8,76.2},{57.3,10.1},{57.4,82.5},{58.1,8.8},{58.1,49.8},{58.3,10.7},{58.3,65.9},{58.6,78.4},{59.2,20.3},{59.6,60.2},{59.8,49.4},{60.4,77.4},{60.9,68.4},{60.9,68.5},{61,15.1},{62,85.2},{62.1,40.4},{62.1,40.5},{62.3,68.4},{62.4,68.5},{62.4,70.3},{62.4,70.5},{62.6,16.7},{62.6,26.9},{63.2,75.2},{63.4,23},{64.2,53.9},{65.2,79.7},{66.1,21.1},{66.7,46.9},{66.8,73.3},{67.7,40.4},{67.7,40.5},{67.9,51.4},{68.3,25.3},{68.4,25.5},{68.4,59.7},{69.1,28.9},{69.4,79.9},{69.5,79.9},{69.6,35.1},{69.6,69.4},{69.6,69.5},{69.9,18.9},{70.1,77.1},{70.3,64.2},{71.1,42.9},{71.6,73.6},{71.7,63.5},{71.8,63.4},{71.9,23},{72.1,33.1},{72.2,21.1},{72.4,35.4},{72.4,35.6},{73,46.8},{73,65.4},{73,65.5},{73.8,53.4},{73.8,53.5},{74.4,56.9},{74.4,63.8},{74.5,57},{74.5,63.8},{74.8,29.6},{74.8,58.9},{74.9,70.5},{75.1,37.7},{75.2,61.6},{75.3,61.4},{75.9,40.1},{76.6,43.8},{76.8,57.7},{78.2,40.1},{79.3,57.9},{79.9,61.9},{80.4,49.7},{80.5,49.7},{80.7,43},{81.4,39.1},{81.5,39.1},{81.6,60.6}}}, -- #1156
|
||||
},
|
||||
[164661] = { -- Yellow Power Crystal
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{19.7,38.9},{20.7,50},{23,59.1},{23.1,40.3},{23.7,59},{24,42.8},{25.1,67.0},{25.5,39.9},{25.8,53.9},{25.8,63.3},{26.0,59.9},{27.5,70.1},{27.7,46.3},{27.7,46.5},{30.1,21.3},{30.4,70.5},{30.7,63.3},{32.6,73.5},{33,29.7},{33.8,44.4},{33.9,76.7},{35.8,54.5},{37.7,20.4},{37.7,20.5},{37.8,66.4},{37.8,66.5},{38,41.8},{38.2,81.9},{39.3,14.5},{39.7,26.8},{40.5,49.9},{40.5,75.3},{40.8,79.9},{42.6,34.1},{42.8,86.1},{42.9,52.9},{42.9,66},{43,45.4},{43,45.5},{43.8,16.7},{43.9,21.3},{43.9,21.5},{44.2,88.8},{45.4,38.6},{45.4,66},{45.5,66},{45.7,92.5},{46.3,19.7},{46.8,14.9},{47,61.1},{47.3,13},{49.9,15.7},{50,92.3},{51.3,61.4},{51.6,13.6},{51.8,34.9},{51.9,87.5},{53.7,38.9},{54.1,18.1},{55.8,7.9},{56,18.5},{56.1,18.4},{56.2,60.6},{56.3,73.6},{56.4,12.3},{56.6,12.3},{56.8,76.2},{57.3,10.1},{57.4,82.5},{58.1,8.8},{58.1,49.8},{58.3,10.7},{58.3,65.9},{58.6,78.4},{59.2,20.3},{59.6,60.2},{59.8,49.4},{60.4,77.4},{60.9,68.4},{60.9,68.5},{61,15.1},{62,85.2},{62.1,40.4},{62.1,40.5},{62.3,68.4},{62.4,68.5},{62.4,70.3},{62.4,70.5},{62.6,16.7},{62.6,26.9},{63.2,75.2},{63.4,23},{64.2,53.9},{65.2,79.7},{66.1,21.1},{66.7,46.9},{66.8,73.3},{67.7,40.4},{67.7,40.5},{67.9,51.4},{68.3,25.3},{68.4,25.5},{68.4,59.7},{69.1,28.9},{69.4,79.9},{69.5,79.9},{69.6,35.1},{69.6,69.4},{69.6,69.5},{69.9,18.9},{70.1,77.1},{70.3,64.2},{71.1,42.9},{71.6,73.6},{71.7,63.5},{71.8,63.4},{71.9,23},{72.1,33.1},{72.2,21.1},{72.4,35.4},{72.4,35.6},{73,46.8},{73,65.4},{73,65.5},{73.8,53.4},{73.8,53.5},{74.4,56.9},{74.4,63.8},{74.5,57},{74.5,63.8},{74.8,29.6},{74.8,58.9},{74.9,70.5},{75.1,37.7},{75.2,61.6},{75.3,61.4},{75.9,40.1},{76.6,43.8},{76.8,57.7},{78.2,40.1},{79.3,57.9},{79.9,61.9},{80.4,49.7},{80.5,49.7},{80.7,43},{81.4,39.1},{81.5,39.1},{81.6,60.6}}}, -- #1156
|
||||
},
|
||||
[164778] = { -- Blue Power Crystal
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{19.7,38.9},{20.7,50},{23,59.1},{23.1,40.3},{23.7,59},{24,42.8},{25.1,67.0},{25.5,39.9},{25.8,53.9},{25.8,63.3},{26.0,59.9},{27.5,70.1},{27.7,46.3},{27.7,46.5},{30.1,21.3},{30.4,70.5},{30.7,63.3},{32.6,73.5},{33,29.7},{33.8,44.4},{33.9,76.7},{35.8,54.5},{37.7,20.4},{37.7,20.5},{37.8,66.4},{37.8,66.5},{38,41.8},{38.2,81.9},{39.3,14.5},{39.7,26.8},{40.5,49.9},{40.5,75.3},{40.8,79.9},{42.6,34.1},{42.8,86.1},{42.9,52.9},{42.9,66},{43,45.4},{43,45.5},{43.8,16.7},{43.9,21.3},{43.9,21.5},{44.2,88.8},{45.4,38.6},{45.4,66},{45.5,66},{45.7,92.5},{46.3,19.7},{46.8,14.9},{47,61.1},{47.3,13},{49.9,15.7},{50,92.3},{51.3,61.4},{51.6,13.6},{51.8,34.9},{51.9,87.5},{53.7,38.9},{54.1,18.1},{55.8,7.9},{56,18.5},{56.1,18.4},{56.2,60.6},{56.3,73.6},{56.4,12.3},{56.6,12.3},{56.8,76.2},{57.3,10.1},{57.4,82.5},{58.1,8.8},{58.1,49.8},{58.3,10.7},{58.3,65.9},{58.6,78.4},{59.2,20.3},{59.6,60.2},{59.8,49.4},{60.4,77.4},{60.9,68.4},{60.9,68.5},{61,15.1},{62,85.2},{62.1,40.4},{62.1,40.5},{62.3,68.4},{62.4,68.5},{62.4,70.3},{62.4,70.5},{62.6,16.7},{62.6,26.9},{63.2,75.2},{63.4,23},{64.2,53.9},{65.2,79.7},{66.1,21.1},{66.7,46.9},{66.8,73.3},{67.7,40.4},{67.7,40.5},{67.9,51.4},{68.3,25.3},{68.4,25.5},{68.4,59.7},{69.1,28.9},{69.4,79.9},{69.5,79.9},{69.6,35.1},{69.6,69.4},{69.6,69.5},{69.9,18.9},{70.1,77.1},{70.3,64.2},{71.1,42.9},{71.6,73.6},{71.7,63.5},{71.8,63.4},{71.9,23},{72.1,33.1},{72.2,21.1},{72.4,35.4},{72.4,35.6},{73,46.8},{73,65.4},{73,65.5},{73.8,53.4},{73.8,53.5},{74.4,56.9},{74.4,63.8},{74.5,57},{74.5,63.8},{74.8,29.6},{74.8,58.9},{74.9,70.5},{75.1,37.7},{75.2,61.6},{75.3,61.4},{75.9,40.1},{76.6,43.8},{76.8,57.7},{78.2,40.1},{79.3,57.9},{79.9,61.9},{80.4,49.7},{80.5,49.7},{80.7,43},{81.4,39.1},{81.5,39.1},{81.6,60.6}}}, -- #1156
|
||||
},
|
||||
[164779] = { -- Green Power Crystal
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{19.7,38.9},{20.7,50},{23,59.1},{23.1,40.3},{23.7,59},{24,42.8},{25.1,67.0},{25.5,39.9},{25.8,53.9},{25.8,63.3},{26.0,59.9},{27.5,70.1},{27.7,46.3},{27.7,46.5},{30.1,21.3},{30.4,70.5},{30.7,63.3},{32.6,73.5},{33,29.7},{33.8,44.4},{33.9,76.7},{35.8,54.5},{37.7,20.4},{37.7,20.5},{37.8,66.4},{37.8,66.5},{38,41.8},{38.2,81.9},{39.3,14.5},{39.7,26.8},{40.5,49.9},{40.5,75.3},{40.8,79.9},{42.6,34.1},{42.8,86.1},{42.9,52.9},{42.9,66},{43,45.4},{43,45.5},{43.8,16.7},{43.9,21.3},{43.9,21.5},{44.2,88.8},{45.4,38.6},{45.4,66},{45.5,66},{45.7,92.5},{46.3,19.7},{46.8,14.9},{47,61.1},{47.3,13},{49.9,15.7},{50,92.3},{51.3,61.4},{51.6,13.6},{51.8,34.9},{51.9,87.5},{53.7,38.9},{54.1,18.1},{55.8,7.9},{56,18.5},{56.1,18.4},{56.2,60.6},{56.3,73.6},{56.4,12.3},{56.6,12.3},{56.8,76.2},{57.3,10.1},{57.4,82.5},{58.1,8.8},{58.1,49.8},{58.3,10.7},{58.3,65.9},{58.6,78.4},{59.2,20.3},{59.6,60.2},{59.8,49.4},{60.4,77.4},{60.9,68.4},{60.9,68.5},{61,15.1},{62,85.2},{62.1,40.4},{62.1,40.5},{62.3,68.4},{62.4,68.5},{62.4,70.3},{62.4,70.5},{62.6,16.7},{62.6,26.9},{63.2,75.2},{63.4,23},{64.2,53.9},{65.2,79.7},{66.1,21.1},{66.7,46.9},{66.8,73.3},{67.7,40.4},{67.7,40.5},{67.9,51.4},{68.3,25.3},{68.4,25.5},{68.4,59.7},{69.1,28.9},{69.4,79.9},{69.5,79.9},{69.6,35.1},{69.6,69.4},{69.6,69.5},{69.9,18.9},{70.1,77.1},{70.3,64.2},{71.1,42.9},{71.6,73.6},{71.7,63.5},{71.8,63.4},{71.9,23},{72.1,33.1},{72.2,21.1},{72.4,35.4},{72.4,35.6},{73,46.8},{73,65.4},{73,65.5},{73.8,53.4},{73.8,53.5},{74.4,56.9},{74.4,63.8},{74.5,57},{74.5,63.8},{74.8,29.6},{74.8,58.9},{74.9,70.5},{75.1,37.7},{75.2,61.6},{75.3,61.4},{75.9,40.1},{76.6,43.8},{76.8,57.7},{78.2,40.1},{79.3,57.9},{79.9,61.9},{80.4,49.7},{80.5,49.7},{80.7,43},{81.4,39.1},{81.5,39.1},{81.6,60.6}}}, -- #1156
|
||||
},
|
||||
[164780] = { -- Red Power Crystal
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{19.7,38.9},{20.7,50},{23,59.1},{23.1,40.3},{23.7,59},{24,42.8},{25.1,67.0},{25.5,39.9},{25.8,53.9},{25.8,63.3},{26.0,59.9},{27.5,70.1},{27.7,46.3},{27.7,46.5},{30.1,21.3},{30.4,70.5},{30.7,63.3},{32.6,73.5},{33,29.7},{33.8,44.4},{33.9,76.7},{35.8,54.5},{37.7,20.4},{37.7,20.5},{37.8,66.4},{37.8,66.5},{38,41.8},{38.2,81.9},{39.3,14.5},{39.7,26.8},{40.5,49.9},{40.5,75.3},{40.8,79.9},{42.6,34.1},{42.8,86.1},{42.9,52.9},{42.9,66},{43,45.4},{43,45.5},{43.8,16.7},{43.9,21.3},{43.9,21.5},{44.2,88.8},{45.4,38.6},{45.4,66},{45.5,66},{45.7,92.5},{46.3,19.7},{46.8,14.9},{47,61.1},{47.3,13},{49.9,15.7},{50,92.3},{51.3,61.4},{51.6,13.6},{51.8,34.9},{51.9,87.5},{53.7,38.9},{54.1,18.1},{55.8,7.9},{56,18.5},{56.1,18.4},{56.2,60.6},{56.3,73.6},{56.4,12.3},{56.6,12.3},{56.8,76.2},{57.3,10.1},{57.4,82.5},{58.1,8.8},{58.1,49.8},{58.3,10.7},{58.3,65.9},{58.6,78.4},{59.2,20.3},{59.6,60.2},{59.8,49.4},{60.4,77.4},{60.9,68.4},{60.9,68.5},{61,15.1},{62,85.2},{62.1,40.4},{62.1,40.5},{62.3,68.4},{62.4,68.5},{62.4,70.3},{62.4,70.5},{62.6,16.7},{62.6,26.9},{63.2,75.2},{63.4,23},{64.2,53.9},{65.2,79.7},{66.1,21.1},{66.7,46.9},{66.8,73.3},{67.7,40.4},{67.7,40.5},{67.9,51.4},{68.3,25.3},{68.4,25.5},{68.4,59.7},{69.1,28.9},{69.4,79.9},{69.5,79.9},{69.6,35.1},{69.6,69.4},{69.6,69.5},{69.9,18.9},{70.1,77.1},{70.3,64.2},{71.1,42.9},{71.6,73.6},{71.7,63.5},{71.8,63.4},{71.9,23},{72.1,33.1},{72.2,21.1},{72.4,35.4},{72.4,35.6},{73,46.8},{73,65.4},{73,65.5},{73.8,53.4},{73.8,53.5},{74.4,56.9},{74.4,63.8},{74.5,57},{74.5,63.8},{74.8,29.6},{74.8,58.9},{74.9,70.5},{75.1,37.7},{75.2,61.6},{75.3,61.4},{75.9,40.1},{76.6,43.8},{76.8,57.7},{78.2,40.1},{79.3,57.9},{79.9,61.9},{80.4,49.7},{80.5,49.7},{80.7,43},{81.4,39.1},{81.5,39.1},{81.6,60.6}}}, -- #1156
|
||||
},
|
||||
[164781] = { -- Yellow Power Crystal
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER] = {{19.7,38.9},{20.7,50},{23,59.1},{23.1,40.3},{23.7,59},{24,42.8},{25.1,67.0},{25.5,39.9},{25.8,53.9},{25.8,63.3},{26.0,59.9},{27.5,70.1},{27.7,46.3},{27.7,46.5},{30.1,21.3},{30.4,70.5},{30.7,63.3},{32.6,73.5},{33,29.7},{33.8,44.4},{33.9,76.7},{35.8,54.5},{37.7,20.4},{37.7,20.5},{37.8,66.4},{37.8,66.5},{38,41.8},{38.2,81.9},{39.3,14.5},{39.7,26.8},{40.5,49.9},{40.5,75.3},{40.8,79.9},{42.6,34.1},{42.8,86.1},{42.9,52.9},{42.9,66},{43,45.4},{43,45.5},{43.8,16.7},{43.9,21.3},{43.9,21.5},{44.2,88.8},{45.4,38.6},{45.4,66},{45.5,66},{45.7,92.5},{46.3,19.7},{46.8,14.9},{47,61.1},{47.3,13},{49.9,15.7},{50,92.3},{51.3,61.4},{51.6,13.6},{51.8,34.9},{51.9,87.5},{53.7,38.9},{54.1,18.1},{55.8,7.9},{56,18.5},{56.1,18.4},{56.2,60.6},{56.3,73.6},{56.4,12.3},{56.6,12.3},{56.8,76.2},{57.3,10.1},{57.4,82.5},{58.1,8.8},{58.1,49.8},{58.3,10.7},{58.3,65.9},{58.6,78.4},{59.2,20.3},{59.6,60.2},{59.8,49.4},{60.4,77.4},{60.9,68.4},{60.9,68.5},{61,15.1},{62,85.2},{62.1,40.4},{62.1,40.5},{62.3,68.4},{62.4,68.5},{62.4,70.3},{62.4,70.5},{62.6,16.7},{62.6,26.9},{63.2,75.2},{63.4,23},{64.2,53.9},{65.2,79.7},{66.1,21.1},{66.7,46.9},{66.8,73.3},{67.7,40.4},{67.7,40.5},{67.9,51.4},{68.3,25.3},{68.4,25.5},{68.4,59.7},{69.1,28.9},{69.4,79.9},{69.5,79.9},{69.6,35.1},{69.6,69.4},{69.6,69.5},{69.9,18.9},{70.1,77.1},{70.3,64.2},{71.1,42.9},{71.6,73.6},{71.7,63.5},{71.8,63.4},{71.9,23},{72.1,33.1},{72.2,21.1},{72.4,35.4},{72.4,35.6},{73,46.8},{73,65.4},{73,65.5},{73.8,53.4},{73.8,53.5},{74.4,56.9},{74.4,63.8},{74.5,57},{74.5,63.8},{74.8,29.6},{74.8,58.9},{74.9,70.5},{75.1,37.7},{75.2,61.6},{75.3,61.4},{75.9,40.1},{76.6,43.8},{76.8,57.7},{78.2,40.1},{79.3,57.9},{79.9,61.9},{80.4,49.7},{80.5,49.7},{80.7,43},{81.4,39.1},{81.5,39.1},{81.6,60.6}}}, -- #1156
|
||||
},
|
||||
[174848] = { -- Testing Equipment
|
||||
[objectKeys.spawns] = {[zoneIDs.UNDERCITY] = {{47.85,73.48}}}, -- #1520
|
||||
},
|
||||
[175124] = { -- Rookery Egg
|
||||
[objectKeys.name] = "Rookery Egg",
|
||||
[objectKeys.spawns] = {[zoneIDs.BLACKROCK_SPIRE_CHAMBER_OF_BATTLE] = {{-1,-1}},[zoneIDs.BLACKROCK_SPIRE] = {{-1,-1}}}, -- no need for Rend room since no uimapid return there
|
||||
[objectKeys.zoneID] = zoneIDs.BLACKROCK_SPIRE,
|
||||
},
|
||||
[175264] = { -- Broodling Essence
|
||||
[objectKeys.spawns] = {[zoneIDs.BURNING_STEPPES] = {{86.92,30.55},{84.87,31.86},{91.86,38.48},{81.01,28.2},{91.67,35.54},{81.37,26.48},{88.32,29.78},{87.8,33.45},{91.59,33.36},{89.47,43.89},{90.53,45.22},{90.48,50.92},{90.57,47.39},{84.59,62.1},{57.59,31.63},{38.74,46.15},{61.13,31.24},{55.73,64.44},{63.78,57.27},{73.18,27.12},{70.94,62.13},{59.86,63.91},{37.81,62.51},{72.4,28.17},{34.62,55.43},{78.39,27.5},{40.92,48.81},{52.67,26.04},{59.19,32.29},{64.36,60.61},{24.82,47.18},{24.33,67.37},{28.66,57.82},{22.48,68.9},{23.35,70.57},{22.32,58.87},{25.37,45.74},{16.96,55.36}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BURNING_STEPPES,
|
||||
},
|
||||
[175265] = { -- Testing Equipment
|
||||
[objectKeys.spawns] = {[zoneIDs.UNDERCITY] = {{47.74,73.57}}}, -- #1520
|
||||
},
|
||||
[175321] = { -- Unforged Seal of Ascension
|
||||
[objectKeys.spawns] = {[zoneIDs.DUSTWALLOW_MARSH] = {{56.37,87.83}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DUSTWALLOW_MARSH,
|
||||
},
|
||||
[175322] = { -- Forged Seal of Ascension
|
||||
[objectKeys.spawns] = {[zoneIDs.DUSTWALLOW_MARSH] = {{56.37,87.83}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DUSTWALLOW_MARSH,
|
||||
},
|
||||
[175382] = { -- Doomrigger's Coffer
|
||||
[objectKeys.spawns] = {[zoneIDs.BLACKROCK_SPIRE_CHAMBER_OF_BATTLE] = {{-1,-1}},[zoneIDs.BLACKROCK_SPIRE] = {{-1,-1}}},
|
||||
},
|
||||
[175564] = { -- Brazier of the Herald
|
||||
[objectKeys.name] = "Brazier of the Herald",
|
||||
[objectKeys.spawns] = {[zoneIDs.SCHOLOMANCE_CHAMBER_OF_SUMMONING] = {{-1,-1}},[zoneIDs.SCHOLOMANCE] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SCHOLOMANCE,
|
||||
},
|
||||
[175584] = { -- Challenge to Urok
|
||||
[objectKeys.name] = "Challenge to Urok",
|
||||
[objectKeys.spawns] = {[zoneIDs.BLACKROCK_SPIRE] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BLACKROCK_SPIRE,
|
||||
},
|
||||
[175964] = { -- Skin of Shadow
|
||||
[objectKeys.spawns] = {[zoneIDs.SCHOLOMANCE] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SCHOLOMANCE,
|
||||
},
|
||||
[176150] = { -- Musty Tome
|
||||
[objectKeys.spawns] = {[zoneIDs.WESTERN_PLAGUELANDS] = {{43.60,69.97},{43.46,70.11},{43.38,69.97},{43.39,69.69},{43.37,69.51},{43.41,69.22},{43.59,69.30},{43.54,69.12},{43.42,68.78},{43.59,68.82}}},
|
||||
},
|
||||
[176184] = { -- Corrupt Jaedenar Moonwell
|
||||
[objectKeys.name] = "Corrupt Jaedenar Moonwell",
|
||||
},
|
||||
[176195] = { -- Panther Cage
|
||||
[objectKeys.name] = "Panther Cage",
|
||||
[objectKeys.spawns] = {[zoneIDs.THOUSAND_NEEDLES] = {{22.75,24.65}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THOUSAND_NEEDLES,
|
||||
},
|
||||
[176213] = { -- Blood of Heroes
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.WESTERN_PLAGUELANDS] = {{35.9,57.4},{35.9,57.5},{36.4,53.7},{36.5,53.6},{38.2,56.3},{39.7,69.4},{39.7,69.6},{40.6,73.1},{40.7,57.4},{40.8,57.5},{41.4,62.1},{41.5,62.1},{41.9,70.5},{42.2,54.9},{42.8,64.2},{43.3,68.3},{43.6,70.4},{43.7,70.5},{44.2,65},{44.4,71.6},{44.5,53.3},{44.5,71.7},{44.6,53.5},{45.8,71.5},{45.9,51.1},{45.9,71.4},{46.7,34.4},{46.8,34.5},{47,59.9},{47,67.1},{47.6,70},{47.9,53.1},{49.4,68.1},{49.8,33.3},{52.2,66.5},{52.3,55},{52.3,66.3},{53,64.2},{53.2,66.5},{53.3,65.1},{53.3,66.2},{53.4,63.4},{53.5,63.3},{53.5,63.5},{54.9,27.1},{55.2,69.4},{55.3,69.6},{56.7,34.7},{57.8,66.4},{57.8,66.5},{62,58.3},{62,58.5},{62.9,57.2},{62.9,57.9},{63.2,59.2},{63.6,75.4},{63.6,75.5},{64,48.7},{64.1,57.9},{64.9,74.4},{64.9,74.5},{65.8,76.8},{66.4,42.1},{66.5,42.2},{67,53.9},{67.8,84.6},{68,44.7},{68.3,81.4},{68.3,81.6},{68.4,77.1},{68.5,77.1},{68.7,49.2},{68.7,79.2},{68.9,73.8},{69.5,78.6},},
|
||||
[zoneIDs.EASTERN_PLAGUELANDS] = {{7.1,50.7},{8,54.5},{14.2,64.7},{20,61},{20.5,66.9},{21.5,73.9},{22.1,85.1},{24.3,88.2},{26,74.7},{26.3,70.5},{26.7,69.5},{27.1,75.6},{27.3,64},{28.8,86},{29.2,78.8},{30.9,65.5},{32,71},{33.6,32.6},{34,80.2},{34.3,67.8},{34.4,76.9},{34.5,25.8},{35.6,73.3},{35.9,75.8},{36.7,38},{36.9,70.6},{37.1,65.7},{37.6,68.5},{38.4,31.1},{38.5,54},{38.8,26.7},{38.9,36.1},{40,49.9},{41.4,79.7},{41.5,65.7},{42.4,75.8},{44.9,32.9},{46.2,70.8},{46.3,64},{46.5,74.8},{47.5,40.8},{47.9,80},{48.9,67.2},{49.1,35.5},{50.3,45.5},{50.4,77.4},{51.8,70.3},{53.5,50.7},{55.5,58.7},{56.2,63.9},{56.5,76.1},{57.1,81.9},{57.4,71.9},{57.8,76.1},{58.1,79.7},{58.4,64.8},{58.6,79.6},{59.2,62.2},{59.3,80.9},{59.5,76},{59.9,67.5},{61.8,70.2},{63.6,67.7},{64.7,65.4},{64.7,81},{66.2,53},{67.6,66.8},{68.2,70.6},{68.3,74.6},{68.6,78.4},{68.8,80.8},{68.9,83.3},{69,71.5},{70.6,80.8},{70.7,69.5},{71.1,75.3},{72.2,78.4},{73.3,77.2},{73.4,69.8},{73.4,82.1},{73.6,76.8},{73.8,51.1},{74.1,83.8},{74.7,58.7},{75.6,55.3},{75.9,83.5},{76.1,78.2},{76.2,50.4},{76.7,72.4},{78.4,57.5},{78.7,67.3},{78.8,63.5},{80.4,59.8}},
|
||||
[zoneIDs.TIRISFAL_GLADES] = {{82.8,72.7},{83,71.4},{83,71.5}},
|
||||
},
|
||||
},
|
||||
[176248] = { -- Premium Grimm Tobacco
|
||||
[objectKeys.name] = "Premium Grimm Tobacco",
|
||||
},
|
||||
[176344] = { -- Document Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.THOUSAND_NEEDLES] = {{31.79,32.58}}},
|
||||
},
|
||||
[176544] = { -- Remains of Eva Sarkhoff
|
||||
[objectKeys.spawns] = {[zoneIDs.SCHOLOMANCE_THE_UPPER_STUDY] = {{-1,-1}},[zoneIDs.SCHOLOMANCE] = {{-1,-1}}},
|
||||
},
|
||||
[176545] = { -- Remains of Lucien Sarkhoff
|
||||
[objectKeys.spawns] = {[zoneIDs.SCHOLOMANCE_THE_UPPER_STUDY] = {{-1,-1}},[zoneIDs.SCHOLOMANCE] = {{-1,-1}}},
|
||||
},
|
||||
[176589] = { -- Black Lotus
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.BURNING_STEPPES] = {{13.2,30.8},{15.1,30.3},{18.8,48.7},{20.9,46.6},{21,46.4},{25.1,62.5},{26.4,59.2},{28.8,62.6},{31.4,61.7},{31.5,61.7},{31.9,69.4},{35.4,49.1},{35.5,49.1},{42.6,37.6},{43.1,34.4},{43.1,34.5},{44.2,57.1},{51,61.9},{54.3,63.4},{54.7,36.4},{56.3,53.7},{57.4,61.5},{57.6,61.6},{63.2,36.9},{63.7,60.8},{66.5,40},{76.4,47.2},{76.4,47.5},{76.5,47.2},{76.5,47.5},{82.5,34.2},{83,38},{92.1,53.2}},
|
||||
[zoneIDs.EASTERN_PLAGUELANDS] = {{16.4,33.7},{16.5,33.7},{22.9,32},{26.7,29.7},{27.6,85.1},{28.7,70.9},{37.9,51.8},{38.9,34.1},{39.8,25.1},{42.4,50.6},{42.5,50.6},{45.5,29.8},{46.2,34.2},{59.7,67.6},{65.6,21.8},{67.5,46.5},{69.4,83.4},{70.8,30.8},{72,51.9},{76.6,49.8},{80,71},{82,84.5},{85.9,46.4},{86,46.5},{87.9,82.8}},
|
||||
[zoneIDs.WINTERSPRING] = {{30.7,35.4},{30.7,35.5},{32.4,44.4},{35.8,36.5},{40.2,44.2},{40.6,36.1},{49.4,9.4},{52.3,40.3},{52.8,27.6},{54.8,10.6},{55.5,52.4},{55.5,52.5},{55.6,44.6},{57.6,49.5},{57.8,69.3},{58.8,53},{59.1,60.1},{59.4,74.2},{60.6,29.9},{63,17.7},{63.4,21.1},{64,73.8},{64.4,69.3},{65.1,64.3},{66.2,60.8},{67.4,41.4},{67.4,41.5},{67.5,41.4},{67.5,41.5},{68.1,53},{68.3,36.6}},
|
||||
[zoneIDs.SILITHUS] = {{19.7,84.6},{20.6,23.4},{20.6,23.5},{20.9,62},{22.4,39.4},{24.9,17.9},{25.7,58.6},{27.7,34.1},{33.7,13.5},{34.4,91.4},{37.9,34.9},{38.3,60.7},{38.5,60.8},{39.3,85},{39.5,85},{40.2,46.8},{43.7,18.2},{45.4,91.3},{45.4,91.5},{45.5,91.3},{46.3,83.5},{47.1,54.4},{51.4,50.3},{51.4,50.5},{51.5,50.3},{51.5,50.5},{53.6,76.4},{53.6,76.5},{56,20.3},{62.1,83.5},{62.2,83.3},{63,53.6},{63.2,29},{67.1,15},{70.7,23}},
|
||||
},
|
||||
},
|
||||
[176630] = { -- Keepsake of Remembrance
|
||||
[objectKeys.spawns] = {[zoneIDs.ARATHI_HIGHLANDS] = {{17.91,69.41},{18.5,66.2},{19.4,64.5},{20.8,65.8},{27.6,66.0},{29.3,64.9},{29.3,62.8}}},
|
||||
},
|
||||
[177241] = { -- Araj's Phylactery
|
||||
[objectKeys.spawns] = {[zoneIDs.WESTERN_PLAGUELANDS] = {{45.27,69.21}}},
|
||||
[objectKeys.zoneID] = zoneIDs.WESTERN_PLAGUELANDS,
|
||||
},
|
||||
[177272] = { -- Moonwell
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.STORMWIND_CITY] = {{20.43,53.33}},
|
||||
[zoneIDs.TELDRASSIL] = {{56.02,61.99}},
|
||||
[zoneIDs.ASHENVALE] = {{62.07,51.04},{60.21,72.91}},
|
||||
[zoneIDs.FERALAS] = {{32.56,43.91},{57.97,44.49}},
|
||||
},
|
||||
},
|
||||
[177404] = { -- Altar of Elune
|
||||
[objectKeys.name] = "Altar of Elune",
|
||||
[objectKeys.spawns] = {[zoneIDs.WINTERSPRING] = {{64.8,63.78}}},
|
||||
[objectKeys.zoneID] = zoneIDs.WINTERSPRING,
|
||||
},
|
||||
[177417] = { -- Fire of Elune
|
||||
[objectKeys.name] = "Fire of Elune",
|
||||
[objectKeys.spawns] = {[zoneIDs.WINTERSPRING] = {{64.41,61.35},{65.89,58.37},{66.78,59.96},{66.36,61.81},{65.73,64.83}}},
|
||||
[objectKeys.zoneID] = zoneIDs.WINTERSPRING,
|
||||
},
|
||||
[177624] = { -- Xabraxxis' Demon Bag
|
||||
[objectKeys.spawns] = {[zoneIDs.DARKSHORE] = {{52.48,33.39}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DARKSHORE,
|
||||
},
|
||||
[177673] = { -- Serpent Statue
|
||||
[objectKeys.name] = "Serpent Statue",
|
||||
[objectKeys.spawns] = {[zoneIDs.DESOLACE] = {{28.24,6.67}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DESOLACE,
|
||||
},
|
||||
[177784] = { -- Giant Softshell Clam
|
||||
[objectKeys.spawns] = {[zoneIDs.DESOLACE] = {{24.6,44.1},{25.4,47.8},{25.7,38.9},{26.2,36.7},{28.2,34.1},{29.7,36.7},{30,26.1},{30.1,29.1},{30.6,31.9},{30.6,34.3},{30.8,24.4},{32,30.5},{32.7,25.4},{32.8,35.2},{33,28.6},{33.9,33.2},{34.1,27.5},{34.1,30.6},{34.2,27.4},{34.3,23.2},{35.2,34.7},{35.4,25},{35.5,25},{34.11,30.7},{35.26,34.72},{32.8,35.3},{30.54,34.21},{34.15,27.46},{31.93,30.58},{32.94,28.58},{35.37,25.02},{32.69,25.26},{30.84,24.33},{34.32,23.12},{33.88,33.29}}},
|
||||
},
|
||||
[177785] = { -- Bauble Container
|
||||
[objectKeys.spawns] = {[zoneIDs.MOONGLADE] = {{48,47.1},{50.1,50.6},{52.1,53.4},{52.1,53.5},{52.9,48.5},{53.1,48.4},{54.1,50.1},{54.3,55.6},{54.7,46.4},{54.7,46.5},{56.3,53.7},{58.5,50.8},{60.5,58.3},{60.5,58.5}}},
|
||||
},
|
||||
[178224] = { -- Dire Pool
|
||||
[objectKeys.spawns] = {[zoneIDs.KALIMDOR] = {{42.719,68.613}}},
|
||||
[objectKeys.zoneID] = zoneIDs.KALIMDOR,
|
||||
},
|
||||
[178227] = { -- Murgut's Totem Basket
|
||||
[objectKeys.spawns] = {[zoneIDs.ASHENVALE] = {{56.5,63.5}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ASHENVALE,
|
||||
},
|
||||
[178907] = { -- Maraudon Orange Crystal Pool
|
||||
[objectKeys.name] = "Maraudon Orange Crystal Pool",
|
||||
},
|
||||
[178965] = { -- Incantation of Celebras
|
||||
[objectKeys.name] = "Incantation of Celebras",
|
||||
[objectKeys.spawns] = {[zoneIDs.MARAUDON] = {{-1,-1}},[zoneIDs.MARAUDON_ZAETARS_GRAVE] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.MARAUDON,
|
||||
},
|
||||
[179426] = { -- Gri'lek the Wanderer
|
||||
[objectKeys.spawns] = {[zoneIDs.STRANGLETHORN_VALE] = {{24.77,22.88}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STRANGLETHORN_VALE,
|
||||
},
|
||||
[179485] = { -- Broken Trap
|
||||
[objectKeys.spawns] = {[zoneIDs.DIRE_MAUL_GORDOK_COMMONS] = {{-1,-1}}},
|
||||
},
|
||||
[179499] = { -- Ogre Tannin Basket
|
||||
[objectKeys.spawns] = {[zoneIDs.DIRE_MAUL_GORDOK_COMMONS] = {{-1,-1}}},
|
||||
},
|
||||
[179517] = { -- Treasure of the Shen'dralar
|
||||
[objectKeys.spawns] = {[zoneIDs.DIRE_MAUL_GORDOK_COMMONS] = {{-1,-1}},[zoneIDs.DIRE_MAUL_PRISON_OF_IMMOLTHAR] = {{-1,-1}}},
|
||||
},
|
||||
[179544] = { -- Skeletal Remains of Telmius Dreamseeker
|
||||
[objectKeys.name] = "Skeletal Remains of Telmius Dreamseeker",
|
||||
[objectKeys.spawns] = {[zoneIDs.DIRE_MAUL_GORDOK_COMMONS] = {{-1,-1}},[zoneIDs.DIRE_MAUL_PRISON_OF_IMMOLTHAR] = {{-1,-1}}},
|
||||
},
|
||||
[179545] = { -- The Prince's Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.DIRE_MAUL_GORDOK_COMMONS] = {{-1,-1}},[zoneIDs.DIRE_MAUL_PRISON_OF_IMMOLTHAR] = {{-1,-1}}},
|
||||
},
|
||||
[179547] = { -- A Dusty Tome
|
||||
[objectKeys.spawns] = {[zoneIDs.DIRE_MAUL_GORDOK_COMMONS] = {{-1,-1}},[zoneIDs.DIRE_MAUL_PRISON_OF_IMMOLTHAR] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DIRE_MAUL,
|
||||
},
|
||||
[179548] = { -- A Dusty Tome
|
||||
[objectKeys.spawns] = {[zoneIDs.DIRE_MAUL_GORDOK_COMMONS] = {{-1,-1}},[zoneIDs.DIRE_MAUL_PRISON_OF_IMMOLTHAR] = {{-1,-1}}},
|
||||
},
|
||||
[179553] = { -- Core Fragment
|
||||
[objectKeys.spawns] = {[zoneIDs.BLACKROCK_DEPTHS_SHADOWFORGE_CITY] = {{-1,-1}},[zoneIDs.BLACKROCK_DEPTHS] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BLACKROCK_DEPTHS,
|
||||
},
|
||||
[179559] = { -- Felvine Shard
|
||||
[objectKeys.spawns] = {[zoneIDs.DIRE_MAUL_THE_SHRINE_OF_ELDRETHARR] = {{-1,-1}}},
|
||||
},
|
||||
[179562] = { -- Ancient Heated Blade
|
||||
[objectKeys.spawns] = {[zoneIDs.ONYXIAS_LAIR] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ONYXIAS_LAIR,
|
||||
},
|
||||
[179644] = { -- Imprisoned Doomguard
|
||||
[objectKeys.spawns] = {[zoneIDs.BLASTED_LANDS] = {{37.95,69.18},{44.27,75.29},{34.55,63.73},{45.08,73.43},{40.09,63.33},{42.87,74.12},{41.75,78.48},{34.93,63.73},{39.96,78.68},{40.13,66.54},{44.86,73.24},{44.77,72.97},{43.12,77.19},{59.44,55.4},{56.97,55.22}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BLASTED_LANDS,
|
||||
},
|
||||
[179697] = { -- Arena Treasure Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.STRANGLETHORN_VALE] = {{30.52,47.87}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STRANGLETHORN_VALE,
|
||||
},
|
||||
[179703] = { -- Cache of the Firelord
|
||||
[objectKeys.questStarts] = {7632},
|
||||
},
|
||||
[179888] = { -- Rizzle's Guarded Plans
|
||||
[objectKeys.questStarts] = {1194},
|
||||
},
|
||||
[179908] = { -- Slagtree's Lost Tools
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_HINTERLANDS] = {{53.3,38.8},{57.4,42.6},{57.5,42.6},{66.4,44.8},{71,48.6},{72.6,52.9}}},
|
||||
},
|
||||
[180449] = { -- Forsaken Stink Bomb
|
||||
[objectKeys.spawns] = {[zoneIDs.HILLSBRAD_FOOTHILLS] = {{49.75,56.97},{50.28,56.83},{49.91,57.45},{49.49,57.81}}},
|
||||
[objectKeys.zoneID] = zoneIDs.HILLSBRAD_FOOTHILLS,
|
||||
},
|
||||
[180453] = { -- Hive'Regal Glyphed Crystal
|
||||
[objectKeys.spawns] = {[zoneIDs.KALIMDOR] = {{44.404,86.1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.KALIMDOR,
|
||||
},
|
||||
[180652] = { -- Freshly Dug Dirt
|
||||
[objectKeys.spawns] = {[zoneIDs.AZEROTH] = {{29.99,89.15}}},
|
||||
[objectKeys.zoneID] = zoneIDs.AZEROTH,
|
||||
},
|
||||
[180717] = { -- The Scarab Gong
|
||||
[objectKeys.spawns] = {[zoneIDs.SILITHUS] = {{25.72,90.86}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SILITHUS,
|
||||
},
|
||||
[180771] = { -- Firework Launcher
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.MOONGLADE] = {{35.95,58.69},{37.38,59.26},{36.92,56.77},{37.39,59.64},{36.45,57.12},{37.15,57.88},{45.25,38.5},{35.98,59.94},{36.52,60.23},{36.61,59.4},{36.5,56.81},{37.2,58.45},{53.92,36.84},{37.9,58.39},{47.91,33.35},{54.16,36.9},{37.59,58.72},{35.68,58.43},{36.15,57.41},{47.66,34.75},{37.05,59.11},{35.69,57.86},{35.48,58.67},{44.97,42.58},{53.38,36.7},{36.3,57.86},{42.64,35.39},{53.63,36.77},{48.78,34.52},{53.07,36.61},{50.92,37.23}},
|
||||
[zoneIDs.UNDERCITY] = {{57.82,63.6},{58.43,64.13},{76.71,27.62},{56.96,25.43},{52.76,55.96},{73.87,63.84},{56.39,26.07},{50.61,56.53},{55.13,23.62},{78.68,26.13},{50.97,57.45},{66.37,37.57},{66,37.76},{65.65,37.56},{65.45,36.74},{66.59,36.75}},
|
||||
[zoneIDs.STORMWIND_CITY] = {{22.15,52.35},{22.02,51.4},{22.45,52.47},{23.01,52.87},{22.57,53.63},{22.95,51.91},{22.72,53.18},{22.16,52.74},{22.57,51.67},{45.32,57.29},{45.35,57.86},{31.29,63.89},{63.92,52.51},{31.1,64.18},{45.33,57.48},{63.81,52.38},{31.39,63.77},{45.34,57.68},{55.53,33.67}},
|
||||
[zoneIDs.IRONFORGE] = {{29.85,18.67},{29.1,19.58},{30.72,19.34},{31.43,19.12},{31.42,16.83},{31.76,18.09},{30.45,20.68},{32.61,18.02},{32.16,15.77},{65.43,26.28},{65.06,25.57}},
|
||||
[zoneIDs.ORGRIMMAR] = {{41.97,32.52},{41.51,30.6},{40.45,30.64},{40.98,30.18},{40.61,30.1},{41.53,32.96},{40.49,31.65},{69.75,30.22},{48.86,77.18},{49.25,77.38},{69.88,30.02},{69.61,30.4},{49.44,77.48}},
|
||||
[zoneIDs.THUNDER_BLUFF] = {{72.0,26.37},{71.24,27.05},{71.12,25.74},{71.58,27.15},{71.02,26.7},{54.96,50.34},{54.95,52.01},{54.96,51.85},{54.95,50.95}},
|
||||
[zoneIDs.DARNASSUS] = {{31.88,13.19},{31.22,12.15},{32.14,11.9},{32.26,12.73},{31.31,13.0},{31.63,11.64},{69.77,43.22},{69.3,38.49},{68.94,43.19},{67.66,43.25},{69.36,43.22},{68.53,43.2}},
|
||||
},
|
||||
},
|
||||
[180772] = { -- Cluster Launcher
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.MOONGLADE] = {{36.43,57.61},{36.77,59.74},{35.88,58.39},{53.23,36.66},{53.5,36.74},{37.15,57.61},{35.87,57.31},{35.48,59.15},{44.59,38.64},{37.32,58.85},{36.05,59.5},{37.16,59.96},{54.05,36.87},{42.53,34.3},{53.79,36.8},{37.92,58.14},{36.44,59.26},{36.74,56.71},{54.29,36.93}},
|
||||
[zoneIDs.UNDERCITY] = {{65.48,37.17},{66.54,37.17},{55.7,22.96},{52.43,55.02},{74.88,66.58},{73.24,64.33},{74.28,67.11},{77.21,28.36},{78.99,56.28},{79.36,55.39},{78.21,25.35}},
|
||||
[zoneIDs.STORMWIND_CITY] = {{22.28,52.14},{22.34,52.9},{63.59,52.18},{63.69,52.28},{31.2,64.05},{55.64,34.25},{55.57,33.85},{55.62,34.04}},
|
||||
[zoneIDs.IRONFORGE] = {{28.84,17.94},{31.36,17.51},{31.75,19.74},{31.14,15.12},{30.36,18.71},{63.49,22.7},{64.26,24.08},{63.88,23.38},{64.67,24.8}},
|
||||
[zoneIDs.ORGRIMMAR] = {{41.18,30.57},{40.62,31.12},{49.05,77.27},{49.6,77.54}},
|
||||
[zoneIDs.THUNDER_BLUFF] = {{71.4,25.41},{72.05,25.95},{54.96,50.53},{54.94,52.23},{54.94,52.44},{54.97,50.73}},
|
||||
[zoneIDs.DARNASSUS] = {{31.96,12.87},{31.87,11.98},{68.89,38.51},{69.76,38.49},{68.09,43.22},{68.52,38.51},{67.96,38.5},{67.4,38.5}},
|
||||
},
|
||||
},
|
||||
[181073] = { -- Fragrant Cauldron
|
||||
[objectKeys.spawns] = {[zoneIDs.ALTERAC_MOUNTAINS] = {{89.41,75.06}}},
|
||||
},
|
||||
[181346] = { -- Flame of Dire Maul
|
||||
[objectKeys.spawns] = {[zoneIDs.DIRE_MAUL_GORDOK_COMMONS] = {{-1,-1}}},
|
||||
},
|
||||
[181349] = { -- Flame of the Scholomance
|
||||
[objectKeys.spawns] = {[zoneIDs.SCHOLOMANCE_CHAMBER_OF_SUMMONING] = {{-1,-1}},[zoneIDs.SCHOLOMANCE] = {{-1,-1}}},
|
||||
},
|
||||
[181598] = { -- Silithyst Geyser
|
||||
[objectKeys.spawns] = {[zoneIDs.SILITHUS] = {{41.17,77.14},{49.21,44.84},{35.7,66.4},{41.67,27.04},{26.42,81.5},{20.84,81.43},{31.28,65.46},{39.94,22.35},{36.7,77.47},{18.88,80.26},{50.45,50.69},{38.91,80.85},{36.09,29.92},{48.83,85.1},{36.02,38.35},{59.25,58.77},{64.01,70.86},{60.61,63.0},{58.07,49.96}}},
|
||||
},
|
||||
[186419] = { -- Wrecked Row Boat
|
||||
[objectKeys.questStarts] = {4127},
|
||||
[objectKeys.spawns] = {[zoneIDs.FERALAS] = {{45.79,65.69}}},
|
||||
[objectKeys.zoneID] = zoneIDs.FERALAS,
|
||||
},
|
||||
[186420] = { -- Syndicate Documents
|
||||
[objectKeys.questStarts] = {},
|
||||
},
|
||||
[187260] = { -- Mailbox
|
||||
[objectKeys.spawns] = {}, -- Mailbox possibly added in TBC. Not there in Era
|
||||
},
|
||||
[187273] = { -- Suspicious Hoofprint
|
||||
[objectKeys.questStarts] = {},
|
||||
},
|
||||
[188123] = { -- Mailbox
|
||||
[objectKeys.spawns] = {}, -- Mailbox possibly added in TBC. Not there in Era
|
||||
},
|
||||
[188135] = { -- Ice Stone
|
||||
[objectKeys.name] = "Ice Stone",
|
||||
[objectKeys.spawns] = {[zoneIDs.DESOLACE] = {{39.24,30.39}}},
|
||||
},
|
||||
[190483] = { -- Document Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.THOUSAND_NEEDLES] = {{33.76,39.99}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THOUSAND_NEEDLES,
|
||||
},
|
||||
[190484] = { -- Document Chest
|
||||
[objectKeys.spawns] = {[zoneIDs.THOUSAND_NEEDLES] = {{39.34,41.53}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THOUSAND_NEEDLES,
|
||||
},
|
||||
[375544] = { -- Wooden Figurine
|
||||
[objectKeys.name] = "Wooden Figurine",
|
||||
[objectKeys.spawns] = {[zoneIDs.ASHENVALE] = {{26.61,22.03}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ASHENVALE,
|
||||
},
|
||||
-- Fake IDs
|
||||
-- For Era fixes 400001-409999
|
||||
[400001] = { -- Unlit Torch
|
||||
[objectKeys.name] = "Unlit Torch",
|
||||
[objectKeys.spawns] = {[zoneIDs.ASHENVALE] = {{26.79,22.43}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ASHENVALE,
|
||||
},
|
||||
[400002] = { -- Archaeologist's Cart
|
||||
[objectKeys.name] = "Archaeologist's Cart",
|
||||
[objectKeys.spawns] = {[zoneIDs.ASHENVALE] = {{26.68,22.56}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ASHENVALE,
|
||||
},
|
||||
--[[[400003] = { -- REUSE
|
||||
[objectKeys.name] = "Maraudon Orange Crystal Pool",
|
||||
[objectKeys.spawns] = {[zoneIDs.DESOLACE] = {{33.22,65.67}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DESOLACE,
|
||||
},]]
|
||||
--[[[400004] = { -- REUSE
|
||||
[objectKeys.name] = "Rookery Egg", -- Rookery Egg in UBRS
|
||||
[objectKeys.spawns] = {[zoneIDs.BLACKROCK_SPIRE] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BLACKROCK_SPIRE,
|
||||
},]]
|
||||
--[[[400005] = { -- REUSE
|
||||
[objectKeys.name] = "Challenge to Urok",
|
||||
[objectKeys.spawns] = {[zoneIDs.BLACKROCK_SPIRE] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BLACKROCK_SPIRE,
|
||||
},]]
|
||||
[400006] = { -- Feralas Ahi Fishing Location
|
||||
[objectKeys.name] = "Feralas Ahi Fishing Location",
|
||||
[objectKeys.questStarts] = {},
|
||||
[objectKeys.questEnds] = {},
|
||||
[objectKeys.spawns] = {[zoneIDs.FERALAS] = {{62.1,51.4},{62.2,49.9},{62.4,52.4},{62.4,52.5},{62.6,49.3},{62.6,50.2},{62.7,50.6},{62.8,51.5},{62.9,52.5},{63.5,53.6},{63.7,52.4},{64,53.2}}},
|
||||
[objectKeys.zoneID] = zoneIDs.FERALAS
|
||||
},
|
||||
[400007] = { -- Misty Reed Mahi Mahi Fishing Location
|
||||
[objectKeys.name] = "Misty Reed Mahi Mahi Fishing Location",
|
||||
[objectKeys.questStarts] = {},
|
||||
[objectKeys.questEnds] = {},
|
||||
[objectKeys.spawns] = {[zoneIDs.SWAMP_OF_SORROWS] = {{74.4,3.7},{74.5,3.3},{74.5,3.8},{75.1,95.9},{76,95.4},{76.3,4.3},{77.4,4.3},{77.4,95.5},{78.7,5.3},{78.9,95.7},{79.1,94.7},{79.8,94.7},{80.2,94.2},{81.2,93.6},{82.1,94.2},{84.4,91.6},{84.5,92.9},{84.9,92.1},{85.6,89.2},{86.2,88},{86.4,86.4},{86.6,16.8},{86.6,85.6},{87.3,80.7},{87.4,82.1},{87.7,79.7},{87.7,81.9},{88.5,76.6},{89.1,20},{89.8,23},{89.9,74.5},{90.2,22.4},{90.3,73.4},{90.4,71.9},{90.4,73.6},{90.5,73.5},{90.6,73},{90.7,72.1},{91.1,82.2},{91.4,30.1},{91.5,82.1},{91.7,30.4},{91.8,82.9},{93.6,37.2},{93.8,66.5},{94,38.4},{94.2,40.6},{94.2,65.1},{94.3,39.3},{94.3,64.3},{94.8,41.6},{95,43.8},{95.1,45.2},{95.2,45.9},{95.3,56.2},{95.7,47.5}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SWAMP_OF_SORROWS
|
||||
},
|
||||
[400008] = { -- Sar'theris Striker Fishing Location
|
||||
[objectKeys.name] = "Sar'theris Striker Fishing Location",
|
||||
[objectKeys.questStarts] = {},
|
||||
[objectKeys.questEnds] = {},
|
||||
[objectKeys.spawns] = {[zoneIDs.DESOLACE] = {{22.2,87.6},{22.8,76.8},{24.3,82.5},{24.5,81.9},{24.9,81.3},{25.6,81},{25.8,77.4},{25.8,77.5},{25.9,78.7},{26,80.1},{26.2,75.4},{26.2,76.2},{27.2,42.9},{33,36.8},{35.3,31.7},{36.1,32.8},{36.1,34.8},{38.8,23.2},{40.1,22.1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DESOLACE
|
||||
},
|
||||
[400009] = { -- Savage Coast Blue Sailfin Fishing Location
|
||||
[objectKeys.name] = "Savage Coast Blue Sailfin Fishing Location",
|
||||
[objectKeys.questStarts] = {},
|
||||
[objectKeys.questEnds] = {},
|
||||
[objectKeys.spawns] = {[zoneIDs.STRANGLETHORN_VALE] = {{13.5,15.7},{19.5,20.9},{22.2,19.8},{24.4,18.8},{24.5,65.7},{24.6,18.9},{25,58.3},{25.3,45.2},{25.4,49.3},{25.5,19.9},{25.7,66.9},{26.2,48.5},{26.3,67.8},{26.9,20.4},{27,39.7},{27.1,40.5},{27.3,68},{27.4,68.9},{27.7,21},{28.7,21.8},{29.2,23.2},{29.4,23.7},{29.4,24.6},{29.4,27.4},{29.4,27.7},{29.5,24.3},{29.5,25.1},{29.5,27.4},{29.5,27.7},{29.6,25.7},{31.9,32.1},{33,31.3},{33,32.1},{33.1,32.5},{34.2,32.4},{34.2,32.5},{34.2,34.7},{34.7,34.5},{34.8,33.7},{34.9,32.4},{35.1,35.6}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STRANGLETHORN_VALE
|
||||
},
|
||||
[400010] = { -- Moonwell
|
||||
[objectKeys.name] = "Moonwell",
|
||||
[objectKeys.questStarts] = {},
|
||||
[objectKeys.questEnds] = {},
|
||||
[objectKeys.spawns] = {[zoneIDs.MOONGLADE] = {{68,60.2}}},
|
||||
[objectKeys.zoneID] = zoneIDs.MOONGLADE
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
-- some objects are shared across factions but require different sources for each faction
|
||||
function QuestieObjectFixes:LoadFactionFixes()
|
||||
local objectKeys = QuestieDB.objectKeys
|
||||
local zoneIDs = ZoneDB.zoneIDs
|
||||
|
||||
local objectFixesHorde = {
|
||||
[103574] = { -- Filled Containment Coffer
|
||||
[objectKeys.spawns] = {[zoneIDs.UNDERCITY] = {{53.29,74.56},{53.67,76.81},{52.01,75.96},{53.2,71.44}}},
|
||||
[objectKeys.zoneID] = zoneIDs.UNDERCITY,
|
||||
},
|
||||
[105174] = { -- Chest of Containment Coffers
|
||||
[objectKeys.spawns] = {[zoneIDs.UNDERCITY] = {{85.67,9.91},{85.53,10.03},{85.48,9.9},{85.58,9.95}}},
|
||||
},
|
||||
[105175] = { -- Cantation of Manifestation
|
||||
[objectKeys.spawns] = {[zoneIDs.UNDERCITY] = {{85.78,10.05},{85.7,10.11},{85.65,10.18}}},
|
||||
},
|
||||
[177525] = { -- Moonkin Stone
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_BARRENS] = {{41.96,60.81}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THE_BARRENS,
|
||||
},
|
||||
[180743] = { -- Carefully Wrapped Present
|
||||
[objectKeys.spawns] = {[zoneIDs.ORGRIMMAR] = {{52.39,69.52}}},
|
||||
},
|
||||
[180746] = { -- Gently Shaken Gift
|
||||
[objectKeys.spawns] = {[zoneIDs.ORGRIMMAR] = {{52.33,69.42}}},
|
||||
},
|
||||
[180747] = { -- Gaily Wrapped Present
|
||||
[objectKeys.spawns] = {[zoneIDs.ORGRIMMAR] = {{52.3,69.18}}},
|
||||
},
|
||||
[180748] = { -- Ticking Present
|
||||
[objectKeys.spawns] = {[zoneIDs.ORGRIMMAR] = {{52.28,69.29}}},
|
||||
},
|
||||
[180793] = { -- Festive Gift
|
||||
[objectKeys.spawns] = {[zoneIDs.ORGRIMMAR] = {{52.42,69.32}}},
|
||||
},
|
||||
}
|
||||
|
||||
local objectFixesAlliance = {
|
||||
[103574] = { -- Filled Containment Coffer
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY] = {{40.87,89.04},{40.75,92.13},{41.27,90.54},{40.26,88.13},{40.89,87.75},{40.47,91.94}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORMWIND_CITY,
|
||||
},
|
||||
[105174] = { -- Chest of Containment Coffers
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY] = {{38.48,78.89},{38.55,79.04},{38.54,78.97},{38.62,79.02}}},
|
||||
},
|
||||
[105175] = { -- Cantation of Manifestation
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY] = {{38.68,78.73},{38.69,78.81},{38.73,78.84}}},
|
||||
},
|
||||
[177525] = { -- Moonkin Stone
|
||||
[objectKeys.spawns] = {[zoneIDs.DARKSHORE] = {{43.5,45.97}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DARKSHORE,
|
||||
},
|
||||
[180743] = { -- Carefully Wrapped Present
|
||||
[objectKeys.spawns] = {[zoneIDs.IRONFORGE] = {{33.86,65.69}}},
|
||||
},
|
||||
[180746] = { -- Gently Shaken Gift
|
||||
[objectKeys.spawns] = {[zoneIDs.IRONFORGE] = {{33.46,65.57}}},
|
||||
},
|
||||
[180747] = { -- Gaily Wrapped Present
|
||||
[objectKeys.spawns] = {[zoneIDs.IRONFORGE] = {{33.78,66.4}}},
|
||||
},
|
||||
[180748] = { -- Ticking Present
|
||||
[objectKeys.spawns] = {[zoneIDs.IRONFORGE] = {{33.9,66.68}}},
|
||||
},
|
||||
[180793] = { -- Festive Gift
|
||||
[objectKeys.spawns] = {[zoneIDs.IRONFORGE] = {{33.96,65.86}}},
|
||||
},
|
||||
}
|
||||
|
||||
if UnitFactionGroup("Player") == "Horde" then
|
||||
return objectFixesHorde
|
||||
else
|
||||
return objectFixesAlliance
|
||||
end
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,350 +0,0 @@
|
||||
---@type SeasonOfDiscovery
|
||||
local SeasonOfDiscovery = QuestieLoader:ImportModule("SeasonOfDiscovery")
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
|
||||
function SeasonOfDiscovery:LoadItems()
|
||||
local itemKeys = QuestieDB.itemKeys
|
||||
local itemClasses = QuestieDB.itemClasses
|
||||
|
||||
return {
|
||||
[2287] = { -- Haunch of Meat (modified to add new SoD vendors to food vendor townsfolk)
|
||||
[itemKeys.vendors] = {982,1464,2365,2388,2814,3025,3089,3312,3368,3411,3489,3621,3705,3881,3882,3933,3935,3960,4084,4169,4255,4782,4875,4879,4891,4894,4954,4963,5111,5124,5611,5620,5870,6928,6929,6930,7485,7731,7733,7736,7941,8125,9356,10367,11118,11187,12196,12794,12959,14624,15174,241664},
|
||||
},
|
||||
[2320] = { -- Coarse Thread (modified to add new SoD vendors to trade goods vendor townsfolk)
|
||||
[itemKeys.vendors] = {66,777,843,960,989,1148,1250,1286,1347,1454,1456,1465,1474,1672,1692,2118,2225,2381,2393,2394,2668,2669,2670,2672,2697,2698,2699,2810,2816,2819,2821,2846,3005,3081,3091,3096,3168,3187,3364,3366,3367,3482,3485,3499,3556,3614,3779,3954,3955,3958,4168,4189,4194,4225,4229,4561,4577,4589,4775,4877,4897,5100,5128,5135,5154,5163,5565,5783,5817,5944,6301,6567,6568,6574,6576,6731,7852,7854,7940,7947,8145,8160,8363,8681,8934,9636,11189,11557,11874,12022,12028,12043,12245,12941,12942,12943,12956,12957,12958,15165,15179,240631,240632},
|
||||
},
|
||||
[5359] = { -- Lorgalis Manuscript
|
||||
[itemKeys.relatedQuests] = {78923}, -- SoD Knowledge in the Deeps
|
||||
},
|
||||
[5881] = { -- Head of Kelris
|
||||
[itemKeys.relatedQuests] = {78921,78922}, -- SoD Blackfathom Villainy A,H
|
||||
[itemKeys.npcDrops] = {209678}, -- now drops from raid version of npc
|
||||
},
|
||||
[5952] = { -- Corrupted Brain Stem
|
||||
[itemKeys.relatedQuests] = {78926}, -- SoD Researching the Corruption
|
||||
[itemKeys.npcDrops] = {216660, 4788, 4789, 4803, 4802, 4805, 4807, 4799, 4798, 204645, 216662, 4831, 216659, 216661, 204068}, -- now drops from raid version of npc
|
||||
},
|
||||
[8766] = { -- Morning Glory Dew (modified to add new SoD vendors to drink vendor townsfolk)
|
||||
[itemKeys.vendors] = {258,274,295,465,734,955,982,1237,1247,1328,1464,1697,2303,2352,2364,2366,2388,2803,2832,3086,3298,3411,3546,3577,3621,3689,3708,3881,3882,3883,3884,3934,3937,3959,3961,4167,4169,4181,4190,4191,4192,4195,4255,4266,4554,4555,4571,4782,4875,4879,4893,4963,4981,5111,5112,5140,5611,5620,5688,5814,5871,6091,6272,6495,6727,6734,6735,6736,6737,6738,6739,6740,6741,6746,6747,6790,6791,6807,6928,6929,6930,7485,7714,7731,7733,7736,7737,7744,7941,7943,8125,8137,8143,8150,8152,8931,9356,9501,10367,11038,11103,11106,11116,11118,11187,11287,12019,12026,12196,12794,12959,14371,14624,14731,14961,14962,14963,14964,15124,15125,15174,16256,16458,241664},
|
||||
},
|
||||
[9279] = { -- White Punch Card
|
||||
[itemKeys.npcDrops] = {216667,216668,216669,216670,216671},
|
||||
},
|
||||
[9309] = { -- Robo-mechanical Guts
|
||||
[itemKeys.npcDrops] = {215728,216666,216668,216669,216670,216671,217582,217733,218242,218243,218244,218245,218537,220072},
|
||||
},
|
||||
[204806] = { -- Rune of Victory Rush
|
||||
[itemKeys.npcDrops] = {706,946,1986},
|
||||
},
|
||||
[205944] = { -- Reciprocal Epiphany
|
||||
[itemKeys.npcDrops] = {204937},
|
||||
},
|
||||
[206157] = { -- Seaforium Mining Charge
|
||||
[itemKeys.objectDrops] = {403041},
|
||||
},
|
||||
[206170] = { -- Windfury Cone
|
||||
[itemKeys.objectDrops] = {403105},
|
||||
},
|
||||
[206264] = { -- Rune of Inspiration
|
||||
[itemKeys.npcDrops] = {204937},
|
||||
},
|
||||
[206469] = { -- Prairie Flower
|
||||
[itemKeys.objectDrops] = {403718},
|
||||
},
|
||||
[208085] = { -- Scarlet Lieutenant Signet Ring
|
||||
[itemKeys.npcDrops] = {1662,1664,1665},
|
||||
},
|
||||
[208205] = { -- Blackrat's Note
|
||||
[itemKeys.npcDrops] = {6123,6124},
|
||||
},
|
||||
[208609] = { -- Glade Flower
|
||||
[itemKeys.objectDrops] = {407247},
|
||||
},
|
||||
[208612] = { -- Severed Spider Head
|
||||
[itemKeys.npcDrops] = {1998,1999,2000,2001},
|
||||
},
|
||||
[208689] = { -- Ferocious Idol
|
||||
[itemKeys.npcDrops] = {98,117,452,500,1065,1972,6788},
|
||||
},
|
||||
[208771] = { -- Rune of Blade Dance
|
||||
[itemKeys.objectDrops] = {407453,408718,414532},
|
||||
},
|
||||
[208772] = { -- Rune of Saber Slash
|
||||
[itemKeys.objectDrops] = {407457,407731,409131,414624},
|
||||
},
|
||||
[209693] = { -- Alliance Blackfathom Pearl
|
||||
[itemKeys.relatedQuests] = {78916},
|
||||
[itemKeys.startQuest] = 78916,
|
||||
},
|
||||
[209846] = { -- Secrets of the Dreamers
|
||||
[itemKeys.objectDrops] = {409692},
|
||||
},
|
||||
[210026] = { -- Symbol of the Third Owl
|
||||
[itemKeys.objectDrops] = {409942,409949},
|
||||
},
|
||||
[210044] = { -- Symbol of the First Owl
|
||||
[itemKeys.objectDrops] = {410220},
|
||||
},
|
||||
[210055] = { -- Hillsbrad Human Bones
|
||||
[itemKeys.npcDrops] = {2265,2266,2267,2268,2360,2387},
|
||||
},
|
||||
[210195] = { -- Unbalanced Idol
|
||||
[itemKeys.npcDrops] = {1769,1770,1779,1782,1924},
|
||||
},
|
||||
[210589] = { -- Echo of the Ancestors
|
||||
[itemKeys.npcDrops] = {204937},
|
||||
},
|
||||
[210955] = { -- Scarlet Initiate's Uniform
|
||||
[itemKeys.objectDrops] = {412147},
|
||||
},
|
||||
[211452] = { -- Horde Blackfathom Pearl
|
||||
[itemKeys.relatedQuests] = {78917},
|
||||
[itemKeys.startQuest] = 78917,
|
||||
},
|
||||
[211454] = { -- Horde Strange Water Globe (starts Baron Aquanis)
|
||||
[itemKeys.relatedQuests] = {78920},
|
||||
[itemKeys.startQuest] = 78920,
|
||||
},
|
||||
[211818] = { -- Alliance Strange Water Globe (required for but does not start Baron Aquanis)
|
||||
[itemKeys.relatedQuests] = {79099},
|
||||
[itemKeys.startQuest] = nil,
|
||||
},
|
||||
[212347] = { -- Illari's Key
|
||||
[itemKeys.npcDrops] = {215655},
|
||||
},
|
||||
[213446] = { -- Tarnished Prayer Bead III
|
||||
[itemKeys.npcDrops] = {2552,2553,2554,2555,2556,2557,2562,2564,2566,2569,2570,2572,2573,2574,2575,2586,2587,2588,2589,2590,2618,2619,4062},
|
||||
},
|
||||
[215376] = { -- Crusader's Mace
|
||||
[itemKeys.npcDrops] = {4281,4283,4286,4287,4288,4289,4290,4291,4292,4293,4294,4295,4296,4297,4298,4299,4300,4301,4302,4303,4306,4540},
|
||||
},
|
||||
[216635] = { -- Spent Voidcore
|
||||
[itemKeys.npcDrops] = {5335,5336,5337},
|
||||
},
|
||||
[216946] = { -- Glittering Dalaran Relic
|
||||
[itemKeys.npcDrops] = {900000},
|
||||
},
|
||||
[216947] = { -- Whirring Dalaran Relic
|
||||
[itemKeys.npcDrops] = {900001},
|
||||
},
|
||||
[216948] = { -- Odd Dalaran Relic
|
||||
[itemKeys.npcDrops] = {900002},
|
||||
},
|
||||
[216949] = { -- Heavy Dalaran Relic
|
||||
[itemKeys.npcDrops] = {900003},
|
||||
},
|
||||
[216950] = { -- Creepy Dalaran Relic
|
||||
[itemKeys.npcDrops] = {900004},
|
||||
},
|
||||
[216951] = { -- Slippery Dalaran Relic
|
||||
[itemKeys.npcDrops] = {900005},
|
||||
},
|
||||
[219759] = { -- Charla's Field Report
|
||||
[itemKeys.npcDrops] = {221472},
|
||||
},
|
||||
[219770] = { -- Gemeron's Field Report
|
||||
[itemKeys.npcDrops] = {221482},
|
||||
},
|
||||
[219771] = { -- Thandros' Field Report
|
||||
[itemKeys.npcDrops] = {221484},
|
||||
},
|
||||
[219772] = { -- Fallia's Field Report
|
||||
[itemKeys.npcDrops] = {221483},
|
||||
},
|
||||
[219776] = { -- Intelligence Report: Vul'gol Ogre Mound
|
||||
[itemKeys.npcDrops] = {221222},
|
||||
},
|
||||
[219778] = { -- Intelligence Report: Rotting Orchard
|
||||
[itemKeys.npcDrops] = {221221},
|
||||
},
|
||||
[219803] = { -- Intelligence Report: Yorgen Farmstead
|
||||
[itemKeys.npcDrops] = {221220},
|
||||
},
|
||||
[219924] = { -- Intelligence Report: Forest Song
|
||||
[itemKeys.npcDrops] = {221271},
|
||||
},
|
||||
[219925] = { -- Intelligence Report: Satyrnaar
|
||||
[itemKeys.npcDrops] = {221272},
|
||||
},
|
||||
[219926] = { -- Intelligence Report: Warsong Lumber Camp
|
||||
[itemKeys.npcDrops] = {221273},
|
||||
},
|
||||
[219928] = { -- Intelligence Report: Agol'watha
|
||||
[itemKeys.npcDrops] = {221353},
|
||||
},
|
||||
[219937] = { -- Intelligence Report: Shaol'watha
|
||||
[itemKeys.npcDrops] = {221352},
|
||||
},
|
||||
[219938] = { -- Intelligence Report: Skulk Rock
|
||||
[itemKeys.npcDrops] = {221351},
|
||||
},
|
||||
[219957] = { -- Intelligence Report: Oneiros
|
||||
[itemKeys.npcDrops] = {221401},
|
||||
},
|
||||
[219958] = { -- Intelligence Report: Twin Colossals
|
||||
[itemKeys.npcDrops] = {221402},
|
||||
},
|
||||
[219959] = { -- Intelligence Report: Ruins of Ravenwind
|
||||
[itemKeys.npcDrops] = {221404},
|
||||
},
|
||||
[220345] = { -- Sanguine Sorcery
|
||||
[itemKeys.objectDrops] = {441247},
|
||||
},
|
||||
[220349] = { -- Stonewrought Design
|
||||
[itemKeys.objectDrops] = {441251},
|
||||
},
|
||||
[221326] = { -- Sacred Stag Heart
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[221191] = { -- Dreamstone
|
||||
[itemKeys.npcDrops] = {211956},
|
||||
},
|
||||
[225954] = { -- Charred Spell Notes
|
||||
[itemKeys.npcDrops] = {227324},
|
||||
},
|
||||
[226122] = { -- Dalton's Horn
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[226523] = { -- Dalton's Horn
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[226545] = { -- Dalton's Horn
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[227768] = { -- Dreamjuice
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[228141] = { -- Necromancy 101
|
||||
[itemKeys.objectDrops] = {463211},
|
||||
},
|
||||
[229362] = { -- Storehouse Key
|
||||
[itemKeys.npcDrops] = {230775},
|
||||
},
|
||||
[231298] = { -- Scroll of Lesser Spatial Mending
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[231797] = { -- Soul of the Void
|
||||
[itemKeys.npcDrops] = {232875},
|
||||
},
|
||||
[231798] = { -- Soul of Enthralling
|
||||
[itemKeys.npcDrops] = {230146},
|
||||
},
|
||||
[231799] = { -- Soul of Devouring
|
||||
[itemKeys.npcDrops] = {232896},
|
||||
},
|
||||
[231842] = { -- Nandieb's Stave
|
||||
[itemKeys.npcDrops] = {232529},
|
||||
},
|
||||
[231904] = { -- Tarnished Horn
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[234006] = { -- Monstrous Silithid Chitin
|
||||
[itemKeys.npcDrops] = {11698,11722,11724,11727,11729,13136,15240,15286,15288,15341,15348,234798},
|
||||
},
|
||||
[234007] = { -- Spiked Silithid Chitin
|
||||
[itemKeys.npcDrops] = {11698,11722,11723,11724,11727,13136,15230,15233,15235,15236,15240,15318,15319,15320,15323,15324,15325,15327,15336,234798},
|
||||
},
|
||||
[234008] = { -- Qiraji Silk
|
||||
[itemKeys.npcDrops] = {11880,11881,11882,11883,14479,15201,15202,15213,15247,15249,15263,15343,15516,15541,15542,234762,234800},
|
||||
},
|
||||
[234011] = { -- Qiraji Stalker Venom
|
||||
[itemKeys.npcDrops] = {6551,6552,6553,6554,6555,6582,11698,11722,11723,11724,11726,11727,11728,11729,11730,11732,11733,11734,13136,15235,15236,15325,15327,15509},
|
||||
},
|
||||
[235045] = { -- Imperial Qiraji Regalia
|
||||
[itemKeys.npcDrops] = {15275,15276,15299,15509,15510,15511,15516,15517,15543,15544},
|
||||
},
|
||||
[235046] = { -- Imperial Qiraji Armaments
|
||||
[itemKeys.npcDrops] = {15275,15276,15299,15509,15510,15511,15516,15517,15543,15544},
|
||||
},
|
||||
[235788] = { -- Enthusiastic Wisp
|
||||
[itemKeys.npcDrops] = {238431},
|
||||
},
|
||||
[235789] = { -- Flame of Life
|
||||
[itemKeys.npcDrops] = {1045,1046,1047,1048,1049,1050},
|
||||
},
|
||||
[235790] = { -- Enchanted Firebrand
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[236350] = { -- The Phylactery of Kel'Thuzad
|
||||
[itemKeys.npcDrops] = {15990},
|
||||
},
|
||||
[236786] = { -- Heart of Doom
|
||||
[itemKeys.objectDrops] = {525416},
|
||||
},
|
||||
[237143] = { -- Orders from the High General
|
||||
[itemKeys.objectDrops] = {600002}, -- fake for tooltips
|
||||
},
|
||||
[238794] = { -- Unappetizing Leftovers
|
||||
[itemKeys.objectDrops] = {526132,526143,526144},
|
||||
},
|
||||
[237163] = { -- Ancient Hero's Skull
|
||||
[itemKeys.objectDrops] = {518117},
|
||||
},
|
||||
[238811] = { -- Juicy Apple
|
||||
[itemKeys.npcDrops] = {240998,240978},
|
||||
},
|
||||
[238830] = { -- Apple Scope
|
||||
[itemKeys.objectDrops] = {526217},
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[238831] = { -- Apple Rope
|
||||
[itemKeys.objectDrops] = {526220},
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[238899] = { -- Assorted Fish
|
||||
[itemKeys.objectDrops] = {526809},
|
||||
},
|
||||
[238960] = { -- Quartermaster's Crate
|
||||
[itemKeys.objectDrops] = {526937},
|
||||
},
|
||||
[239016] = { -- Holy Salts
|
||||
[itemKeys.npcDrops] = {240998,241048,241119,241120,241121,241122,241123,241877,242367,242757},
|
||||
},
|
||||
[239092] = { -- Preposterously Prosed Postage
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[239119] = { -- Holy Arrow
|
||||
[itemKeys.objectDrops] = {527513},
|
||||
},
|
||||
[239216] = { -- Lightforged Iron
|
||||
[itemKeys.npcDrops] = {240794,240811,240812,241021,241772,241768,241769,241770,243021,243269},
|
||||
},
|
||||
[239223] = { -- House Prop
|
||||
[itemKeys.objectDrops] = {527821},
|
||||
},
|
||||
[239764] = { -- Crimson Bladeleaf
|
||||
[itemKeys.objectDrops] = {528481},
|
||||
},
|
||||
[240835] = { -- Crate of Moonglade Supplies
|
||||
[itemKeys.objectDrops] = {529731},
|
||||
},
|
||||
[240848] = { -- Nordrassil Detritus
|
||||
[itemKeys.objectDrops] = {529720},
|
||||
},
|
||||
[241652] = { -- Discolored Beast Heart
|
||||
[itemKeys.npcDrops] = {1815,1816,1817,1821,1822,1824,8596,8597,8598,8600,8601,8602,8603,8605,240247},
|
||||
},
|
||||
[241655] = { -- Mishandled Healing Potion
|
||||
[itemKeys.objectDrops] = {531291},
|
||||
},
|
||||
[241656] = { -- Mishandled Healing Potion
|
||||
[itemKeys.objectDrops] = {531291},
|
||||
},
|
||||
[242018] = { -- Plaguelands Bleeding Heart
|
||||
[itemKeys.objectDrops] = {531301},
|
||||
},
|
||||
[242257] = { -- Mysterious Alchemical Sample
|
||||
[itemKeys.objectDrops] = {531545},
|
||||
},
|
||||
[242258] = { -- Research Notes
|
||||
[itemKeys.objectDrops] = {531545},
|
||||
},
|
||||
[242319] = { -- New Plague Samples
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[242320] = { -- New Plague Samples
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
}
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,636 +0,0 @@
|
||||
---@class QuestieTBCItemFixes
|
||||
local QuestieTBCItemFixes = QuestieLoader:CreateModule("QuestieTBCItemFixes")
|
||||
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
|
||||
function QuestieTBCItemFixes:Load()
|
||||
local itemKeys = QuestieDB.itemKeys
|
||||
local itemClasses = QuestieDB.itemClasses
|
||||
|
||||
return {
|
||||
[2633] = { -- Jungle Remedy
|
||||
[itemKeys.npcDrops] = {937,940,941,942},
|
||||
},
|
||||
[4503] = {
|
||||
[itemKeys.npcDrops] = {2557,2556,2555,2553,2552,2558,2554},
|
||||
},
|
||||
[5445] = {
|
||||
[itemKeys.npcDrops] = {3943},
|
||||
},
|
||||
[5060] = {
|
||||
[itemKeys.vendors] = {1325,1326,1457,2622,3090,3135,3334,3490,3542,3551,3561,3969,4585,5139,5169,6779,7166,10364,12096,12097,15175,16268,16683,16829,18006,18019,20121},
|
||||
},
|
||||
[5359] = { -- Lorgalis Manuscript
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[5883] = { -- Forked Mudrock Tongue
|
||||
[itemKeys.npcDrops] = {4397},
|
||||
},
|
||||
[5959] = {
|
||||
[itemKeys.npcDrops] = {4376,4378,4379,4380},
|
||||
},
|
||||
[6083] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[7923] = { -- Defias Tower Key
|
||||
[itemKeys.npcDrops] = {7051},
|
||||
},
|
||||
[8073] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[12366] = {
|
||||
[itemKeys.npcDrops] = {7457,7458,7459,7460},
|
||||
},
|
||||
[12740] = { -- Fifth Mosh'aru Tablet
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[17126] = { -- Elegant Letter
|
||||
[itemKeys.npcDrops] = {332,918,3327,3328,3401,4163,4214,4215,4582,4583,4584,5165,5166,5167,15285,16279,16684,16685,16686},
|
||||
},
|
||||
[20023] = {
|
||||
[itemKeys.npcDrops] = {6375,6377,6378,6379,6380,8759,8761,8762,8763,8764,8766,},
|
||||
},
|
||||
[22435] = {
|
||||
[itemKeys.npcDrops] = {6551,6552,6553,6554,6555,10040,10041},
|
||||
},
|
||||
[22775] = {
|
||||
[itemKeys.npcDrops] = {16442},
|
||||
},
|
||||
[22776] = {
|
||||
[itemKeys.npcDrops] = {16443},
|
||||
},
|
||||
[22777] = {
|
||||
[itemKeys.npcDrops] = {16444},
|
||||
},
|
||||
[23217] = {
|
||||
[itemKeys.npcDrops] = {16933},
|
||||
},
|
||||
[23339] = { -- Arelion's Journal
|
||||
[itemKeys.npcDrops] = {},
|
||||
[itemKeys.objectDrops] = {},
|
||||
[itemKeys.itemDrops] = {31955},
|
||||
},
|
||||
[23361] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[23417] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[23486] = {
|
||||
[itemKeys.npcDrops] = {17034},
|
||||
},
|
||||
[23552] = {
|
||||
[itemKeys.objectDrops] = {184079},
|
||||
},
|
||||
[23614] = {
|
||||
[itemKeys.objectDrops] = {181616},
|
||||
},
|
||||
[23645] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[23670] = {
|
||||
[itemKeys.objectDrops] = {181632},
|
||||
},
|
||||
[23686] = { -- Lacy Handkerchief
|
||||
[itemKeys.npcDrops] = {17210},
|
||||
},
|
||||
[23750] = {
|
||||
[itemKeys.objectDrops] = {107047},
|
||||
},
|
||||
[23789] = {
|
||||
[itemKeys.npcDrops] = {17186,17187,17188},
|
||||
},
|
||||
[23792] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[23801] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[23818] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[23837] = { -- Weathered Treasure Map
|
||||
[itemKeys.npcDrops] = {17421},
|
||||
},
|
||||
[23848] = {
|
||||
[itemKeys.npcDrops] = {3546},
|
||||
},
|
||||
[23878] = {
|
||||
[itemKeys.objectDrops] = {181779},
|
||||
},
|
||||
[23879] = {
|
||||
[itemKeys.objectDrops] = {181780},
|
||||
},
|
||||
[23880] = {
|
||||
[itemKeys.objectDrops] = {181781},
|
||||
},
|
||||
[23894] = {
|
||||
[itemKeys.npcDrops] = {17370,17371,17377,17381,17395,17397,17398,17414,17429,17491,17624,17626,},
|
||||
},
|
||||
[23901] = { -- Nazan's Head
|
||||
[itemKeys.npcDrops] = {17307},
|
||||
},
|
||||
[23984] = {
|
||||
[itemKeys.npcDrops] = {17324,17327,17339,17342,17343,17344,17346,17347,17348,17350,17352,17353,17522,17523,17527,17588,17589,17661,17683,17322,17323,17325,17326,17328,17329,17330,17334,17336,17337,17338,17340,17341,17358,17494,17550,17604,17606,17607,17608,17609,17610,17713,17714,17715},
|
||||
},
|
||||
[24084] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24099] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24132] = {
|
||||
[itemKeys.objectDrops] = {410001},
|
||||
},
|
||||
[24156] = {
|
||||
[itemKeys.npcDrops] = {17544},
|
||||
},
|
||||
[24226] = {
|
||||
[itemKeys.npcDrops] = {17832},
|
||||
},
|
||||
[24246] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[24278] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24285] = {
|
||||
[itemKeys.npcDrops] = {16683},
|
||||
},
|
||||
[24286] = {
|
||||
[itemKeys.npcDrops] = {16611},
|
||||
},
|
||||
[24287] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24289] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24317] = {
|
||||
[itemKeys.objectDrops] = {182074},
|
||||
},
|
||||
[24335] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24355] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24467] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24474] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24483] = { -- Withered Basidium
|
||||
[itemKeys.startQuest] = 9827,
|
||||
},
|
||||
[24501] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24502] = {
|
||||
[itemKeys.npcDrops] = {17138,18037,18064,18065},
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[24573] = {
|
||||
[itemKeys.npcDrops] = {18197},
|
||||
},
|
||||
[25458] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[25460] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[25461] = {
|
||||
[itemKeys.npcDrops] = {18472},
|
||||
},
|
||||
[25462] = {
|
||||
[itemKeys.npcDrops] = {16807},
|
||||
},
|
||||
[25465] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[25539] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[25552] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[25554] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[25555] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[25604] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[25642] = {
|
||||
[itemKeys.objectDrops] = {185201},
|
||||
},
|
||||
[25658] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[25807] = {
|
||||
[itemKeys.npcDrops] = {18476,18477},
|
||||
},
|
||||
[25853] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[28038] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[28106] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[28132] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[28478] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[28607] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[29112] = {
|
||||
[itemKeys.npcDrops] = {18907},
|
||||
},
|
||||
[29324] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[29460] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[29473] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[29482] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[29742] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[29769] = { -- Diagnostic Results
|
||||
[itemKeys.objectDrops] = {184609},
|
||||
},
|
||||
[29778] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[29795] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[29796] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[30259] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[30426] = {
|
||||
[itemKeys.npcDrops] = {19762,19768,19789},
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[30430] = {
|
||||
[itemKeys.objectDrops] = {184715},
|
||||
},
|
||||
[30451] = {
|
||||
[itemKeys.npcDrops] = {19799,19800,19802,21337,21656},
|
||||
},
|
||||
[30540] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[30639] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[30658] = {
|
||||
[itemKeys.npcDrops] = {21727},
|
||||
},
|
||||
[30659] = {
|
||||
[itemKeys.npcDrops] = {21725},
|
||||
},
|
||||
[30672] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[30712] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[30719] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[30721] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[30743] = {
|
||||
[itemKeys.npcDrops] = {21821,20021},
|
||||
},
|
||||
[30782] = {
|
||||
[itemKeys.npcDrops] = {21817,20021},
|
||||
},
|
||||
[30783] = {
|
||||
[itemKeys.npcDrops] = {21820,20021},
|
||||
},
|
||||
[30808] = {
|
||||
[itemKeys.npcDrops] = {18667},
|
||||
},
|
||||
[30823] = {
|
||||
[itemKeys.npcDrops] = {19678},
|
||||
},
|
||||
[31085] = { -- Top Shard of the Arcatraz Key
|
||||
[itemKeys.npcDrops] = {17977},
|
||||
},
|
||||
[31086] = { -- Bottom Shard of the Arcatraz Key
|
||||
[itemKeys.npcDrops] = {19220},
|
||||
},
|
||||
[31121] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31122] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31130] = {
|
||||
[itemKeys.npcDrops] = {21387},
|
||||
},
|
||||
[31252] = {
|
||||
[itemKeys.npcDrops] = {18733},
|
||||
},
|
||||
[31261] = {
|
||||
[itemKeys.npcDrops] = {19826,19827,21386},
|
||||
},
|
||||
[31279] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31316] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31530] = {
|
||||
[itemKeys.objectDrops] = {177281},
|
||||
},
|
||||
[31495] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31517] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31518] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31607] = {
|
||||
[itemKeys.npcDrops] = {22258},
|
||||
},
|
||||
[31655] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31664] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31702] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31708] = {
|
||||
[itemKeys.objectDrops] = {185224},
|
||||
},
|
||||
[31709] = {
|
||||
[itemKeys.objectDrops] = {185226},
|
||||
},
|
||||
[31710] = {
|
||||
[itemKeys.objectDrops] = {185225},
|
||||
},
|
||||
[31716] = {
|
||||
[itemKeys.npcDrops] = {17301},
|
||||
},
|
||||
[31721] = {
|
||||
[itemKeys.npcDrops] = {17798},
|
||||
},
|
||||
[31722] = {
|
||||
[itemKeys.npcDrops] = {18708},
|
||||
},
|
||||
[31813] = {
|
||||
[itemKeys.npcDrops] = {18884},
|
||||
},
|
||||
[31880] = { -- Blood Elf Orphan Whistle
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31881] = { -- Draenei Orphan Whistle
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[31941] = { -- Mark of the Nexus-King
|
||||
[itemKeys.npcDrops] = {20888,20889,22825,22826,22827,22828},
|
||||
},
|
||||
[31951] = {
|
||||
[itemKeys.vendors] = {21643},
|
||||
},
|
||||
[31955] = { -- Arelion's Knapsack
|
||||
[itemKeys.objectDrops] = {184115},
|
||||
},
|
||||
[31957] = {
|
||||
[itemKeys.npcDrops] = {20520},
|
||||
},
|
||||
[31994] = { -- Ethereum Key Tablet - Alpha
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[32061] = { -- Evidence from Alpha
|
||||
[itemKeys.npcDrops] = {20889,22920},
|
||||
},
|
||||
[32364] = {
|
||||
[itemKeys.objectDrops] = {185566},
|
||||
[itemKeys.npcDrops] = {23002},
|
||||
},
|
||||
[32379] = { -- Grulloc's Dragon Skull
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[32383] = { -- Skulloc's Soul
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[32406] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[32598] = {
|
||||
[itemKeys.objectDrops] = {185920},
|
||||
},
|
||||
[32601] = {
|
||||
[itemKeys.objectDrops] = {185921},
|
||||
},
|
||||
[32723] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[32742] = {
|
||||
[itemKeys.npcDrops] = {23363},
|
||||
},
|
||||
[32971] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
[itemKeys.objectDrops] = {186234},
|
||||
},
|
||||
[33071] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[33039] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[33041] = {
|
||||
[itemKeys.objectDrops] = {186283},
|
||||
},
|
||||
[33061] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[33086] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[33087] = {
|
||||
[itemKeys.npcDrops] = {4328,4329,4331},
|
||||
},
|
||||
[33112] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[33175] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[33814] = {
|
||||
[itemKeys.npcDrops] = {17377},
|
||||
},
|
||||
[33815] = {
|
||||
[itemKeys.npcDrops] = {16808},
|
||||
},
|
||||
[33821] = {
|
||||
[itemKeys.npcDrops] = {17942},
|
||||
},
|
||||
[33826] = {
|
||||
[itemKeys.npcDrops] = {17882},
|
||||
},
|
||||
[33827] = {
|
||||
[itemKeys.npcDrops] = {17798},
|
||||
},
|
||||
[33833] = {
|
||||
[itemKeys.npcDrops] = {17307},
|
||||
},
|
||||
[33834] = {
|
||||
[itemKeys.npcDrops] = {18473},
|
||||
},
|
||||
[33835] = {
|
||||
[itemKeys.npcDrops] = {18344},
|
||||
},
|
||||
[33836] = {
|
||||
[itemKeys.npcDrops] = {18373},
|
||||
},
|
||||
[33837] = {
|
||||
[itemKeys.npcDrops] = {18096},
|
||||
},
|
||||
[33840] = {
|
||||
[itemKeys.npcDrops] = {18708},
|
||||
},
|
||||
[33847] = {
|
||||
[itemKeys.npcDrops] = {18096},
|
||||
},
|
||||
[33858] = {
|
||||
[itemKeys.npcDrops] = {17881},
|
||||
},
|
||||
[33859] = {
|
||||
[itemKeys.npcDrops] = {17977},
|
||||
},
|
||||
[33860] = {
|
||||
[itemKeys.npcDrops] = {19220},
|
||||
},
|
||||
[33861] = {
|
||||
[itemKeys.npcDrops] = {20912},
|
||||
},
|
||||
[34130] = { -- Recovery Diver's Potion
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[34160] = {
|
||||
[itemKeys.npcDrops] = {24664},
|
||||
},
|
||||
[34246] = {
|
||||
[itemKeys.npcDrops] = {},
|
||||
},
|
||||
[34338] = {
|
||||
[itemKeys.npcDrops] = {24960,24966},
|
||||
},
|
||||
[34475] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[34477] = {
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
[35229] = {
|
||||
[itemKeys.objectDrops] = {410014},
|
||||
},
|
||||
[35277] = {
|
||||
[itemKeys.npcDrops] = {25866,25863,25924},
|
||||
},
|
||||
[35568] = {
|
||||
[itemKeys.objectDrops] = {188129},
|
||||
},
|
||||
[35569] = {
|
||||
[itemKeys.objectDrops] = {188128},
|
||||
},
|
||||
[37736] = { -- 2021 Brewfest item (Alliance)
|
||||
[itemKeys.name] = "\"Brew of the Month\" Club Membership Form",
|
||||
[itemKeys.startQuest] = 12420,
|
||||
[itemKeys.itemLevel] = 1,
|
||||
[itemKeys.requiredLevel] = 1,
|
||||
[itemKeys.ammoType] = 0,
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
[itemKeys.subClass] = 0,
|
||||
[itemKeys.vendors] = {23710,27478},
|
||||
},
|
||||
[37737] = { -- 2021 Brewfest item (Horde)
|
||||
[itemKeys.name] = "\"Brew of the Month\" Club Membership Form",
|
||||
[itemKeys.startQuest] = 12421,
|
||||
[itemKeys.itemLevel] = 1,
|
||||
[itemKeys.requiredLevel] = 1,
|
||||
[itemKeys.ammoType] = 0,
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
[itemKeys.subClass] = 0,
|
||||
[itemKeys.vendors] = {24495,27489},
|
||||
},
|
||||
[185956] = { -- Shimmering Vessel
|
||||
[itemKeys.name] = "Shimmering Vessel",
|
||||
[itemKeys.class] = itemClasses.QUEST,
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
-- This should allow manual fix for item availability
|
||||
function QuestieTBCItemFixes:LoadFactionFixes()
|
||||
local itemKeys = QuestieDB.itemKeys
|
||||
|
||||
local itemFixesHorde = {
|
||||
[17126] = { -- Elegant Letter
|
||||
[itemKeys.npcDrops] = {3327,3328,3401,4582,4583,4584,15285,16279,16684,16685,16686},
|
||||
},
|
||||
[25911] = { -- Salvaged Wood
|
||||
[itemKeys.objectDrops] = {182936},
|
||||
},
|
||||
[25912] = { -- Salvaged Metal
|
||||
[itemKeys.objectDrops] = {182937, 182938},
|
||||
},
|
||||
[30712] = { -- The Doctor's Key
|
||||
[itemKeys.npcDrops] = {21779},
|
||||
},
|
||||
[30713] = { -- The Art of Fel Reaver Maintenance
|
||||
[itemKeys.objectDrops] = {185233},
|
||||
},
|
||||
}
|
||||
|
||||
local itemFixesAlliance = {
|
||||
[17126] = { -- Elegant Letter
|
||||
[itemKeys.npcDrops] = {332,918,4163,4214,4215,5165,5166,5167},
|
||||
},
|
||||
[25911] = { -- Salvaged Wood
|
||||
[itemKeys.objectDrops] = {182799},
|
||||
},
|
||||
[25912] = { -- Salvaged Metal
|
||||
[itemKeys.objectDrops] = {182798, 182797},
|
||||
},
|
||||
[30712] = { -- The Doctor's Key
|
||||
[itemKeys.npcDrops] = {21778},
|
||||
},
|
||||
[30713] = { -- The Art of Fel Reaver Maintenance
|
||||
[itemKeys.objectDrops] = {184947},
|
||||
},
|
||||
}
|
||||
|
||||
if UnitFactionGroup("Player") == "Horde" then
|
||||
return itemFixesHorde
|
||||
else
|
||||
return itemFixesAlliance
|
||||
end
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,75 +0,0 @@
|
||||
254 - not sure yet
|
||||
339 - ok
|
||||
340 - ok
|
||||
341 - ok
|
||||
342 - ok
|
||||
349 - ok
|
||||
403 - not sure yet
|
||||
410 - ok
|
||||
431 - ok
|
||||
558 - not sure yet, can't test
|
||||
593 - ok
|
||||
779 - ok
|
||||
795 - ok
|
||||
813 - ok
|
||||
925 - not sure yet, can't test
|
||||
926 - ok
|
||||
960 - this one needs available changes
|
||||
961 - this one needs available changes
|
||||
972 - this one needs available changes
|
||||
1103 - this one needs available changes
|
||||
1442 - not sure yet
|
||||
1462 - this one needs available changes
|
||||
1463 - this one needs available changes
|
||||
1464 - this one needs available changes
|
||||
1655 - not sure yet
|
||||
1714 - not sure yet
|
||||
2842 - not child
|
||||
3357 - this one needs available changes
|
||||
4041 - not sure yet
|
||||
4561 - not sure yet
|
||||
4661 - not sure yet
|
||||
4785 - not sure yet
|
||||
4962 - not sure yet
|
||||
4963 - not sure yet
|
||||
5421 - not child
|
||||
6545 - ok
|
||||
6546 - ok
|
||||
6547 - ok
|
||||
6581 - ok
|
||||
7645 - not sure yet
|
||||
8353 - ok
|
||||
8354 - ok
|
||||
8355 - ok
|
||||
8356 - ok
|
||||
8357 - ok
|
||||
8358 - ok
|
||||
8359 - ok
|
||||
8360 - ok
|
||||
8508 - ok
|
||||
8599 - not sure
|
||||
8732 - ok
|
||||
9483 - ok
|
||||
10850 - ok
|
||||
10919 - ok
|
||||
11920 - i remember something off about this one
|
||||
12541 - child quest with 3 parent quests (!)
|
||||
12557 - ok
|
||||
12597 - ok
|
||||
12598 - ok
|
||||
12599 - ok
|
||||
12663 - this one needs available changes
|
||||
12664 - this one needs available changes
|
||||
12673 - ok (99% sure)
|
||||
12686 - ok (99% sure)
|
||||
12690 - ok (99% sure)
|
||||
13625 - we handle this in a special way
|
||||
13666 - we handle this in a special way
|
||||
13669 - we handle this in a special way
|
||||
13670 - we handle this in a special way
|
||||
13671 - we handle this in a special way
|
||||
13673 - we handle this in a special way
|
||||
13674 - we handle this in a special way
|
||||
13675 - we handle this in a special way
|
||||
13676 - we handle this in a special way
|
||||
13677 - we handle this in a special way
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@@ -1,908 +0,0 @@
|
||||
---@class QuestieWotlkObjectFixes
|
||||
local QuestieWotlkObjectFixes = QuestieLoader:CreateModule("QuestieWotlkObjectFixes")
|
||||
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
---@type ZoneDB
|
||||
local ZoneDB = QuestieLoader:ImportModule("ZoneDB")
|
||||
|
||||
function QuestieWotlkObjectFixes:Load()
|
||||
local objectKeys = QuestieDB.objectKeys
|
||||
local zoneIDs = ZoneDB.zoneIDs
|
||||
|
||||
return {
|
||||
[269] = { -- Guarded Thunder Ale Barrel
|
||||
[objectKeys.questStarts] = {403},
|
||||
},
|
||||
[140911] = { -- Spool of Light Chartreuse Silk Thread
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY] = {{50.58,60.14}}},
|
||||
},
|
||||
[141980] = { -- Spectral Lockbox
|
||||
[objectKeys.questEnds] = {2701},
|
||||
},
|
||||
[176213] = {
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.WESTERN_PLAGUELANDS]={{35.9,57.4},{35.9,57.5},{36.4,53.7},{36.5,53.6},{38.2,56.3},{39.7,69.4},{39.7,69.6},{40.6,73.1},{40.7,57.4},{40.8,57.5},{41.4,62.1},{41.5,62.1},{41.9,70.5},{42.2,54.9},{42.8,64.2},{43.3,68.3},{43.6,70.4},{43.7,70.5},{44.2,65},{44.4,71.6},{44.5,53.3},{44.5,71.7},{44.6,53.5},{45.8,71.5},{45.9,51.1},{45.9,71.4},{46.7,34.4},{46.8,34.5},{47,59.9},{47,67.1},{47.6,70},{47.9,53.1},{49.4,68.1},{49.8,33.3},{52.2,66.5},{52.3,55},{52.3,66.3},{53,64.2},{53.2,66.5},{53.3,65.1},{53.3,66.2},{53.4,63.4},{53.5,63.3},{53.5,63.5},{54.9,27.1},{55.2,69.4},{55.3,69.6},{56.7,34.7},{57.8,66.4},{57.8,66.5},{62,58.3},{62,58.5},{62.9,57.2},{62.9,57.9},{63.2,59.2},{63.6,75.4},{63.6,75.5},{64,48.7},{64.1,57.9},{64.9,74.4},{64.9,74.5},{65.8,76.8},{66.4,42.1},{66.5,42.2},{67,53.9},{67.8,84.6},{68,44.7},{68.3,81.4},{68.3,81.6},{68.4,77.1},{68.5,77.1},{68.7,49.2},{68.7,79.2},{68.9,73.8},{69.5,78.6},},
|
||||
[zoneIDs.EASTERN_PLAGUELANDS]={{4.3,45.2},{5.3,48.8},{11.1,58.7},{16.7,55},{17.1,60.7},{18.2,67.3},{18.7,78.3},{20.8,81.2},{22.5,68.2},{22.8,64.1},{23.2,63.2},{23.6,68.9},{23.7,58.2},{25,79},{25.5,72.1},{27,59.4},{27,59.5},{28.3,64.6},{29.7,27.7},{30.2,61.5},{30.2,73.6},{30.3,73.4},{30.7,70.2},{30.8,21.2},{31.8,66.7},{31.8,69.2},{32.7,32.9},{32.8,64.2},{33.1,59.5},{33.5,62},{34.5,26.6},{34.5,48.3},{34.6,22},{34.8,31.2},{35.9,44.4},{37.2,59.4},{37.2,59.7},{37.2,73},{38.3,69.1},{40.5,28.2},{42,58},{42,68.2},{43,35.4},{43.1,35.7},{43.5,73.3},{44.5,30.5},{45.7,40.2},{45.8,70.7},{47.2,63.8},{48.8,45},{51.4,57.6},{51.9,69.6},{52.3,75.2},{52.6,65.3},{52.7,65.6},{52.9,69.8},{53.2,72.9},{53.6,72.8},{53.7,58.7},{54.4,56},{54.4,69.6},{54.5,56.2},{54.5,69.4},{55,61.3},{56.8,63.7},{58.5,61.3},{59.5,59},{59.6,74.2},{60.8,47.3},{62.3,60.6},{62.9,64},{63,68},{63.3,71.7},{63.5,74.1},{63.7,65.1},{63.7,76.6},{65.2,74.2},{65.4,63.2},{65.8,68.4},{65.9,68.7},{66.8,71.7},{67.8,63.6},{67.8,75.4},{68.1,70.1},{68.3,45.5},{68.5,76.7},{69.1,52.8},{70,49.5},{70.2,76.4},{70.2,76.6},{70.5,45},{70.6,71.7},{71,66.3},{72.9,51.7},{73.1,60.9},{73.3,57.5},{74.6,53.9},},
|
||||
[zoneIDs.TIRISFAL_GLADES]={{82.8,72.7},{83,71.4},{83,71.5}},
|
||||
},
|
||||
},
|
||||
[177272] = { -- Moonwell
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.STORMWIND_CITY]={{35.45,65.71}},
|
||||
[zoneIDs.TELDRASSIL]={{56.02,61.99}},
|
||||
[zoneIDs.ASHENVALE]={{62.07,51.04},{60.21,72.91}},
|
||||
[zoneIDs.FERALAS]={{32.56,43.91},{57.97,44.49}},
|
||||
},
|
||||
},
|
||||
[179832] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.SEARING_GORGE] = {{45.86,29.68}}},
|
||||
},
|
||||
[180669] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.AZSHARA] = {{65.82,54.77}}},
|
||||
},
|
||||
[180715] = {
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.THE_EXODAR]={{55.84,48.41}},
|
||||
[zoneIDs.STORMWIND_CITY]={{62.13,69.51}},
|
||||
[zoneIDs.IRONFORGE]={{37.41,70.19}},
|
||||
[zoneIDs.SHATTRATH_CITY]={{50.42,46.09}},
|
||||
[zoneIDs.ORGRIMMAR]={{53.57,67.17}},
|
||||
[zoneIDs.THUNDER_BLUFF]={{42.78,54.3}},
|
||||
[zoneIDs.UNDERCITY]={{67.33,38.0}},
|
||||
[zoneIDs.SILVERMOON_CITY]={{62.53,80.89}},
|
||||
},
|
||||
},
|
||||
[180771] = {
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.MOONGLADE]={{35.95,58.69},{37.38,59.26},{36.92,56.77},{37.39,59.64},{36.45,57.12},{37.15,57.88},{45.25,38.5},{35.98,59.94},{36.52,60.23},{36.61,59.4},{36.5,56.81},{37.2,58.45},{53.92,36.84},{37.9,58.39},{47.91,33.35},{54.16,36.9},{37.59,58.72},{35.68,58.43},{36.15,57.41},{47.66,34.75},{37.05,59.11},{35.69,57.86},{35.48,58.67},{44.97,42.58},{53.38,36.7},{36.3,57.86},{42.64,35.39},{53.63,36.77},{48.78,34.52},{53.07,36.61},{50.92,37.23}},
|
||||
[zoneIDs.UNDERCITY]={{57.82,63.6},{58.43,64.13},{76.71,27.62},{56.96,25.43},{52.76,55.96},{73.87,63.84},{56.39,26.07},{50.61,56.53},{55.13,23.62},{78.68,26.13},{50.97,57.45},{66.37,37.57},{66,37.76},{65.65,37.56},{65.45,36.74},{66.59,36.75}},
|
||||
[zoneIDs.STORMWIND_CITY]={{37.14,64.42},{36.83,65.25},{37.26,65.59},{37.44,64.6},{37.14,65.93},{37.48,65.34},{37.05,65.03},{36.72,64.21},{36.81,64.95},{54.76,69.07},{43.96,73.78},{69.05,64.97},{54.75,68.92},{43.74,74.1},{69.13,65.06},{43.89,73.88},{54.77,69.21},{54.75,68.77},{62.64,50.49}},
|
||||
[zoneIDs.IRONFORGE]={{29.85,18.67},{29.1,19.58},{30.72,19.34},{31.43,19.12},{31.42,16.83},{31.76,18.09},{30.45,20.68},{32.61,18.02},{32.16,15.77},{65.43,26.28},{65.06,25.57}},
|
||||
[zoneIDs.ORGRIMMAR]={{41.97,32.52},{41.51,30.6},{40.45,30.64},{40.98,30.18},{40.61,30.1},{41.53,32.96},{40.49,31.65},{69.75,30.22},{48.86,77.18},{49.25,77.38},{69.88,30.02},{69.61,30.4},{49.44,77.48}},
|
||||
[zoneIDs.THUNDER_BLUFF]={{72.0,26.37},{71.24,27.05},{71.12,25.74},{71.58,27.15},{71.02,26.7},{54.96,50.34},{54.95,52.01},{54.96,51.85},{54.95,50.95}},
|
||||
[zoneIDs.DARNASSUS]={{31.88,13.19},{31.22,12.15},{32.14,11.9},{32.26,12.73},{31.31,13.0},{31.63,11.64},{69.77,43.22},{69.3,38.49},{68.94,43.19},{67.66,43.25},{69.36,43.22},{68.53,43.2}},
|
||||
[zoneIDs.SILVERMOON_CITY]={{73.64,82.59},{74.17,84.25},{74.2,83.7},{73.81,82.88},{73.79,84.14},{73.4,83.34},{73.25,83.03}},
|
||||
[zoneIDs.THE_EXODAR]={{73.75,57.47},{73.47,57.45},{72.77,57.41},{72.5,57.87},{72.74,58.41},{73.42,58.3},{73.73,58.28}},
|
||||
[zoneIDs.SHATTRATH_CITY]={{48.46,37.28},{48.65,37.64},{49.1,38.49},{49.51,38.54},{53.35,33.66},{53.44,34.12},{53.59,35.17},{53.35,35.61},{53.05,35.32},{52.88,34.29},{52.8,33.84},{48.95,36.77},{49.12,37.08},{49.61,37.91}},
|
||||
[zoneIDs.DALARAN]={{48.48,44.82},{50.41,44.76},{50.52,44.51},{49.96,45.29},{48.76,45.12},{49.13,45.4},{48.3,44.58}},
|
||||
},
|
||||
},
|
||||
[180772] = {
|
||||
[objectKeys.spawns] = {
|
||||
[zoneIDs.MOONGLADE]={{36.43,57.61},{36.77,59.74},{35.88,58.39},{53.23,36.66},{53.5,36.74},{37.15,57.61},{35.87,57.31},{35.48,59.15},{44.59,38.64},{37.32,58.85},{36.05,59.5},{37.16,59.96},{54.05,36.87},{42.53,34.3},{53.79,36.8},{37.92,58.14},{36.44,59.26},{36.74,56.71},{54.29,36.93}},
|
||||
[zoneIDs.UNDERCITY]={{65.48,37.17},{66.54,37.17},{55.7,22.96},{52.43,55.02},{74.88,66.58},{73.24,64.33},{74.28,67.11},{77.21,28.36},{78.99,56.28},{79.36,55.39},{78.21,25.35}},
|
||||
[zoneIDs.STORMWIND_CITY]={{36.96,65.37},{36.92,64.78},{43.82,74.0},{68.96,64.89},{68.88,64.81},{62.71,50.77},{62.68,50.63},{62.73,50.93}},
|
||||
[zoneIDs.IRONFORGE]={{28.84,17.94},{31.36,17.51},{31.75,19.74},{31.14,15.12},{30.36,18.71},{63.49,22.7},{64.26,24.08},{63.88,23.38},{64.67,24.8}},
|
||||
[zoneIDs.ORGRIMMAR]={{41.18,30.57},{40.62,31.12},{49.05,77.27},{49.6,77.54}},
|
||||
[zoneIDs.THUNDER_BLUFF]={{71.4,25.41},{72.05,25.95},{54.96,50.53},{54.94,52.23},{54.94,52.44},{54.97,50.73}},
|
||||
[zoneIDs.DARNASSUS]={{31.96,12.87},{31.87,11.98},{68.89,38.51},{69.76,38.49},{68.09,43.22},{68.52,38.51},{67.96,38.5},{67.4,38.5}},
|
||||
[zoneIDs.SILVERMOON_CITY]={{73.33,83.88},{74.2,83.21}},
|
||||
[zoneIDs.THE_EXODAR]={{73.02,56.92},{73,58.67}},
|
||||
[zoneIDs.SHATTRATH_CITY]={{49.57,37.38},{48.74,38.4},{53.77,34.63},{52.78,34.99}},
|
||||
[zoneIDs.DALARAN]={{48.93,45.25},{50.15,45.12}},
|
||||
},
|
||||
},
|
||||
[186325] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.HOWLING_FJORD]={{28.03,10.61},{28.88,12.86},{27.54,14.08},{31.44,14.83},{34.28,18.91},{29.98,15.54},{27.13,14.59},{27.98,15.12},{28.94,14.64},{28.6,16.93},{28.99,16.32},{31.18,15.05},{31.53,15.33},{29.77,20.04},{30.33,20.77},{30.16,20.15},{29.73,20.71},{29.4,19.81},{28.53,16.24},{28.86,15.48},{29.82,16.2},{29.84,17.67},{30.0,18.22},{28.49,15.65},{28.2,14.23},{29.55,17.85},{29.75,18.25},{29.04,16.97},{29.52,16.11},{29.75,15.39},{29.51,15.83},{32.68,21.82},{32.62,22.15},{32.42,22.5},{30.74,20.87},{30.56,20.37},{31.09,20.93},{30.96,20.58},{31.94,20.72},{31.3,18.91},{31.57,19.19},{31.46,19.58},{30.17,17.75},{31.56,18.95},{31.22,17.9},{31.07,18.14},{30.94,18.08},{31.08,17.77},{31.89,18.58},{32.05,17.1},{28.02,12.58},{27.5,12.63},{28.78,12.27},{26.95,11.59},{27.58,11.0},{33.76,20.46},{33.98,20.05}}},
|
||||
[objectKeys.zoneID] = zoneIDs.HOWLING_FJORD,
|
||||
},
|
||||
[186419] = {
|
||||
[objectKeys.questStarts] = {4127},
|
||||
},
|
||||
[186640] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.HOWLING_FJORD]={{54.93,57.47}}},
|
||||
[objectKeys.zoneID] = zoneIDs.HOWLING_FJORD,
|
||||
},
|
||||
[187674] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA] = {{43,56.3}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[187981] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA] = {{59.87,23.97},{59.92,28.31},{57.2,26.9},{60.64,33.67},{60.91,33.12},{61.08,28.28},{62.97,36.9},{60.41,34.93},{60.57,29.82},{61.07,29.32},{61.17,30.69},{62.3,28.49},{59.84,37.61},{60.07,25.64},{60.46,27.08},{63.7,34.67},{63.4,37.6},{59.36,40.29},{59.78,39.61},{59.03,39.42},{59.53,38.78},{63.94,36.74},{61.57,29.67},{63.34,36.14},{62.18,27.35},{61.19,35.93},{60.94,34.22},{61.72,36.84},{61.7,35.23},{62.45,35.46},{61.21,39.43},{61.13,37.99},{61.13,41.04},{61.44,40.16},{60.49,40.25},{65.73,35.87},{64.4,34.31}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[188019] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA] = {{61.08,40.07},{59.59,39.21},{60.85,33.6},{61.12,30.14},{61.66,35.96},{63.38,37.0}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[188066] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA] = {{53.64,24.53}}},
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[188123] = {
|
||||
[objectKeys.factionID] = 1732,
|
||||
},
|
||||
[188287] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.GRIZZLY_HILLS] = {{13.24,60.87}}},
|
||||
[objectKeys.zoneID] = zoneIDs.GRIZZLY_HILLS,
|
||||
},
|
||||
[188358] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.GRIZZLY_HILLS] = {{45,28.36}}},
|
||||
[objectKeys.zoneID] = zoneIDs.GRIZZLY_HILLS,
|
||||
},
|
||||
[188434] = {
|
||||
[objectKeys.spawns] = {[65]={{61.82,22.78},{60.27,19.98},{60.63,21.82},{59.36,21.21},{58.64,23.76},{58.14,24.32},{60.43,13.04},{61.57,15.52},{59.85,26.94},{59.33,23.94}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[188474] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT] = {{32.29,71.72}}},
|
||||
},
|
||||
[188525] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.GRIZZLY_HILLS] = {{70.92,19.26},{70.37,19.47},{71.04,19.41},{70.48,19.29},{71.5,20.03},{71.38,19.87},{71.73,20.33},{71.62,20.18},{70.27,19.64},{69.9,20.24},{70.58,19.12},{70.81,19.1},{69.92,20.58},{70.15,20.89},{71.63,20.84},{71.74,20.67},{71.43,21.18},{70.62,21.5},{71.53,21.01},{70.74,21.66},{70.86,21.81},{71.09,21.77}}},
|
||||
[objectKeys.zoneID] = zoneIDs.GRIZZLY_HILLS,
|
||||
},
|
||||
[189973] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.AHNKAHET_THE_OLD_KINGDOM]={{-1,-1}},[zoneIDs.AZJOL_NERUB]={{-1,-1}},[3711]={{43.89,40.53},{58.8,25.89},{29.27,79.62},{53.89,33.25},{48.43,28.55},{47.2,43.63},{24.66,49.38},{32.7,40.28},{53.74,26.86},{31.93,49.22},{28.97,61.38},{56.23,33.75},{39.99,27.31},{59.24,34.41},{49.44,44.71},{57.63,80.38},{70.42,71.71},{59.85,81.17},{30.68,50.31},{27.06,74.68},{32.06,79.65},{67.28,70.74},{51.55,42.5},{44.53,42.11},{44.35,38.96},{32.78,83.46},{71.26,69.28},{56.99,76.0},{50.26,42.84},{24.17,47.7},{31.24,49.45},{32.45,57.42},{23.32,53.98},{28.93,42.05},{33.43,46.14},{25.03,52.17},{47.01,33.2},{59.27,36.36},{25.42,78.25},{57.13,36.31},{58.0,78.15},{35.76,86.23},{28.54,44.65},{32.99,60.61},{42.26,35.79},{33.49,34.92},{58.78,31.46},{52.21,25.27},{35.65,32.51},{26.68,46.52},{31.61,59.56},{23.54,51.34},{27.15,81.24},{51.62,28.73},{34.04,42.83},{33.09,80.49},{55.43,35.76}},[3537]={{69.67,43.78},{79.23,41.04},{39.73,67.89},{34.66,51.6},{50.02,75.98},{43.03,75.64},{48.2,7.52},{47.7,21.75},{59.97,51.8},{41.03,44.99},{51.65,64.32},{49.72,25.53},{62.55,13.47},{57.75,52.14},{47.19,44.79},{62.44,41.4},{43.54,42.73},{57.05,34.01},{65.99,39.49},{48.44,48.38},{53.22,22.43},{53.47,19.23},{61.79,46.85},{54.96,54.35},{76.51,43.61},{76.76,31.97},{60.83,57.35},{41.92,36.9},{79.89,32.6},{75.59,28.94},{58.88,30.58},{54.74,43.75},{64.7,11.54},{53.34,47.31},{50.25,21.3},{65.48,14.23},{55.77,30.35},{72.42,20.53},{57.79,47.2},{59.12,54.29},{53.31,39.7},{74.83,25.53},{56.23,50.18},{51.08,69.59},{44.84,5.81},{55.23,53.76},{45.34,42.65},{54.27,61.36},{46.91,70.16},{47.97,74.52},{53.04,28.18},{50.5,50.39},{42.56,40.09},{40.39,48.93},{40.73,73.33},{46.15,73.39},{43.86,71.81},{78.9,36.49},{69.96,17.32},{61.74,60.41},{34.01,61.05}},[495]={{34.38,76.15},{58.36,40.1},{30.84,63.42},{46.79,71.61},{48.71,62.73},{52.47,60.53},{50.97,34.16},{67.14,74.89},{73.61,49.43},{74.1,44.8},{45.9,50.1},{65.76,72.47},{34.9,46.17},{78.29,44.51},{76.36,67.86},{60.44,81.25},{66.54,33.4},{67.17,24.39},{72.36,18.52},{69.92,51.09},{41.72,34.22},{46.26,31.4},{48.73,21.2},{29.43,31.82},{25.24,11.83},{28.59,18.06},{27.06,29.59},{33.43,76.37},{35.59,77.8},{69.39,24.62},{56.75,18.68},{45.04,59.5},{54.68,64.97},{52.33,17.85},{71.22,24.99},{26.41,7.93},{52.78,71.41},{54.88,19.69},{29.01,22.29},{48.58,30.02},{34.59,50.45},{47.12,28.95},{31.29,33.24},{33.92,79.19},{23.77,14.03},{46.39,54.32},{37.03,44.93},{29.96,69.22},{47.96,59.18},{26.75,60.88},{50.18,16.63},{68.21,21.95},{73.27,66.74},{56.53,21.25},{58.46,22.76},{69.98,22.13},{69.78,19.15},{38.96,54.25},{32.65,32.59},{28.26,25.71},{27.14,20.74},{49.03,42.36},{51.06,41.85},{42.06,27.71},{44.63,29.75},{59.16,50.31},{28.08,9.14},{29.17,12.03},{70.45,32.36},{58.96,55.52},{75.49,60.7},{79.15,49.69},{57.2,55.85},{56.95,67.15},{65.79,26.83},{76.27,42.81},{75.42,50.8},{33.21,63.56},{59.52,51.54},{26.87,14.58},{70.61,66.0},{69.73,69.61},{34.85,34.07},{70.08,71.98},{67.85,59.59},{63.71,28.01},{70.05,47.3},{48.21,18.06},{80.43,46.21},{49.24,72.09},{71.53,54.86},{73.57,26.69},{62.6,80.4},{60.96,26.08},{40.88,40.17},{51.86,59.16},{66.6,64.92},{76.85,49.84},{73.18,58.5},{76.68,63.9},{48.65,48.05},{50.44,63.88},{59.93,76.85},{39.23,33.09},{27.05,12.15},{52.45,32.16},{35.73,53.67},{43.36,44.08},{68.15,32.91},{64.87,67.63},{51.05,48.28},{36.99,39.9}},[394]={{82.23,56.11},{55.85,36.08},{10.68,34.62},{72.74,34.88},{25.24,31.3},{59.75,30.76},{11.3,69.48},{75.91,45.72},{45.75,31.14},{32.2,37.31},{27.12,38.42},{14.21,53.25},{15.02,50.41},{47.22,27.35},{49.2,27.28},{24.89,37.32},{64.67,26.49},{12.87,59.24},{68.54,21.52},{73.83,23.36},{62.72,27.49},{70.65,31.26},{75.87,38.32},{9.08,39.65},{24.35,33.15},{12.89,45.59},{12.29,55.76},{80.03,45.24},{78.15,42.57},{12.15,36.31},{14.74,61.38},{24.16,28.11},{21.94,25.63},{30.29,34.68},{73.84,28.26},{56.11,33.12},{76.78,50.7},{70.6,22.1},{54.6,31.33},{80.03,53.97},{52.0,28.6},{72.01,49.89},{12.69,41.68},{42.79,28.88},{63.64,24.02}},[65]={{65.62,74.62},{45.93,46.92},{64.79,77.14},{65.06,71.76},{63.56,70.58},{47.51,52.14},{49.24,50.53},{48.6,45.91}}},
|
||||
},
|
||||
[190094] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_CULLING_OF_STRATHOLME]={{73.42,54.98},{83.87,59.05},{81.21,59.75},{77.85,54.92},{70.12,51.25},{-1,-1}}},
|
||||
},
|
||||
[190095] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_CULLING_OF_STRATHOLME]={{73.42,54.98},{83.87,59.05},{81.21,59.75},{77.85,54.92},{70.12,51.25},{-1,-1}}},
|
||||
},
|
||||
[190127] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT]={{63.84,27.58}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[190169] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.AHNKAHET_THE_OLD_KINGDOM]={{-1,-1}},[zoneIDs.AZJOL_NERUB]={{-1,-1}},[3537]={{53.21,48.35},{52.68,41.46},{49.37,43.1},{52.65,47.97},{49.66,45.51},{53.29,44.11},{52.18,46.23},{52.35,46.02},{52.83,41.43},{49.6,45.38},{53.89,42.45},{52.26,45.85},{52.11,46.22},{54.12,46.55},{53.52,44.86},{54.0,42.61},{49.27,43.22},{54.15,46.28},{53.16,44.66},{53.56,45.59},{52.6,48.09}},[3711]={{64.16,46.35},{69.47,66.68},{60.11,85.28},{54.55,85.58},{56.37,86.67},{22.67,61.31},{32.81,61.48},{63.85,48.85},{25.25,59.03},{47.13,61.12},{46.72,64.88},{47.92,60.03},{50.22,55.92},{53.15,85.23},{49.53,69.37},{57.47,83.22},{53.52,86.75},{43.57,75.3},{46.21,72.78},{48.51,51.64},{50.17,65.06},{49.56,65.75},{68.64,66.59},{46.93,65.54},{49.46,60.74},{50.47,62.58},{47.12,74.54},{48.41,68.8},{48.07,70.47},{48.71,60.34},{46.22,63.07},{50.23,64.27},{49.43,71.11},{48.43,59.75},{59.7,86.36},{69.29,68.4},{46.44,63.84},{48.58,53.35},{47.58,49.58},{43.63,74.1},{32.7,64.51},{30.72,64.84},{56.29,84.83},{32.31,60.43},{27.16,61.08},{49.93,63.64},{59.22,86.3},{23.88,61.03},{49.46,52.33},{62.97,47.98},{45.96,49.71},{49.02,50.08},{44.67,49.08},{63.73,47.29},{22.34,60.32},{51.59,86.36},{58.28,86.63},{31.34,60.68},{68.45,67.95},{30.58,60.01},{47.96,73.95},{29.13,61.8},{29.1,63.7},{45.92,51.13},{23.89,59.83}},[495]={{55.07,47.6},{60.17,37.71},{59.99,32.38},{54.56,57.78},{39.23,19.92},{59.6,54.17},{30.27,25.6},{43.79,23.64},{22.18,25.96},{66.79,19.17},{67.93,18.93},{56.85,57.08},{22.7,26.32},{67.14,22.33},{68.42,20.74},{53.38,55.67},{59.69,55.83},{52.74,53.39},{60.25,52.35},{32.61,25.82},{47.21,41.4},{52.83,44.98},{42.4,39.81},{31.69,25.71},{52.47,50.02},{55.47,47.34},{35.09,23.86},{49.31,40.25},{40.29,21.76},{41.97,24.3},{26.44,27.38},{64.09,25.81},{53.38,57.71},{36.82,22.68},{62.81,28.91},{58.91,35.07},{53.43,52.1},{29.02,26.35},{46.26,18.85}},[394]={{22.07,41.69},{38.05,35.08},{62.76,50.06},{41.96,35.26},{29.18,55.86},{28.03,41.23},{25.77,40.56},{27.53,61.81},{56.12,51.0},{39.97,32.83},{29.31,52.46},{20.11,40.65},{32.27,43.86},{36.08,31.71},{9.7,41.06},{8.51,37.15},{15.46,38.36},{31.13,46.07},{54.22,44.3},{61.34,49.21},{53.23,48.28},{60.93,53.04},{10.33,38.88},{25.1,71.67},{13.97,41.1},{8.72,34.96},{27.38,65.75},{62.7,49.51},{29.06,58.87},{29.2,62.45},{34.47,42.43},{62.93,52.6},{11.8,39.29},{64.88,52.82},{37.15,41.59},{30.21,39.64},{16.82,40.6},{27.6,69.79},{66.61,54.91},{11.75,29.25},{30.12,43.2}}},
|
||||
},
|
||||
[190354] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT] = {{54.45,31.44}}},
|
||||
},
|
||||
[190483] = { -- Document Chest
|
||||
[objectKeys.name] = "Document Chest #2",
|
||||
},
|
||||
[190484] = { -- Document Chest
|
||||
[objectKeys.name] = "Document Chest #3",
|
||||
},
|
||||
[190510] = {
|
||||
[objectKeys.spawns] = {[65]={{55.39,10.45},{55.01,10.65},{51.22,20.0},{51.56,19.98},{50.01,16.49},{50.0,17.04},{53.1,17.57},{52.68,17.74},{50.9,15.47},{50.66,15.91},{51.34,15.14},{51.61,15.13},{54.63,12.28},{54.43,12.06},{53.61,10.84}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[190550] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ZUL_DRAK] = {{47.16,82.32},{46.73,84.73},{44.59,83.48},{46.28,82.08},{47.4,81.02},{48.55,85.13},{48.71,84.16},{46.75,80.34},{45.71,81.37},{47.84,82.14},{48.47,83.12},{49.17,85.13},{49.8,85.17},{50.51,85.83},{51.0,86.93},{47.31,85.01},{47.05,83.63},{46.82,83.03},{45.65,84.19},{45.46,83.16},{44.96,81.71},{47.69,83.91},{47.84,83.05}}},
|
||||
},
|
||||
[190558] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.SHOLAZAR_BASIN] = {{48.3,49.1},{49.4,53.1},{49.6,50.9},{49.7,54.4},{49.7,54.5},{49.8,49.1},{50,51.7},{50,59.8},{50.2,47.5},{50.3,53.3},{50.3,58.5},{50.4,47.2},{50.4,50.4},{50.4,56.8},{50.4,58.3},{50.5,50.4},{50.5,50.5},{50.6,55.5},{50.6,56.9},{50.9,52},{50.9,54.6},{51.1,58.8},{51.4,52.6},{51.4,53.6},{51.4,57.8},{51.5,52.4},{51.5,53.5},{51.5,57.8},{51.6,49.8},{51.7,49.4},{51.7,62.6},{51.8,54.7},{51.9,58.6},{52,61.3},{52.3,61.7},{52.4,53.1},{52.4,56.2},{52.5,51.6},{52.5,53.1},{52.5,56.2},{52.6,60.5},{52.7,60.3},{52.7,62.1},{52.8,54.9},{53.1,50.5},{53.2,47.4},{53.2,47.6},{53.2,50.3},{53.3,59.3},{53.4,49.4},{53.4,53.5},{53.5,49.5},{53.5,53.4},{53.5,53.5},{53.5,61.7},{53.7,60.8},{54.2,51.4},{54.2,51.5},{54.3,48.9},{54.3,59.9},{54.5,49.1},{54.7,57.9},{54.7,60.8},{54.9,51.5},{55,53.7},{55.1,51.2},{55.3,60.2},{55.5,60.2},{55.6,57.4},{55.6,57.6},{55.7,58.6},{55.8,48.9},{55.8,52.8},{55.9,56.3},{56.2,50.9},{56.2,55.2},{56.7,53.4},{56.7,53.5},{56.9,56.3},{56.9,56.5},{57.1,52.2},{57.1,58.8},{57.2,60.6},{57.3,54.5},{57.3,60.1},{57.5,54.4},{58,60.4},{58,60.5},{58.4,58.9},{58.7,53.8},{58.7,55.9},{58.8,62.3},{59.1,57.9},{59.1,60.2},{59.8,55},{59.8,60.4},{59.8,60.5},{59.9,57.3},{60.1,63.9},{60.3,61.9},},},
|
||||
},
|
||||
[190629] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAKTHARON_KEEP_UPPER_LEVEL]={{37.5,13.07}},[zoneIDs.DRAKTHARON_KEEP]={{-1,-1}}},
|
||||
},
|
||||
[190663] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_CULLING_OF_STRATHOLME_CITY]={{30.6,46.7}},[zoneIDs.THE_CULLING_OF_STRATHOLME]={{-1,-1}}},
|
||||
},
|
||||
[190717] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ZUL_DRAK] = {{71.2,62.2},{68.66,56.48},{73.33,62.91},{74.58,58.37},{74.99,62.63},{74.61,59.84},{73.84,61.03},{76.02,56.13},{71.41,56.52},{71.76,58.37},{75.72,59.72},{78.31,62.39},{69.33,58.32},{69.33,58.91}}},
|
||||
},
|
||||
[190777] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.SHOLAZAR_BASIN] = {{72.1,57.44}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SHOLAZAR_BASIN,
|
||||
},
|
||||
[190781] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.SHOLAZAR_BASIN] = {{33.56,74.96}}},
|
||||
},
|
||||
[190782] = {
|
||||
[objectKeys.name] = "Altar of Kartak",
|
||||
},
|
||||
[191092] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.PLAGUELANDS_THE_SCARLET_ENCLAVE] = {{63.12,68.33}}},
|
||||
},
|
||||
[191179] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.SHOLAZAR_BASIN] = {{17.58,51.25},{23.34,37.24},{26.7,33.46},{26.23,35.68}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SHOLAZAR_BASIN,
|
||||
},
|
||||
[191349] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.BAND_OF_ALIGNMENT]={{47.6,85.9}},[zoneIDs.THE_OCULUS]={{-1,-1}}},
|
||||
},
|
||||
[191577] = {
|
||||
[objectKeys.name] = "Acherus Soul Prison",
|
||||
[objectKeys.spawns] = {[zoneIDs.PLAGUELANDS_THE_SCARLET_ENCLAVE]={{48.09,29.6},{48.57,30.83},{48.86,30.91},{49.17,30.83},{49.43,30.56},{49.59,30.17},{49.65,29.73},{49.16,28.66},{48.87,28.58},{48.57,28.67},{48.31,28.94},{48.15,29.29}}},
|
||||
},
|
||||
[191746] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.PLAGUELANDS_THE_SCARLET_ENCLAVE]={{50.42,28.18},{47.32,31.31},{47.83,27.42}}},
|
||||
},
|
||||
[191761] = { -- Prototype Console
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS]={{37.54,46.9}}},
|
||||
[objectKeys.questStarts] = {13843},
|
||||
[objectKeys.questEnds] = {12889,13843},
|
||||
},
|
||||
[191878] = { -- Candy Bucket
|
||||
[objectKeys.spawns] = {[zoneIDs.ZUL_DRAK]={{59.33,57.20}}}, -- Zim'Torga
|
||||
[objectKeys.zoneID] = zoneIDs.ZUL_DRAK,
|
||||
[objectKeys.questStarts] = {12940},
|
||||
[objectKeys.questEnds] = {12940},
|
||||
},
|
||||
[191879] = { -- Candy Bucket
|
||||
[objectKeys.spawns] = {[zoneIDs.ZUL_DRAK]={{40.79,66.01}}}, -- The Argent Stand
|
||||
[objectKeys.zoneID] = zoneIDs.ZUL_DRAK,
|
||||
[objectKeys.questStarts] = {12941},
|
||||
[objectKeys.questEnds] = {12941},
|
||||
},
|
||||
[191880] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {12946},
|
||||
[objectKeys.questEnds] = {12946},
|
||||
[objectKeys.spawns] = {[zoneIDs.GRIZZLY_HILLS]={{20.56,64.36}}}, -- Conquest Hold
|
||||
[objectKeys.zoneID] = zoneIDs.GRIZZLY_HILLS,
|
||||
},
|
||||
[191881] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {12947},
|
||||
[objectKeys.questEnds] = {12947},
|
||||
[objectKeys.spawns] = {[zoneIDs.GRIZZLY_HILLS]={{65.42,47.07}}}, -- Camp Oneqwah
|
||||
[objectKeys.zoneID] = zoneIDs.GRIZZLY_HILLS,
|
||||
},
|
||||
[191882] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {12944},
|
||||
[objectKeys.questEnds] = {12944},
|
||||
[objectKeys.spawns] = {[zoneIDs.GRIZZLY_HILLS]={{31.94,60.21}}}, -- Amberpine Lodge
|
||||
[objectKeys.zoneID] = zoneIDs.GRIZZLY_HILLS,
|
||||
},
|
||||
[191883] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {12945},
|
||||
[objectKeys.questEnds] = {12945},
|
||||
[objectKeys.spawns] = {[zoneIDs.GRIZZLY_HILLS]={{59.59,26.53}}}, -- Westfall Brigade Encampment
|
||||
[objectKeys.zoneID] = zoneIDs.GRIZZLY_HILLS,
|
||||
},
|
||||
[192018] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {12950},
|
||||
[objectKeys.questEnds] = {12950},
|
||||
[objectKeys.spawns] = {[zoneIDs.SHOLAZAR_BASIN]={{26.71,59.85}}}, -- Nesingwary Base Camp
|
||||
[objectKeys.zoneID] = zoneIDs.SHOLAZAR_BASIN,
|
||||
},
|
||||
[192124] = {
|
||||
[objectKeys.spawns] = {},
|
||||
},
|
||||
[192127] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS] = {{73.4,62.9},{73.5,63.4},{75,63.5},{75.4,62.9},{75.6,63.6},{75.7,63},{75.9,64.5},{76.9,62.2},{76.9,63.1},{77,63.9},{77.6,62.4},{77.6,62.5},}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORM_PEAKS,
|
||||
},
|
||||
[192536] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS] = {{52.36,73.26},{43.61,67.3},{43.76,67.21},{45.46,66.73},{43.87,67.74},{45.52,67.16},{45.19,66.82},{52.66,75.17},{52.36,75.08},{52.36,75.43},{53.28,75.10},{53.57,74.88},{53.53,74.64}}},
|
||||
},
|
||||
[192788] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_NEXUS] = {{18.9,51.7},{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THE_NEXUS,
|
||||
},
|
||||
[192818] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_UNDERBELLY] = {{30.4,51.5},{30.5,51.3},{34.8,52.2},{35,42.4},{35.1,35.5},{35.3,42.9},{35.3,53},{35.4,35.1},{35.5,35.2},{35.5,35.5},{35.5,43},{35.7,52.4},{39.3,28.4},{39.3,28.6},{39.3,39.9},{39.4,40.6},{39.5,28.6},{39.5,40.4},{39.7,47},{39.8,28.3},{40,47.7},{43.3,32.6},{43.4,32.3},{43.5,32.2},{43.6,32.6},{44.4,65.1},{44.4,65.6},{44.5,65.1},{45.3,58.2},{45.6,58.1},{45.8,58.8},{47.3,56},{47.4,28.4},{47.4,56.9},{48,29.5},{48,55.5},{48.2,55.4},{48.3,29.4},{48.4,40.4},{48.4,40.7},{48.5,29.4},{48.5,29.8},{48.5,41.1},{50.4,25.6},{50.4,26.6},{50.4,52.8},{50.6,25.9},{50.6,26.6},{51.2,53},{51.2,53.6},{51.4,42.1},{51.4,42.5},{51.5,42.2},{51.5,42.6},{51.6,53.4},{51.8,53.8},{54.3,66.2},{54.7,66.8},{55,66.2},{55.3,56.3},{55.4,56.9},{55.5,57.6},{55.6,56.3},{55.7,56.7},{55.8,58.6},{56.7,40.1},{56.8,40.7},{57.4,41.5},{57.4,47.4},{57.5,40.9},{57.6,41.5},{57.6,47.4},{58,47.6},{59,12.5},{59.4,35},{59.4,35.6},{59.5,35.3},{59.7,11.7},{60.6,14.3},{61.8,9.2},{62.3,10.5},{62.4,10},{62.6,10},{64.2,15.1},{64.2,15.6},},},
|
||||
[objectKeys.zoneID] = zoneIDs.THE_UNDERBELLY,
|
||||
},
|
||||
[192826] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.GUNDRAK] = {{-1,-1}},[zoneIDs.GUNDRAK_LOWER_LEVEL] = {{-1,-1}}},
|
||||
},
|
||||
[192941] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.UTGARDE_PINNACLE] = {{-1,-1}},[zoneIDs.UTGARDE_PINNACLE_LOWER_LEVEL] = {{-1,-1}}},
|
||||
},
|
||||
[192942] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.UTGARDE_PINNACLE] = {{-1,-1}},[zoneIDs.UTGARDE_PINNACLE_LOWER_LEVEL] = {{-1,-1}}},
|
||||
},
|
||||
[192943] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.UTGARDE_PINNACLE] = {{-1,-1}},[zoneIDs.UTGARDE_PINNACLE_LOWER_LEVEL] = {{-1,-1}}},
|
||||
},
|
||||
[192944] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.UTGARDE_PINNACLE] = {{-1,-1}},[zoneIDs.UTGARDE_PINNACLE_LOWER_LEVEL] = {{-1,-1}}},
|
||||
},
|
||||
[192945] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.UTGARDE_PINNACLE] = {{-1,-1}},[zoneIDs.UTGARDE_PINNACLE_LOWER_LEVEL] = {{-1,-1}}},
|
||||
},
|
||||
[193004] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN] = {{57.85,74.37},{59.35,71.77},{58.08,70.64}}},
|
||||
},
|
||||
[193051] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.HADRONOXS_LAIR] = {{-1,-1}},[zoneIDs.AZJOL_NERUB] = {{-1,-1}}},
|
||||
},
|
||||
[193052] = {
|
||||
[objectKeys.name] = "Portal to Orgrimmar",
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_PLAGUELANDS]={{84.55,50.45}}},
|
||||
},
|
||||
[193053] = {
|
||||
[objectKeys.name] = "Portal to Stormwind",
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_PLAGUELANDS]={{83.66,51.34}}},
|
||||
},
|
||||
[193057] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.AHNKAHET_THE_OLD_KINGDOM] = {{12.29,50.82},{-1,-1}}},
|
||||
},
|
||||
[193059] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.UTGARDE_KEEP_UPPER_LEVEL] = {{-1,-1}},[zoneIDs.UTGARDE_KEEP_MIDDLE_LEVEL] = {{-1,-1}},[zoneIDs.UTGARDE_KEEP] = {{-1,-1}}},
|
||||
},
|
||||
[193091] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN] = {{34.7,66.0}}},
|
||||
},
|
||||
[193092] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN] = {{36.6,67.6}}},
|
||||
},
|
||||
[193580] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN] = {{60.84,63.38},{61.55,63.96},{62.26,63.38}}},
|
||||
},
|
||||
[193597] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_CULLING_OF_STRATHOLME_CITY]={{30.6,46.7}},[zoneIDs.THE_CULLING_OF_STRATHOLME]={{-1,-1}}},
|
||||
},
|
||||
[193603] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.BAND_OF_ALIGNMENT]={{47.6,85.9}},[zoneIDs.THE_OCULUS]={{-1,-1}}},
|
||||
},
|
||||
[193980] = {
|
||||
[objectKeys.name] = "Bloodstained Stone",
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN] = {{49.7,73.4}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ICECROWN,
|
||||
},
|
||||
[193997] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS] = {{55.4,68},{57,65},{58.6,60.3},{60.7,57.5},{62.8,60.1},{63.5,57.9},{65.4,60.8},{68.4,55.7},{68.9,54.8},{69.7,63.1},{71.1,62.4},{72.6,61.9},{75.3,48.5},},},
|
||||
},
|
||||
[194023] = {
|
||||
[objectKeys.name] = "Bloodstained Stone",
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN] = {{49.2,73.9}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ICECROWN,
|
||||
},
|
||||
[194024] = {
|
||||
[objectKeys.name] = "Bloodstained Stone",
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN] = {{48.3,72.8}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ICECROWN,
|
||||
},
|
||||
[194032] = {
|
||||
[objectKeys.questStarts] = {13440},
|
||||
[objectKeys.questEnds] = {13440},
|
||||
},
|
||||
[194033] = {
|
||||
[objectKeys.questStarts] = {13441},
|
||||
[objectKeys.questEnds] = {13441},
|
||||
},
|
||||
[194034] = {
|
||||
[objectKeys.questStarts] = {13450},
|
||||
[objectKeys.questEnds] = {13450},
|
||||
},
|
||||
[194035] = {
|
||||
[objectKeys.questStarts] = {13442},
|
||||
[objectKeys.questEnds] = {13442},
|
||||
},
|
||||
[194036] = {
|
||||
[objectKeys.questStarts] = {13443},
|
||||
[objectKeys.questEnds] = {13443},
|
||||
},
|
||||
[194037] = {
|
||||
[objectKeys.questStarts] = {13451},
|
||||
[objectKeys.questEnds] = {13451},
|
||||
},
|
||||
[194038] = {
|
||||
[objectKeys.questStarts] = {13444},
|
||||
[objectKeys.questEnds] = {13444},
|
||||
},
|
||||
[194039] = {
|
||||
[objectKeys.questStarts] = {13453},
|
||||
[objectKeys.questEnds] = {13453},
|
||||
},
|
||||
[194040] = {
|
||||
[objectKeys.questStarts] = {13445},
|
||||
[objectKeys.questEnds] = {13445},
|
||||
},
|
||||
[194042] = {
|
||||
[objectKeys.questStarts] = {13454},
|
||||
[objectKeys.questEnds] = {13454},
|
||||
},
|
||||
[194043] = {
|
||||
[objectKeys.questStarts] = {13455},
|
||||
[objectKeys.questEnds] = {13455},
|
||||
},
|
||||
[194044] = {
|
||||
[objectKeys.questStarts] = {13446},
|
||||
[objectKeys.questEnds] = {13446},
|
||||
},
|
||||
[194045] = {
|
||||
[objectKeys.questStarts] = {13447},
|
||||
[objectKeys.questEnds] = {13447},
|
||||
},
|
||||
[194046] = {
|
||||
[objectKeys.questStarts] = {13457},
|
||||
[objectKeys.questEnds] = {13457},
|
||||
},
|
||||
[194048] = {
|
||||
[objectKeys.questStarts] = {13458},
|
||||
[objectKeys.questEnds] = {13458},
|
||||
},
|
||||
[194049] = {
|
||||
[objectKeys.questStarts] = {13449},
|
||||
[objectKeys.questEnds] = {13449},
|
||||
},
|
||||
[194056] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13433},
|
||||
[objectKeys.questEnds] = {13433},
|
||||
[objectKeys.spawns] = {[zoneIDs.HOWLING_FJORD]={{58.39,62.79}}}, -- Valgarde
|
||||
[objectKeys.zoneID] = zoneIDs.HOWLING_FJORD,
|
||||
},
|
||||
[194057] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13434},
|
||||
[objectKeys.questEnds] = {13434},
|
||||
[objectKeys.spawns] = {[zoneIDs.HOWLING_FJORD]={{30.81,41.47}}}, -- Westguard Keep
|
||||
[objectKeys.zoneID] = zoneIDs.HOWLING_FJORD,
|
||||
},
|
||||
[194058] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13435},
|
||||
[objectKeys.questEnds] = {13435},
|
||||
[objectKeys.spawns] = {[zoneIDs.HOWLING_FJORD]={{60.5,15.8}}}, -- Fort Wildervar
|
||||
[objectKeys.zoneID] = zoneIDs.HOWLING_FJORD,
|
||||
},
|
||||
[194059] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13436},
|
||||
[objectKeys.questEnds] = {13436},
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA]={{58.56,68.2}}}, -- Valiance Keep
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[194060] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13437},
|
||||
[objectKeys.questEnds] = {13437},
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA]={{57.06,18.77}}}, -- Fizzcrank Airstrip
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[194061] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13438},
|
||||
[objectKeys.questEnds] = {13438},
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT]={{29.33,55.96}}}, -- Stars' Rest
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[194062] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13439},
|
||||
[objectKeys.questEnds] = {13439},
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT]={{77.52,51.51}}}, -- Wintergarde Keep
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[194063] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13448},
|
||||
[objectKeys.questEnds] = {13448},
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS]={{28.84,74.31}}}, -- Frosthold
|
||||
[objectKeys.zoneID] = zoneIDs.STORM_PEAKS,
|
||||
},
|
||||
[194065] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13452},
|
||||
[objectKeys.questEnds] = {13452},
|
||||
[objectKeys.spawns] = {[zoneIDs.HOWLING_FJORD]={{25.45,59.87}}}, -- Kamagua
|
||||
[objectKeys.zoneID] = zoneIDs.HOWLING_FJORD,
|
||||
},
|
||||
[194066] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13456},
|
||||
[objectKeys.questEnds] = {13456},
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT]={{60.1,53.52}}}, -- Wyrmrest Temple
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[194067] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13459},
|
||||
[objectKeys.questEnds] = {13459},
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT]={{48.13,74.86}}}, -- Moa'ki Harbor
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[194068] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13460},
|
||||
[objectKeys.questEnds] = {13460},
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA]={{78.42,49.2}}}, -- Unu'pe
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[194069] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13461},
|
||||
[objectKeys.questEnds] = {13461},
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS]={{41.14,85.92}}}, -- K3
|
||||
[objectKeys.zoneID] = zoneIDs.STORM_PEAKS,
|
||||
},
|
||||
[194070] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13462},
|
||||
[objectKeys.questEnds] = {13462},
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS]={{30.86,37.41}}}, -- Bouldercrag's Refuge
|
||||
[objectKeys.zoneID] = zoneIDs.STORM_PEAKS,
|
||||
},
|
||||
[194073] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13464},
|
||||
[objectKeys.questEnds] = {13464},
|
||||
[objectKeys.spawns] = {[zoneIDs.HOWLING_FJORD]={{49.56,10.81}}}, -- Camp Winterhoof
|
||||
[objectKeys.zoneID] = zoneIDs.HOWLING_FJORD,
|
||||
},
|
||||
[194074] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13465},
|
||||
[objectKeys.questEnds] = {13465},
|
||||
[objectKeys.spawns] = {[zoneIDs.HOWLING_FJORD]={{51.99,66.15}}}, -- New Agamand
|
||||
[objectKeys.zoneID] = zoneIDs.HOWLING_FJORD,
|
||||
},
|
||||
[194075] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13466},
|
||||
[objectKeys.questEnds] = {13466},
|
||||
[objectKeys.spawns] = {[zoneIDs.HOWLING_FJORD]={{78.98,30.9}}}, -- Vengeance Landing
|
||||
[objectKeys.zoneID] = zoneIDs.HOWLING_FJORD,
|
||||
},
|
||||
[194076] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13467},
|
||||
[objectKeys.questEnds] = {13467},
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA]={{76.61,37.33}}}, -- Taunka'le Village
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[194077] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13468},
|
||||
[objectKeys.questEnds] = {13468},
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA]={{41.9,54.56}}}, -- Warsong Hold
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[194078] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13469},
|
||||
[objectKeys.questEnds] = {13469},
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT]={{37.66,46.4}}}, -- Agmar's Hammer
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[194079] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13470},
|
||||
[objectKeys.questEnds] = {13470},
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT]={{76.79,63.13}}}, -- Venomspite
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[194080] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13471},
|
||||
[objectKeys.questEnds] = {13471},
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS]={{67.66,50.57}}}, -- Camp Tunka'lo
|
||||
[objectKeys.zoneID] = zoneIDs.STORM_PEAKS,
|
||||
},
|
||||
[194081] = { -- Candy Bucket
|
||||
[objectKeys.questStarts] = {13474},
|
||||
[objectKeys.questEnds] = {13474},
|
||||
},
|
||||
[194084] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13501},
|
||||
[objectKeys.questEnds] = {13501},
|
||||
[objectKeys.spawns] = {[zoneIDs.BOREAN_TUNDRA]={{49.77,10.61}}}, -- Bor'gorok Outpost
|
||||
[objectKeys.zoneID] = zoneIDs.BOREAN_TUNDRA,
|
||||
},
|
||||
[194092] = { -- Blackened Urn
|
||||
[objectKeys.name] = "Blackened Urn",
|
||||
[objectKeys.spawns] = {[zoneIDs.KARAZHAN]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.KARAZHAN,
|
||||
},
|
||||
[194119] = { -- Candy Bucket
|
||||
[objectKeys.name] = "Candy Bucket",
|
||||
[objectKeys.questStarts] = {13548},
|
||||
[objectKeys.questEnds] = {13548},
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS]={{37.1,49.63}}}, -- Grom'arsh Crash Site
|
||||
[objectKeys.zoneID] = zoneIDs.STORM_PEAKS,
|
||||
},
|
||||
[194123] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS] = {{64.5,46.9}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORM_PEAKS,
|
||||
},
|
||||
[194147] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_UNDERBELLY] = {{33.52,56.26}}},
|
||||
},
|
||||
[194200] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_INNER_SANCTUM_OF_ULDUAR]={{64.1,60.2}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194201] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_INNER_SANCTUM_OF_ULDUAR]={{64.1,60.2}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194313] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_INNER_SANCTUM_OF_ULDUAR]={{70.7,48.5}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194314] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_INNER_SANCTUM_OF_ULDUAR]={{70.7,48.5}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194327] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_INNER_SANCTUM_OF_ULDUAR]={{53,25.4}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194331] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_INNER_SANCTUM_OF_ULDUAR]={{53,25.4}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194463] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS] = {{40.1,60.5},{43.5,54.9},{45,57},{41,54},{39,60},{46.1,61},{46.2,59.2}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORM_PEAKS,
|
||||
},
|
||||
[194481] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.SUNWELL_PLATEAU]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SUNWELL_PLATEAU,
|
||||
},
|
||||
[194555] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_ARCHIVUM]={{15.6,90.3}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194821] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194822] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194957] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_SPARK_OF_IMAGINATION]={{43.7,40.9}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[194958] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_SPARK_OF_IMAGINATION]={{43.7,40.9}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[195036] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_DESCENT_OF_MADNESS]={{57.7,72.6},{59.2,68},{59.2,54.9},{57.2,52.7}},[zoneIDs.ULDUAR]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ULDUAR,
|
||||
},
|
||||
[195309] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.STORM_PEAKS] = {{42.65,58.43},{42.25,60.1},{43.36,60.69},{43.4,57.84},{42.94,56.95},{43.22,55.94},{42.52,55.01},{43.09,54.6},{41.51,53.56},{41.19,52.62},{40.67,53.31},{40.06,52.53},{39.38,53.79},{38.55,53.96},{38.46,55.05},{37.61,56.07},{38.38,58.33},{37.73,59.86},{38.57,61.28},{38.87,60.57},{39.23,61.41},{40.61,60.33},{41.53,60.01},{42.24,60.09},{43.36,60.69},{44.68,59.4},{45.55,59.06},{45.47,60.13},{45.06,60.94},{45.15,61.93},{44.54,61.9},{46,61.18},{46.5,62.41},{46.08,63.36},{46.7,64.01},{47.35,62.49},{47.72,61.55},{46.88,59.91},{46.29,58.52},{45.85,57.6},{45.92,57.02},{45.77,55.82},{42.4,53.88},{43.38,59.28},{43.82,61.93},{46.69,60.7},{45.03,56.98},{45.15,55.61},{45.03,56.96},{43.9,56.55},{43.38,59.28},{44.27,61.01},{46.82,63.05},{44.34,58.48},{46.56,62.92},{38.21,62.04},{38.03,58.85},{37.67,57.9},{38.13,57.05},{39.95,61.25},{38.84,59.57},{40.56,62.92},{39.99,61.76},{39.96,60.23}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORM_PEAKS,
|
||||
},
|
||||
[201590] = {
|
||||
[objectKeys.spawns] = {[4813]={{66.2,59},{70.2,55.2},{68.3,52.1},{-1,-1}}},
|
||||
},
|
||||
[201592] = {
|
||||
[objectKeys.spawns] = {[4813]={{45.76,43.09},{49.18,40.72},{63.89,51.99},{47.4,36.08},{48.26,38.37},{43.1,67.65},{45.82,76.61},{45.12,49.64},{45.51,40.91},{48.7,40.28},{62.34,57.16},{46.55,52.52},{37.62,79.09},{63.72,58.71},{62.55,48.93},{42.18,67.15},{56.28,39.67},{45.72,38.59},{43.46,77.04},{46.95,35.44},{41.91,65.83},{-1,-1}}},
|
||||
},
|
||||
[201742] = { -- Runeforge
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN_CITADEL]={{43,21.9},{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ICECROWN_CITADEL,
|
||||
[objectKeys.questEnds] = {24545},
|
||||
},
|
||||
[201794] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.SUNWELL_PLATEAU]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SUNWELL_PLATEAU,
|
||||
},
|
||||
[201873] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN_CITADEL]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ICECROWN_CITADEL,
|
||||
},
|
||||
[201937] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.DRAGONBLIGHT]={{75.1,20.5}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DRAGONBLIGHT,
|
||||
},
|
||||
[201959] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN_CITADEL_UPPER_SPIRE]={{76.7,73.7}},[zoneIDs.ICECROWN_CITADEL]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ICECROWN_CITADEL_UPPER_SPIRE,
|
||||
},
|
||||
[202080] = {
|
||||
[objectKeys.name] = "Dart's Nest",
|
||||
[objectKeys.spawns] = {[zoneIDs.DUSTWALLOW_MARSH]={{46.4,17.2},{46.6,17.2},{47.9,19},{48,14.5},{48.1,14.2},{49.1,17.3},{49.2,17.5}}},
|
||||
},
|
||||
[202081] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_BARRENS]={{58.5,8.3},{59.5,8.6},{60.3,10.1},{60.7,13.4}}},
|
||||
},
|
||||
[202082] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.UN_GORO_CRATER]={{62,65.2},{62,73.2},{62,73.5},{63,63.2},{68.9,66.6},{69,61.3}}},
|
||||
},
|
||||
[202083] = {
|
||||
[objectKeys.name] = "Razormaw Matriarch's Nest",
|
||||
[objectKeys.spawns] = {[zoneIDs.WETLANDS]={{67.6,30.7},{69.1,31.6},{70,29.1},{71.1,30.9}}},
|
||||
},
|
||||
[202168] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.PIT_OF_SARON]={{59.37,60.48},{45.33,58.72},{43.77,66.77},{55.92,65.86},{55.84,39.13},{56.22,64.93},{58.71,60.9},{55.55,43.2},{53.46,65.12},{47.55,61.06},{41.77,65.25},{52.89,64.84},{49.63,69.36},{61.14,59.63},{60.06,49.25},{55.16,65.87},{55.64,63.33},{62.08,59.4},{54.38,36.42},{60.94,49.22},{55.5,38.28},{55.82,41.31},{60.23,60.09},{54.38,65.36},{50.54,68.04},{58.8,48.69},{48.83,69.23},{61.78,49.56},{38.6,66.65},{37.5,69},{34,70.5},{33.8,68.9},{34.3,65.9},{33.5,63.7},{34.8,61.5},{36.7,61.1},{40.3,55.9},{41,58.1},{42.2,59.5},{42.8,60.5},{45.3,55.8},{43.8,56.7},{42.3,54.5}}},
|
||||
},
|
||||
[202239] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN_CITADEL_DEATHBRINGERS_RISE]={{71.3,30.7}},[zoneIDs.ICECROWN_CITADEL]={{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ICECROWN_CITADEL,
|
||||
},
|
||||
[202240] = {
|
||||
[objectKeys.spawns] = {},
|
||||
},
|
||||
[202336] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.HALLS_OF_REFLECTION]={{84,88.1},{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.HALLS_OF_REFLECTION,
|
||||
},
|
||||
[300213] = {
|
||||
[objectKeys.name] = "Mistwhisper Weather Shrine",
|
||||
[objectKeys.spawns] = {[zoneIDs.SHOLAZAR_BASIN]={{45.4,37.23}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SHOLAZAR_BASIN,
|
||||
},
|
||||
[300224] = {
|
||||
[objectKeys.name] = "Exposed Lifeblood Pillar Crystal",
|
||||
[objectKeys.spawns] = {[zoneIDs.SHOLAZAR_BASIN]={{65.52,59.74}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SHOLAZAR_BASIN,
|
||||
},
|
||||
|
||||
-- Below are fake objects
|
||||
-- These objects are from previous expansions and they need updated coords
|
||||
[410002] = {
|
||||
[objectKeys.name] = "Open the Survival Kit",
|
||||
[objectKeys.spawns] = {[zoneIDs.ORGRIMMAR]={{47.98,45.93},{43.9,54.63},{38.8,36.37},{79.79,31.42},{67.24,20.2},{38.45,86.13},{35.72,86.9},{32.28,35.73}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ORGRIMMAR,
|
||||
},
|
||||
[410003] = {
|
||||
[objectKeys.name] = "Equip a Weapon",
|
||||
[objectKeys.spawns] = {[zoneIDs.ORGRIMMAR]={{47.98,45.93},{43.9,54.63},{38.8,36.37},{79.79,31.42},{67.24,20.2},{38.45,86.13},{35.72,86.9},{32.28,35.73}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ORGRIMMAR,
|
||||
},
|
||||
[410004] = {
|
||||
[objectKeys.name] = "Open the Survival Kit",
|
||||
[objectKeys.spawns] = {[zoneIDs.THUNDER_BLUFF]={{77.15,29.82}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THUNDER_BLUFF,
|
||||
},
|
||||
[410005] = {
|
||||
[objectKeys.name] = "Equip a Weapon",
|
||||
[objectKeys.spawns] = {[zoneIDs.THUNDER_BLUFF]={{77.15,29.82}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THUNDER_BLUFF,
|
||||
},
|
||||
[410006] = {
|
||||
[objectKeys.name] = "Train a Spell at your class trainer",
|
||||
[objectKeys.spawns] = {[zoneIDs.ORGRIMMAR]={{47.98,45.93},{43.9,54.63},{38.8,36.37},{79.79,31.42},{67.24,20.2},{38.45,86.13},{35.72,86.9},{32.28,35.73}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ORGRIMMAR,
|
||||
},
|
||||
[410007] = {
|
||||
[objectKeys.name] = "Train a Spell at your class trainer",
|
||||
[objectKeys.spawns] = {[zoneIDs.THUNDER_BLUFF]={{77.15,29.82}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THUNDER_BLUFF,
|
||||
},
|
||||
[410008] = {
|
||||
[objectKeys.name] = "Spend 5 Talent Points",
|
||||
[objectKeys.spawns] = {[zoneIDs.ORGRIMMAR]={{47.98,45.93},{43.9,54.63},{38.8,36.37},{79.79,31.42},{67.24,20.2},{38.45,86.13},{35.72,86.9},{32.28,35.73}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ORGRIMMAR,
|
||||
},
|
||||
[410009] = {
|
||||
[objectKeys.name] = "Spend 5 Talent Points",
|
||||
[objectKeys.spawns] = {[zoneIDs.THUNDER_BLUFF]={{77.15,29.82}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THUNDER_BLUFF,
|
||||
},
|
||||
[410010] = {
|
||||
[objectKeys.name] = "Open the Survival Kit",
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY]={{49.53,44.6},{80.19,61.26},{48.43,50.22},{39.89,84.19},{49.56,85.8},{36.12,64.42},{67.35,36.25},{80.28,68.58},{67.52,89.42}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORMWIND_CITY,
|
||||
},
|
||||
[410011] = {
|
||||
[objectKeys.name] = "Equip a Weapon",
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY]={{49.53,44.6},{80.19,61.26},{48.43,50.22},{39.89,84.19},{49.56,85.8},{36.12,64.42},{67.35,36.25},{80.28,68.58},{67.52,89.42}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORMWIND_CITY,
|
||||
},
|
||||
[410012] = {
|
||||
[objectKeys.name] = "Train a Spell at your class trainer",
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY]={{49.53,44.6},{80.19,61.26},{48.43,50.22},{39.89,84.19},{49.56,85.8},{36.12,64.42},{67.35,36.25},{80.28,68.58},{67.52,89.42}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORMWIND_CITY,
|
||||
},
|
||||
[410013] = {
|
||||
[objectKeys.name] = "Spend 5 Talent Points",
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY]={{49.53,44.6},{80.19,61.26},{48.43,50.22},{39.89,84.19},{49.56,85.8},{36.12,64.42},{67.35,36.25},{80.28,68.58},{67.52,89.42}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORMWIND_CITY,
|
||||
},
|
||||
|
||||
-- For Wotlk fixes 420001-429999
|
||||
[420001] = {
|
||||
[objectKeys.name] = "Summoning Stone",
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN]={{53.77,33.60}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ICECROWN,
|
||||
},
|
||||
[420002] = {
|
||||
[objectKeys.name] = "Blood Ritual Altar",
|
||||
[objectKeys.spawns] = {[zoneIDs.ZUL_GURUB] = {{-1,-1}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ZUL_GURUB,
|
||||
},
|
||||
-- TODO: Reuse 420003 - 420032
|
||||
[420033] = {
|
||||
[objectKeys.name] = "Drakuru's Brazier",
|
||||
[objectKeys.spawns] = {[zoneIDs.GRIZZLY_HILLS]={{17.42,36.36}}}, -- Zeb'Halak
|
||||
[objectKeys.zoneID] = zoneIDs.GRIZZLY_HILLS,
|
||||
},
|
||||
[420034] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Orgrimmar
|
||||
[objectKeys.spawns] = {[zoneIDs.DUROTAR]={{40.13,15.71}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DUROTAR,
|
||||
},
|
||||
[420035] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Ambermill
|
||||
[objectKeys.spawns] = {[zoneIDs.SILVERPINE_FOREST]={{54.75,61.33}}},
|
||||
[objectKeys.zoneID] = zoneIDs.SILVERPINE_FOREST,
|
||||
},
|
||||
[420036] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Elwynn
|
||||
[objectKeys.spawns] = {[zoneIDs.ELWYNN_FOREST]={{29.19,65.44}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ELWYNN_FOREST,
|
||||
},
|
||||
[420037] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Darkshore
|
||||
[objectKeys.spawns] = {[zoneIDs.DARKSHORE]={{42.47,79.46}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DARKSHORE,
|
||||
},
|
||||
[420038] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Hillsbrad
|
||||
[objectKeys.spawns] = {[zoneIDs.HILLSBRAD_FOOTHILLS]={{28.22,37.63}}},
|
||||
[objectKeys.zoneID] = zoneIDs.HILLSBRAD_FOOTHILLS,
|
||||
},
|
||||
[420039] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Theramore
|
||||
[objectKeys.spawns] = {[zoneIDs.DUSTWALLOW_MARSH]={{60.83,38.49}}},
|
||||
[objectKeys.zoneID] = zoneIDs.DUSTWALLOW_MARSH,
|
||||
},
|
||||
[420040] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Aerie Peak
|
||||
[objectKeys.spawns] = {[zoneIDs.THE_HINTERLANDS]={{23.44,53.68}}},
|
||||
[objectKeys.zoneID] = zoneIDs.THE_HINTERLANDS,
|
||||
},
|
||||
[420041] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Everlook
|
||||
[objectKeys.spawns] = {[zoneIDs.WINTERSPRING]={{64.67,37.36}}},
|
||||
[objectKeys.zoneID] = zoneIDs.WINTERSPRING,
|
||||
},
|
||||
[420042] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Shattrath
|
||||
[objectKeys.spawns] = {[zoneIDs.TEROKKAR_FOREST]={{41.46,22.52}}},
|
||||
[objectKeys.zoneID] = zoneIDs.TEROKKAR_FOREST,
|
||||
},
|
||||
[420043] = {
|
||||
[objectKeys.name] = "Chemical Wagon", -- Crystalsong
|
||||
[objectKeys.spawns] = {[zoneIDs.CRYSTALSONG_FOREST]={{50.5,50.11},{46.44,50.86},{48.46,51.01},{49.09,47.62}}},
|
||||
[objectKeys.zoneID] = zoneIDs.CRYSTALSONG_FOREST,
|
||||
},
|
||||
[420044] = {
|
||||
[objectKeys.name] = "Spend 5 Talent Points",
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_PLAGUELANDS]={{80.29,48.02},{80.91,43.78},{83.74,44.58}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_PLAGUELANDS,
|
||||
},
|
||||
[420045] = {
|
||||
[objectKeys.name] = "Open the Survival Kit",
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_PLAGUELANDS]={{80.29,48.02},{80.91,43.78},{83.74,44.58}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_PLAGUELANDS,
|
||||
},
|
||||
[420046] = {
|
||||
[objectKeys.name] = "Equip a Weapon",
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_PLAGUELANDS]={{80.29,48.02},{80.91,43.78},{83.74,44.58}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_PLAGUELANDS,
|
||||
},
|
||||
[420047] = {
|
||||
[objectKeys.name] = "Train a Spell at your class trainer",
|
||||
[objectKeys.spawns] = {[zoneIDs.EASTERN_PLAGUELANDS]={{80.29,48.02},{80.91,43.78},{83.74,44.58}}},
|
||||
[objectKeys.zoneID] = zoneIDs.EASTERN_PLAGUELANDS,
|
||||
},
|
||||
[420048] = {
|
||||
[objectKeys.name] = "Scourge Enclosure",
|
||||
[objectKeys.spawns] = {[zoneIDs.ZUL_DRAK]={{19.94,56.12}}},
|
||||
[objectKeys.zoneID] = zoneIDs.ZUL_DRAK,
|
||||
},
|
||||
[420049] = {
|
||||
[objectKeys.name] = "Drakuru's Brazier",
|
||||
[objectKeys.spawns] = {[zoneIDs.GRIZZLY_HILLS]={{71.74,26.2}}},
|
||||
[objectKeys.zoneID] = zoneIDs.GRIZZLY_HILLS,
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
-- This should allow manual fix for object availability
|
||||
function QuestieWotlkObjectFixes:LoadFactionFixes()
|
||||
local objectKeys = QuestieDB.objectKeys
|
||||
local zoneIDs = ZoneDB.zoneIDs
|
||||
|
||||
local objectFixesHorde = {
|
||||
[186189] = { -- Complimentary Brewfest Sampler
|
||||
[objectKeys.spawns] = {[zoneIDs.DUROTAR]={{45.27,13.53},{45.27,13.54},{45.28,13.55},{45.26,13.53},{45.08,16.66},{45.08,16.68},{45.1,16.68},{45.1,16.65},{45.27,13.53},{45.28,17.47},{45.28,17.45},{44.86,17.42},{44.87,17.41},{45.16,17.52},{45.19,17.51},{45.17,17.49},{45.18,17.48},{45.26,17.46},{45.27,17.48},{44.85,17.4},{44.87,17.43},{44.53,16.53},{44.52,16.56},{44.51,16.53},{44.53,16.56},{43.97,17.98},{44.22,18.01},{43.96,17.98},{44.21,17.99},{43.61,17.3},{43.62,17.32},{43.61,17.28},{43.96,17.94},{43.63,17.3},{44.19,18.01},{44.2,18.0},{43.98,17.95},{43.86,16.83},{43.84,16.84},{43.85,16.8},{43.83,16.82},{43.63,17.3}}},
|
||||
},
|
||||
[201873] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN_CITADEL_RAMPART_OF_SKULLS]={{47.9,77.3}},[zoneIDs.ICECROWN_CITADEL]={{-1,-1}}},
|
||||
},
|
||||
}
|
||||
|
||||
local objectFixesAlliance = {
|
||||
[103574] = { -- Filled Containment Coffer
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY]={{51.32,92.34},{50.83,92.63},{51.61,94.5},{51.21,95.73},{50.99,95.58},{51.3,93.34}}},
|
||||
[objectKeys.zoneID] = zoneIDs.STORMWIND_CITY,
|
||||
},
|
||||
[105174] = { -- Chest of Containment Coffers
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY]={{49.45,85.48},{49.51,85.6},{49.5,85.55},{49.56,85.58}}},
|
||||
},
|
||||
[105175] = { -- Cantation of Manifestation
|
||||
[objectKeys.spawns] = {[zoneIDs.STORMWIND_CITY]={{49.64,85.44},{49.6,85.36},{49.61,85.42}}},
|
||||
},
|
||||
[186189] = { -- Complimentary Brewfest Sampler
|
||||
[objectKeys.spawns] = {[zoneIDs.DUN_MOROGH]={{46.92,40.66},{46.92,40.69},{46.94,40.65},{47.06,40.06},{47.07,40.08},{47.56,39.68},{47.56,39.66},{47.68,39.65},{47.57,39.66},{47.67,39.66},{47.69,39.66},{47.58,39.69},{47.68,39.67},{47.58,39.67},{47.67,39.65},{48.2,39.01},{48.18,39.03},{47.57,39.66},{48.2,39.05},{47.58,39.69},{47.58,39.67},{47.69,39.66},{47.56,39.66},{48.2,39.05},{47.68,39.67},{48.2,39.03},{47.58,39.69},{48.58,39.91},{48.56,39.92},{48.57,39.91},{49.41,38.44},{49.39,38.45},{48.51,38.24},{48.53,38.24},{49.14,39.69},{49.41,38.47},{49.14,39.72},{49.16,39.68},{48.78,38.19},{48.79,38.16},{48.77,38.16},{49.4,38.48},{49.17,39.71},{48.79,38.18},{48.55,38.25},{47.68,39.67},{48.57,39.91},{46.94,40.65},{48.2,39.03},{48.77,38.16},{48.18,39.03},{48.2,39.05},{48.21,39.04},{49.4,38.48},{48.18,39.03},{47.58,39.69},{48.2,39.03},{47.58,39.67},{47.56,39.68},{48.2,39.05},{48.21,39.04},{49.16,39.68},{52.65,35.28},{52.63,35.29}}},
|
||||
},
|
||||
[201873] = {
|
||||
[objectKeys.spawns] = {[zoneIDs.ICECROWN_CITADEL_RAMPART_OF_SKULLS]={{42.55,76.8}},[zoneIDs.ICECROWN_CITADEL]={{-1,-1}}},
|
||||
},
|
||||
}
|
||||
|
||||
if UnitFactionGroup("Player") == "Horde" then
|
||||
return objectFixesHorde
|
||||
else
|
||||
return objectFixesAlliance
|
||||
end
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,778 +0,0 @@
|
||||
---@class QuestieItemDropCorrections
|
||||
local QuestieItemDropCorrections = QuestieLoader:CreateModule("QuestieItemDropCorrections")
|
||||
-------------------------
|
||||
--Import modules.
|
||||
-------------------------
|
||||
---@type DropDB
|
||||
local DropDB = QuestieLoader:ImportModule("DropDB")
|
||||
|
||||
local DropKeys = DropDB.correctionKeys
|
||||
|
||||
-- These tables contain manual drop corrections.
|
||||
--
|
||||
-- Use the following format:
|
||||
-- [itemID] = { -- Item Name
|
||||
-- [npcID] = 80.0,
|
||||
-- }
|
||||
--
|
||||
-- This example would be an 80% drop rate.
|
||||
--
|
||||
-- Corrections propagate up to the current expansion. For instance, if you make a correction in Era, that
|
||||
-- correction will be loaded in MoP unless an expansion after Era made a different correction for the same ID.
|
||||
--
|
||||
-- This is the same way our normal database corrections system behaves as well.
|
||||
--
|
||||
-- You can also use reference corrections. For instance:
|
||||
--
|
||||
-- [itemID] = { -- Item Name
|
||||
-- [npcID] = DropDB.correctionKeys.WOWHEAD,
|
||||
-- }
|
||||
--
|
||||
-- will point to the currently loaded Wowhead data for that item:NPC pair, if it exists.
|
||||
-- Using a reference correction in an earlier expansion will propagate to later ones, pointing to their own DBs.
|
||||
-- For instance, if you put the above example into Era corrections, but loaded up MoP, it would show MoP Wowhead data,
|
||||
-- regardless of whatever data exists in the MoP pserver DB.
|
||||
|
||||
QuestieItemDropCorrections.Era = {
|
||||
[725] = { -- Gnoll Paw
|
||||
[98] = DropKeys.WOWHEAD,
|
||||
[117] = DropKeys.WOWHEAD,
|
||||
[123] = DropKeys.WOWHEAD,
|
||||
[124] = DropKeys.WOWHEAD,
|
||||
[125] = DropKeys.WOWHEAD,
|
||||
[452] = DropKeys.WOWHEAD,
|
||||
[453] = DropKeys.WOWHEAD,
|
||||
[500] = DropKeys.WOWHEAD,
|
||||
[501] = DropKeys.WOWHEAD,
|
||||
[506] = DropKeys.WOWHEAD,
|
||||
[1065] = DropKeys.WOWHEAD,
|
||||
[1426] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[829] = { -- Red Leather Bandana
|
||||
[95] = DropKeys.WOWHEAD,
|
||||
[502] = DropKeys.WOWHEAD,
|
||||
[504] = DropKeys.WOWHEAD,
|
||||
[589] = DropKeys.WOWHEAD,
|
||||
[590] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[884] = { -- Ghoul Rib
|
||||
[3] = DropKeys.WOWHEAD,
|
||||
[210] = DropKeys.WOWHEAD,
|
||||
[570] = DropKeys.WOWHEAD,
|
||||
[604] = DropKeys.WOWHEAD,
|
||||
[948] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[1129] = { -- Ghoul Fang
|
||||
[3] = DropKeys.WOWHEAD,
|
||||
[210] = DropKeys.WOWHEAD,
|
||||
[570] = DropKeys.WOWHEAD,
|
||||
[604] = DropKeys.WOWHEAD,
|
||||
[948] = DropKeys.WOWHEAD,
|
||||
[1270] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[1130] = { -- Vial of Spider Venom
|
||||
[217] = DropKeys.WOWHEAD,
|
||||
[539] = DropKeys.WOWHEAD,
|
||||
[569] = DropKeys.WOWHEAD,
|
||||
[574] = DropKeys.WOWHEAD,
|
||||
[930] = DropKeys.WOWHEAD,
|
||||
[949] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[1468] = { -- Murloc Fin
|
||||
[422] = DropKeys.WOWHEAD,
|
||||
[544] = DropKeys.WOWHEAD,
|
||||
[545] = DropKeys.WOWHEAD,
|
||||
[548] = DropKeys.WOWHEAD,
|
||||
[578] = DropKeys.WOWHEAD,
|
||||
[1024] = DropKeys.WOWHEAD,
|
||||
[1025] = DropKeys.WOWHEAD,
|
||||
[1026] = DropKeys.WOWHEAD,
|
||||
[1027] = DropKeys.WOWHEAD,
|
||||
[1028] = DropKeys.WOWHEAD,
|
||||
[1029] = DropKeys.WOWHEAD,
|
||||
[1083] = DropKeys.WOWHEAD,
|
||||
[1259] = DropKeys.WOWHEAD,
|
||||
[1418] = DropKeys.WOWHEAD,
|
||||
[3654] = DropKeys.WOWHEAD,
|
||||
[3737] = DropKeys.WOWHEAD,
|
||||
[3739] = DropKeys.WOWHEAD,
|
||||
[3740] = DropKeys.WOWHEAD,
|
||||
[3742] = DropKeys.WOWHEAD,
|
||||
[4818] = DropKeys.WOWHEAD,
|
||||
[4819] = DropKeys.WOWHEAD,
|
||||
[4820] = DropKeys.WOWHEAD,
|
||||
[6243] = DropKeys.WOWHEAD,
|
||||
[10643] = DropKeys.WOWHEAD,
|
||||
[14270] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[1519] = { -- Bloodscalp Ear
|
||||
[587] = DropKeys.WOWHEAD,
|
||||
[588] = DropKeys.WOWHEAD,
|
||||
[595] = DropKeys.WOWHEAD,
|
||||
[597] = DropKeys.WOWHEAD,
|
||||
[660] = DropKeys.WOWHEAD,
|
||||
[671] = DropKeys.WOWHEAD,
|
||||
[694] = DropKeys.WOWHEAD,
|
||||
[697] = DropKeys.WOWHEAD,
|
||||
[699] = DropKeys.WOWHEAD,
|
||||
[701] = DropKeys.WOWHEAD,
|
||||
[702] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[1598] = { -- Rot Blossom
|
||||
[202] = DropKeys.WOWHEAD,
|
||||
[531] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[1894] = { -- Miners' Union Card
|
||||
[623] = DropKeys.WOWHEAD,
|
||||
[624] = DropKeys.WOWHEAD,
|
||||
[625] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[2378] = { -- Skeleton Finger
|
||||
[48] = DropKeys.WOWHEAD,
|
||||
[202] = DropKeys.WOWHEAD,
|
||||
[203] = DropKeys.WOWHEAD,
|
||||
[531] = DropKeys.WOWHEAD,
|
||||
[785] = DropKeys.WOWHEAD,
|
||||
[787] = DropKeys.WOWHEAD,
|
||||
[1110] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[2633] = { -- Jungle Remedy
|
||||
[940] = DropKeys.WOWHEAD,
|
||||
[941] = DropKeys.WOWHEAD,
|
||||
[942] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[2676] = { -- Shimmerweed
|
||||
[1397] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[2843] = { -- Dirty Knucklebones
|
||||
[2252] = DropKeys.WOWHEAD,
|
||||
[2253] = DropKeys.WOWHEAD,
|
||||
[2254] = DropKeys.WOWHEAD,
|
||||
[2255] = DropKeys.WOWHEAD,
|
||||
[2256] = DropKeys.WOWHEAD,
|
||||
[2287] = DropKeys.WOWHEAD,
|
||||
[2416] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[3297] = { -- Fel Moss
|
||||
[1988] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[3348] = { -- Giant Crocolisk Skin
|
||||
[2089] = 100,
|
||||
},
|
||||
[3476] = { -- Gray Bear Tongue
|
||||
[2351] = DropKeys.WOWHEAD,
|
||||
[2354] = DropKeys.WOWHEAD,
|
||||
[2356] = DropKeys.WOWHEAD,
|
||||
[14280] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[3477] = { -- Creeper Ichor
|
||||
[2348] = DropKeys.WOWHEAD,
|
||||
[2349] = DropKeys.WOWHEAD,
|
||||
[2350] = DropKeys.WOWHEAD,
|
||||
[14279] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[3692] = { -- Hillsbrad Human Skull
|
||||
[232] = DropKeys.WOWHEAD,
|
||||
[2244] = DropKeys.WOWHEAD,
|
||||
[2260] = DropKeys.WOWHEAD,
|
||||
[2261] = DropKeys.WOWHEAD,
|
||||
[2264] = DropKeys.WOWHEAD,
|
||||
[2265] = DropKeys.WOWHEAD,
|
||||
[2266] = DropKeys.WOWHEAD,
|
||||
[2267] = DropKeys.WOWHEAD,
|
||||
[2268] = DropKeys.WOWHEAD,
|
||||
[2269] = DropKeys.WOWHEAD,
|
||||
[2270] = DropKeys.WOWHEAD,
|
||||
[2305] = DropKeys.WOWHEAD,
|
||||
[2335] = DropKeys.WOWHEAD,
|
||||
[2360] = DropKeys.WOWHEAD,
|
||||
[2387] = DropKeys.WOWHEAD,
|
||||
[2403] = DropKeys.WOWHEAD,
|
||||
[2404] = DropKeys.WOWHEAD,
|
||||
[2427] = DropKeys.WOWHEAD,
|
||||
[2428] = DropKeys.WOWHEAD,
|
||||
[2448] = DropKeys.WOWHEAD,
|
||||
[2449] = DropKeys.WOWHEAD,
|
||||
[2450] = DropKeys.WOWHEAD,
|
||||
[2451] = DropKeys.WOWHEAD,
|
||||
[2503] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[3714] = { -- Worn Stone Token
|
||||
[2271] = DropKeys.WOWHEAD,
|
||||
[2272] = DropKeys.WOWHEAD,
|
||||
[2358] = DropKeys.WOWHEAD,
|
||||
[2415] = DropKeys.WOWHEAD,
|
||||
[2628] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[3917] = { -- Singing Blue Crystal
|
||||
[674] = DropKeys.WOWHEAD,
|
||||
[675] = DropKeys.WOWHEAD,
|
||||
[676] = DropKeys.WOWHEAD,
|
||||
[677] = DropKeys.WOWHEAD,
|
||||
[4723] = DropKeys.WOWHEAD,
|
||||
[14492] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[3918] = { -- Singing Crystal Shard
|
||||
[688] = DropKeys.WOWHEAD,
|
||||
[689] = DropKeys.WOWHEAD,
|
||||
[690] = DropKeys.WOWHEAD,
|
||||
[1550] = DropKeys.WOWHEAD,
|
||||
[1551] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[4105] = { -- Elder Crocolisk Skin
|
||||
[2635] = 100.0,
|
||||
},
|
||||
[4627] = { -- Large Stone Slab
|
||||
[92] = 100,
|
||||
},
|
||||
[4628] = { -- Bracers of Rock Binding
|
||||
[2736] = 20,
|
||||
},
|
||||
[5026] = { -- Fire Tar
|
||||
[3267] = 75,
|
||||
[3268] = 75,
|
||||
[3269] = 75,
|
||||
[3271] = 75,
|
||||
},
|
||||
[5055] = { -- Intact Raptor Horn
|
||||
[3256] = DropKeys.WOWHEAD,
|
||||
[3257] = DropKeys.WOWHEAD,
|
||||
[5842] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[5078] = { -- Theramore Medal
|
||||
[3385] = 100,
|
||||
[3386] = 100,
|
||||
[3393] = 100,
|
||||
[3454] = 100,
|
||||
[3455] = 100,
|
||||
},
|
||||
[5085] = { -- Bristleback Quilboar Tusk
|
||||
[3258] = 100,
|
||||
[3260] = 100,
|
||||
[3261] = 100,
|
||||
[3263] = 100,
|
||||
},
|
||||
[5170] = { -- Mossy Tumor
|
||||
[2027] = DropKeys.WOWHEAD,
|
||||
[2029] = DropKeys.WOWHEAD,
|
||||
[2030] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[5233] = { -- Stone of Relu
|
||||
[1020] = 1.5,
|
||||
[1021] = 1.5,
|
||||
[1022] = 1.5,
|
||||
[1023] = 1.5,
|
||||
},
|
||||
[5366] = { -- Glowing Soul Gem
|
||||
[3725] = DropKeys.WOWHEAD,
|
||||
[3727] = DropKeys.WOWHEAD,
|
||||
[3728] = DropKeys.WOWHEAD,
|
||||
[3730] = DropKeys.WOWHEAD,
|
||||
[3879] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[5669] = { -- Dust Devil Debris
|
||||
[832] = 50.0, -- not 100%, not 5%. Could be more than 50%
|
||||
},
|
||||
[5801] = { -- Kraul Guano
|
||||
[4538] = 100,
|
||||
[4539] = 100,
|
||||
},
|
||||
[5867] = { -- Etched Phial
|
||||
-- Most comments on Wowhead are from players who didn't realize you have to be on the quest for it to drop.
|
||||
-- That being said, cmangos claims 100% and it's definitely not 100%. Didn't sit farming them all day, but farmed a few and seems around 20%. -ytt
|
||||
[4054] = 20,
|
||||
},
|
||||
[6250] = { -- Felhound Brain
|
||||
[4678] = 100,
|
||||
[4681] = 100,
|
||||
[4685] = 100,
|
||||
},
|
||||
[6251] = { -- Nether Wing
|
||||
[4679] = 100,
|
||||
[4682] = 100,
|
||||
[4684] = 100,
|
||||
},
|
||||
[6252] = { -- Doomwarder Blood
|
||||
[4680] = 100,
|
||||
[5760] = 100,
|
||||
[14226] = 100,
|
||||
},
|
||||
[6257] = { -- Roc Gizzard
|
||||
[5428] = DropKeys.WOWHEAD,
|
||||
[5429] = DropKeys.WOWHEAD,
|
||||
[5430] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[6258] = { -- Ironfur Liver
|
||||
[5268] = DropKeys.WOWHEAD,
|
||||
[5272] = DropKeys.WOWHEAD,
|
||||
[5274] = DropKeys.WOWHEAD,
|
||||
[5352] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[6259] = { -- Groddoc Liver
|
||||
[5260] = DropKeys.WOWHEAD,
|
||||
[5262] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[6443] = { -- Deviate Hide
|
||||
[3630] = DropKeys.WOWHEAD,
|
||||
[3631] = DropKeys.WOWHEAD,
|
||||
[3632] = DropKeys.WOWHEAD,
|
||||
[3633] = DropKeys.WOWHEAD,
|
||||
[3634] = DropKeys.WOWHEAD,
|
||||
[3636] = DropKeys.WOWHEAD,
|
||||
[3637] = DropKeys.WOWHEAD,
|
||||
[3641] = DropKeys.WOWHEAD,
|
||||
[3653] = DropKeys.WOWHEAD,
|
||||
[3654] = DropKeys.WOWHEAD,
|
||||
[3674] = DropKeys.WOWHEAD,
|
||||
[5048] = DropKeys.WOWHEAD,
|
||||
[5053] = DropKeys.WOWHEAD,
|
||||
[5056] = DropKeys.WOWHEAD,
|
||||
[5755] = DropKeys.WOWHEAD,
|
||||
[5756] = DropKeys.WOWHEAD,
|
||||
[5761] = DropKeys.WOWHEAD,
|
||||
[5762] = DropKeys.WOWHEAD,
|
||||
[5775] = DropKeys.WOWHEAD,
|
||||
[5912] = DropKeys.WOWHEAD,
|
||||
[8886] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[6652] = { -- Reagent Pouch
|
||||
[3199] = 75,
|
||||
},
|
||||
[6915] = { -- Large Soran'ruk Fragment
|
||||
[3855] = 20, -- empyrical value
|
||||
},
|
||||
[7267] = { -- Pristine Spider Silk
|
||||
[930] = 18,
|
||||
[949] = 100,
|
||||
},
|
||||
[7291] = { -- Infernal Orb
|
||||
[4668] = 100,
|
||||
},
|
||||
[9369] = { -- Iridescent Sprite Darter Wing
|
||||
-- this one is complicated; they drop 0-2, on average you get more than 1 per kill, but they occasionally don't drop any so 100% isn't accurate
|
||||
[5278] = 95,
|
||||
[7997] = 95,
|
||||
},
|
||||
[10458] = { -- Prayer to Elune
|
||||
[5860] = 20, -- empyrical value
|
||||
[5861] = 20, -- empyrical value
|
||||
[5862] = 20, -- empyrical value
|
||||
[8419] = 20, -- empyrical value
|
||||
},
|
||||
[10552] = { -- Symbol of Ragnaros
|
||||
[5860] = DropKeys.WOWHEAD,
|
||||
[5861] = DropKeys.WOWHEAD,
|
||||
[5862] = DropKeys.WOWHEAD,
|
||||
[8419] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[10639] = { -- Hyacinth Mushroom
|
||||
[1988] = 80,
|
||||
},
|
||||
[11405] = { -- Giant Silver Vein
|
||||
[6146] = 100,
|
||||
[6147] = 100,
|
||||
[6148] = 100,
|
||||
},
|
||||
[11478] = { -- Un'Goro Gorilla Pelt
|
||||
[6514] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[11479] = { -- Un'Goro Stomper Pelt
|
||||
[6513] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[11480] = { -- Un'Goro Thunderer Pelt
|
||||
[6516] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[11503] = { -- Blood Amber
|
||||
[7100] = 100,
|
||||
[7101] = 100,
|
||||
[7104] = 100,
|
||||
},
|
||||
[11829] = { -- Un'Goro Ash
|
||||
[6520] = 100.0,
|
||||
[6521] = 100.0,
|
||||
[9376] = 10.0,
|
||||
[14460] = 100.0,
|
||||
[14461] = 10.0,
|
||||
},
|
||||
[12335] = { -- Gemstone of Smolderthorn
|
||||
[9237] = 10,
|
||||
},
|
||||
[12336] = { -- Gemstone of Spirestone
|
||||
[9196] = 10,
|
||||
},
|
||||
[12337] = { -- Gemstone of Bloodaxe
|
||||
[9568] = 10,
|
||||
},
|
||||
[12524] = { -- Blue-feathered Amulet
|
||||
[7452] = 50,
|
||||
[7453] = 50,
|
||||
[7454] = 50,
|
||||
},
|
||||
[12733] = { -- Sacred Frostsaber Meat
|
||||
[7430] = 10,
|
||||
[7431] = 10,
|
||||
[7432] = 10,
|
||||
[7433] = 10,
|
||||
[7434] = 10,
|
||||
},
|
||||
[15849] = { -- Ghost-o-plasm
|
||||
[11560] = 100,
|
||||
},
|
||||
[15852] = { -- Kodo Horn
|
||||
[3234] = 100,
|
||||
[3236] = 100,
|
||||
},
|
||||
[15881] = { -- Rackmore's Golden Key
|
||||
[4711] = DropKeys.WOWHEAD,
|
||||
[4712] = DropKeys.WOWHEAD,
|
||||
[4713] = DropKeys.WOWHEAD,
|
||||
[4714] = DropKeys.WOWHEAD,
|
||||
[4715] = DropKeys.WOWHEAD,
|
||||
[4716] = DropKeys.WOWHEAD,
|
||||
[4718] = DropKeys.WOWHEAD,
|
||||
[4719] = DropKeys.WOWHEAD,
|
||||
[14229] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[17309] = { -- Discordant Bracers
|
||||
[8519] = 100,
|
||||
[8520] = 100,
|
||||
[8521] = 100,
|
||||
[8522] = 100,
|
||||
},
|
||||
[17761] = { -- Gem of the First Khan
|
||||
[12240] = 100,
|
||||
},
|
||||
[17762] = { -- Gem of the Second Khan
|
||||
[12239] = 100,
|
||||
},
|
||||
[17763] = { -- Gem of the Third Khan
|
||||
[12241] = 100,
|
||||
},
|
||||
[17764] = { -- Gem of the Fourth Khan
|
||||
[12242] = 100,
|
||||
},
|
||||
[17765] = { -- Gem of the Fifth Khan
|
||||
[12243] = 100,
|
||||
},
|
||||
[18956] = { -- Miniaturization Residue
|
||||
[5357] = 100,
|
||||
[5358] = 100,
|
||||
[5359] = 100,
|
||||
[5360] = 100,
|
||||
[5361] = 100,
|
||||
[14603] = 100,
|
||||
[14604] = 100,
|
||||
[14638] = 100,
|
||||
[14639] = 100,
|
||||
[14640] = 100,
|
||||
},
|
||||
[20028] = { -- Glittering Dust
|
||||
[6198] = 25,
|
||||
[6199] = 25,
|
||||
},
|
||||
[20029] = { -- Enchanted Coral
|
||||
[6195] = 25,
|
||||
},
|
||||
[20373] = { -- Stonelash Scorpid Stinger
|
||||
[11735] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[20374] = { -- Stonelash Pincer Stinger
|
||||
[11736] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[20375] = { -- Stonelash Flayer Stinger
|
||||
[11737] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[20376] = { -- Sand Skitterer Fang
|
||||
[11738] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[20377] = { -- Rock Stalker Fang
|
||||
[11739] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[21108] = { -- Draconic for Dummies (Chapter VI)
|
||||
[10184] = 100,
|
||||
},
|
||||
[21110] = { -- Draconic for Dummies (Chapter VIII)
|
||||
[11502] = 100,
|
||||
},
|
||||
[190232] = { -- Withered Scarf
|
||||
[3782] = 5, -- super bad drop rate, wowhead shows 3%. it's somewhere between 5-10%
|
||||
[3784] = 5, -- super bad drop rate, wowhead shows 3%. it's somewhere between 5-10%
|
||||
},
|
||||
}
|
||||
|
||||
QuestieItemDropCorrections.Tbc = { -- Corrections for Old World data should only be put here if they change going from Era->TBC! Otherwise, put them in the Era section!
|
||||
[2633] = { -- Jungle Remedy
|
||||
[937] = DropKeys.WOWHEAD,
|
||||
[940] = DropKeys.WOWHEAD,
|
||||
[941] = DropKeys.WOWHEAD,
|
||||
[942] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[6487] = { -- Vile Familiar Head
|
||||
[3101] = 100, -- TO DO double check this. strange that it's TBC only
|
||||
},
|
||||
[12334] = { -- Frostmaul Shards
|
||||
[7428] = 20,
|
||||
[7429] = 20,
|
||||
[10198] = 100,
|
||||
},
|
||||
[12335] = { -- Gemstone of Smolderthorn
|
||||
[9237] = 100,
|
||||
},
|
||||
[12336] = { -- Gemstone of Spirestone
|
||||
[9196] = 100,
|
||||
},
|
||||
[12337] = { -- Gemstone of Bloodaxe
|
||||
[9568] = 100,
|
||||
},
|
||||
[20934] = { -- Wraith Essence
|
||||
[15273] = 100,
|
||||
},
|
||||
[22934] = { -- Lasher Sample
|
||||
[16517] = 76,
|
||||
},
|
||||
[23336] = { -- Helboar Blood Sample
|
||||
[16880] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[23614] = { -- Red Snapper
|
||||
[17102] = 100,
|
||||
},
|
||||
[23676] = { -- Moongraze Stag Tenderloin
|
||||
[17200] = 100,
|
||||
[17201] = 100,
|
||||
},
|
||||
[23706] = { -- Arcane Fragment
|
||||
[16339] = 100,
|
||||
},
|
||||
[23733] = { -- Ritual Torch
|
||||
[17189] = 80,
|
||||
},
|
||||
[23849] = { -- Stillpine Grain
|
||||
[17190] = DropKeys.WOWHEAD,
|
||||
[17191] = DropKeys.WOWHEAD,
|
||||
[17192] = DropKeys.WOWHEAD,
|
||||
[17475] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[24156] = { -- Filled Shimmering Vessel
|
||||
[17544] = 100,
|
||||
},
|
||||
[24226] = { -- Blood Knight Insignia
|
||||
[17832] = 100,
|
||||
},
|
||||
[24279] = { -- Vicious Teromoth Sample
|
||||
[18437] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[24372] = { -- Diaphanous Wing
|
||||
[18132] = DropKeys.WOWHEAD,
|
||||
[18133] = DropKeys.WOWHEAD,
|
||||
[18283] = DropKeys.WOWHEAD,
|
||||
[20197] = DropKeys.WOWHEAD,
|
||||
[20198] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[24374] = { -- Eel Filet
|
||||
[18138] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[24426] = { -- Sporebat Eye
|
||||
[18128] = DropKeys.WOWHEAD,
|
||||
[18129] = DropKeys.WOWHEAD,
|
||||
[18280] = DropKeys.WOWHEAD,
|
||||
[20387] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[24427] = { -- Fen Strider Tentacle
|
||||
[18134] = DropKeys.WOWHEAD,
|
||||
[18281] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[24473] = { -- Enraged Crusher Core
|
||||
[18062] = 100,
|
||||
},
|
||||
[24485] = { -- Marshlight Bleeder Venom
|
||||
[18133] = DropKeys.WOWHEAD,
|
||||
[20198] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[25461] = { -- Book of Forgotten Names
|
||||
[18472] = 100,
|
||||
},
|
||||
[25462] = { -- Tome of Dusk
|
||||
[16807] = 100,
|
||||
},
|
||||
[25463] = { -- Pair of Ivory Tusks
|
||||
[18334] = 100,
|
||||
},
|
||||
[25767] = { -- Raliq's Debt
|
||||
[18585] = 100,
|
||||
},
|
||||
[25768] = { -- Coosh'coosh's Debt
|
||||
[18586] = 100,
|
||||
},
|
||||
[25769] = { -- Floon's Debt
|
||||
[18588] = 100,
|
||||
},
|
||||
[25891] = { -- Pristine Shimmerscale Eel
|
||||
[18750] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[28527] = { -- Mana Wraith Essence
|
||||
[18864] = 60,
|
||||
},
|
||||
[28635] = { -- Sunfury Arcanist Robes
|
||||
-- According to Wowhead comments these were very low in older versions of the game,
|
||||
-- and wowhead's data shows very low because many non-quest kills, but in reality
|
||||
-- they were among the quests to have drop rates significantly boosted around 2.4.0,
|
||||
-- so in Classic versions they're pretty high. Buuut not the 100 cmangos claims.
|
||||
[20134] = 50,
|
||||
},
|
||||
[28636] = { -- Sunfury Researcher Gloves
|
||||
[20136] = 50,
|
||||
},
|
||||
[28637] = { -- Sunfury Guardsman Medallion
|
||||
[18850] = 50,
|
||||
},
|
||||
[28667] = { -- Flawless Greater Windroc Beak
|
||||
[17129] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[28668] = { -- Aged Clefthoof Blubber
|
||||
[17133] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[28970] = { -- Nether Dragon Essence
|
||||
-- Drakes definitely have lower rates than Dragons, but Dragons are correctly
|
||||
-- around 80% as cmangos claims, so only including a correction for Drakes
|
||||
[18877] = 60,
|
||||
},
|
||||
[29161] = { -- Void Ridge Soul Shard
|
||||
[17014] = 100,
|
||||
[19527] = 100,
|
||||
},
|
||||
[29163] = { -- Raw Farahlite
|
||||
[18885] = 100,
|
||||
[18886] = 100,
|
||||
[20202] = 100,
|
||||
},
|
||||
[29338] = { -- Loathsome Remnant
|
||||
[20512] = 50,
|
||||
[21065] = 50,
|
||||
},
|
||||
[29365] = { -- Smithing Hammer
|
||||
[20409] = 100,
|
||||
},
|
||||
[29480] = { -- Parched Hydra Sample
|
||||
[20324] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[29481] = { -- Withered Bog Lord Sample
|
||||
[19402] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[29591] = { -- Prepared Ethereum Wrapping
|
||||
[20458] = DropKeys.WOWHEAD,
|
||||
[20459] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[29797] = { -- Orders From Kael'thas
|
||||
[18860] = DropKeys.WOWHEAD,
|
||||
[20285] = DropKeys.WOWHEAD,
|
||||
[20326] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[29822] = { -- Fragment of Dimensius
|
||||
[18869] = 40,
|
||||
[18870] = 40,
|
||||
},
|
||||
[30184] = { -- Thunderlord Dire Wolf Tail
|
||||
[20748] = 100,
|
||||
},
|
||||
[30327] = { -- Bonechewer Blood
|
||||
[16876] = DropKeys.WOWHEAD,
|
||||
[16925] = DropKeys.WOWHEAD,
|
||||
[18952] = DropKeys.WOWHEAD,
|
||||
[19701] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[30743] = { -- Proto-Nether Drake Essence
|
||||
[20021] = 100,
|
||||
},
|
||||
[30782] = { -- Adolescent Nether Drake Essence
|
||||
[20021] = 100,
|
||||
},
|
||||
[30783] = { -- Mature Nether Drake Essence
|
||||
[20021] = 100,
|
||||
},
|
||||
[30791] = { -- Silkwing Cocoon
|
||||
-- Lots of comments claim these have different rates depending on how you interact with the
|
||||
-- mob, like it's a scripted thing. I tried every single way many many times and did not see
|
||||
-- a difference in drop rate between methods. But it is definitely not the 80% cmangos claims. -ytt
|
||||
[20747] = 30,
|
||||
},
|
||||
[30792] = { -- Iridescent Wing
|
||||
[21373] = 60,
|
||||
[21839] = 60,
|
||||
},
|
||||
[30798] = { -- Extra Sharp Daggermaw Tooth
|
||||
[20751] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[30819] = { -- Felfire Spleen
|
||||
[21408] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[30867] = { -- Overdeveloped Felfire Gizzard
|
||||
[21462] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[31119] = { -- Wyrmcult Net
|
||||
[21809] = 70,
|
||||
},
|
||||
[31132] = { -- Crust Burster Venom Gland
|
||||
[21380] = DropKeys.WOWHEAD,
|
||||
[21381] = DropKeys.WOWHEAD,
|
||||
[21849] = DropKeys.WOWHEAD,
|
||||
[22466] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[31316] = { -- Lianthe's Key
|
||||
-- cmangos claims nearly 100%, definitely lower than that, but nowhere near as low as wowhead's ~3%. more like 20%, tested pretty well
|
||||
[19792] = 20,
|
||||
[19796] = 20,
|
||||
[19806] = 20,
|
||||
},
|
||||
[31651] = { -- Bladespire Totem
|
||||
[20765] = DropKeys.WOWHEAD,
|
||||
[20766] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[31812] = { -- Doom Skull
|
||||
[21242] = DropKeys.WOWHEAD,
|
||||
[21285] = DropKeys.WOWHEAD,
|
||||
},
|
||||
[31814] = { -- Mature Bone Sifter Carcass
|
||||
[22482] = 100,
|
||||
},
|
||||
[33087] = { -- Black Dragonkin Essence
|
||||
[4328] = 100,
|
||||
[4329] = 100,
|
||||
[4331] = 100,
|
||||
},
|
||||
}
|
||||
|
||||
QuestieItemDropCorrections.Wotlk = {
|
||||
|
||||
}
|
||||
|
||||
QuestieItemDropCorrections.Cata = {
|
||||
|
||||
}
|
||||
|
||||
QuestieItemDropCorrections.MoP = {
|
||||
[97530] = { -- Kor'kron Lumber
|
||||
[70997] = 100,
|
||||
[70998] = 100,
|
||||
[70999] = 100,
|
||||
[71001] = 100,
|
||||
},
|
||||
[97543] = { -- Kor'kron Stone
|
||||
[71007] = 100,
|
||||
[71009] = 100,
|
||||
[71187] = 100,
|
||||
[71188] = 100,
|
||||
},
|
||||
[97544] = { -- Kor'kron Oil
|
||||
[71000] = 100,
|
||||
[71002] = 100,
|
||||
[71005] = 100,
|
||||
[71006] = 100,
|
||||
},
|
||||
[97545] = { -- Kor'kron Meat
|
||||
[71010] = 100,
|
||||
[71011] = 100,
|
||||
[71012] = 100,
|
||||
[73590] = 100,
|
||||
},
|
||||
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,146 +0,0 @@
|
||||
---@class DropDB
|
||||
local DropDB = QuestieLoader:CreateModule("DropDB")
|
||||
|
||||
-------------------------
|
||||
--Import modules.
|
||||
-------------------------
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
---@type l10n
|
||||
local l10n = QuestieLoader:ImportModule("l10n")
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
---@type QuestieItemDropCorrections
|
||||
local QuestieItemDropCorrections = QuestieLoader:ImportModule("QuestieItemDropCorrections")
|
||||
---@type QuestieClassicItemDrops
|
||||
local QuestieClassicItemDrops = QuestieLoader:ImportModule("QuestieClassicItemDrops")
|
||||
---@type QuestieTBCItemDrops
|
||||
local QuestieTBCItemDrops = QuestieLoader:ImportModule("QuestieTBCItemDrops")
|
||||
---@type QuestieWotlkItemDrops
|
||||
local QuestieWotlkItemDrops = QuestieLoader:ImportModule("QuestieWotlkItemDrops")
|
||||
---@type QuestieCataItemDrops
|
||||
local QuestieCataItemDrops = QuestieLoader:ImportModule("QuestieCataItemDrops")
|
||||
---@type QuestieMopItemDrops
|
||||
local QuestieMopItemDrops = QuestieLoader:ImportModule("QuestieMopItemDrops")
|
||||
|
||||
DropDB.tableWowhead = nil
|
||||
DropDB.tablePserver = nil
|
||||
DropDB.tableCorrections = nil
|
||||
DropDB.sourcePserver = "" -- this tracks which pserv DB is loaded so we can display the correct icon in debug mode
|
||||
|
||||
DropDB.correctionKeys = { -- all keys must be negative or they'll be parsed as real data
|
||||
WOWHEAD = -1,
|
||||
PSERVER = -2,
|
||||
}
|
||||
|
||||
function DropDB:Initialize()
|
||||
if Questie.IsClassic then
|
||||
-- Wowhead Classic data was gathered with the SoD QuestieDB, so SoD IDs are included as well;
|
||||
-- this should not affect Era players because the Era DB will never reference those IDs
|
||||
DropDB.tableWowhead = loadstring(QuestieClassicItemDrops.wowheadData)()
|
||||
DropDB.tablePserver = loadstring(QuestieClassicItemDrops.cmangosData)()
|
||||
DropDB.sourcePserver = "cmangos"
|
||||
elseif Questie.IsTBC then
|
||||
DropDB.tableWowhead = loadstring(QuestieTBCItemDrops.wowheadData)()
|
||||
DropDB.tablePserver = loadstring(QuestieTBCItemDrops.cmangosData)()
|
||||
DropDB.sourcePserver = "cmangos"
|
||||
elseif Questie.IsWotlk then
|
||||
DropDB.tableWowhead = loadstring(QuestieWotlkItemDrops.wowheadData)()
|
||||
DropDB.tablePserver = loadstring(QuestieWotlkItemDrops.cmangosData)()
|
||||
DropDB.sourcePserver = "cmangos"
|
||||
elseif Questie.IsCata then
|
||||
DropDB.tableWowhead = loadstring(QuestieCataItemDrops.wowheadData)()
|
||||
DropDB.tablePserver = loadstring(QuestieCataItemDrops.mangos3Data)()
|
||||
DropDB.sourcePserver = "mangos3"
|
||||
elseif Questie.IsMoP then
|
||||
DropDB.tableWowhead = loadstring(QuestieMopItemDrops.wowheadData)()
|
||||
DropDB.tablePserver = loadstring(QuestieCataItemDrops.mangos3Data)()
|
||||
DropDB.sourcePserver = "mangos3"
|
||||
-- we use cata mangos3 data for mop instead because mop DBs are so spotty;
|
||||
-- this means mop-only quests will use wowhead data exclusively
|
||||
else
|
||||
Questie.Error("ItemDrops: Unknown Expansion!")
|
||||
end
|
||||
|
||||
-- Corrections are loaded starting from Era; this means Era corrections are still
|
||||
-- applied to later expansions unless overridden by later expansions' corrections
|
||||
DropDB.tableCorrections = QuestieItemDropCorrections.Era
|
||||
if Expansions.Current >= Expansions.Tbc then
|
||||
for k,v in pairs(QuestieItemDropCorrections.Tbc) do DropDB.tableCorrections[k] = v end
|
||||
if Expansions.Current >= Expansions.Wotlk then
|
||||
for k,v in pairs(QuestieItemDropCorrections.Wotlk) do DropDB.tableCorrections[k] = v end
|
||||
if Expansions.Current >= Expansions.Cata then
|
||||
for k,v in pairs(QuestieItemDropCorrections.Cata) do DropDB.tableCorrections[k] = v end
|
||||
if Expansions.Current >= Expansions.MoP then
|
||||
for k,v in pairs(QuestieItemDropCorrections.MoP) do DropDB.tableCorrections[k] = v end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- To obtain final drop rate data, query QuestieDB.GetItemDroprate(ItemID,NpcID)
|
||||
-- That function will query DropDB to ascertain the real value.
|
||||
-- DropDB then determines which data to provide based upon current expansion level and other rules.
|
||||
|
||||
-- The number provided is a float; it is up to the end user to determine how to display that.
|
||||
-- 100.0 would be 100%, 47.254 would be 47.254%, etc.
|
||||
|
||||
-- Return values are {dropRate, sourceDB} as {float, str}
|
||||
|
||||
-- This function will return nil if the DB is not loaded properly or there is no data match.
|
||||
-- Be sure you can handle successful nil returns!
|
||||
|
||||
---@param itemId ItemId
|
||||
---@param npcId NpcId
|
||||
---@return table<number, string>
|
||||
function DropDB.GetItemDroprate(itemId, npcId)
|
||||
|
||||
-- The hierarchy for drop rate data is as follows:
|
||||
-- 1. Manual Corrections > 2. Pserver Data > 3. Wowhead Data
|
||||
-- We check each database in order for item:npc matches, and we report the first match we find.
|
||||
|
||||
-- Wowhead data consists of the full drop rates (every NPC listed on wowhead for an item), for all items
|
||||
-- contained in either item objectives or RequiredSourceItems for all quests in that expansion's compiled Questie DB.
|
||||
|
||||
-- Pserver (Cmangos/Mangos3) data only consists of items that those databases believe drop only while on a quest (internally specified with a negative drop value).
|
||||
|
||||
-- Wowhead's crowdsourced drop data is likely more accurate for items that always drop, but unfortunately, while their looter addon does
|
||||
-- record active quests when reporting data, item drop rates are not filtered on Wowhead's site to show data only from those on the quest.
|
||||
|
||||
-- While some private server data might be wrong for quest items, it is generally far more accurate than Wowhead for quest-only items.
|
||||
-- For eggregious outliers, we can make manual corrections that take full priority.
|
||||
|
||||
-- It is worth noting that in Questie, we only display item drop data on NPCs that QuestieDB itself believes actually drops the item.
|
||||
-- So if we've manually excluded an NPC from dropping the item in QuestieDB corrections (like for a rare mob), then even if that drop
|
||||
-- data exists in our drop data DB, it won't ever actually be shown on NPC tooltips, because Questie itself doesn't think it should.
|
||||
-- This function will still return data for those NPCs in case external addons request it, Questie simply won't ever ask this function to.
|
||||
|
||||
if DropDB.tableCorrections and DropDB.tableCorrections[itemId] and DropDB.tableCorrections[itemId][npcId] then
|
||||
if DropDB.tableCorrections[itemId][npcId] >= 0 then -- If the correction is not a reference, use its value
|
||||
return {DropDB.tableCorrections[itemId][npcId],"questie"}
|
||||
end
|
||||
|
||||
-- If the correction is a reference to a different DB, use data from that DB instead
|
||||
if DropDB.tableCorrections[itemId][npcId] == DropDB.correctionKeys.WOWHEAD and DropDB.tableWowhead and DropDB.tableWowhead[itemId] and DropDB.tableWowhead[itemId][npcId] then
|
||||
return {DropDB.tableWowhead[itemId][npcId],"wowhead"}
|
||||
elseif DropDB.tableCorrections[itemId][npcId] == DropDB.correctionKeys.PSERVER and DropDB.tablePserver and DropDB.tablePserver[itemId] and DropDB.tablePserver[itemId][npcId] then
|
||||
return {DropDB.tablePserver[itemId][npcId],DropDB.sourcePserver}
|
||||
end
|
||||
|
||||
Questie.Debug(Questie.DEBUG_CRITICAL,
|
||||
"ItemDrops: Correction data for item " .. tostring(itemId) .. " dropped by NPC " .. tostring(npcId) .. " was invalid!")
|
||||
end
|
||||
|
||||
-- Rather than these being elseif, they're separate, so that if we find a correction but it's invalid for whatever reason,
|
||||
-- we still have a chance to fall back rather than returning nil. This may happen for instance if we have a correction
|
||||
-- that points to Wowhead, but the loaded Wowhead DB doesn't have data for that item:npc pair.
|
||||
if DropDB.tablePserver and DropDB.tablePserver[itemId] and DropDB.tablePserver[itemId][npcId] then
|
||||
return {DropDB.tablePserver[itemId][npcId],DropDB.sourcePserver}
|
||||
elseif DropDB.tableWowhead and DropDB.tableWowhead[itemId] and DropDB.tableWowhead[itemId][npcId] then
|
||||
return {DropDB.tableWowhead[itemId][npcId],"wowhead"}
|
||||
end
|
||||
|
||||
return nil
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,375 +0,0 @@
|
||||
-- File was auto-generated by generateFactionTemplate.py
|
||||
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
|
||||
---@type table<FactionId, EnemyGroup>
|
||||
QuestieDB.factionTemplate = {
|
||||
[1] = 12,
|
||||
[2] = 10,
|
||||
[3] = 12,
|
||||
[4] = 12,
|
||||
[5] = 10,
|
||||
[6] = 10,
|
||||
[7] = 0,
|
||||
[10] = 0,
|
||||
[11] = 12,
|
||||
[12] = 4,
|
||||
[14] = 1,
|
||||
[15] = 0,
|
||||
[16] = 1,
|
||||
[17] = 1,
|
||||
[18] = 1,
|
||||
[19] = 1,
|
||||
[20] = 1,
|
||||
[21] = 1,
|
||||
[22] = 1,
|
||||
[23] = 4,
|
||||
[24] = 1,
|
||||
[25] = 0,
|
||||
[26] = 1,
|
||||
[27] = 1,
|
||||
[28] = 1,
|
||||
[29] = 2,
|
||||
[30] = 1,
|
||||
[31] = 0,
|
||||
[32] = 0,
|
||||
[33] = 0,
|
||||
[34] = 0,
|
||||
[35] = 0,
|
||||
[36] = 0,
|
||||
[37] = 1,
|
||||
[38] = 1,
|
||||
[39] = 1,
|
||||
[40] = 1,
|
||||
[41] = 1,
|
||||
[42] = 0,
|
||||
[43] = 0,
|
||||
[44] = 1,
|
||||
[45] = 1,
|
||||
[46] = 1,
|
||||
[47] = 1,
|
||||
[48] = 1,
|
||||
[49] = 1,
|
||||
[50] = 1,
|
||||
[51] = 1,
|
||||
[52] = 0,
|
||||
[53] = 12,
|
||||
[54] = 1,
|
||||
[55] = 4,
|
||||
[56] = 12,
|
||||
[57] = 12,
|
||||
[58] = 0,
|
||||
[59] = 1,
|
||||
[60] = 1,
|
||||
[61] = 1,
|
||||
[62] = 1,
|
||||
[63] = 1,
|
||||
[64] = 4,
|
||||
[65] = 0,
|
||||
[66] = 1,
|
||||
[67] = 1,
|
||||
[68] = 2,
|
||||
[69] = 0,
|
||||
[70] = 1,
|
||||
[71] = 10,
|
||||
[72] = 1,
|
||||
[73] = 1,
|
||||
[74] = 1,
|
||||
[76] = 4,
|
||||
[77] = 0,
|
||||
[78] = 1,
|
||||
[79] = 12,
|
||||
[80] = 4,
|
||||
[81] = 1,
|
||||
[82] = 1,
|
||||
[83] = 2,
|
||||
[84] = 4,
|
||||
[85] = 10,
|
||||
[86] = 0,
|
||||
[87] = 1,
|
||||
[88] = 4,
|
||||
[89] = 1,
|
||||
[90] = 1,
|
||||
[91] = 1,
|
||||
[92] = 1,
|
||||
[93] = 1,
|
||||
[94] = 0,
|
||||
[95] = 1,
|
||||
[96] = 0,
|
||||
[97] = 0,
|
||||
[98] = 10,
|
||||
[99] = 0,
|
||||
[100] = 9,
|
||||
[101] = 4,
|
||||
[102] = 2,
|
||||
[103] = 1,
|
||||
[104] = 2,
|
||||
[105] = 10,
|
||||
[106] = 10,
|
||||
[107] = 1,
|
||||
[108] = 0,
|
||||
[109] = 1,
|
||||
[110] = 1,
|
||||
[111] = 1,
|
||||
[112] = 1,
|
||||
[113] = 0,
|
||||
[114] = 1,
|
||||
[115] = 12,
|
||||
[116] = 10,
|
||||
[118] = 2,
|
||||
[119] = 1,
|
||||
[120] = 0,
|
||||
[121] = 8,
|
||||
[122] = 4,
|
||||
[123] = 4,
|
||||
[124] = 4,
|
||||
[125] = 2,
|
||||
[126] = 2,
|
||||
[127] = 1,
|
||||
[128] = 1,
|
||||
[129] = 1,
|
||||
[130] = 1,
|
||||
[131] = 1,
|
||||
[132] = 1,
|
||||
[133] = 1,
|
||||
[134] = 1,
|
||||
[148] = 1,
|
||||
[149] = 0,
|
||||
[150] = 12,
|
||||
[151] = 4,
|
||||
[152] = 1,
|
||||
[153] = 0,
|
||||
[154] = 1,
|
||||
[168] = 1,
|
||||
[188] = 0,
|
||||
[189] = 0,
|
||||
[190] = 0,
|
||||
[208] = 0,
|
||||
[209] = 0,
|
||||
[210] = 12,
|
||||
[230] = 1,
|
||||
[231] = 8,
|
||||
[232] = 8,
|
||||
[233] = 1,
|
||||
[250] = 8,
|
||||
[270] = 1,
|
||||
[290] = 0,
|
||||
[310] = 1,
|
||||
[311] = 0,
|
||||
[312] = 1,
|
||||
[330] = 0,
|
||||
[350] = 0,
|
||||
[370] = 1,
|
||||
[371] = 4,
|
||||
[390] = 0,
|
||||
[410] = 1,
|
||||
[411] = 1,
|
||||
[412] = 2,
|
||||
[413] = 1,
|
||||
[414] = 1,
|
||||
[415] = 1,
|
||||
[416] = 0,
|
||||
[430] = 0,
|
||||
[450] = 1,
|
||||
[470] = 1,
|
||||
[471] = 0,
|
||||
[472] = 1,
|
||||
[473] = 0,
|
||||
[474] = 0,
|
||||
[475] = 8,
|
||||
[494] = 1,
|
||||
[495] = 8,
|
||||
[514] = 1,
|
||||
[534] = 0,
|
||||
[554] = 7,
|
||||
[574] = 1,
|
||||
[575] = 1,
|
||||
[594] = 0,
|
||||
[614] = 0,
|
||||
[634] = 0,
|
||||
[635] = 0,
|
||||
[636] = 1,
|
||||
[637] = 8,
|
||||
[654] = 1,
|
||||
[655] = 5,
|
||||
[674] = 0,
|
||||
[694] = 4,
|
||||
[695] = 0,
|
||||
[714] = 0,
|
||||
[734] = 0,
|
||||
[735] = 0,
|
||||
[736] = 1,
|
||||
[754] = 1,
|
||||
[774] = 0,
|
||||
[775] = 0,
|
||||
[776] = 0,
|
||||
[777] = 0,
|
||||
[778] = 1,
|
||||
[794] = 0,
|
||||
[795] = 1,
|
||||
[814] = 0,
|
||||
[834] = 1,
|
||||
[854] = 8,
|
||||
[855] = 0,
|
||||
[874] = 4,
|
||||
[875] = 4,
|
||||
[876] = 2,
|
||||
[877] = 10,
|
||||
[894] = 4,
|
||||
[914] = 0,
|
||||
[934] = 1,
|
||||
[954] = 1,
|
||||
[974] = 1,
|
||||
[994] = 0,
|
||||
[995] = 2,
|
||||
[996] = 8,
|
||||
[1014] = 0,
|
||||
[1015] = 0,
|
||||
[1034] = 2,
|
||||
[1054] = 12,
|
||||
[1055] = 4,
|
||||
[1074] = 2,
|
||||
[1075] = 4,
|
||||
[1076] = 4,
|
||||
[1077] = 4,
|
||||
[1078] = 4,
|
||||
[1080] = 0,
|
||||
[1081] = 1,
|
||||
[1094] = 0,
|
||||
[1095] = 0,
|
||||
[1096] = 12,
|
||||
[1097] = 4,
|
||||
[1114] = 1,
|
||||
[1134] = 10,
|
||||
[1154] = 10,
|
||||
[1174] = 2,
|
||||
[1194] = 0,
|
||||
[1214] = 10,
|
||||
[1215] = 2,
|
||||
[1216] = 12,
|
||||
[1217] = 4,
|
||||
[1234] = 1,
|
||||
[1235] = 1,
|
||||
[1236] = 1,
|
||||
[1254] = 8,
|
||||
[1274] = 4,
|
||||
[1275] = 2,
|
||||
[1294] = 1,
|
||||
[1314] = 2,
|
||||
[1315] = 4,
|
||||
[1334] = 4,
|
||||
[1335] = 2,
|
||||
[1354] = 0,
|
||||
[1355] = 0,
|
||||
[1374] = 1,
|
||||
[1375] = 9,
|
||||
[1394] = 1,
|
||||
[1395] = 1,
|
||||
[1414] = 4,
|
||||
[1415] = 2,
|
||||
[1434] = 1,
|
||||
[1454] = 0,
|
||||
[1474] = 0,
|
||||
[1475] = 0,
|
||||
[1494] = 2,
|
||||
[1495] = 10,
|
||||
[1496] = 2,
|
||||
[1514] = 4,
|
||||
[1515] = 2,
|
||||
[1534] = 4,
|
||||
[1554] = 8,
|
||||
[1555] = 0,
|
||||
[1574] = 0,
|
||||
[1575] = 12,
|
||||
[1576] = 4,
|
||||
[1577] = 4,
|
||||
[1594] = 12,
|
||||
[1595] = 10,
|
||||
[1596] = 12,
|
||||
[1597] = 10,
|
||||
[1598] = 2,
|
||||
[1599] = 4,
|
||||
[1600] = 8,
|
||||
[1601] = 0,
|
||||
[1605] = 1,
|
||||
[1606] = 2,
|
||||
[1607] = 2,
|
||||
[1608] = 8,
|
||||
[1611] = 4,
|
||||
[1612] = 2,
|
||||
[1613] = 0,
|
||||
[1614] = 1,
|
||||
[1615] = 8,
|
||||
[1616] = 0,
|
||||
[1617] = 1,
|
||||
[1618] = 12,
|
||||
[1619] = 10,
|
||||
[1620] = 15,
|
||||
[1621] = 4,
|
||||
[1622] = 4,
|
||||
[1624] = 8,
|
||||
[1625] = 8,
|
||||
[1626] = 1,
|
||||
[1630] = 15,
|
||||
[1634] = 0,
|
||||
[1635] = 0,
|
||||
[1641] = 2,
|
||||
[1642] = 4,
|
||||
[1673] = 0,
|
||||
[1676] = 0,
|
||||
[1677] = 0,
|
||||
[1878] = 1,
|
||||
[3149] = 2,
|
||||
[3150] = 0,
|
||||
[3151] = 4,
|
||||
[3152] = 0,
|
||||
[3267] = 1,
|
||||
[3386] = 0,
|
||||
[3387] = 4,
|
||||
[3388] = 2,
|
||||
[3389] = 1,
|
||||
[3421] = 0,
|
||||
[3422] = 15,
|
||||
[3425] = 8,
|
||||
[3426] = 14,
|
||||
[3427] = 15,
|
||||
[3434] = 0,
|
||||
[3439] = 8,
|
||||
[3440] = 0,
|
||||
[3441] = 0,
|
||||
[3442] = 0,
|
||||
[3443] = 1,
|
||||
[3444] = 9,
|
||||
[3445] = 8,
|
||||
[3447] = 8,
|
||||
[3456] = 8,
|
||||
[3461] = 1,
|
||||
[3462] = 0,
|
||||
[3463] = 1,
|
||||
[3464] = 0,
|
||||
[3465] = 0,
|
||||
[3472] = 1,
|
||||
[3473] = 1,
|
||||
[3474] = 8,
|
||||
[3492] = 4,
|
||||
[3493] = 1,
|
||||
[3495] = 4,
|
||||
[3496] = 8,
|
||||
[3497] = 1,
|
||||
[3498] = 8,
|
||||
[3499] = 1,
|
||||
[3532] = 0,
|
||||
[3533] = 0,
|
||||
[3535] = 1,
|
||||
[3536] = 0,
|
||||
[3539] = 8,
|
||||
[3542] = 1,
|
||||
[3543] = 8,
|
||||
[3546] = 0,
|
||||
[3548] = 0,
|
||||
[3549] = 1,
|
||||
[3551] = 1,
|
||||
[3552] = 8,
|
||||
[3559] = 8,
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,617 +0,0 @@
|
||||
-- File was auto-generated by generateFactionTemplate.py
|
||||
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
|
||||
---@type table<FactionId, EnemyGroup>
|
||||
QuestieDB.factionTemplate = {
|
||||
[1] = 12,
|
||||
[2] = 10,
|
||||
[3] = 12,
|
||||
[4] = 12,
|
||||
[5] = 10,
|
||||
[6] = 10,
|
||||
[7] = 0,
|
||||
[10] = 0,
|
||||
[11] = 12,
|
||||
[12] = 4,
|
||||
[14] = 1,
|
||||
[15] = 0,
|
||||
[16] = 1,
|
||||
[17] = 1,
|
||||
[18] = 1,
|
||||
[19] = 1,
|
||||
[20] = 1,
|
||||
[21] = 1,
|
||||
[22] = 1,
|
||||
[23] = 4,
|
||||
[24] = 1,
|
||||
[25] = 0,
|
||||
[26] = 1,
|
||||
[27] = 1,
|
||||
[28] = 1,
|
||||
[29] = 2,
|
||||
[30] = 1,
|
||||
[31] = 0,
|
||||
[32] = 0,
|
||||
[33] = 0,
|
||||
[34] = 0,
|
||||
[35] = 0,
|
||||
[36] = 0,
|
||||
[37] = 1,
|
||||
[38] = 1,
|
||||
[39] = 1,
|
||||
[40] = 1,
|
||||
[41] = 1,
|
||||
[42] = 0,
|
||||
[43] = 0,
|
||||
[44] = 1,
|
||||
[45] = 1,
|
||||
[46] = 1,
|
||||
[47] = 1,
|
||||
[48] = 1,
|
||||
[49] = 1,
|
||||
[50] = 1,
|
||||
[51] = 1,
|
||||
[52] = 0,
|
||||
[53] = 12,
|
||||
[54] = 1,
|
||||
[55] = 4,
|
||||
[56] = 12,
|
||||
[57] = 12,
|
||||
[58] = 0,
|
||||
[59] = 1,
|
||||
[60] = 1,
|
||||
[61] = 1,
|
||||
[62] = 1,
|
||||
[63] = 1,
|
||||
[64] = 4,
|
||||
[65] = 0,
|
||||
[66] = 1,
|
||||
[67] = 1,
|
||||
[68] = 2,
|
||||
[69] = 0,
|
||||
[70] = 1,
|
||||
[71] = 10,
|
||||
[72] = 1,
|
||||
[73] = 1,
|
||||
[74] = 1,
|
||||
[76] = 4,
|
||||
[77] = 0,
|
||||
[78] = 1,
|
||||
[79] = 12,
|
||||
[80] = 4,
|
||||
[81] = 1,
|
||||
[82] = 1,
|
||||
[83] = 2,
|
||||
[84] = 4,
|
||||
[85] = 10,
|
||||
[86] = 0,
|
||||
[87] = 1,
|
||||
[88] = 4,
|
||||
[89] = 1,
|
||||
[90] = 1,
|
||||
[91] = 1,
|
||||
[92] = 1,
|
||||
[93] = 1,
|
||||
[94] = 0,
|
||||
[95] = 1,
|
||||
[96] = 0,
|
||||
[97] = 0,
|
||||
[98] = 10,
|
||||
[99] = 0,
|
||||
[100] = 9,
|
||||
[101] = 4,
|
||||
[102] = 2,
|
||||
[103] = 1,
|
||||
[104] = 2,
|
||||
[105] = 10,
|
||||
[106] = 10,
|
||||
[107] = 1,
|
||||
[108] = 0,
|
||||
[109] = 1,
|
||||
[110] = 1,
|
||||
[111] = 1,
|
||||
[112] = 1,
|
||||
[113] = 0,
|
||||
[114] = 1,
|
||||
[115] = 12,
|
||||
[116] = 10,
|
||||
[118] = 2,
|
||||
[119] = 1,
|
||||
[120] = 0,
|
||||
[121] = 8,
|
||||
[122] = 4,
|
||||
[123] = 4,
|
||||
[124] = 4,
|
||||
[125] = 2,
|
||||
[126] = 2,
|
||||
[127] = 1,
|
||||
[128] = 1,
|
||||
[129] = 1,
|
||||
[130] = 1,
|
||||
[131] = 1,
|
||||
[132] = 1,
|
||||
[133] = 1,
|
||||
[134] = 1,
|
||||
[148] = 1,
|
||||
[149] = 0,
|
||||
[150] = 12,
|
||||
[151] = 4,
|
||||
[152] = 1,
|
||||
[153] = 0,
|
||||
[154] = 1,
|
||||
[168] = 1,
|
||||
[188] = 0,
|
||||
[189] = 0,
|
||||
[190] = 0,
|
||||
[208] = 0,
|
||||
[209] = 0,
|
||||
[210] = 12,
|
||||
[230] = 1,
|
||||
[231] = 8,
|
||||
[232] = 8,
|
||||
[233] = 1,
|
||||
[250] = 8,
|
||||
[270] = 1,
|
||||
[290] = 0,
|
||||
[310] = 1,
|
||||
[311] = 0,
|
||||
[312] = 1,
|
||||
[330] = 0,
|
||||
[350] = 0,
|
||||
[370] = 1,
|
||||
[371] = 4,
|
||||
[390] = 0,
|
||||
[410] = 1,
|
||||
[411] = 1,
|
||||
[412] = 2,
|
||||
[413] = 1,
|
||||
[414] = 1,
|
||||
[415] = 1,
|
||||
[416] = 0,
|
||||
[430] = 0,
|
||||
[450] = 1,
|
||||
[470] = 1,
|
||||
[471] = 0,
|
||||
[472] = 1,
|
||||
[473] = 0,
|
||||
[474] = 0,
|
||||
[475] = 8,
|
||||
[494] = 1,
|
||||
[495] = 8,
|
||||
[514] = 1,
|
||||
[534] = 0,
|
||||
[554] = 7,
|
||||
[574] = 1,
|
||||
[575] = 1,
|
||||
[594] = 0,
|
||||
[614] = 0,
|
||||
[634] = 0,
|
||||
[635] = 0,
|
||||
[636] = 1,
|
||||
[637] = 8,
|
||||
[654] = 1,
|
||||
[655] = 5,
|
||||
[674] = 0,
|
||||
[694] = 4,
|
||||
[695] = 0,
|
||||
[714] = 0,
|
||||
[734] = 0,
|
||||
[735] = 0,
|
||||
[736] = 1,
|
||||
[754] = 1,
|
||||
[774] = 0,
|
||||
[775] = 0,
|
||||
[776] = 0,
|
||||
[777] = 0,
|
||||
[778] = 1,
|
||||
[794] = 0,
|
||||
[795] = 1,
|
||||
[814] = 0,
|
||||
[834] = 1,
|
||||
[854] = 8,
|
||||
[855] = 0,
|
||||
[874] = 4,
|
||||
[875] = 4,
|
||||
[876] = 2,
|
||||
[877] = 10,
|
||||
[894] = 4,
|
||||
[914] = 0,
|
||||
[934] = 1,
|
||||
[954] = 1,
|
||||
[974] = 1,
|
||||
[994] = 0,
|
||||
[995] = 2,
|
||||
[996] = 8,
|
||||
[1014] = 0,
|
||||
[1015] = 0,
|
||||
[1034] = 2,
|
||||
[1054] = 12,
|
||||
[1055] = 4,
|
||||
[1074] = 2,
|
||||
[1075] = 4,
|
||||
[1076] = 4,
|
||||
[1077] = 4,
|
||||
[1078] = 4,
|
||||
[1080] = 0,
|
||||
[1081] = 1,
|
||||
[1094] = 0,
|
||||
[1095] = 0,
|
||||
[1096] = 12,
|
||||
[1097] = 4,
|
||||
[1114] = 1,
|
||||
[1134] = 10,
|
||||
[1154] = 10,
|
||||
[1174] = 2,
|
||||
[1194] = 0,
|
||||
[1214] = 10,
|
||||
[1215] = 2,
|
||||
[1216] = 12,
|
||||
[1217] = 4,
|
||||
[1234] = 1,
|
||||
[1235] = 1,
|
||||
[1236] = 1,
|
||||
[1254] = 8,
|
||||
[1274] = 4,
|
||||
[1275] = 2,
|
||||
[1294] = 1,
|
||||
[1314] = 2,
|
||||
[1315] = 4,
|
||||
[1334] = 4,
|
||||
[1335] = 2,
|
||||
[1354] = 0,
|
||||
[1355] = 0,
|
||||
[1374] = 1,
|
||||
[1375] = 9,
|
||||
[1394] = 1,
|
||||
[1395] = 1,
|
||||
[1414] = 4,
|
||||
[1415] = 2,
|
||||
[1434] = 1,
|
||||
[1454] = 0,
|
||||
[1474] = 0,
|
||||
[1475] = 0,
|
||||
[1494] = 2,
|
||||
[1495] = 10,
|
||||
[1496] = 2,
|
||||
[1514] = 4,
|
||||
[1515] = 2,
|
||||
[1534] = 4,
|
||||
[1554] = 8,
|
||||
[1555] = 0,
|
||||
[1574] = 0,
|
||||
[1575] = 12,
|
||||
[1576] = 4,
|
||||
[1577] = 4,
|
||||
[1594] = 12,
|
||||
[1595] = 10,
|
||||
[1596] = 12,
|
||||
[1597] = 10,
|
||||
[1598] = 2,
|
||||
[1599] = 4,
|
||||
[1600] = 8,
|
||||
[1601] = 0,
|
||||
[1602] = 2,
|
||||
[1603] = 10,
|
||||
[1604] = 2,
|
||||
[1605] = 1,
|
||||
[1606] = 2,
|
||||
[1607] = 2,
|
||||
[1608] = 8,
|
||||
[1610] = 10,
|
||||
[1611] = 4,
|
||||
[1612] = 2,
|
||||
[1613] = 0,
|
||||
[1614] = 1,
|
||||
[1615] = 8,
|
||||
[1616] = 0,
|
||||
[1617] = 1,
|
||||
[1618] = 12,
|
||||
[1619] = 10,
|
||||
[1620] = 15,
|
||||
[1621] = 4,
|
||||
[1622] = 4,
|
||||
[1623] = 2,
|
||||
[1624] = 8,
|
||||
[1625] = 8,
|
||||
[1626] = 1,
|
||||
[1627] = 2,
|
||||
[1628] = 2,
|
||||
[1629] = 12,
|
||||
[1630] = 15,
|
||||
[1634] = 0,
|
||||
[1635] = 0,
|
||||
[1636] = 2,
|
||||
[1637] = 2,
|
||||
[1638] = 4,
|
||||
[1639] = 12,
|
||||
[1640] = 4,
|
||||
[1641] = 2,
|
||||
[1642] = 4,
|
||||
[1643] = 1,
|
||||
[1644] = 4,
|
||||
[1645] = 12,
|
||||
[1646] = 4,
|
||||
[1647] = 12,
|
||||
[1648] = 4,
|
||||
[1649] = 4,
|
||||
[1650] = 10,
|
||||
[1651] = 2,
|
||||
[1652] = 2,
|
||||
[1653] = 2,
|
||||
[1654] = 4,
|
||||
[1655] = 4,
|
||||
[1656] = 10,
|
||||
[1657] = 2,
|
||||
[1658] = 2,
|
||||
[1659] = 8,
|
||||
[1660] = 8,
|
||||
[1661] = 8,
|
||||
[1662] = 1,
|
||||
[1663] = 1,
|
||||
[1664] = 1,
|
||||
[1665] = 8,
|
||||
[1666] = 12,
|
||||
[1667] = 4,
|
||||
[1668] = 10,
|
||||
[1669] = 2,
|
||||
[1670] = 2,
|
||||
[1671] = 4,
|
||||
[1672] = 0,
|
||||
[1673] = 0,
|
||||
[1674] = 0,
|
||||
[1675] = 0,
|
||||
[1676] = 0,
|
||||
[1677] = 0,
|
||||
[1678] = 1,
|
||||
[1679] = 1,
|
||||
[1680] = 0,
|
||||
[1681] = 1,
|
||||
[1682] = 0,
|
||||
[1683] = 0,
|
||||
[1684] = 0,
|
||||
[1685] = 4,
|
||||
[1686] = 4,
|
||||
[1687] = 1,
|
||||
[1688] = 0,
|
||||
[1689] = 0,
|
||||
[1690] = 0,
|
||||
[1691] = 0,
|
||||
[1692] = 1,
|
||||
[1693] = 1,
|
||||
[1694] = 4,
|
||||
[1695] = 2,
|
||||
[1696] = 0,
|
||||
[1697] = 1,
|
||||
[1698] = 4,
|
||||
[1699] = 4,
|
||||
[1700] = 4,
|
||||
[1701] = 7,
|
||||
[1702] = 7,
|
||||
[1703] = 0,
|
||||
[1704] = 1,
|
||||
[1705] = 1,
|
||||
[1706] = 1,
|
||||
[1707] = 8,
|
||||
[1708] = 8,
|
||||
[1709] = 8,
|
||||
[1710] = 8,
|
||||
[1711] = 1,
|
||||
[1712] = 1,
|
||||
[1713] = 1,
|
||||
[1714] = 7,
|
||||
[1715] = 1,
|
||||
[1716] = 8,
|
||||
[1717] = 0,
|
||||
[1718] = 0,
|
||||
[1719] = 8,
|
||||
[1720] = 1,
|
||||
[1721] = 12,
|
||||
[1722] = 4,
|
||||
[1723] = 4,
|
||||
[1724] = 4,
|
||||
[1725] = 8,
|
||||
[1726] = 0,
|
||||
[1727] = 8,
|
||||
[1728] = 8,
|
||||
[1729] = 2,
|
||||
[1730] = 8,
|
||||
[1731] = 8,
|
||||
[1732] = 4,
|
||||
[1733] = 4,
|
||||
[1734] = 2,
|
||||
[1735] = 2,
|
||||
[1736] = 0,
|
||||
[1737] = 4,
|
||||
[1738] = 1,
|
||||
[1739] = 1,
|
||||
[1740] = 1,
|
||||
[1741] = 8,
|
||||
[1742] = 1,
|
||||
[1743] = 0,
|
||||
[1744] = 0,
|
||||
[1745] = 2,
|
||||
[1746] = 0,
|
||||
[1747] = 0,
|
||||
[1748] = 1,
|
||||
[1749] = 0,
|
||||
[1750] = 1,
|
||||
[1751] = 1,
|
||||
[1752] = 7,
|
||||
[1753] = 7,
|
||||
[1754] = 7,
|
||||
[1755] = 0,
|
||||
[1756] = 0,
|
||||
[1757] = 0,
|
||||
[1758] = 0,
|
||||
[1759] = 0,
|
||||
[1760] = 0,
|
||||
[1761] = 15,
|
||||
[1762] = 7,
|
||||
[1763] = 7,
|
||||
[1764] = 7,
|
||||
[1765] = 7,
|
||||
[1766] = 0,
|
||||
[1767] = 0,
|
||||
[1768] = 15,
|
||||
[1769] = 15,
|
||||
[1770] = 0,
|
||||
[1771] = 1,
|
||||
[1772] = 1,
|
||||
[1773] = 0,
|
||||
[1774] = 0,
|
||||
[1775] = 8,
|
||||
[1776] = 0,
|
||||
[1777] = 0,
|
||||
[1778] = 0,
|
||||
[1779] = 0,
|
||||
[1780] = 1,
|
||||
[1781] = 1,
|
||||
[1782] = 1,
|
||||
[1783] = 1,
|
||||
[1784] = 1,
|
||||
[1785] = 1,
|
||||
[1786] = 1,
|
||||
[1787] = 1,
|
||||
[1788] = 8,
|
||||
[1789] = 7,
|
||||
[1790] = 1,
|
||||
[1791] = 1,
|
||||
[1792] = 1,
|
||||
[1793] = 7,
|
||||
[1794] = 0,
|
||||
[1795] = 0,
|
||||
[1796] = 1,
|
||||
[1797] = 0,
|
||||
[1798] = 1,
|
||||
[1799] = 1,
|
||||
[1800] = 1,
|
||||
[1801] = 10,
|
||||
[1802] = 12,
|
||||
[1803] = 4,
|
||||
[1804] = 2,
|
||||
[1805] = 0,
|
||||
[1806] = 8,
|
||||
[1807] = 8,
|
||||
[1808] = 1,
|
||||
[1809] = 1,
|
||||
[1810] = 1,
|
||||
[1811] = 1,
|
||||
[1812] = 8,
|
||||
[1813] = 1,
|
||||
[1814] = 1,
|
||||
[1815] = 1,
|
||||
[1816] = 0,
|
||||
[1818] = 0,
|
||||
[1819] = 12,
|
||||
[1820] = 0,
|
||||
[1821] = 0,
|
||||
[1822] = 0,
|
||||
[1823] = 1,
|
||||
[1824] = 0,
|
||||
[1825] = 15,
|
||||
[1826] = 1,
|
||||
[1827] = 1,
|
||||
[1828] = 0,
|
||||
[1829] = 0,
|
||||
[1830] = 0,
|
||||
[1831] = 0,
|
||||
[1832] = 0,
|
||||
[1833] = 0,
|
||||
[1834] = 15,
|
||||
[1835] = 10,
|
||||
[1836] = 8,
|
||||
[1837] = 8,
|
||||
[1838] = 0,
|
||||
[1839] = 1,
|
||||
[1840] = 0,
|
||||
[1841] = 0,
|
||||
[1842] = 1,
|
||||
[1843] = 1,
|
||||
[1844] = 0,
|
||||
[1845] = 0,
|
||||
[1846] = 1,
|
||||
[1847] = 1,
|
||||
[1848] = 1,
|
||||
[1849] = 1,
|
||||
[1850] = 0,
|
||||
[1851] = 8,
|
||||
[1852] = 0,
|
||||
[1853] = 1,
|
||||
[1854] = 0,
|
||||
[1855] = 0,
|
||||
[1856] = 0,
|
||||
[1857] = 8,
|
||||
[1858] = 0,
|
||||
[1859] = 0,
|
||||
[1860] = 0,
|
||||
[1862] = 1,
|
||||
[1863] = 1,
|
||||
[1864] = 1,
|
||||
[1865] = 1,
|
||||
[1866] = 0,
|
||||
[1867] = 0,
|
||||
[1868] = 0,
|
||||
[1869] = 0,
|
||||
[1870] = 0,
|
||||
[1871] = 1,
|
||||
[1872] = 0,
|
||||
[1873] = 1,
|
||||
[1874] = 0,
|
||||
[1875] = 0,
|
||||
[1876] = 0,
|
||||
[1877] = 1,
|
||||
[1878] = 1,
|
||||
[1879] = 1,
|
||||
[1880] = 1,
|
||||
[1881] = 1,
|
||||
[1882] = 1,
|
||||
[1883] = 7,
|
||||
[1890] = 1,
|
||||
[1896] = 8,
|
||||
[1909] = 9,
|
||||
[1913] = 0,
|
||||
[1916] = 0,
|
||||
[1930] = 0,
|
||||
[1931] = 0,
|
||||
[1934] = 4,
|
||||
[1935] = 2,
|
||||
[1936] = 0,
|
||||
[1937] = 0,
|
||||
[1938] = 0,
|
||||
[1939] = 0,
|
||||
[1940] = 0,
|
||||
[1941] = 0,
|
||||
[1942] = 0,
|
||||
[1943] = 0,
|
||||
[1944] = 0,
|
||||
[1945] = 0,
|
||||
[1951] = 12,
|
||||
[1952] = 0,
|
||||
[1956] = 0,
|
||||
[1957] = 0,
|
||||
[1958] = 1,
|
||||
[1959] = 0,
|
||||
[1960] = 0,
|
||||
[1961] = 0,
|
||||
[1962] = 1,
|
||||
[1963] = 1,
|
||||
[1964] = 1,
|
||||
[1965] = 1,
|
||||
[1966] = 0,
|
||||
[1967] = 0,
|
||||
[1971] = 0,
|
||||
[1972] = 0,
|
||||
[1990] = 1,
|
||||
[1992] = 9,
|
||||
[1995] = 2,
|
||||
[1997] = 4,
|
||||
[1998] = 1,
|
||||
[2029] = 1,
|
||||
[2074] = 0,
|
||||
[3149] = 2,
|
||||
[3150] = 0,
|
||||
[3151] = 4,
|
||||
[3152] = 0,
|
||||
}
|
||||
@@ -1,853 +0,0 @@
|
||||
-- File was auto-generated by generateFactionTemplate.py
|
||||
|
||||
---@type QuestieDB
|
||||
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
|
||||
|
||||
---@type table<FactionId, EnemyGroup>
|
||||
QuestieDB.factionTemplate = {
|
||||
[1] = 12,
|
||||
[2] = 10,
|
||||
[3] = 12,
|
||||
[4] = 12,
|
||||
[5] = 10,
|
||||
[6] = 10,
|
||||
[7] = 0,
|
||||
[10] = 0,
|
||||
[11] = 12,
|
||||
[12] = 4,
|
||||
[14] = 1,
|
||||
[15] = 0,
|
||||
[16] = 1,
|
||||
[17] = 1,
|
||||
[18] = 1,
|
||||
[19] = 1,
|
||||
[20] = 1,
|
||||
[21] = 1,
|
||||
[22] = 1,
|
||||
[23] = 4,
|
||||
[24] = 1,
|
||||
[25] = 0,
|
||||
[26] = 1,
|
||||
[27] = 1,
|
||||
[28] = 1,
|
||||
[29] = 2,
|
||||
[30] = 1,
|
||||
[31] = 0,
|
||||
[32] = 0,
|
||||
[33] = 0,
|
||||
[34] = 0,
|
||||
[35] = 0,
|
||||
[36] = 0,
|
||||
[37] = 1,
|
||||
[38] = 1,
|
||||
[39] = 1,
|
||||
[40] = 1,
|
||||
[41] = 1,
|
||||
[42] = 0,
|
||||
[43] = 0,
|
||||
[44] = 1,
|
||||
[45] = 1,
|
||||
[46] = 1,
|
||||
[47] = 1,
|
||||
[48] = 1,
|
||||
[49] = 1,
|
||||
[50] = 1,
|
||||
[51] = 1,
|
||||
[52] = 0,
|
||||
[53] = 12,
|
||||
[54] = 1,
|
||||
[55] = 4,
|
||||
[56] = 12,
|
||||
[57] = 12,
|
||||
[58] = 0,
|
||||
[59] = 1,
|
||||
[60] = 1,
|
||||
[61] = 1,
|
||||
[62] = 1,
|
||||
[63] = 1,
|
||||
[64] = 4,
|
||||
[65] = 0,
|
||||
[66] = 1,
|
||||
[67] = 1,
|
||||
[68] = 2,
|
||||
[69] = 0,
|
||||
[70] = 1,
|
||||
[71] = 10,
|
||||
[72] = 1,
|
||||
[73] = 1,
|
||||
[74] = 1,
|
||||
[76] = 4,
|
||||
[77] = 0,
|
||||
[78] = 1,
|
||||
[79] = 12,
|
||||
[80] = 4,
|
||||
[81] = 1,
|
||||
[82] = 1,
|
||||
[83] = 2,
|
||||
[84] = 4,
|
||||
[85] = 10,
|
||||
[86] = 0,
|
||||
[87] = 1,
|
||||
[88] = 4,
|
||||
[89] = 1,
|
||||
[90] = 1,
|
||||
[91] = 1,
|
||||
[92] = 1,
|
||||
[93] = 1,
|
||||
[94] = 0,
|
||||
[95] = 1,
|
||||
[96] = 0,
|
||||
[97] = 0,
|
||||
[98] = 10,
|
||||
[99] = 0,
|
||||
[100] = 9,
|
||||
[101] = 4,
|
||||
[102] = 2,
|
||||
[103] = 1,
|
||||
[104] = 2,
|
||||
[105] = 10,
|
||||
[106] = 10,
|
||||
[107] = 1,
|
||||
[108] = 0,
|
||||
[109] = 1,
|
||||
[110] = 1,
|
||||
[111] = 1,
|
||||
[112] = 1,
|
||||
[113] = 0,
|
||||
[114] = 1,
|
||||
[115] = 12,
|
||||
[116] = 10,
|
||||
[118] = 2,
|
||||
[119] = 1,
|
||||
[120] = 0,
|
||||
[121] = 8,
|
||||
[122] = 4,
|
||||
[123] = 4,
|
||||
[124] = 4,
|
||||
[125] = 2,
|
||||
[126] = 2,
|
||||
[127] = 1,
|
||||
[128] = 1,
|
||||
[129] = 1,
|
||||
[130] = 1,
|
||||
[131] = 1,
|
||||
[132] = 1,
|
||||
[133] = 1,
|
||||
[134] = 1,
|
||||
[148] = 1,
|
||||
[149] = 0,
|
||||
[150] = 12,
|
||||
[151] = 4,
|
||||
[152] = 1,
|
||||
[153] = 0,
|
||||
[154] = 1,
|
||||
[168] = 1,
|
||||
[188] = 0,
|
||||
[189] = 0,
|
||||
[190] = 0,
|
||||
[208] = 0,
|
||||
[209] = 0,
|
||||
[210] = 12,
|
||||
[230] = 1,
|
||||
[231] = 8,
|
||||
[232] = 8,
|
||||
[233] = 1,
|
||||
[250] = 8,
|
||||
[270] = 1,
|
||||
[290] = 0,
|
||||
[310] = 1,
|
||||
[311] = 0,
|
||||
[312] = 1,
|
||||
[330] = 0,
|
||||
[350] = 0,
|
||||
[370] = 1,
|
||||
[371] = 4,
|
||||
[390] = 0,
|
||||
[410] = 1,
|
||||
[411] = 1,
|
||||
[412] = 2,
|
||||
[413] = 1,
|
||||
[414] = 1,
|
||||
[415] = 1,
|
||||
[416] = 0,
|
||||
[430] = 0,
|
||||
[450] = 1,
|
||||
[470] = 1,
|
||||
[471] = 0,
|
||||
[472] = 1,
|
||||
[473] = 0,
|
||||
[474] = 0,
|
||||
[475] = 8,
|
||||
[494] = 1,
|
||||
[495] = 8,
|
||||
[514] = 1,
|
||||
[534] = 0,
|
||||
[554] = 7,
|
||||
[574] = 1,
|
||||
[575] = 1,
|
||||
[594] = 0,
|
||||
[614] = 0,
|
||||
[634] = 0,
|
||||
[635] = 0,
|
||||
[636] = 1,
|
||||
[637] = 8,
|
||||
[654] = 1,
|
||||
[655] = 5,
|
||||
[674] = 0,
|
||||
[694] = 4,
|
||||
[695] = 0,
|
||||
[714] = 0,
|
||||
[734] = 0,
|
||||
[735] = 0,
|
||||
[736] = 1,
|
||||
[754] = 1,
|
||||
[774] = 0,
|
||||
[775] = 0,
|
||||
[776] = 0,
|
||||
[777] = 0,
|
||||
[778] = 1,
|
||||
[794] = 0,
|
||||
[795] = 1,
|
||||
[814] = 0,
|
||||
[834] = 1,
|
||||
[854] = 8,
|
||||
[855] = 0,
|
||||
[874] = 4,
|
||||
[875] = 4,
|
||||
[876] = 2,
|
||||
[877] = 10,
|
||||
[894] = 4,
|
||||
[914] = 0,
|
||||
[934] = 1,
|
||||
[954] = 1,
|
||||
[974] = 1,
|
||||
[994] = 0,
|
||||
[995] = 2,
|
||||
[996] = 8,
|
||||
[1014] = 0,
|
||||
[1015] = 0,
|
||||
[1034] = 2,
|
||||
[1054] = 12,
|
||||
[1055] = 4,
|
||||
[1074] = 2,
|
||||
[1075] = 4,
|
||||
[1076] = 4,
|
||||
[1077] = 4,
|
||||
[1078] = 4,
|
||||
[1080] = 0,
|
||||
[1081] = 1,
|
||||
[1094] = 0,
|
||||
[1095] = 0,
|
||||
[1096] = 12,
|
||||
[1097] = 4,
|
||||
[1114] = 1,
|
||||
[1134] = 10,
|
||||
[1154] = 10,
|
||||
[1174] = 2,
|
||||
[1194] = 0,
|
||||
[1214] = 10,
|
||||
[1215] = 2,
|
||||
[1216] = 12,
|
||||
[1217] = 4,
|
||||
[1234] = 1,
|
||||
[1235] = 1,
|
||||
[1236] = 1,
|
||||
[1254] = 8,
|
||||
[1274] = 4,
|
||||
[1275] = 2,
|
||||
[1294] = 1,
|
||||
[1314] = 2,
|
||||
[1315] = 4,
|
||||
[1334] = 4,
|
||||
[1335] = 2,
|
||||
[1354] = 0,
|
||||
[1355] = 0,
|
||||
[1374] = 1,
|
||||
[1375] = 9,
|
||||
[1394] = 1,
|
||||
[1395] = 1,
|
||||
[1414] = 4,
|
||||
[1415] = 2,
|
||||
[1434] = 1,
|
||||
[1454] = 0,
|
||||
[1474] = 0,
|
||||
[1475] = 0,
|
||||
[1494] = 2,
|
||||
[1495] = 10,
|
||||
[1496] = 2,
|
||||
[1514] = 4,
|
||||
[1515] = 2,
|
||||
[1534] = 4,
|
||||
[1554] = 8,
|
||||
[1555] = 0,
|
||||
[1574] = 0,
|
||||
[1575] = 12,
|
||||
[1576] = 4,
|
||||
[1577] = 4,
|
||||
[1594] = 12,
|
||||
[1595] = 10,
|
||||
[1596] = 12,
|
||||
[1597] = 10,
|
||||
[1598] = 2,
|
||||
[1599] = 4,
|
||||
[1600] = 8,
|
||||
[1601] = 0,
|
||||
[1602] = 2,
|
||||
[1603] = 10,
|
||||
[1604] = 2,
|
||||
[1605] = 1,
|
||||
[1606] = 2,
|
||||
[1607] = 2,
|
||||
[1608] = 8,
|
||||
[1610] = 10,
|
||||
[1611] = 4,
|
||||
[1612] = 2,
|
||||
[1613] = 0,
|
||||
[1614] = 1,
|
||||
[1615] = 8,
|
||||
[1616] = 0,
|
||||
[1617] = 1,
|
||||
[1618] = 12,
|
||||
[1619] = 10,
|
||||
[1620] = 15,
|
||||
[1621] = 4,
|
||||
[1622] = 4,
|
||||
[1623] = 2,
|
||||
[1624] = 8,
|
||||
[1625] = 8,
|
||||
[1626] = 1,
|
||||
[1627] = 2,
|
||||
[1628] = 2,
|
||||
[1629] = 12,
|
||||
[1630] = 7,
|
||||
[1634] = 0,
|
||||
[1635] = 0,
|
||||
[1636] = 2,
|
||||
[1637] = 2,
|
||||
[1638] = 4,
|
||||
[1639] = 12,
|
||||
[1640] = 4,
|
||||
[1641] = 2,
|
||||
[1642] = 4,
|
||||
[1643] = 1,
|
||||
[1644] = 4,
|
||||
[1645] = 12,
|
||||
[1646] = 4,
|
||||
[1647] = 12,
|
||||
[1648] = 4,
|
||||
[1649] = 4,
|
||||
[1650] = 10,
|
||||
[1651] = 2,
|
||||
[1652] = 2,
|
||||
[1653] = 2,
|
||||
[1654] = 4,
|
||||
[1655] = 4,
|
||||
[1656] = 10,
|
||||
[1657] = 2,
|
||||
[1658] = 2,
|
||||
[1659] = 8,
|
||||
[1660] = 8,
|
||||
[1661] = 8,
|
||||
[1662] = 1,
|
||||
[1663] = 1,
|
||||
[1664] = 1,
|
||||
[1665] = 8,
|
||||
[1666] = 12,
|
||||
[1667] = 4,
|
||||
[1668] = 10,
|
||||
[1669] = 2,
|
||||
[1670] = 2,
|
||||
[1671] = 4,
|
||||
[1672] = 0,
|
||||
[1673] = 0,
|
||||
[1674] = 0,
|
||||
[1675] = 0,
|
||||
[1676] = 0,
|
||||
[1677] = 0,
|
||||
[1678] = 1,
|
||||
[1679] = 1,
|
||||
[1680] = 0,
|
||||
[1681] = 1,
|
||||
[1682] = 0,
|
||||
[1683] = 0,
|
||||
[1684] = 0,
|
||||
[1685] = 4,
|
||||
[1686] = 4,
|
||||
[1687] = 1,
|
||||
[1688] = 0,
|
||||
[1689] = 0,
|
||||
[1690] = 0,
|
||||
[1691] = 0,
|
||||
[1692] = 1,
|
||||
[1693] = 1,
|
||||
[1694] = 4,
|
||||
[1695] = 2,
|
||||
[1696] = 0,
|
||||
[1697] = 1,
|
||||
[1698] = 4,
|
||||
[1699] = 4,
|
||||
[1700] = 4,
|
||||
[1701] = 7,
|
||||
[1702] = 7,
|
||||
[1703] = 0,
|
||||
[1704] = 1,
|
||||
[1705] = 1,
|
||||
[1706] = 1,
|
||||
[1707] = 8,
|
||||
[1708] = 8,
|
||||
[1709] = 8,
|
||||
[1710] = 8,
|
||||
[1711] = 1,
|
||||
[1712] = 1,
|
||||
[1713] = 1,
|
||||
[1714] = 7,
|
||||
[1715] = 1,
|
||||
[1716] = 8,
|
||||
[1717] = 0,
|
||||
[1718] = 0,
|
||||
[1719] = 8,
|
||||
[1720] = 1,
|
||||
[1721] = 12,
|
||||
[1722] = 4,
|
||||
[1723] = 4,
|
||||
[1724] = 4,
|
||||
[1725] = 8,
|
||||
[1726] = 0,
|
||||
[1727] = 8,
|
||||
[1728] = 8,
|
||||
[1729] = 2,
|
||||
[1730] = 8,
|
||||
[1731] = 8,
|
||||
[1732] = 4,
|
||||
[1733] = 4,
|
||||
[1734] = 2,
|
||||
[1735] = 2,
|
||||
[1736] = 0,
|
||||
[1737] = 4,
|
||||
[1738] = 1,
|
||||
[1739] = 1,
|
||||
[1740] = 1,
|
||||
[1741] = 8,
|
||||
[1742] = 1,
|
||||
[1743] = 0,
|
||||
[1744] = 0,
|
||||
[1745] = 2,
|
||||
[1746] = 0,
|
||||
[1747] = 0,
|
||||
[1748] = 1,
|
||||
[1749] = 0,
|
||||
[1750] = 1,
|
||||
[1751] = 1,
|
||||
[1752] = 7,
|
||||
[1753] = 7,
|
||||
[1754] = 7,
|
||||
[1755] = 0,
|
||||
[1756] = 0,
|
||||
[1757] = 0,
|
||||
[1758] = 0,
|
||||
[1759] = 0,
|
||||
[1760] = 0,
|
||||
[1761] = 15,
|
||||
[1762] = 7,
|
||||
[1763] = 7,
|
||||
[1764] = 7,
|
||||
[1765] = 7,
|
||||
[1766] = 0,
|
||||
[1767] = 0,
|
||||
[1768] = 15,
|
||||
[1769] = 15,
|
||||
[1770] = 0,
|
||||
[1771] = 1,
|
||||
[1772] = 1,
|
||||
[1773] = 0,
|
||||
[1774] = 0,
|
||||
[1775] = 8,
|
||||
[1776] = 0,
|
||||
[1777] = 0,
|
||||
[1778] = 0,
|
||||
[1779] = 0,
|
||||
[1780] = 1,
|
||||
[1781] = 1,
|
||||
[1782] = 1,
|
||||
[1783] = 1,
|
||||
[1784] = 1,
|
||||
[1785] = 1,
|
||||
[1786] = 1,
|
||||
[1787] = 1,
|
||||
[1788] = 8,
|
||||
[1789] = 7,
|
||||
[1790] = 1,
|
||||
[1791] = 1,
|
||||
[1792] = 1,
|
||||
[1793] = 7,
|
||||
[1794] = 0,
|
||||
[1795] = 0,
|
||||
[1796] = 1,
|
||||
[1797] = 0,
|
||||
[1798] = 1,
|
||||
[1799] = 1,
|
||||
[1800] = 1,
|
||||
[1801] = 10,
|
||||
[1802] = 12,
|
||||
[1803] = 4,
|
||||
[1804] = 2,
|
||||
[1805] = 0,
|
||||
[1806] = 8,
|
||||
[1807] = 8,
|
||||
[1808] = 1,
|
||||
[1809] = 1,
|
||||
[1810] = 1,
|
||||
[1811] = 1,
|
||||
[1812] = 8,
|
||||
[1813] = 1,
|
||||
[1814] = 1,
|
||||
[1815] = 1,
|
||||
[1816] = 0,
|
||||
[1818] = 0,
|
||||
[1819] = 12,
|
||||
[1820] = 0,
|
||||
[1821] = 0,
|
||||
[1822] = 0,
|
||||
[1823] = 1,
|
||||
[1824] = 0,
|
||||
[1825] = 15,
|
||||
[1826] = 1,
|
||||
[1827] = 1,
|
||||
[1828] = 0,
|
||||
[1829] = 0,
|
||||
[1830] = 0,
|
||||
[1831] = 0,
|
||||
[1832] = 0,
|
||||
[1833] = 0,
|
||||
[1834] = 15,
|
||||
[1835] = 10,
|
||||
[1836] = 8,
|
||||
[1837] = 8,
|
||||
[1838] = 0,
|
||||
[1839] = 1,
|
||||
[1840] = 0,
|
||||
[1841] = 0,
|
||||
[1842] = 1,
|
||||
[1843] = 1,
|
||||
[1844] = 0,
|
||||
[1845] = 0,
|
||||
[1846] = 1,
|
||||
[1847] = 1,
|
||||
[1848] = 1,
|
||||
[1849] = 1,
|
||||
[1850] = 0,
|
||||
[1851] = 8,
|
||||
[1852] = 0,
|
||||
[1853] = 1,
|
||||
[1854] = 0,
|
||||
[1855] = 0,
|
||||
[1856] = 0,
|
||||
[1857] = 8,
|
||||
[1858] = 0,
|
||||
[1859] = 0,
|
||||
[1860] = 0,
|
||||
[1862] = 1,
|
||||
[1863] = 1,
|
||||
[1864] = 1,
|
||||
[1865] = 1,
|
||||
[1866] = 0,
|
||||
[1867] = 0,
|
||||
[1868] = 0,
|
||||
[1869] = 0,
|
||||
[1870] = 0,
|
||||
[1871] = 1,
|
||||
[1872] = 0,
|
||||
[1873] = 1,
|
||||
[1874] = 0,
|
||||
[1875] = 0,
|
||||
[1876] = 0,
|
||||
[1877] = 1,
|
||||
[1878] = 1,
|
||||
[1879] = 1,
|
||||
[1880] = 1,
|
||||
[1881] = 1,
|
||||
[1882] = 1,
|
||||
[1883] = 7,
|
||||
[1884] = 1,
|
||||
[1885] = 1,
|
||||
[1886] = 1,
|
||||
[1887] = 0,
|
||||
[1888] = 1,
|
||||
[1889] = 1,
|
||||
[1890] = 1,
|
||||
[1891] = 4,
|
||||
[1892] = 4,
|
||||
[1893] = 4,
|
||||
[1894] = 1,
|
||||
[1895] = 1,
|
||||
[1896] = 8,
|
||||
[1897] = 2,
|
||||
[1898] = 4,
|
||||
[1899] = 4,
|
||||
[1900] = 2,
|
||||
[1901] = 2,
|
||||
[1902] = 1,
|
||||
[1904] = 1,
|
||||
[1905] = 0,
|
||||
[1906] = 1,
|
||||
[1907] = 8,
|
||||
[1908] = 0,
|
||||
[1909] = 9,
|
||||
[1910] = 0,
|
||||
[1911] = 0,
|
||||
[1912] = 0,
|
||||
[1913] = 0,
|
||||
[1914] = 1,
|
||||
[1915] = 0,
|
||||
[1916] = 0,
|
||||
[1917] = 1,
|
||||
[1918] = 2,
|
||||
[1919] = 1,
|
||||
[1920] = 4,
|
||||
[1921] = 2,
|
||||
[1922] = 2,
|
||||
[1923] = 2,
|
||||
[1924] = 1,
|
||||
[1925] = 9,
|
||||
[1926] = 4,
|
||||
[1927] = 4,
|
||||
[1928] = 2,
|
||||
[1929] = 2,
|
||||
[1930] = 0,
|
||||
[1931] = 0,
|
||||
[1932] = 15,
|
||||
[1933] = 0,
|
||||
[1934] = 4,
|
||||
[1935] = 2,
|
||||
[1936] = 0,
|
||||
[1937] = 0,
|
||||
[1938] = 0,
|
||||
[1939] = 0,
|
||||
[1940] = 0,
|
||||
[1941] = 0,
|
||||
[1942] = 0,
|
||||
[1943] = 0,
|
||||
[1944] = 0,
|
||||
[1945] = 15,
|
||||
[1947] = 15,
|
||||
[1948] = 1,
|
||||
[1949] = 0,
|
||||
[1950] = 0,
|
||||
[1951] = 12,
|
||||
[1952] = 0,
|
||||
[1953] = 1,
|
||||
[1954] = 1,
|
||||
[1955] = 1,
|
||||
[1956] = 0,
|
||||
[1957] = 0,
|
||||
[1958] = 1,
|
||||
[1959] = 0,
|
||||
[1960] = 0,
|
||||
[1961] = 0,
|
||||
[1962] = 1,
|
||||
[1963] = 1,
|
||||
[1964] = 1,
|
||||
[1965] = 1,
|
||||
[1966] = 0,
|
||||
[1967] = 0,
|
||||
[1968] = 8,
|
||||
[1969] = 1,
|
||||
[1970] = 1,
|
||||
[1971] = 0,
|
||||
[1972] = 0,
|
||||
[1973] = 4,
|
||||
[1974] = 4,
|
||||
[1975] = 7,
|
||||
[1976] = 4,
|
||||
[1977] = 4,
|
||||
[1978] = 2,
|
||||
[1979] = 2,
|
||||
[1980] = 2,
|
||||
[1981] = 2,
|
||||
[1982] = 1,
|
||||
[1983] = 1,
|
||||
[1984] = 1,
|
||||
[1985] = 1,
|
||||
[1986] = 8,
|
||||
[1987] = 0,
|
||||
[1988] = 7,
|
||||
[1989] = 1,
|
||||
[1990] = 1,
|
||||
[1991] = 7,
|
||||
[1992] = 9,
|
||||
[1993] = 4,
|
||||
[1994] = 4,
|
||||
[1995] = 2,
|
||||
[1997] = 4,
|
||||
[1998] = 1,
|
||||
[1999] = 0,
|
||||
[2000] = 0,
|
||||
[2001] = 1,
|
||||
[2003] = 1,
|
||||
[2004] = 4,
|
||||
[2005] = 7,
|
||||
[2006] = 0,
|
||||
[2007] = 0,
|
||||
[2008] = 0,
|
||||
[2009] = 0,
|
||||
[2010] = 0,
|
||||
[2011] = 0,
|
||||
[2012] = 0,
|
||||
[2013] = 0,
|
||||
[2014] = 0,
|
||||
[2016] = 0,
|
||||
[2017] = 0,
|
||||
[2018] = 7,
|
||||
[2019] = 2,
|
||||
[2020] = 2,
|
||||
[2021] = 4,
|
||||
[2022] = 1,
|
||||
[2023] = 6,
|
||||
[2024] = 2,
|
||||
[2025] = 4,
|
||||
[2026] = 4,
|
||||
[2027] = 4,
|
||||
[2028] = 0,
|
||||
[2029] = 1,
|
||||
[2030] = 1,
|
||||
[2031] = 0,
|
||||
[2032] = 4,
|
||||
[2033] = 1,
|
||||
[2034] = 2,
|
||||
[2035] = 7,
|
||||
[2036] = 8,
|
||||
[2037] = 4,
|
||||
[2038] = 0,
|
||||
[2039] = 1,
|
||||
[2040] = 4,
|
||||
[2041] = 0,
|
||||
[2042] = 7,
|
||||
[2043] = 7,
|
||||
[2044] = 4,
|
||||
[2045] = 2,
|
||||
[2046] = 8,
|
||||
[2047] = 0,
|
||||
[2048] = 0,
|
||||
[2049] = 0,
|
||||
[2050] = 0,
|
||||
[2051] = 0,
|
||||
[2052] = 0,
|
||||
[2053] = 0,
|
||||
[2054] = 0,
|
||||
[2055] = 2,
|
||||
[2056] = 2,
|
||||
[2057] = 1,
|
||||
[2058] = 0,
|
||||
[2059] = 0,
|
||||
[2060] = 0,
|
||||
[2061] = 0,
|
||||
[2062] = 0,
|
||||
[2063] = 0,
|
||||
[2064] = 0,
|
||||
[2065] = 0,
|
||||
[2066] = 0,
|
||||
[2067] = 8,
|
||||
[2068] = 7,
|
||||
[2069] = 7,
|
||||
[2070] = 0,
|
||||
[2071] = 0,
|
||||
[2072] = 0,
|
||||
[2073] = 0,
|
||||
[2074] = 0,
|
||||
[2075] = 1,
|
||||
[2076] = 0,
|
||||
[2077] = 0,
|
||||
[2078] = 0,
|
||||
[2079] = 0,
|
||||
[2080] = 7,
|
||||
[2081] = 0,
|
||||
[2082] = 0,
|
||||
[2083] = 0,
|
||||
[2084] = 0,
|
||||
[2085] = 0,
|
||||
[2086] = 1,
|
||||
[2087] = 1,
|
||||
[2088] = 1,
|
||||
[2089] = 1,
|
||||
[2090] = 0,
|
||||
[2091] = 0,
|
||||
[2092] = 0,
|
||||
[2093] = 0,
|
||||
[2094] = 0,
|
||||
[2095] = 1,
|
||||
[2096] = 0,
|
||||
[2097] = 1,
|
||||
[2098] = 1,
|
||||
[2099] = 1,
|
||||
[2100] = 8,
|
||||
[2101] = 0,
|
||||
[2102] = 1,
|
||||
[2103] = 1,
|
||||
[2104] = 0,
|
||||
[2105] = 0,
|
||||
[2106] = 1,
|
||||
[2107] = 0,
|
||||
[2108] = 1,
|
||||
[2109] = 1,
|
||||
[2110] = 8,
|
||||
[2111] = 1,
|
||||
[2112] = 0,
|
||||
[2113] = 1,
|
||||
[2114] = 1,
|
||||
[2115] = 8,
|
||||
[2116] = 1,
|
||||
[2117] = 8,
|
||||
[2118] = 0,
|
||||
[2119] = 1,
|
||||
[2120] = 1,
|
||||
[2121] = 2,
|
||||
[2122] = 2,
|
||||
[2123] = 2,
|
||||
[2124] = 1,
|
||||
[2125] = 1,
|
||||
[2126] = 1,
|
||||
[2127] = 0,
|
||||
[2128] = 0,
|
||||
[2129] = 10,
|
||||
[2130] = 12,
|
||||
[2131] = 0,
|
||||
[2132] = 2,
|
||||
[2133] = 1,
|
||||
[2134] = 0,
|
||||
[2135] = 0,
|
||||
[2136] = 0,
|
||||
[2137] = 0,
|
||||
[2138] = 0,
|
||||
[2139] = 1,
|
||||
[2140] = 0,
|
||||
[2141] = 8,
|
||||
[2142] = 12,
|
||||
[2143] = 4,
|
||||
[2144] = 0,
|
||||
[2145] = 7,
|
||||
[2148] = 0,
|
||||
[2150] = 1,
|
||||
[2155] = 4,
|
||||
[2156] = 0,
|
||||
[2176] = 2,
|
||||
[2178] = 4,
|
||||
[2189] = 15,
|
||||
[2190] = 15,
|
||||
[2191] = 15,
|
||||
[2209] = 7,
|
||||
[2210] = 0,
|
||||
[2212] = 7,
|
||||
[2214] = 0,
|
||||
[2216] = 0,
|
||||
[2217] = 0,
|
||||
[2218] = 0,
|
||||
[2219] = 0,
|
||||
[2226] = 0,
|
||||
[2230] = 0,
|
||||
[2235] = 2,
|
||||
[2236] = 4,
|
||||
[3149] = 2,
|
||||
[3150] = 0,
|
||||
[3151] = 4,
|
||||
[3152] = 0,
|
||||
}
|
||||
@@ -1,317 +0,0 @@
|
||||
---@class MeetingStones
|
||||
local MeetingStones = QuestieLoader:CreateModule("MeetingStones")
|
||||
local _MeetingStones = {}
|
||||
|
||||
---@type l10n
|
||||
local l10n = QuestieLoader:ImportModule("l10n")
|
||||
|
||||
|
||||
---@param objectId number
|
||||
---@return string?, string?
|
||||
function MeetingStones:GetLocalizedDungeonNameAndLevelRangeByObjectId(objectId)
|
||||
local tableEntry = _MeetingStones.levelRanges[objectId]
|
||||
|
||||
if (not tableEntry) then
|
||||
return nil, nil
|
||||
end
|
||||
|
||||
return l10n(tableEntry.name), tableEntry.range
|
||||
end
|
||||
|
||||
-- Useful link for level ranges
|
||||
-- https://www.wowhead.com/guide/dungeon-and-zone-level-and-item-level-requirements-1750
|
||||
_MeetingStones.levelRanges = {
|
||||
[178824] = {
|
||||
name = "Razorfen Downs",
|
||||
range = "(33-41)"
|
||||
},
|
||||
[178825] = {
|
||||
name = "Razorfen Kraul",
|
||||
range = "(23-31)"
|
||||
},
|
||||
[178826] = {
|
||||
name = "Dire Maul",
|
||||
range = "(54-61)"
|
||||
},
|
||||
[178827] = {
|
||||
name = "Maraudon",
|
||||
range = "(40-52)"
|
||||
},
|
||||
[178828] = {
|
||||
name = "Blackfathom Deeps",
|
||||
range = "(20-28)"
|
||||
},
|
||||
[178829] = {
|
||||
name = "Zul'Farrak",
|
||||
range = "(42-50)"
|
||||
},
|
||||
[178831] = {
|
||||
name = "Stratholme",
|
||||
range = "(56-61)"
|
||||
},
|
||||
[178832] = {
|
||||
name = "Scholomance",
|
||||
range = "(56-61)"
|
||||
},
|
||||
[178833] = {
|
||||
name = "Uldaman",
|
||||
range = "(36-44)"
|
||||
},
|
||||
[178834] = {
|
||||
name = "The Deadmines",
|
||||
range = "(16-24)"
|
||||
},
|
||||
[178844] = {
|
||||
name = "Scarlet Monastery",
|
||||
range = "(28-44)"
|
||||
},
|
||||
[178845] = {
|
||||
name = "Shadowfang Keep",
|
||||
range = "(17-25)"
|
||||
},
|
||||
[178884] = {
|
||||
name = "Wailing Caverns",
|
||||
range = "(16-24)"
|
||||
},
|
||||
[179554] = {
|
||||
name = "The Temple of Atal'Hakkar",
|
||||
range = "(45-54)"
|
||||
},
|
||||
[179555] = {
|
||||
name = "Gnomeregan",
|
||||
range = "(24-32)"
|
||||
},
|
||||
[179584] = {
|
||||
name = "Blackrock Mountain",
|
||||
range = "(48-61)"
|
||||
},
|
||||
[179585] = {
|
||||
name = "Blackrock Mountain",
|
||||
range = "(48-61)"
|
||||
},
|
||||
[179595] = {
|
||||
name = "The Stockade",
|
||||
range = "(21-29)"
|
||||
},
|
||||
[179596] = {
|
||||
name = "Ragefire Chasm",
|
||||
range = "(14-20)"
|
||||
},
|
||||
[182558] = {
|
||||
name = "Coilfang Reservoir",
|
||||
range = "(61-70)"
|
||||
},
|
||||
[182559] = {
|
||||
name = "Tempest Keep",
|
||||
range = "(69-70)"
|
||||
},
|
||||
[182560] = {
|
||||
name = "Caverns of Time",
|
||||
range = "(66-70)"
|
||||
},
|
||||
[184455] = {
|
||||
name = "Hellfire Citadel",
|
||||
range = "(58-70)"
|
||||
},
|
||||
[184456] = {
|
||||
name = "Magtheridon's Lair",
|
||||
range = "(70)"
|
||||
},
|
||||
[184458] = {
|
||||
name = "Auchindoun",
|
||||
range = "(63-70)"
|
||||
},
|
||||
[184462] = {
|
||||
name = "Gruul's Lair",
|
||||
range = "(70)"
|
||||
},
|
||||
[184463] = {
|
||||
name = "Karazhan",
|
||||
range = "(70)"
|
||||
},
|
||||
[185321] = {
|
||||
name = "Onyxia's Lair",
|
||||
range = "(60-70)"
|
||||
},
|
||||
[185322] = {
|
||||
name = "Ahn'Qiraj",
|
||||
range = "(60-70)"
|
||||
},
|
||||
[185433] = {
|
||||
name = "Zul'Gurub",
|
||||
range = "(60-70)"
|
||||
},
|
||||
[185550] = {
|
||||
name = "The Black Temple",
|
||||
range = "(70)"
|
||||
},
|
||||
[186251] = {
|
||||
name = "Zul'Aman",
|
||||
range = "(70)"
|
||||
},
|
||||
[188171] = {
|
||||
name = "Magisters' Terrace",
|
||||
range = "(70)"
|
||||
},
|
||||
[188172] = {
|
||||
name = "Sunwell Plateau",
|
||||
range = "(70)"
|
||||
},
|
||||
[188488] = {
|
||||
name = "Utgarde Keep",
|
||||
range = "(68-80)"
|
||||
},
|
||||
[191227] = {
|
||||
name = "Azjol-Nerub",
|
||||
range = "(70-80)"
|
||||
},
|
||||
[191529] = {
|
||||
name = "Drak'Tharon Keep",
|
||||
range = "(72-80)"
|
||||
},
|
||||
[192017] = {
|
||||
name = "Ulduar",
|
||||
range = "(75-80)"
|
||||
},
|
||||
[192399] = {
|
||||
name = "Utgarde Pinnacle",
|
||||
range = "(78-80)"
|
||||
},
|
||||
[192557] = {
|
||||
name = "Gundrak",
|
||||
range = "(74-80)"
|
||||
},
|
||||
[192622] = {
|
||||
name = "Wyrmrest Temple",
|
||||
range = "(80)"
|
||||
},
|
||||
[193166] = {
|
||||
name = "Naxxramas",
|
||||
range = "(77-80)"
|
||||
},
|
||||
[193602] = {
|
||||
name = "The Nexus",
|
||||
range = "(70-80)"
|
||||
},
|
||||
[195013] = {
|
||||
name = "Vault of Archavon",
|
||||
range = "(80)"
|
||||
},
|
||||
[195498] = {
|
||||
name = "Argent Tournament",
|
||||
range = "(80)"
|
||||
},
|
||||
[195695] = {
|
||||
name = "Icecrown Citadel",
|
||||
range = "(80)"
|
||||
},
|
||||
[202184] = {
|
||||
name = "The Frozen Halls",
|
||||
range = "(80)"
|
||||
},
|
||||
-- Cataclysm
|
||||
[197315] = {
|
||||
name = "Ragefire Chasm",
|
||||
range = "(14-20)"
|
||||
},
|
||||
[204962] = {
|
||||
name = "Throne of the Tides",
|
||||
range = "(77-85)"
|
||||
},
|
||||
[205553] = {
|
||||
name = "The Stockade",
|
||||
range = "(21-29)"
|
||||
},
|
||||
[205561] = {
|
||||
name = "Grim Batol",
|
||||
range = "(83-85)"
|
||||
},
|
||||
[205562] = {
|
||||
name = "The Lost City of the Tol'vir",
|
||||
range = "(83-85)"
|
||||
},
|
||||
[205564] = {
|
||||
name = "Halls of Origination",
|
||||
range = "(83-85)"
|
||||
},
|
||||
[205565] = {
|
||||
name = "The Stonecore",
|
||||
range = "(80-85)"
|
||||
},
|
||||
[205566] = {
|
||||
name = "Blackrock Caverns",
|
||||
range = "(77-85)"
|
||||
},
|
||||
[206668] = {
|
||||
name = "Baradin Hold",
|
||||
range = "(85)"
|
||||
},
|
||||
[207307] = {
|
||||
name = "The Vortex Pinnacle",
|
||||
range = "(80-85)"
|
||||
},
|
||||
[207308] = {
|
||||
name = "Throne of the Four Winds",
|
||||
range = "(85)"
|
||||
},
|
||||
[208225] = {
|
||||
name = "The Bastion of Twilight",
|
||||
range = "(85)"
|
||||
},
|
||||
[208358] = {
|
||||
name = "Zul'Gurub",
|
||||
range = "(85)"
|
||||
},
|
||||
[209128] = {
|
||||
name = "Firelands",
|
||||
range = "(85)"
|
||||
},
|
||||
[211720] = {
|
||||
name = "Terrace of Endless Spring",
|
||||
range = "(90)"
|
||||
},
|
||||
[212859] = {
|
||||
name = "Shado-Pan Monastery",
|
||||
range = "(87-90)"
|
||||
},
|
||||
[213170] = {
|
||||
name = "Temple of the Jade Serpent",
|
||||
range = "(85-90)"
|
||||
},
|
||||
[213254] = {
|
||||
name = "Mogu'shan Palace",
|
||||
range = "(87-90)"
|
||||
},
|
||||
[213255] = {
|
||||
name = "Mogu'shan Palace",
|
||||
range = "(87-90)"
|
||||
},
|
||||
[214169] = {
|
||||
name = "Gate of the Setting Sun",
|
||||
range = "(88-90)"
|
||||
},
|
||||
[214944] = {
|
||||
name = "Siege of Niuzao Temple",
|
||||
range = "(90)"
|
||||
},
|
||||
[214961] = {
|
||||
name = "Mogu'shan Vaults",
|
||||
range = "(90)"
|
||||
},
|
||||
[214978] = {
|
||||
name = "Heart of Fear",
|
||||
range = "(90)"
|
||||
},
|
||||
[214979] = {
|
||||
name = "Stormstout Brewery",
|
||||
range = "(85-90)"
|
||||
},
|
||||
[219216] = {
|
||||
name = "Throne of Thunder",
|
||||
range = "(90)"
|
||||
},
|
||||
[221268] = {
|
||||
name = "Siege of Orgrimmar",
|
||||
range = "(90)"
|
||||
},
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,136 +0,0 @@
|
||||
--Contains functions to fetch the Quest Experiance for quests.
|
||||
---@class QuestXP
|
||||
local QuestXP = QuestieLoader:CreateModule("QuestXP")
|
||||
|
||||
---@type Expansions
|
||||
local Expansions = QuestieLoader:ImportModule("Expansions")
|
||||
|
||||
---@type table<QuestId,table<Level,XP>> -- { questId={level, xp}, ..... }
|
||||
QuestXP.db = {}
|
||||
|
||||
local floor = floor
|
||||
local UnitLevel = UnitLevel
|
||||
|
||||
local globalXPMultiplier = 1
|
||||
|
||||
local _GetBuffMultiplier
|
||||
|
||||
function QuestXP.Init()
|
||||
if Expansions.Current >= Expansions.Wotlk then
|
||||
-- Handle Fast Track "Guild Perk"
|
||||
-- We don't check for Rank 1, because Blizzard made Rank 2 active for all characters
|
||||
local isFastTrackActive = IsSpellKnown(78632) -- Fast Track (Rank 2)
|
||||
if isFastTrackActive then
|
||||
globalXPMultiplier = globalXPMultiplier + 0.1 -- 10% bonus XP
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
---@return boolean
|
||||
local function HasDiscoverersDelight()
|
||||
for i = 1, 40 do
|
||||
local _, _, _, _, _, _, _, _, _, spellId = UnitAura("player", i, "HELPFUL")
|
||||
if spellId == nil then break end
|
||||
if spellId == 436412 then return true end
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
---@param xp XP
|
||||
---@param qLevel Level
|
||||
---@param ignorePlayerLevel boolean
|
||||
---@return XP experience
|
||||
local function getAdjustedXP(xp, qLevel, ignorePlayerLevel)
|
||||
local charLevel = UnitLevel("player")
|
||||
if charLevel == GetMaxPlayerLevel() and (not ignorePlayerLevel) then
|
||||
return 0
|
||||
end
|
||||
|
||||
--? These calculations are fetched from cmangos
|
||||
local xpMultiplier = 2 * (qLevel - charLevel) + 20
|
||||
if (xpMultiplier < 1) then
|
||||
xpMultiplier = 1
|
||||
elseif (xpMultiplier > 10) then
|
||||
xpMultiplier = 10
|
||||
end
|
||||
|
||||
xp = xp * xpMultiplier / 10
|
||||
--? I am unsure if the first xp <= 100 is actually correct... because some 85 xp quests should actually give 90
|
||||
if (xp <= 100) then
|
||||
xp = 5 * floor((xp + 2) / 5)
|
||||
elseif (xp <= 500) then
|
||||
xp = 10 * floor((xp + 5) / 10)
|
||||
elseif (xp <= 1000) then
|
||||
xp = 25 * floor((xp + 12) / 25)
|
||||
else
|
||||
xp = 50 * floor((xp + 25) / 50)
|
||||
end
|
||||
|
||||
return floor(xp * (globalXPMultiplier + _GetBuffMultiplier()))
|
||||
end
|
||||
|
||||
|
||||
---Get the adjusted XP for a quest.
|
||||
---@param questId QuestId
|
||||
---@param ignorePlayerLevel boolean
|
||||
---@return XP experience
|
||||
function QuestXP:GetQuestLogRewardXP(questId, ignorePlayerLevel)
|
||||
if QuestXP.db[questId] then
|
||||
local level = QuestXP.db[questId][1]
|
||||
local xp = QuestXP.db[questId][2]
|
||||
|
||||
--? We have -1 as a level for quests that are event quests and so on for TBC and WOTLK.
|
||||
if level > 0 and xp > 0 then
|
||||
return getAdjustedXP(xp, level, ignorePlayerLevel)
|
||||
end
|
||||
end
|
||||
|
||||
-- Return 0 if questId or xp data is not found for some reason
|
||||
return 0
|
||||
end
|
||||
|
||||
local exclusions = {
|
||||
[78612] = true,
|
||||
[78872] = true,
|
||||
[79101] = true,
|
||||
[79102] = true,
|
||||
[79103] = true,
|
||||
[80307] = true,
|
||||
[80308] = true,
|
||||
[80309] = true,
|
||||
}
|
||||
|
||||
function QuestXP.GetQuestRewardMoney(questId)
|
||||
local modifier = 1
|
||||
if Questie.IsSoD and HasDiscoverersDelight() and (not exclusions[questId]) then
|
||||
modifier = 3
|
||||
end
|
||||
return floor(GetQuestLogRewardMoney(questId) * modifier)
|
||||
end
|
||||
|
||||
---Check for temporary buffs being active that give XP bonuses.
|
||||
---@return number
|
||||
_GetBuffMultiplier = function()
|
||||
local buffMultiplier = 0
|
||||
for i = 1, 40 do
|
||||
local _, _, _, _, _, _, _, _, _, spellId, _ = UnitAura("player", i, "HELPFUL")
|
||||
if spellId == nil then
|
||||
break
|
||||
end
|
||||
|
||||
if spellId == 377749 then
|
||||
buffMultiplier = buffMultiplier + (Questie.IsTitanReforged and 1 or 0.5) -- Joyous Journeys
|
||||
elseif Questie.IsSoD and spellId == 436412 then
|
||||
buffMultiplier = buffMultiplier + (UnitLevel("player") < 50 and 1.5 or 0.5) -- Discoverer's Delight - 150% bonus XP till level 50 and 50% after
|
||||
elseif spellId == 46668 then
|
||||
buffMultiplier = buffMultiplier + 0.1 -- Darkmoon Faire
|
||||
elseif spellId == 95987 then
|
||||
buffMultiplier = buffMultiplier + 0.1 -- Unburdened (Hallow's End Alliance)
|
||||
elseif spellId == 24705 then
|
||||
buffMultiplier = buffMultiplier + 0.1 -- Grim Visage (Hallow's End Horde)
|
||||
end
|
||||
end
|
||||
|
||||
return buffMultiplier
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user