poi-plugin-inventory-cleaner 1.15.1 → 1.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/quest-status.js +12 -2
- package/package.json +1 -1
package/lib/quest-status.js
CHANGED
|
@@ -56,9 +56,19 @@ function readPlannerCompleted(now = Date.now()) {
|
|
|
56
56
|
return plannerCache.nos
|
|
57
57
|
}
|
|
58
58
|
const raw = JSON.parse(fs.readFileSync(file, 'utf8').replace(/^\uFEFF/, ''))
|
|
59
|
-
const completed = raw && raw.completed && typeof raw.completed === 'object' ? raw.completed : {}
|
|
60
59
|
const nos = new Set()
|
|
61
|
-
for (const
|
|
60
|
+
for (const fieldName of ['completed', 'manualCompleted']) {
|
|
61
|
+
const field = raw && raw[fieldName]
|
|
62
|
+
if (!field || typeof field !== 'object') continue
|
|
63
|
+
for (const key of Object.keys(field)) {
|
|
64
|
+
const no = Number(key)
|
|
65
|
+
if (no) nos.add(no)
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
// observed 里 apiState === 3 的也算已完成(有些任务没被记进 completed)
|
|
69
|
+
const observed = raw && raw.observed && typeof raw.observed === 'object' ? raw.observed : {}
|
|
70
|
+
for (const [key, quest] of Object.entries(observed)) {
|
|
71
|
+
if (!quest || Number(quest.apiState) !== 3) continue
|
|
62
72
|
const no = Number(key)
|
|
63
73
|
if (no) nos.add(no)
|
|
64
74
|
}
|