diff options
author | stujones11 <stujones11@server.fake> | 2013-12-11 20:33:39 +0000 |
---|---|---|
committer | ShadowNinja <shadowninja@minetest.net> | 2013-12-12 16:11:00 -0500 |
commit | d9ef072305b92b020ebe473765118cca0e23608a (patch) | |
tree | d3232745cfe75bed24cbaeff33c1a11409bbd139 /src/environment.cpp | |
parent | 33de69a173a3646d8f5b9bf91b3e48d76cd40ae6 (diff) | |
download | minetest-d9ef072305b92b020ebe473765118cca0e23608a.tar.xz |
Make line_of_sight return blocking node position
Diffstat (limited to 'src/environment.cpp')
-rw-r--r-- | src/environment.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/environment.cpp b/src/environment.cpp index e4567a78e..7fe5d356a 100644 --- a/src/environment.cpp +++ b/src/environment.cpp @@ -354,7 +354,7 @@ ServerMap & ServerEnvironment::getServerMap() return *m_map; } -bool ServerEnvironment::line_of_sight(v3f pos1, v3f pos2, float stepsize) +bool ServerEnvironment::line_of_sight(v3f pos1, v3f pos2, float stepsize, v3s16 *p) { float distance = pos1.getDistanceFrom(pos2); @@ -372,6 +372,9 @@ bool ServerEnvironment::line_of_sight(v3f pos1, v3f pos2, float stepsize) MapNode n = getMap().getNodeNoEx(pos); if(n.param0 != CONTENT_AIR) { + if (p) { + *p = pos; + } return false; } } |