From b847930a85af1ad2e504664b5f941d358b8e5c33 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Mon, 20 Jan 2020 12:57:21 -0500 Subject: [PATCH] CCameraManager: Collapse loop into std::find_if in RemoveCameraShaker We can collapse the loop into a find_if call here, since it only does a look up and nothing more. --- Runtime/Camera/CCameraManager.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/Runtime/Camera/CCameraManager.cpp b/Runtime/Camera/CCameraManager.cpp index 0483eed35..4ee95c092 100644 --- a/Runtime/Camera/CCameraManager.cpp +++ b/Runtime/Camera/CCameraManager.cpp @@ -1,5 +1,7 @@ #include "Runtime/Camera/CCameraManager.hpp" +#include + #include "Runtime/CStateManager.hpp" #include "Runtime/GameGlobalObjects.hpp" #include "Runtime/Camera/CBallCamera.hpp" @@ -38,11 +40,12 @@ zeus::CTransform CCameraManager::GetCurrentCameraTransform(const CStateManager& } void CCameraManager::RemoveCameraShaker(u32 id) { - for (auto it = x14_shakers.begin(); it != x14_shakers.end(); ++it) - if (it->xbc_shakerId == id) { - x14_shakers.erase(it); - break; - } + const auto iter = std::find_if(x14_shakers.cbegin(), x14_shakers.cend(), + [id](const auto& shaker) { return shaker.xbc_shakerId == id; }); + if (iter == x14_shakers.cend()) { + return; + } + x14_shakers.erase(iter); } int CCameraManager::AddCameraShaker(const CCameraShakeData& data, bool sfx) {