X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fbadguy%2Ftreewillowisp.cpp;h=4a0c06bce183a90832e3ba42d5ca6e3b61a6780c;hb=198f758764fff064a47630b5d0f1e3d6aabe95a8;hp=db417a6afc66044c18f0efdc0f19b8b95ef80090;hpb=381dd34488c553c853f4e466f61fb9afb9414761;p=supertux.git diff --git a/src/badguy/treewillowisp.cpp b/src/badguy/treewillowisp.cpp index db417a6af..4a0c06bce 100644 --- a/src/badguy/treewillowisp.cpp +++ b/src/badguy/treewillowisp.cpp @@ -38,6 +38,8 @@ TreeWillOWisp::TreeWillOWisp(GhostTree* tree, const Vector& pos, this->angle = 0; this->speed = speed; start_position = tree->get_pos() + treepos_delta; + + set_colgroup_active(COLGROUP_MOVING); } TreeWillOWisp::~TreeWillOWisp() @@ -53,8 +55,6 @@ TreeWillOWisp::activate() sound_source->set_gain(2.0); sound_source->set_reference_distance(32); sound_source->play(); - - set_group(COLGROUP_MOVING); } void @@ -62,7 +62,7 @@ TreeWillOWisp::vanish() { mystate = STATE_VANISHING; sprite->set_action("vanishing", 1); - set_group(COLGROUP_DISABLED); + set_colgroup_active(COLGROUP_DISABLED); } void @@ -92,6 +92,19 @@ TreeWillOWisp::collides(GameObject& other, const CollisionHit& ) { } void +TreeWillOWisp::draw(DrawingContext& context) +{ + sprite->draw(context, get_pos(), layer); + + context.push_target(); + context.set_target(DrawingContext::LIGHTMAP); + + sprite->draw(context, get_pos(), layer); + + context.pop_target(); +} + +void TreeWillOWisp::active_update(float elapsed_time) { // remove TreeWillOWisp if it has completely vanished