From ee017172af06f4b247038510e5ef7f8ac3596f66 Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Wed, 17 Nov 2010 22:49:18 +0000 Subject: Cleaned up model::Mapfile axis related keys in the map reader, added warning messages where approriate. Support for multiple particle systems in render::ParticleScript. Cleaned up render::ParticleScript member variable names. Added support for axis related keys and scale key in particle scripts. --- src/render/renderext.cc | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/render/renderext.cc') diff --git a/src/render/renderext.cc b/src/render/renderext.cc index 5f24e85..049b3de 100644 --- a/src/render/renderext.cc +++ b/src/render/renderext.cc @@ -54,15 +54,14 @@ RenderExt::RenderExt(core::Entity *entity) : core::Extension(core::Extension::Re flare->set_texture(Textures::load(flarename.str())); } - for (model::Model::ParticleSystems::iterator pit = model->particles().begin(); pit != model->particles().end(); pit++) { - model::Particles *particlesystem = (*pit); + for (model::Model::ParticleSystems::const_iterator pit = model->particles().begin(); pit != model->particles().end(); pit++) { + // model attachment location tag + const model::Particles *particlesystem = (*pit); - // TODO multiple particlesystems per script - // load particle systems - ParticleScript *script = ParticleScript::load(particlesystem->script()); - if (script) { - if (script->type() == render::ParticleScript::Trail) { + const ParticleScript *script = ParticleScript::load(particlesystem->script()); + while (script) { + if ( script->type() == render::ParticleScript::Trail) { Trail *trail = new Trail(script, entity, particlesystem); state_particles.push_back(trail); } else if (script->type() == render::ParticleScript::Jet) { @@ -75,6 +74,7 @@ RenderExt::RenderExt(core::Entity *entity) : core::Extension(core::Extension::Re Flame *flame = new Flame(script, entity, particlesystem); state_particles.push_back(flame); } + script = script->next(); } } -- cgit v1.2.3