ParticleManager::handleParticleEvent: use switch
authorLoic Blot <loic.blot@unix-experience.fr>
Tue, 29 Mar 2016 22:06:47 +0000 (00:06 +0200)
committerest31 <MTest31@outlook.com>
Wed, 30 Mar 2016 15:20:24 +0000 (17:20 +0200)
Use a proper switch with breaks.

src/particles.cpp

index ab77e9f54c8cba2924409688fa368a6015f4c000..525258a25fa21f08b35b146900fc192eb5cb8c86 100644 (file)
@@ -346,7 +346,7 @@ void ParticleManager::step(float dtime)
 void ParticleManager::stepSpawners (float dtime)
 {
        MutexAutoLock lock(m_spawner_list_lock);
-       for(std::map<u32, ParticleSpawner*>::iterator i = 
+       for (std::map<u32, ParticleSpawner*>::iterator i =
                        m_particle_spawners.begin();
                        i != m_particle_spawners.end();)
        {
@@ -408,94 +408,92 @@ void ParticleManager::clearAll ()
 void ParticleManager::handleParticleEvent(ClientEvent *event, IGameDef *gamedef,
                scene::ISceneManager* smgr, LocalPlayer *player)
 {
-       if (event->type == CE_DELETE_PARTICLESPAWNER) {
-               MutexAutoLock lock(m_spawner_list_lock);
-               if (m_particle_spawners.find(event->delete_particlespawner.id) !=
-                               m_particle_spawners.end())
-               {
-                       delete m_particle_spawners.find(event->delete_particlespawner.id)->second;
-                       m_particle_spawners.erase(event->delete_particlespawner.id);
+       switch (event->type) {
+               case CE_DELETE_PARTICLESPAWNER: {
+                       MutexAutoLock lock(m_spawner_list_lock);
+                       if (m_particle_spawners.find(event->delete_particlespawner.id) !=
+                                       m_particle_spawners.end()) {
+                               delete m_particle_spawners.find(event->delete_particlespawner.id)->second;
+                               m_particle_spawners.erase(event->delete_particlespawner.id);
+                       }
+                       // no allocated memory in delete event
+                       break;
                }
-               // no allocated memory in delete event
-               return;
-       }
+               case CE_ADD_PARTICLESPAWNER: {
+                       {
+                               MutexAutoLock lock(m_spawner_list_lock);
+                               if (m_particle_spawners.find(event->add_particlespawner.id) !=
+                                               m_particle_spawners.end()) {
+                                       delete m_particle_spawners.find(event->add_particlespawner.id)->second;
+                                       m_particle_spawners.erase(event->add_particlespawner.id);
+                               }
+                       }
 
-       if (event->type == CE_ADD_PARTICLESPAWNER) {
+                       video::ITexture *texture =
+                               gamedef->tsrc()->getTextureForMesh(*(event->add_particlespawner.texture));
+
+                       ParticleSpawner* toadd = new ParticleSpawner(gamedef, smgr, player,
+                                       event->add_particlespawner.amount,
+                                       event->add_particlespawner.spawntime,
+                                       *event->add_particlespawner.minpos,
+                                       *event->add_particlespawner.maxpos,
+                                       *event->add_particlespawner.minvel,
+                                       *event->add_particlespawner.maxvel,
+                                       *event->add_particlespawner.minacc,
+                                       *event->add_particlespawner.maxacc,
+                                       event->add_particlespawner.minexptime,
+                                       event->add_particlespawner.maxexptime,
+                                       event->add_particlespawner.minsize,
+                                       event->add_particlespawner.maxsize,
+                                       event->add_particlespawner.collisiondetection,
+                                       event->add_particlespawner.vertical,
+                                       texture,
+                                       event->add_particlespawner.id,
+                                       this);
+
+                       /* delete allocated content of event */
+                       delete event->add_particlespawner.minpos;
+                       delete event->add_particlespawner.maxpos;
+                       delete event->add_particlespawner.minvel;
+                       delete event->add_particlespawner.maxvel;
+                       delete event->add_particlespawner.minacc;
+                       delete event->add_particlespawner.texture;
+                       delete event->add_particlespawner.maxacc;
 
-               {
-                       MutexAutoLock lock(m_spawner_list_lock);
-                       if (m_particle_spawners.find(event->add_particlespawner.id) !=
-                                                       m_particle_spawners.end())
                        {
-                               delete m_particle_spawners.find(event->add_particlespawner.id)->second;
-                               m_particle_spawners.erase(event->add_particlespawner.id);
+                               MutexAutoLock lock(m_spawner_list_lock);
+                               m_particle_spawners.insert(
+                                               std::pair<u32, ParticleSpawner*>(
+                                                               event->add_particlespawner.id,
+                                                               toadd));
                        }
+                       break;
                }
-               video::ITexture *texture =
-                       gamedef->tsrc()->getTextureForMesh(*(event->add_particlespawner.texture));
-
-               ParticleSpawner* toadd = new ParticleSpawner(gamedef, smgr, player,
-                               event->add_particlespawner.amount,
-                               event->add_particlespawner.spawntime,
-                               *event->add_particlespawner.minpos,
-                               *event->add_particlespawner.maxpos,
-                               *event->add_particlespawner.minvel,
-                               *event->add_particlespawner.maxvel,
-                               *event->add_particlespawner.minacc,
-                               *event->add_particlespawner.maxacc,
-                               event->add_particlespawner.minexptime,
-                               event->add_particlespawner.maxexptime,
-                               event->add_particlespawner.minsize,
-                               event->add_particlespawner.maxsize,
-                               event->add_particlespawner.collisiondetection,
-                               event->add_particlespawner.vertical,
-                               texture,
-                               event->add_particlespawner.id,
-                               this);
-
-               /* delete allocated content of event */
-               delete event->add_particlespawner.minpos;
-               delete event->add_particlespawner.maxpos;
-               delete event->add_particlespawner.minvel;
-               delete event->add_particlespawner.maxvel;
-               delete event->add_particlespawner.minacc;
-               delete event->add_particlespawner.texture;
-               delete event->add_particlespawner.maxacc;
+               case CE_SPAWN_PARTICLE: {
+                       video::ITexture *texture =
+                               gamedef->tsrc()->getTextureForMesh(*(event->spawn_particle.texture));
+
+                       Particle* toadd = new Particle(gamedef, smgr, player, m_env,
+                                       *event->spawn_particle.pos,
+                                       *event->spawn_particle.vel,
+                                       *event->spawn_particle.acc,
+                                       event->spawn_particle.expirationtime,
+                                       event->spawn_particle.size,
+                                       event->spawn_particle.collisiondetection,
+                                       event->spawn_particle.vertical,
+                                       texture,
+                                       v2f(0.0, 0.0),
+                                       v2f(1.0, 1.0));
 
-               {
-                       MutexAutoLock lock(m_spawner_list_lock);
-                       m_particle_spawners.insert(
-                                       std::pair<u32, ParticleSpawner*>(
-                                                       event->add_particlespawner.id,
-                                                       toadd));
-               }
+                       addParticle(toadd);
 
-               return;
-       }
+                       delete event->spawn_particle.pos;
+                       delete event->spawn_particle.vel;
+                       delete event->spawn_particle.acc;
 
-       if (event->type == CE_SPAWN_PARTICLE) {
-               video::ITexture *texture =
-                       gamedef->tsrc()->getTextureForMesh(*(event->spawn_particle.texture));
-
-               Particle* toadd = new Particle(gamedef, smgr, player, m_env,
-                               *event->spawn_particle.pos,
-                               *event->spawn_particle.vel,
-                               *event->spawn_particle.acc,
-                               event->spawn_particle.expirationtime,
-                               event->spawn_particle.size,
-                               event->spawn_particle.collisiondetection,
-                               event->spawn_particle.vertical,
-                               texture,
-                               v2f(0.0, 0.0),
-                               v2f(1.0, 1.0));
-
-               addParticle(toadd);
-
-               delete event->spawn_particle.pos;
-               delete event->spawn_particle.vel;
-               delete event->spawn_particle.acc;
-
-               return;
+                       break;
+               }
+               default: break;
        }
 }