--DISPLAY function() if aura_env.statee then return aura_env.statee.text end end --QUEST_ACCEPTED QUEST_TURNED_IN CHAT_MSG_ADDON function(e, ...) if e == "CHAT_MSG_ADDON" then local identifier, msg, channel, sender = ... sender = sender:match("(.+)-") if identifier == "DQUEST" then local n, ID, pclass = msg:match("A(%d+)[-](%d+)[-](%d+)") n = tonumber(n) ID = tonumber(ID) pclass = tonumber(pclass) aura_env.guild[sender] = { ["n"] = n, ["ID"] = ID, ["pclass"] = pclass, } WeakAuras.ScanEvents("DAVE_QUEST_DING") end elseif e == "QUEST_ACCEPTED" then local ID = select(2, ...) if aura_env.questDatabase[ID] then aura_env.currentQuest = aura_env.questDatabase[ID] SendAddonMessage("DQUEST", "A" .. aura_env.questDatabase[ID] .. "-" .. ID .. "-" .. select(3, UnitClass("player")), "GUILD") end --elseif e == "QUEST_TURNED_IN" then -- local ID = select(1, ...) -- SendAddonMessage("DQUEST", "C" .. ID, "PARTY") end end --TSU --DAVE_QUEST_DING function(allstates, e) --local output = "" for k, v in pairs(allstates) do v.show = false v.changed = true end aura_env.quests = {} for k, v in pairs(aura_env.guild) do if not aura_env.quests[v.n] then aura_env.quests[v.n] = {} end if not aura_env.classList[k] then aura_env.classList[k] = v.pclass end aura_env.quests[v.n][#aura_env.quests[v.n] + 1] = k --print("aura_env.quests", aura_env.currentQuest) --DevTools_Dump(aura_env.quests) --print("aura_env.guild") --DevTools_Dump(aura_env.guild) --print("aura_env.quests[aura_env.currentQuest]") --DevTools_Dump(aura_env.quests[aura_env.currentQuest]) end --output = output .. "Your quest\n" if aura_env.currentQuest <= 1 then allstates[#allstates + 1] = { changed = true, show = true, text = "Your quest [" .. aura_env.currentQuest .. "/89] (" .. aura_env.questNames[aura_env.currentQuest] .. ")", } if aura_env.quests[aura_env.currentQuest] and type(aura_env.quests[aura_env.currentQuest]) == "table" then for k, v in pairs(aura_env.quests[aura_env.currentQuest]) do --output = output .. " " .. aura_env.classColor(aura_env.classList[v]) .. v .. "|r\n" allstates[#allstates + 1] = { changed = true, show = true, text = " " .. v, pclass = aura_env.classList[v], } end end --output = output .. "Next quest\n" allstates[#allstates + 1] = { changed = true, show = true, text = "Next quest (" .. aura_env.questNames[aura_env.currentQuest + 1] .. ")", } if aura_env.quests[aura_env.currentQuest + 1] and type(aura_env.quests[aura_env.currentQuest + 1]) == "table" then for k, v in pairs(aura_env.quests[aura_env.currentQuest + 1]) do --output = output .. " " .. aura_env.classColor(aura_env.classList[v]) .. v .. "|r\n" allstates[#allstates + 1] = { changed = true, show = true, text = " " .. v, pclass = aura_env.classList[v], } end end elseif aura_env.currentQuest > 1 and aura_env.currentQuest < 89 then --output = output .. "Previous Quest\n" allstates[#allstates + 1] = { changed = true, show = true, text = "Previous Quest (" .. aura_env.questNames[aura_env.currentQuest - 1] .. ")", } if aura_env.quests[aura_env.currentQuest - 1] and type(aura_env.quests[aura_env.currentQuest - 1]) == "table" then for k, v in pairs(aura_env.quests[aura_env.currentQuest - 1]) do --output = output .. " " .. aura_env.classColor(aura_env.classList[v]) .. v .. "|r\n" allstates[#allstates + 1] = { changed = true, show = true, text = " " .. v, pclass = aura_env.classList[v], } end end --output = output .. "Your quest\n" allstates[#allstates + 1] = { changed = true, show = true, text = "Your quest [" .. aura_env.currentQuest .. "/89] (" .. aura_env.questNames[aura_env.currentQuest] .. ")", } if aura_env.quests[aura_env.currentQuest] and type(aura_env.quests[aura_env.currentQuest]) == "table" then for k, v in pairs(aura_env.quests[aura_env.currentQuest]) do --output = output .. " " .. aura_env.classColor(aura_env.classList[v]) .. v .. "|r\n" allstates[#allstates + 1] = { changed = true, show = true, text = " " .. v, pclass = aura_env.classList[v], } end end --output = output .. "Next quest\n" allstates[#allstates + 1] = { changed = true, show = true, text = "Next quest (" .. aura_env.questNames[aura_env.currentQuest + 1] .. ")", } if aura_env.quests[aura_env.currentQuest + 1] and type(aura_env.quests[aura_env.currentQuest + 1]) == "table" then for k, v in pairs(aura_env.quests[aura_env.currentQuest + 1]) do --output = output .. " " .. aura_env.classColor(aura_env.classList[v]) .. v .. "|r\n" allstates[#allstates + 1] = { changed = true, show = true, text = " " .. v, pclass = aura_env.classList[v], } end end elseif aura_env.currentQuest == 89 then --output = output .. "Previous Quest\n" allstates[#allstates + 1] = { changed = true, show = true, text = "Previous Quest (" .. aura_env.questNames[aura_env.currentQuest - 1] .. ")", } if aura_env.quests[aura_env.currentQuest - 1] and type(aura_env.quests[aura_env.currentQuest - 1]) == "table" then for k, v in pairs(aura_env.quests[aura_env.currentQuest - 1]) do --output = output .. " " .. aura_env.classColor(aura_env.classList[v]) .. v .. "|r\n" allstates[#allstates + 1] = { changed = true, show = true, text = " " .. v, pclass = aura_env.classList[v], } end end --output = output .. "Your quest\n" allstates[#allstates + 1] = { changed = true, show = true, text = "Your quest [" .. aura_env.currentQuest .. "/89] (" .. aura_env.questNames[aura_env.currentQuest] .. ")", } if aura_env.quests[aura_env.currentQuest] and type(aura_env.quests[aura_env.currentQuest]) == "table" then for k, v in pairs(aura_env.quests[aura_env.currentQuest]) do --output = output .. " " .. aura_env.classColor(aura_env.classList[v]) .. v .. "|r\n" allstates[#allstates + 1] = { changed = true, show = true, text = " " .. v, pclass = aura_env.classList[v], } end end end --DevTools_Dump(allstates) return true end --ANIMATION / COLOR function() if aura_env.statee.pclass then return aura_env.classColor(aura_env.statee.pclass) end end --INIT local plswork = RegisterAddonMessagePrefix("DQUEST") if plswork == false then print("no work :( 001") end aura_env.currentQuest = 1 aura_env.guild = {} aura_env.quests = {} aura_env.classList = {} aura_env.questDatabase = { [47835] = 1, [47867] = 2, [47223] = 3, [47224] = 4, [48440] = 5, [46938] = 6, [47589] = 7, [46297] = 8, [48483] = 9, [47627] = 10, [47641] = 11, [46732] = 12, [46816] = 13, [46839] = 14, [46840] = 15, [46841] = 16, [46842] = 17, [46843] = 18, [48500] = 19, [47431] = 20, [46213] = 21, [40238] = 22, [47541] = 23, [47508] = 24, [47771] = 25, [47526] = 26, [47754] = 27, [47652] = 28, [47653] = 29, [47743] = 30, [49143] = 31, [47287] = 32, [48559] = 33, [48199] = 34, [48200] = 35, [48201] = 36, [48202] = 37, [47473] = 38, [47889] = 39, [47890] = 40, [47891] = 41, [47892] = 42, [47986] = 43, [47987] = 44, [47988] = 45, [47991] = 46, [47990] = 47, [47989] = 48, [47992] = 49, [47993] = 50, [47994] = 51, [48081] = 52, [46815] = 53, [46818] = 54, [46834] = 55, [47066] = 56, [46941] = 57, [47686] = 58, [47882] = 59, [47688] = 60, [47883] = 61, [47689] = 62, [47685] = 63, [47687] = 64, [47690] = 65, [48107] = 66, [48461] = 67, [48344] = 68, [47691] = 69, [47854] = 70, [47995] = 71, [47853] = 72, [48345] = 73, [47855] = 74, [47856] = 75, [47416] = 76, [47238] = 77, [40761] = 78, [47101] = 79, [47180] = 80, [47100] = 81, [47183] = 82, [47184] = 83, [47203] = 84, [47217] = 85, [47218] = 86, [47219] = 87, [47220] = 88, [48560] = 89, } aura_env.questNames = { [1] = "The Hand of Fate", [2] = "Two If By Sea", [3] = "Light's Exodus", [4] = "The Vindicaar", [5] = "Into the Night", [6] = "Alone in the Abyss", [7] = "Righteous Fury", [8] = "Overwhelming Power", [9] = "A Stranger's Plea", [10] = "Vengeance", [11] = "Sign of Resistance", [12] = "The Prophet's Gambit", [13] = "Rendezvous", [14] = "From Darkness", [15] = "Prisoners No More", [16] = "Threat Reduction", [17] = "A Strike at the Heart", [18] = "Return to the Vindicaar", [19] = "A Moment of Respite", [20] = "Gathering Light", [21] = "Crystals Not Included", [22] = "A Grim Equation", [23] = "The Best Prevention", [24] = "Fire at Will", [25] = "Locating the Longshot", [26] = "Bringing the Big Guns", [27] = "Lightly Roasted", [28] = "The Light Mother", [29] = "Light's Return", [30] = "The Child of Light and Shadow", [31] = "Essence of the Light Mother", [32] = "The Vindicaar Matrix Core", [33] = "An Offering of Light", [34] = "The Burning Heart", [35] = "Securing a Foothold", [36] = "Reinforce Light's Purchase", [37] = "Reinforce the Veiled Den", [38] = "Sizing Up The Opposition", [39] = "The Speaker Calls", [40] = "Visions of Torment", [41] = "Dire News", [42] = "Storming the Citadel", [43] = "Scars of the Past", [44] = "Preventive Measures", [45] = "Chaos Theory", [46] = "Dark Machinations", [47] = "A Touch of Fel", [48] = "Heralds of Apocalypse", [49] = "Dawn of Justice", [50] = "Lord of the Spire", [51] = "Forming a Bond", [52] = "A Floating Ruin", [53] = "Mac'Aree, Jewel of Argus", [54] = "Defenseless and Afraid", [55] = "Khazaduum, First of His Name", [56] = "Consecrating Ground", [57] = "The Path Forward", [58] = "Not-So-Humble Beginnings", [59] = "Conservation of Magic", [60] = "Invasive Species", [61] = "The Longest Vigil", [62] = "Gatekeeper's Challenge: Tenacity", [63] = "Gatekeeper's Challenge: Cunning", [64] = "Gatekeeper's Challenge: Mastery", [65] = "The Defiler's Legacy", [66] = "The Sigil of Awakening", [67] = "Where They Least Expect It", [68] = "We Have a Problem", [69] = "A Non-Prophet Organization ", [70] = "Wrath of the Hight Exarch", [71] = "Overt Ops", [72] = "Flanking Maneuvers", [73] = "Talgath's Forces", [74] = "What Might Have Been", [75] = "Across the Universe", [76] = "Shadow of the Triumvirate", [77] = "The Seat of the Triumvirate", [78] = "Whispers from Oronaar", [79] = "Arkhaan's Prayers", [80] = "The Pulsing Madness", [81] = "Arkhaan's Pain", [82] = "Arkhaan's Plan", [83] = "Arkhaan's Peril", [84] = "Throwing Shade", [85] = "Sources of Darkness", [86] = "The Shadowguard Incursion", [87] = "A Vessel Made Ready", [88] = "A Beacon in the Dark", [89] = "An Offering of Shadow", } aura_env.classColor = function(class) if class == 1 then return 0.78, 0.61, 0.43 elseif class == 2 then return 0.96, 0.55, 0.73 elseif class == 3 then return 0.67, 0.83, 0.45 elseif class == 4 then return 1, 0.96, 0.41 elseif class == 5 then return 1, 1, 1 elseif class == 6 then return 0.77, 0.12, 0.23 elseif class == 7 then return 0, 0.44, 0.87 elseif class == 8 then return 0.25, 0.78, 0.92 elseif class == 9 then return 0.53, 0.53, 0.93 elseif class == 10 then return 0, 1, 0.59 elseif class == 11 then return 1, 0.49, 0.04 elseif class == 12 then return 0.64, 0.19, 0.79 else return 1, 1, 1 end end