Update TOC for 12.1. Handle secret values in one of the places they might exist.

This commit is contained in:
SabinDeus 2026-08-07 23:37:50 -04:00
parent 4b1a1af6b3
commit 9c0705f2d3
2 changed files with 70 additions and 67 deletions

View File

@ -495,84 +495,87 @@ function TI_HandleGossipWindow(gorq)
local npcname = UnitName("npc"); local npcname = UnitName("npc");
TI_AddNPCToTempList(npcname, ListEntry); if not issecretvalue(npcname) then
TI_AddNPCToTempList(npcname, ListEntry);
if(TI_status.autoadd and (not TI_NPCDB[npcname])) then
TI_debug("autoadd on, adding this NPC", TI_status.autoadd, TI_NPCDB[npcname]); if(TI_status.autoadd and (not TI_NPCDB[npcname])) then
TI_AddNPCToList(ListEntry, npcname); TI_debug("autoadd on, adding this NPC", TI_status.autoadd, TI_NPCDB[npcname]);
end TI_AddNPCToList(ListEntry, npcname);
end
-- If a NPC is in the Database but a new dialog option has appeared (new daily/completed quest) then add it to the DB
if (TI_NPCDB[npcname]) then -- If a NPC is in the Database but a new dialog option has appeared (new daily/completed quest) then add it to the DB
for k1, v1 in ipairs(ListEntry) do if (TI_NPCDB[npcname]) then
local found = false; for k1, v1 in ipairs(ListEntry) do
for k2, v2 in ipairs(TI_NPCDB[npcname]) do local found = false;
if (v2.type == v1.type and v2.name == v1.name) then for k2, v2 in ipairs(TI_NPCDB[npcname]) do
found = true; if (v2.type == v1.type and v2.name == v1.name) then
found = true;
end
end
if (not found) then
table.insert(TI_NPCDB[npcname], v1)
TI_PopulateOptions("npclist updated");
end end
end end
if (not found) then
table.insert(TI_NPCDB[npcname], v1)
TI_PopulateOptions("npclist updated");
end
end end
end
if(TI_availnumber > TotalOptions or TI_activenumber > TotalOptions) then
if(TI_availnumber > TotalOptions or TI_activenumber > TotalOptions) then TI_debug("Out of available/active quests, giving up ");
TI_debug("Out of available/active quests, giving up "); TI_ResetPointers();
TI_ResetPointers(); return;
return; end
end
TI_debug(npcname);
TI_debug(npcname); if(TI_NPCDB[npcname]) then
if(TI_NPCDB[npcname]) then local thisnpc = TI_NPCDB[npcname];
local thisnpc = TI_NPCDB[npcname]; if(thisnpc.state) then
if(thisnpc.state) then TI_debug("npc is active, using his options");
TI_debug("npc is active, using his options"); for i1,current in ipairs(thisnpc) do
for i1,current in ipairs(thisnpc) do if (current.state == true) then
if (current.state == true) then TI_debug("Current Quest: "..current.name);
TI_debug("Current Quest: "..current.name); if (TI_specnum == 0 or i1 > TI_specnum) then
if (TI_specnum == 0 or i1 > TI_specnum) then TI_specnum = i1;
TI_specnum = i1; if (current.type == "availquest") then
if (current.type == "availquest") then for i2,v2 in ipairs(AvailableQuests) do
for i2,v2 in ipairs(AvailableQuests) do if (v2.name == current.name) then
if (v2.name == current.name) then TI_debug(i1.."-Available Match Found: "..current.name);
TI_debug(i1.."-Available Match Found: "..current.name); SAvQ(v2.questID);
SAvQ(v2.questID); return;
return; end
end end
end elseif (current.type == "activequest") then
elseif (current.type == "activequest") then for i2,v2 in ipairs(ActiveQuests) do
for i2,v2 in ipairs(ActiveQuests) do if (v2.name == current.name) then
if (v2.name == current.name) then TI_debug(i1.."-Active Match Found: "..current.name..", "..current.type);
TI_debug(i1.."-Active Match Found: "..current.name..", "..current.type); SAcQ(v2.questID);
SAcQ(v2.questID); return;
return; end
end end
end else
else for i2,v2 in ipairs(GossipOptions) do
for i2,v2 in ipairs(GossipOptions) do if (v2.name == current.name) then
if (v2.name == current.name) then TI_debug(i1.."-Gossip Match Found: "..current.name..", "..current.type);
TI_debug(i1.."-Gossip Match Found: "..current.name..", "..current.type); if(v2.args) then
if(v2.args) then TI_FunctionList.g.gossip(v2.args);
TI_FunctionList.g.gossip(v2.args); else
else TI_FunctionList.g.gossip(i2);
TI_FunctionList.g.gossip(i2); end
return;
end end
return;
end end
end end
end end
end end
end end
return;
else
TI_debug("npc in list, but not active");
end end
return;
else else
TI_debug("npc in list, but not active"); TI_debug("npc not in list");
end end
else
TI_debug("npc not in list");
end end
if(TI_status.usedefault == false) then if(TI_status.usedefault == false) then
TI_debug("npc not in list, default set to off, returning."); TI_debug("npc not in list, default set to off, returning.");
return; return;

View File

@ -1,5 +1,5 @@
## Interface: 120000, 120001, 50503, 40402, 30405, 20505, 11508 ## Interface: 120100, 120000, 120001, 50503, 40402, 30405, 20505, 11508
## X-Compatible-With: 120000, 120001, 50503, 40402, 30405, 20505, 11508 ## X-Compatible-With: 120100, 120000, 120001, 50503, 40402, 30405, 20505, 11508
## Title: Turn In ## Title: Turn In
## Notes: Automates the selection of quest and gossip options. ## Notes: Automates the selection of quest and gossip options.
## SavedVariables: TI_status, TI_NPCDB, TI_NPCIndex ## SavedVariables: TI_status, TI_NPCDB, TI_NPCIndex