|
|
|
@ -38,13 +38,15 @@ namespace { |
|
|
|
|
} |
|
|
|
|
} else if (message->type == MessagingInterface::kPreLoadGame) { |
|
|
|
|
ArtifactTracker::g_bSaveLoaded = false; // block cell load events
|
|
|
|
|
} else if (message->type == MessagingInterface::kPostLoadGame) { |
|
|
|
|
SKSE::GetTaskInterface()->AddTask([]() { |
|
|
|
|
ArtifactTracker::OnGameLoad(); // save-specific updates
|
|
|
|
|
ArtifactTracker::g_bSaveLoaded = true; |
|
|
|
|
const auto cell = RE::PlayerCharacter::GetSingleton()->GetParentCell(); |
|
|
|
|
ArtifactTracker::OnCellEnter(cell->GetLocation(), cell); |
|
|
|
|
}); |
|
|
|
|
} else if (message->type == MessagingInterface::kPostLoadGame && message->data) { |
|
|
|
|
const auto cell = RE::PlayerCharacter::GetSingleton()->GetParentCell(); |
|
|
|
|
if (cell) { |
|
|
|
|
SKSE::GetTaskInterface()->AddTask([cell]() { |
|
|
|
|
ArtifactTracker::OnGameLoad(); // save-specific updates
|
|
|
|
|
ArtifactTracker::g_bSaveLoaded = true; |
|
|
|
|
ArtifactTracker::OnCellEnter(cell->GetLocation(), cell); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|