Fix for coverity #29360
[supertux.git] / src / badguy / stumpy.cpp
index f06f20e..921d9d2 100644 (file)
@@ -29,23 +29,23 @@ static const float STUMPY_SPEED = 120;
 static const float INVINCIBLE_TIME = 1;
 
 Stumpy::Stumpy(const Reader& reader) :
-  WalkingBadguy(reader, "images/creatures/mr_tree/stumpy.sprite","left","right"), 
+  WalkingBadguy(reader, "images/creatures/mr_tree/stumpy.sprite","left","right"),
   mystate(STATE_NORMAL),
   invincible_timer()
 {
   walk_speed = STUMPY_SPEED;
   max_drop_height = 16;
-  sound_manager->preload("sounds/mr_treehit.ogg");
+  SoundManager::current()->preload("sounds/mr_treehit.ogg");
 }
 
 Stumpy::Stumpy(const Vector& pos, Direction d) :
-  WalkingBadguy(pos, d, "images/creatures/mr_tree/stumpy.sprite","left","right"), 
+  WalkingBadguy(pos, d, "images/creatures/mr_tree/stumpy.sprite","left","right"),
   mystate(STATE_INVINCIBLE),
   invincible_timer()
 {
   walk_speed = STUMPY_SPEED;
   max_drop_height = 16;
-  sound_manager->preload("sounds/mr_treehit.ogg");
+  SoundManager::current()->preload("sounds/mr_treehit.ogg");
   invincible_timer.start(INVINCIBLE_TIME);
 }
 
@@ -87,7 +87,7 @@ Stumpy::collision_squished(GameObject& object)
 
   // if we're still invincible, we ignore the hit
   if (mystate == STATE_INVINCIBLE) {
-    sound_manager->play("sounds/mr_treehit.ogg", get_pos());
+    SoundManager::current()->play("sounds/mr_treehit.ogg", get_pos());
     Player* player = dynamic_cast<Player*>(&object);
     if (player) player->bounce(*this);
     return true;
@@ -108,7 +108,11 @@ Stumpy::collision_squished(GameObject& object)
       float vy = -cos(angle)*velocity;
       Vector pspeed = Vector(vx, vy);
       Vector paccel = Vector(0, 100);
-      Sector::current()->add_object(new SpriteParticle("images/objects/particles/bark.sprite", "default", ppos, ANCHOR_MIDDLE, pspeed, paccel, LAYER_OBJECTS-1));
+      Sector::current()->add_object(std::make_shared<SpriteParticle>("images/objects/particles/bark.sprite",
+                                                                     "default",
+                                                                     ppos, ANCHOR_MIDDLE,
+                                                                     pspeed, paccel,
+                                                                     LAYER_OBJECTS-1));
     }
 
     return true;