summaryrefslogtreecommitdiff
path: root/src/collision.cpp
diff options
context:
space:
mode:
authorPerttu Ahola <celeron55@gmail.com>2011-11-21 14:36:21 +0200
committerPerttu Ahola <celeron55@gmail.com>2011-11-29 19:13:50 +0200
commit290e9219208fd904807bded7ccdb7109a4f92bc6 (patch)
tree1bad6c56620e007c4177284e42386e4b0cea8b8f /src/collision.cpp
parent94feb62b087d61d0c211645970a36e6752d1c732 (diff)
downloadminetest-290e9219208fd904807bded7ccdb7109a4f92bc6.tar.gz
minetest-290e9219208fd904807bded7ccdb7109a4f92bc6.tar.bz2
minetest-290e9219208fd904807bded7ccdb7109a4f92bc6.zip
Relatively snappy object-ground collision detection
Diffstat (limited to 'src/collision.cpp')
-rw-r--r--src/collision.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/collision.cpp b/src/collision.cpp
index 674cf4ed4..24f1e9d18 100644
--- a/src/collision.cpp
+++ b/src/collision.cpp
@@ -177,6 +177,7 @@ collisionMoveResult collisionMoveSimple(Map *map, IGameDef *gamedef,
speed_f -= speed_f.dotProduct(dirs[i]) * dirs[i];
pos_f -= pos_f.dotProduct(dirs[i]) * dirs[i];
pos_f += oldpos_f.dotProduct(dirs[i]) * dirs[i];
+ result.collides = true;
}
}
@@ -232,6 +233,8 @@ collisionMoveResult collisionMovePrecise(Map *map, IGameDef *gamedef,
if(result.touching_ground)
final_result.touching_ground = true;
+ if(result.collides)
+ final_result.collides = true;
}
while(dtime_downcount > 0.001);