kugelblitz electrifies water on contact - electrified water is baaaaaaad
[supertux.git] / src / object / player.cpp
index 961e7a3..13121b5 100644 (file)
@@ -270,8 +270,8 @@ Player::handle_horizontal_input()
     // let's skid!
     if(fabs(vx)>SKID_XM && !skidding_timer.started()) {
       skidding_timer.start(SKID_TIME);
-      sound_manager->play("sounds/skid.ogg");
-      // dust some partcles
+      sound_manager->play("sounds/skid.wav");
+      // dust some particles
       Sector::current()->add_object(
         new Particles(
           Vector(bbox.p1.x + (dir == RIGHT ? bbox.get_width() : 0),
@@ -366,9 +366,9 @@ Player::handle_vertical_input()
     can_flap = false;
     flaps_nb = 0; // Ricardo's flapping
     if (is_big())
-      sound_manager->play("sounds/bigjump.ogg");
+      sound_manager->play("sounds/bigjump.wav");
     else
-      sound_manager->play("sounds/jump.ogg");
+      sound_manager->play("sounds/jump.wav");
   } else if(!controller->hold(Controller::JUMP)) { // Let go of jump key
     if (!flapping && !duck && !falling_from_flap && !on_ground()) {
       can_flap = true;
@@ -763,6 +763,18 @@ Player::collision(GameObject& other, const CollisionHit& hit)
   }
  
   if(other.get_flags() & FLAG_SOLID) {
+    TileMap* tilemap = dynamic_cast<TileMap*> (&other);
+    if(tilemap) {
+      const TilemapCollisionHit* thit = 
+        static_cast<const TilemapCollisionHit*> (&hit);
+      printf("Tileattrs. %d\n", thit->tileflags);
+      if(thit->tileflags & Tile::SPIKE)
+        kill(SHRINK);
+
+      if(! (thit->tileflags & Tile::SOLID))
+        return CONTINUE;
+    }
+    
     if(hit.normal.y < 0) { // landed on floor?
       if (physic.get_velocity_y() < 0)
         physic.set_velocity_y(0);
@@ -790,7 +802,7 @@ Player::collision(GameObject& other, const CollisionHit& hit)
 void
 Player::make_invincible()
 {
-  sound_manager->play("sounds/invincible.ogg");
+  sound_manager->play("sounds/invincible.wav");
   invincible_timer.start(TUX_INVINCIBLE_TIME);
   Sector::current()->play_music(HERRING_MUSIC);               
 }
@@ -806,7 +818,7 @@ Player::kill(HurtMode mode)
           safe_timer.get_timeleft() > 0 || invincible_timer.get_timeleft() > 0)
     return;                          
   
-  sound_manager->play("sounds/hurt.ogg");
+  sound_manager->play("sounds/hurt.wav");
 
   physic.set_velocity_x(0);