play sound when willowisp is caught
[supertux.git] / src / object / unstable_tile.hpp
index 0e8cb32..a6bb71e 100644 (file)
@@ -1,7 +1,8 @@
 //  $Id$
 //
-//  SuperTux
+//  SuperTux - Unstable Tile
 //  Copyright (C) 2006 Matthias Braun <matze@braunis.de>
+//  Copyright (C) 2006 Christoph Sommer <christoph.sommer@2006.expires.deltadevelopment.de>
 //
 //  This program is free software; you can redistribute it and/or
 //  modify it under the terms of the GNU General Public License
 #include "physic.hpp"
 #include "timer.hpp"
 
-class Player;
-
-/** A tile that starts falling down if tux stands to long on it */
-class UnstableTile : public MovingSprite
+/**
+ * A block that disintegrates when stood on
+ */
+class UnstableTile : public MovingSprite, public UsesPhysic
 {
 public:
   UnstableTile(const lisp::Lisp& lisp);
@@ -36,14 +37,14 @@ public:
 
   HitResponse collision(GameObject& other, const CollisionHit& hit);
   void update(float elapsed_time);
-  void draw(DrawingContext& context);
 
 private:
-  Physic physic;
-  Timer timer;
-  bool hit;
-  bool falling;
+  enum State {
+    STATE_NORMAL,        /**< default state */
+    STATE_CRUMBLING,     /**< crumbling, still solid */
+    STATE_DISINTEGRATING /**< disintegrating, no longer solid */
+  };
+  State state;
 };
 
 #endif
-