diff options
Diffstat (limited to 'src/environment.h')
-rw-r--r-- | src/environment.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/environment.h b/src/environment.h index 11c2533ca..b45775f4c 100644 --- a/src/environment.h +++ b/src/environment.h @@ -42,6 +42,8 @@ with this program; if not, write to the Free Software Foundation, Inc., class IGameDef; class Map; +struct PointedThing; +class RaycastState; class Environment { @@ -76,6 +78,26 @@ public: u32 getDayCount(); + /*! + * Gets the objects pointed by the shootline as + * pointed things. + * If this is a client environment, the local player + * won't be returned. + * @param[in] shootline_on_map the shootline for + * the test in world coordinates + * + * @param[out] objects found objects + */ + virtual void getSelectedActiveObjects(const core::line3d<f32> &shootline_on_map, + std::vector<PointedThing> &objects) = 0; + + /*! + * Returns the next node or object the shootline meets. + * @param state current state of the raycast + * @result output, will contain the next pointed thing + */ + void continueRaycast(RaycastState *state, PointedThing *result); + // counter used internally when triggering ABMs u32 m_added_objects; |