Use std algorithms

This commit is contained in:
David Markowitz
2023-06-10 00:03:07 -07:00
parent 2a2799793d
commit 5714ac558e
2 changed files with 19 additions and 20 deletions

View File

@@ -174,13 +174,11 @@ void Entity::ApplyComponentWhitelist(std::vector<eReplicaComponentType>& compone
const auto whitelistIndex = GetVar<int32_t>(u"componentWhitelist");
if (whitelistIndex < 0 || whitelistIndex >= m_ComponentWhitelists.size()) return;
for (const auto& componentToKeep : m_ComponentWhitelists.at(whitelistIndex)) {
while (true) {
const auto componentIter = std::find(components.begin(), components.end(), componentToKeep);
if (componentIter == components.end()) break;
components.erase(componentIter);
}
}
const auto& whitelist = m_ComponentWhitelists.at(whitelistIndex);
const auto endRange = std::remove_if(components.begin(), components.end(), [&whitelist](const eReplicaComponentType& componentCandidate) {
return std::find(whitelist.begin(), whitelist.end(), componentCandidate) == whitelist.end();
});
components.erase(endRange, components.end());
}
void Entity::Initialize() {