X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fobject%2Fparticlesystem.cpp;h=fa435be83dba6f3068d0fd1a9ff0c3d4c29cbbc6;hb=555d1b7bebb45326d82d934e07463209837309b0;hp=a63afa0e5a6cbae478cb5e5995c5142b6addd844;hpb=a113d3bd1feddd510e3b2852b0d42522735eee40;p=supertux.git diff --git a/src/object/particlesystem.cpp b/src/object/particlesystem.cpp index a63afa0e5..fa435be83 100644 --- a/src/object/particlesystem.cpp +++ b/src/object/particlesystem.cpp @@ -33,7 +33,7 @@ #include "random_generator.hpp" ParticleSystem::ParticleSystem(float max_particle_size) - : max_particle_size(max_particle_size) + : max_particle_size(max_particle_size) { virtual_width = SCREEN_WIDTH + max_particle_size * 2; virtual_height = SCREEN_HEIGHT + max_particle_size *2; @@ -141,7 +141,7 @@ void SnowParticleSystem::update(float elapsed_time) anchor_delta = (particle->anchorx - particle->pos.x); particle->wobble += (4 * anchor_delta * 0.05) + systemRandom.randf(-0.5, 0.5); - particle->wobble *= 0.99; + particle->wobble *= 0.99f; particle->anchorx += particle->drift_speed * elapsed_time; } } @@ -163,10 +163,7 @@ GhostParticleSystem::GhostParticleSystem() particle->pos.y = systemRandom.randf(SCREEN_HEIGHT); int size = systemRandom.rand(2); particle->texture = ghosts[size]; - do { - particle->speed = size*.2 + systemRandom.randf(3.6); - } while(particle->speed < 1); - particle->speed *= 50; + particle->speed = systemRandom.randf(std::max(50, (size * 10)), 180 + (size * 10)); particles.push_back(particle); } } @@ -206,7 +203,7 @@ void GhostParticleSystem::update(float elapsed_time) } CloudParticleSystem::CloudParticleSystem() - : ParticleSystem(128) + : ParticleSystem(128) { cloudimage = new Surface("images/objects/particles/cloud.png");