Switched from tinygettext/tags/tinygetext-supertux/ to tinygettext/trunk/
[supertux.git] / src / object / particlesystem.hpp
index 6671ef0..32259b1 100644 (file)
@@ -24,7 +24,6 @@
 #include "util/reader.hpp"
 
 class Surface;
-
 class DisplayManager;
 
 /**
@@ -51,93 +50,30 @@ public:
   virtual void draw(DrawingContext& context);
 
 protected:
-  float max_particle_size;
-  int z_pos;
-
   class Particle
   {
   public:
+    Particle() :
+      pos(),
+      texture()
+    {}
+   
     virtual ~Particle()
-    { }
+    {}
 
     Vector pos;
     Surface* texture;
-  };
-
-  std::vector<Particle*> particles;
-  float virtual_width, virtual_height;
-};
-
-class SnowParticleSystem : public ParticleSystem
-{
-public:
-  SnowParticleSystem();
-  virtual ~SnowParticleSystem();
 
-  void parse(const Reader& lisp);
-
-  virtual void update(float elapsed_time);
-
-  std::string type() const
-  { return "SnowParticleSystem"; }
-
-private:
-  class SnowParticle : public Particle
-  {
-  public:
-    float speed;
-    float wobble;
-    float anchorx;
-    float drift_speed;
+  private:
+    Particle(const Particle&);
+    Particle& operator=(const Particle&);
   };
 
-  Surface* snowimages[3];
-};
-
-class GhostParticleSystem : public ParticleSystem
-{
-public:
-  GhostParticleSystem();
-  virtual ~GhostParticleSystem();
-
-  void parse(const Reader& lisp);
-  
-  virtual void update(float elapsed_time);
-
-  std::string type() const
-  { return "GhostParticleSystem"; }
-
-private:
-  class GhostParticle : public Particle
-  {
-  public:
-    float speed;
-  };
-
-  Surface* ghosts[2];
-};
-
-class CloudParticleSystem : public ParticleSystem
-{
-public:
-  CloudParticleSystem();
-  virtual ~CloudParticleSystem();
-
-  void parse(const Reader& lisp);
-  
-  virtual void update(float elapsed_time);
-
-  std::string type() const
-  { return "CloudParticleSystem"; }
-
-private:
-  class CloudParticle : public Particle
-  {
-  public:
-    float speed;
-  };
-
-  Surface* cloudimage;
+  float max_particle_size;
+  int z_pos;
+  std::vector<Particle*> particles;
+  float virtual_width;
+  float virtual_height;
 };
 
 #endif