diff --git a/SKSE/Plugins/ArtifactTracker.dll b/SKSE/Plugins/ArtifactTracker.dll index b24bb1a..1a57616 100644 Binary files a/SKSE/Plugins/ArtifactTracker.dll and b/SKSE/Plugins/ArtifactTracker.dll differ diff --git a/Source/ArtifactTrackerDLL/src/ArtifactTracker.cpp b/Source/ArtifactTrackerDLL/src/ArtifactTracker.cpp index eb2cd0d..afc7ee8 100644 --- a/Source/ArtifactTrackerDLL/src/ArtifactTracker.cpp +++ b/Source/ArtifactTrackerDLL/src/ArtifactTracker.cpp @@ -496,6 +496,7 @@ namespace ArtifactTracker for (const auto& item : inv) { if (item.second.first > 0) { a_targetList->AddForm(item.first); + ListRemoveItem(g_listNew, item.first); } } } diff --git a/Source/ArtifactTrackerDLL/src/PapyrusFunctions.h b/Source/ArtifactTrackerDLL/src/PapyrusFunctions.h index a8b1348..4ddfc66 100644 --- a/Source/ArtifactTrackerDLL/src/PapyrusFunctions.h +++ b/Source/ArtifactTrackerDLL/src/PapyrusFunctions.h @@ -61,9 +61,8 @@ namespace Papyrus::PapyrusFunctions inline void RescanNewArtifacts(RE::StaticFunctionTag*) { - ListRevert(ArtifactTracker::g_listNew); for (auto const& item : ArtifactTracker::g_artifactMap) { - if (!ArtifactTracker::g_listStored->HasForm(item.second) && !ArtifactTracker::g_listFound->HasForm(item.second)) { + if (!ArtifactTracker::g_listNew->HasForm(item.second) && !ArtifactTracker::g_listStored->HasForm(item.second) && !ArtifactTracker::g_listFound->HasForm(item.second)) { ArtifactTracker::g_listNew->AddForm(item.second); } }