diff --git a/src/game/Mobs.cpp b/src/game/Mobs.cpp index 273b795..b16f0ae 100644 --- a/src/game/Mobs.cpp +++ b/src/game/Mobs.cpp @@ -33,11 +33,11 @@ void Mob::tick(std::uint64_t delta) { void Mob::updateEffects(std::uint64_t delta) { float deltaSec = (float)delta / 1000.0f; - for (auto it = m_Effects.begin(); it != m_Effects.end(); it++) { - EffectDuration& effect = *it; + for (std::size_t i = 0; i < m_Effects.size(); i++) { + EffectDuration& effect = m_Effects[i]; effect.second -= deltaSec; if (effect.second < 0) // effect has gone - m_Effects.erase(it); + m_Effects.erase(m_Effects.begin() + i); } } diff --git a/src/game/World.cpp b/src/game/World.cpp index c282061..f79e573 100644 --- a/src/game/World.cpp +++ b/src/game/World.cpp @@ -459,10 +459,10 @@ bool World::CanPlaceBigTower(const glm::vec2& worldPos, PlayerID playerID) const } void World::cleanDeadMobs(){ - for(auto it = m_Mobs.begin(); it != m_Mobs.end(); it++){ - MobPtr mob = *it; + for(std::size_t i = 0; i < m_Mobs.size(); i++){ + MobPtr mob = m_Mobs[i]; if(!mob->isAlive()){ - m_Mobs.erase(it); + m_Mobs.erase(m_Mobs.begin() + i); } } }