From 330de41b3eb19b004988edec59a4889d62c48081 Mon Sep 17 00:00:00 2001 From: Chris Kaczor Date: Tue, 25 Nov 2025 09:08:14 -0500 Subject: [PATCH] Fix repuation and completed quest detection --- Data.lua | 32 +++++++++++++++++++++----------- TillerTracker.lua | 16 ++++++++++++++-- TillerTracker.toc | 2 +- 3 files changed, 36 insertions(+), 14 deletions(-) diff --git a/Data.lua b/Data.lua index d082e83..5c10676 100644 --- a/Data.lua +++ b/Data.lua @@ -9,7 +9,8 @@ private.QUESTS = { LOCATION = { 34.4, 46.8 }, MATS = { { COUNT = 1, ITEM_ID = 74864 }, { COUNT = 1, ITEM_ID = 74839 } }, REP_ID = 1277, - RECIPE_ID = 104302 + RECIPE_ID = 104302, + COMPLETED = false }, [30386] = { NAME = L["A Dish for Ella"], @@ -17,7 +18,8 @@ private.QUESTS = { LOCATION = { 31.6, 58.0 }, MATS = { { COUNT = 1, ITEM_ID = 74857 } }, REP_ID = 1275, - RECIPE_ID = 104307 + RECIPE_ID = 104307, + COMPLETED = false }, [30421] = { NAME = L["A Dish for Farmer Fung"], @@ -25,7 +27,8 @@ private.QUESTS = { LOCATION = { 48.2, 33.8 }, MATS = { { COUNT = 1, ITEM_ID = 74839 } }, REP_ID = 1283, - RECIPE_ID = 104310 + RECIPE_ID = 104310, + COMPLETED = false }, [30427] = { NAME = L["A Dish for Fish"], @@ -33,7 +36,8 @@ private.QUESTS = { LOCATION = { 41.6, 30.0 }, MATS = { { COUNT = 2, ITEM_ID = 74865 } }, REP_ID = 1282, - RECIPE_ID = 104311 + RECIPE_ID = 104311, + COMPLETED = false }, [30390] = { NAME = L["A Dish for Gina"], @@ -41,7 +45,8 @@ private.QUESTS = { LOCATION = { 53.2, 51.6 }, MATS = { { COUNT = 1, ITEM_ID = 74856 } }, REP_ID = 1281, - RECIPE_ID = 104304 + RECIPE_ID = 104304, + COMPLETED = false }, [30414] = { NAME = L["A Dish for Haohan"], @@ -49,7 +54,8 @@ private.QUESTS = { LOCATION = { 44.6, 34.0 }, MATS = { { COUNT = 1, ITEM_ID = 74833 } }, REP_ID = 1279, - RECIPE_ID = 104298 + RECIPE_ID = 104298, + COMPLETED = false }, [30439] = { NAME = L["A Dish for Jogu"], @@ -57,7 +63,8 @@ private.QUESTS = { LOCATION = { 53.6, 52.4 }, MATS = { { COUNT = 2, ITEM_ID = 74841 } }, REP_ID = 1273, - RECIPE_ID = 104301 + RECIPE_ID = 104301, + COMPLETED = false }, [30396] = { NAME = L["A Dish for Old Hillpaw"], @@ -65,7 +72,8 @@ private.QUESTS = { LOCATION = { 31.0, 53.0 }, MATS = { { COUNT = 1, ITEM_ID = 74837 }, { COUNT = 5, ITEM_ID = 74841 } }, REP_ID = 1276, - RECIPE_ID = 104305 + RECIPE_ID = 104305, + COMPLETED = false }, [30408] = { NAME = L["A Dish for Sho"], @@ -73,7 +81,8 @@ private.QUESTS = { LOCATION = { 29.6, 30.6 }, MATS = { { COUNT = 1, ITEM_ID = 74856 }, { COUNT = 5, ITEM_ID = 74848 } }, REP_ID = 1278, - RECIPE_ID = 104299 + RECIPE_ID = 104299, + COMPLETED = false }, [30433] = { NAME = L["A Dish for Tina"], @@ -81,6 +90,7 @@ private.QUESTS = { LOCATION = { 45.0, 33.8 }, MATS = { { COUNT = 1, ITEM_ID = 74859 }, { COUNT = 5, ITEM_ID = 74843 } }, REP_ID = 1280, - RECIPE_ID = 104308 + RECIPE_ID = 104308, + COMPLETED = false } -} \ No newline at end of file +} diff --git a/TillerTracker.lua b/TillerTracker.lua index e3a1c3e..979a700 100644 --- a/TillerTracker.lua +++ b/TillerTracker.lua @@ -362,7 +362,7 @@ function TillerTracker:ReputationDone(reputationId) local friendRep = C_GossipInfo.GetFriendshipReputation(reputationId).standing -- Done if over exalted - return (friendRep > 42000) + return (friendRep >= 42000) end function TillerTracker:AllReputationsDone() @@ -388,6 +388,9 @@ function TillerTracker:UpdateData() -- Loop over each quest in the data for _, quest_info in pairs(private.QUESTS) do + + -- Reset completed to false + quest_info["COMPLETED"] = false -- Loop over the mats required to cook the food for the quest for _, mat_data in pairs(quest_info["MATS"]) do @@ -403,6 +406,15 @@ function TillerTracker:UpdateData() end end + -- Loop over each quest completed + for _, quest_id in pairs(questsCompleted) do + + -- Set completed to true if it is one we're tracking + if (private.QUESTS[quest_id]) then + private.QUESTS[quest_id]["COMPLETED"] = true + end + end + -- Create a table to hold the information to display for each quest private.quest_table = {} private.quest_count = 0 @@ -434,7 +446,7 @@ function TillerTracker:UpdateData() local quest_status = "" local can_craft = 0 - if (questsCompleted[quest_id]) then + if (quest_info["COMPLETED"]) then -- Quest has already been completed today quest_status = L["|cFF00FF00Complete|r"] else diff --git a/TillerTracker.toc b/TillerTracker.toc index 164a1e6..7fd712b 100644 --- a/TillerTracker.toc +++ b/TillerTracker.toc @@ -1,6 +1,6 @@ ## Interface: 110205 ## Title: Tiller Tracker -## Version: 11.0.0 +## Version: 11.0.1 ## Notes: Helps with the daily Tiller food quests ("A Dish for...") by keeping track of what quests have been completed that day, how many dishes need to be cooked, and what materials are required. ## Author: Amanoa ## SavedVariables: TillerTrackerDB