X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fobject%2Fweak_block.cpp;h=c8a4c38a4e39c603e789d6667008e7a9bbba6f7d;hb=657fc40723665c04b3150946f5bd66b6b0af9230;hp=26752712ad550f585d3128f417b63cb3cf2f0ee2;hpb=2bdca112223244c1175f4adc5a64fa104e194ed5;p=supertux.git diff --git a/src/object/weak_block.cpp b/src/object/weak_block.cpp index 26752712a..c8a4c38a4 100644 --- a/src/object/weak_block.cpp +++ b/src/object/weak_block.cpp @@ -21,6 +21,7 @@ #include #include "weak_block.hpp" + #include "lisp/lisp.hpp" #include "object_factory.hpp" #include "player.hpp" @@ -30,11 +31,12 @@ #include "random_generator.hpp" #include "object/bullet.hpp" +#include + WeakBlock::WeakBlock(const lisp::Lisp& lisp) : MovingSprite(lisp, "images/objects/strawbox/strawbox.sprite", LAYER_TILES, COLGROUP_STATIC), state(STATE_NORMAL) { sprite->set_action("normal"); - flags |= FLAG_SOLID; } HitResponse @@ -44,8 +46,8 @@ WeakBlock::collision(GameObject& other, const CollisionHit& ) case STATE_NORMAL: if (dynamic_cast(&other)) { - startBurning(); - return FORCE_MOVE; + startBurning(); + return FORCE_MOVE; } return FORCE_MOVE; break; @@ -74,18 +76,17 @@ WeakBlock::update(float ) case STATE_BURNING: if (sprite->animation_done()) { - state = STATE_DISINTEGRATING; - sprite->set_action("disintegrating", 1); - spreadHit(); - flags &= ~FLAG_SOLID; + state = STATE_DISINTEGRATING; + sprite->set_action("disintegrating", 1); + spreadHit(); set_group(COLGROUP_DISABLED); } break; case STATE_DISINTEGRATING: if (sprite->animation_done()) { - remove_me(); - return; + remove_me(); + return; } break;