From 00b1cd8c08caeacb56fbe8d053175103a649ebfa Mon Sep 17 00:00:00 2001 From: Mads Buvik Sandvei Date: Mon, 18 Dec 2023 22:50:17 +0100 Subject: [PATCH] Replace movement() with eraseMovementIf() --- apps/openmw/mwphysics/mtphysics.cpp | 5 ++--- apps/openmw/mwphysics/ptrholder.hpp | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/apps/openmw/mwphysics/mtphysics.cpp b/apps/openmw/mwphysics/mtphysics.cpp index 86760a67c6..238d00deac 100644 --- a/apps/openmw/mwphysics/mtphysics.cpp +++ b/apps/openmw/mwphysics/mtphysics.cpp @@ -207,8 +207,7 @@ namespace osg::Vec3f takeMovement(MWPhysics::PtrHolder& actor, float startTime, float endTime) const { osg::Vec3f movement = osg::Vec3f(); - auto it = actor.movement().begin(); - std::erase_if(actor.movement(), [&](MWPhysics::Movement& v) { + actor.eraseMovementIf([&](MWPhysics::Movement& v) { if (v.mJump) return false; float start = std::max(v.mSimulationTimeStart, startTime); @@ -225,7 +224,7 @@ namespace std::optional takeInertia(MWPhysics::PtrHolder& actor, float startTime) const { std::optional inertia = std::nullopt; - std::erase_if(actor.movement(), [&](MWPhysics::Movement& v) { + actor.eraseMovementIf([&](MWPhysics::Movement& v) { if (v.mJump && v.mSimulationTimeStart >= startTime) { inertia = v.mVelocity; diff --git a/apps/openmw/mwphysics/ptrholder.hpp b/apps/openmw/mwphysics/ptrholder.hpp index ecc626b44c..16c3db0691 100644 --- a/apps/openmw/mwphysics/ptrholder.hpp +++ b/apps/openmw/mwphysics/ptrholder.hpp @@ -47,7 +47,7 @@ namespace MWPhysics mMovement.push_back(Movement{ velocity, simulationTimeStart, simulationTimeStop, jump }); } - std::list& movement() { return mMovement; } + void eraseMovementIf(const auto& predicate) { std::erase_if(mMovement, predicate); } void setSimulationPosition(const osg::Vec3f& position) { mSimulationPosition = position; }