diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-11-21 14:36:21 +0200 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-11-29 19:13:50 +0200 |
commit | 290e9219208fd904807bded7ccdb7109a4f92bc6 (patch) | |
tree | 1bad6c56620e007c4177284e42386e4b0cea8b8f /src/collision.cpp | |
parent | 94feb62b087d61d0c211645970a36e6752d1c732 (diff) | |
download | minetest-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.cpp | 3 |
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); |