* Added a boolean "disable-physics" property to powerups. We can't afford losing...
[supertux.git] / src / object / powerup.cpp
index 8cc0e7e..c9733c6 100644 (file)
@@ -36,6 +36,8 @@ PowerUp::PowerUp(const lisp::Lisp& lisp)
   lisp.get("y", bbox.p1.y);
   lisp.get("sprite", sprite_name);
   lisp.get("script", script);
+  no_physics = false;
+  lisp.get("disable-physics", no_physics);
   bbox.set_size(32, 32);   
   sprite = sprite_manager->create(sprite_name);
   physic.enable_gravity(true);
@@ -74,10 +76,10 @@ PowerUp::collision(GameObject& other, const CollisionHit& hit)
   // some defaults if no script has been set
   if (sprite->get_name() == "egg") {
     player->set_bonus(GROWUP_BONUS, true);
-    sound_manager->play("sounds/grow.ogg");
+    sound_manager->play("sounds/grow.wav");
   } else if (sprite->get_name() == "fireflower") {
     player->set_bonus(FIRE_BONUS, true);
-    sound_manager->play("sounds/fire-flower.ogg");
+    sound_manager->play("sounds/fire-flower.wav");
   } else if (sprite->get_name() == "star") {
     player->make_invincible();
   } else if (sprite->get_name() == "1up") {
@@ -89,7 +91,8 @@ PowerUp::collision(GameObject& other, const CollisionHit& hit)
 void
 PowerUp::update(float elapsed_time)
 {
-  movement = physic.get_movement(elapsed_time);
+  if (!no_physics)
+    movement = physic.get_movement(elapsed_time);
 }
 
 void