Add files via upload
This commit is contained in:
@@ -6,7 +6,7 @@ RelationshipsAttune = RelationshipsAttune or {}
|
||||
local RA = RelationshipsAttune
|
||||
local L = RelationshipsAttune_L
|
||||
|
||||
RA.VERSION = "1.4.0"
|
||||
RA.VERSION = "1.4.2"
|
||||
RA.COMM_PREFIX = "RATTUNE"
|
||||
|
||||
RA.playerName = nil
|
||||
@@ -329,9 +329,13 @@ function RA:EvaluateStep(step)
|
||||
return (UnitLevel("player") or 0) >= (step.level or 0), false
|
||||
elseif step.type == "quest" then
|
||||
local st = RelationshipsAttuneCharDB.quests[step.id]
|
||||
if st == "complete" or st == "turnedin" then
|
||||
if st == "turnedin" then
|
||||
return true, false
|
||||
elseif st == "inlog" then
|
||||
elseif st == "complete" or st == "inlog" then
|
||||
-- Quest is in the log (either accepted or ready to turn in).
|
||||
-- Treat both as "on this step" (orange) until it is actually
|
||||
-- turned in. Retroactive completion will still mark this
|
||||
-- step green once the player advances to a later step.
|
||||
return false, true
|
||||
end
|
||||
return false, false
|
||||
@@ -398,6 +402,34 @@ function RA:EvaluateAttunement(att)
|
||||
end
|
||||
end
|
||||
end
|
||||
-- Retroactive completion: if the player is on a later step (done or in
|
||||
-- progress), any earlier quest/item steps must already be done. Quests
|
||||
-- get turned in and key items get consumed, so their live state can
|
||||
-- flip back to "not done" even though the player clearly finished
|
||||
-- them. Level and reputation steps have their own live truth and are
|
||||
-- left alone.
|
||||
local laterActive = false
|
||||
for i = numSteps, 1, -1 do
|
||||
local step = att.steps[i]
|
||||
if step and self:StepApplies(step) then
|
||||
if laterActive and steps[i] == false then
|
||||
local t = step.type
|
||||
if t == "quest" or t == "item" then
|
||||
steps[i] = true
|
||||
stepsInProgress[i] = false
|
||||
doneCount = doneCount + 1
|
||||
if t == "quest" then
|
||||
RelationshipsAttuneCharDB.quests[step.id] = "turnedin"
|
||||
elseif t == "item" then
|
||||
RelationshipsAttuneCharDB.items[step.id] = true
|
||||
end
|
||||
end
|
||||
end
|
||||
if steps[i] == true or stepsInProgress[i] == true then
|
||||
laterActive = true
|
||||
end
|
||||
end
|
||||
end
|
||||
local persistedDone = RelationshipsAttuneCharDB.completedAttunements and RelationshipsAttuneCharDB.completedAttunements[att.id]
|
||||
if persistedDone or (finalIdx and steps[finalIdx] == true) then
|
||||
for i = 1, numSteps do
|
||||
|
||||
Reference in New Issue
Block a user