X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fbadguy%2Fbadguy.cpp;h=4a209783c62a70566c915b38eceaf8edb1f04e13;hb=58bf708dc9f036b2c7d8d3edfdbfa62f0da3481a;hp=b075dd1f542fecb07095c3326488346be9e1d10e;hpb=a705cb038b55f5d7634c646c134abaa7d16aee2b;p=supertux.git diff --git a/src/badguy/badguy.cpp b/src/badguy/badguy.cpp index b075dd1f5..4a209783c 100644 --- a/src/badguy/badguy.cpp +++ b/src/badguy/badguy.cpp @@ -1,7 +1,7 @@ #include #include "badguy.h" -#include "camera.h" +#include "object/camera.h" static const float SQUISH_TIME = 2; static const float X_OFFSCREEN_DISTANCE = 1600; @@ -97,7 +97,7 @@ BadGuy::collision(GameObject& other, const CollisionHit& hit) return collision_solid(other, hit); BadGuy* badguy = dynamic_cast (&other); - if(badguy) + if(badguy && badguy->state == STATE_ACTIVE) return collision_badguy(*badguy, hit); Player* player = dynamic_cast (&other); @@ -155,6 +155,7 @@ BadGuy::kill_squished(Player& player) { SoundManager::get()->play_sound(IDToSound(SND_SQUISH), get_pos(), player.get_pos()); + physic.enable_gravity(true); physic.set_velocity_x(0); physic.set_velocity_y(0); set_state(STATE_SQUISHED);