Patch by Matt McCutchen to prevent division by zero when Tux spawns exactly at a...
[supertux.git] / src / badguy / kugelblitz.cpp
index cbfdd99..28c3ae0 100644 (file)
 #include "object/camera.hpp"
 #include "tile.hpp"
 #include "random_generator.hpp"
+#include "lisp/writer.hpp"
+#include "object_factory.hpp"
+#include "object/player.hpp"
+#include "sector.hpp"
+#include "sprite/sprite.hpp"
 
 #define  LIFETIME 5
 #define  MOVETIME 0.75
@@ -34,7 +39,7 @@ static const float X_OFFSCREEN_DISTANCE = 1600;
 static const float Y_OFFSCREEN_DISTANCE = 1200;
 
 Kugelblitz::Kugelblitz(const lisp::Lisp& reader)
-    : BadGuy(Vector(0,0), "images/creatures/kugelblitz/kugelblitz.sprite"), groundhit_pos_set(false)
+    : BadGuy(reader, "images/creatures/kugelblitz/kugelblitz.sprite"), groundhit_pos_set(false)
 {
   reader.get("x", start_position.x);
   sprite->set_action("falling");
@@ -46,13 +51,13 @@ Kugelblitz::write(lisp::Writer& writer)
 {
   writer.start_list("kugelblitz");
 
-  writer.write_float("x", start_position.x);
+  writer.write("x", start_position.x);
 
   writer.end_list("kugelblitz");
 }
 
 void
-Kugelblitz::activate()
+Kugelblitz::initialize()
 {
   physic.set_velocity_y(300);
   physic.set_velocity_x(-20); //fall a little to the left