diff options
Diffstat (limited to 'src/particle.cpp')
-rw-r--r-- | src/particle.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/particle.cpp b/src/particle.cpp index d3dbfd64..84161c9f 100644 --- a/src/particle.cpp +++ b/src/particle.cpp @@ -64,6 +64,7 @@ Particle::Particle(Map *map): mAlpha(1.0f), mAutoDelete(true), mMap(map), + mAllowSizeAdjust(false), mGravity(0.0f), mRandomness(0), mBounce(0.0f), @@ -322,6 +323,8 @@ Particle *Particle::addEffect(const std::string &particleEffectFile, int lifetime = XML::getProperty(effectChildNode, "lifetime", -1); newParticle->setLifetime(lifetime); + bool resizeable = "false" != XML::getProperty(effectChildNode, "size-adjustable", "false"); + newParticle->setAllowSizeAdjust(resizeable); // Look for additional emitters for this particle for_each_xml_child_node(emitterNode, effectChildNode) @@ -380,10 +383,13 @@ Particle *Particle::addTextRiseFadeOutEffect(const std::string &text, void Particle::adjustEmitterSize(int w, int h) { - for (EmitterIterator e = mChildEmitters.begin(); - e != mChildEmitters.end(); e++) + if (mAllowSizeAdjust) { - (*e)->adjustSize(w, h); + for (EmitterIterator e = mChildEmitters.begin(); + e != mChildEmitters.end(); e++) + { + (*e)->adjustSize(w, h); + } } } |