summaryrefslogtreecommitdiff
path: root/src/being.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/being.cpp')
-rw-r--r--src/being.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/being.cpp b/src/being.cpp
index 45032f6f..0ddceb0f 100644
--- a/src/being.cpp
+++ b/src/being.cpp
@@ -391,10 +391,19 @@ Being::logic()
//Update particle effects
for ( std::list<Particle *>::iterator i = mChildParticleEffects.begin();
- i != mChildParticleEffects.end();
- i++)
+ i != mChildParticleEffects.end();
+
+ )
{
(*i)->setPosition((float)mPx + 16.0f, (float)mPy + 32.0f);
+ if (!(*i)->isAlive())
+ {
+ (*i)->kill();
+ i = mChildParticleEffects.erase(i);
+ }
+ else {
+ i++;
+ }
}
}