From: Matthias Braun Date: Sun, 18 Sep 2005 14:47:55 +0000 (+0000) Subject: fix CONTINUE handling X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=f961e421748434e87e0c96abe6b8bc15a2c09232;p=supertux.git fix CONTINUE handling SVN-Revision: 2776 --- diff --git a/src/sector.cpp b/src/sector.cpp index 5ff6b03ec..2230eca94 100644 --- a/src/sector.cpp +++ b/src/sector.cpp @@ -629,7 +629,7 @@ Sector::collision_tilemap(MovingObject* object, int depth) if(Collision::rectangle_aatriangle(temphit, dest, object->movement, triangle)) { hit.tileflags |= tile->getAttributes(); - if(temphit.time > hit.time) { + if(temphit.time > hit.time && (tile->getAttributes() & Tile::SOLID)) { temphit.tileflags = hit.tileflags; hit = temphit; } @@ -639,7 +639,7 @@ Sector::collision_tilemap(MovingObject* object, int depth) if(Collision::rectangle_rectangle(temphit, dest, object->movement, rect)) { hit.tileflags |= tile->getAttributes(); - if(temphit.time > hit.time) { + if(temphit.time > hit.time && (tile->getAttributes() & Tile::SOLID)) { temphit.tileflags = hit.tileflags; hit = temphit; } @@ -649,7 +649,7 @@ Sector::collision_tilemap(MovingObject* object, int depth) } // did we collide at all? - if(hit.time < 0) + if(hit.tileflags == 0) return; // call collision function