diff options
Diffstat (limited to 'src/render/particlesystem.cc')
-rw-r--r-- | src/render/particlesystem.cc | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/render/particlesystem.cc b/src/render/particlesystem.cc index e041479..87cb7bc 100644 --- a/src/render/particlesystem.cc +++ b/src/render/particlesystem.cc @@ -175,9 +175,18 @@ void ParticleSystem::draw(const float seconds) ejector_active = false; break; } - ejector->enable(ejector_active); + } + + } else if (entity()->type() == core::Entity::Dynamic) { + + const core::EntityDynamic *dynamic = static_cast<const core::EntityDynamic *>(entity()); + if (dynamic->state() == core::Entity::NoPower) { + ejector_active = false; } } + + ejector->enable(ejector_active); + } (*it)->frame(seconds, current_location, current_axis * ejector->axis()); |