From 7ddcc5fe68c58205ced08c596b74b74b85de2d4e Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Sun, 10 Nov 2013 12:19:01 +0000 Subject: Separated the WayPoint class into its own files. --- src/game/base/waypoint.h | 61 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 src/game/base/waypoint.h (limited to 'src/game/base/waypoint.h') diff --git a/src/game/base/waypoint.h b/src/game/base/waypoint.h new file mode 100644 index 0000000..ce18930 --- /dev/null +++ b/src/game/base/waypoint.h @@ -0,0 +1,61 @@ +/* + base/waypoint.h + This file is part of the Osirion project and is distributed under + the terms and conditions of the GNU General Public License version 2 +*/ + +#ifndef __INCLUDED_BASE_WAYPOINT_H__ +#define __INCLUDED_BASE_WAYPOINT_H__ + +#include "core/entity.h" +#include "base/cargo.h" + +namespace game +{ + +/** +* @brief a node in the patrol's travel path +* */ +class WayPoint { +public: + WayPoint(); + ~WayPoint(); + + inline core::Entity *target() + { + return waypoint_target; + } + + inline const std::string & target_label() const { + return waypoint_target_label; + } + + inline const bool dock() const { + return waypoint_dock; + } + + inline const Cargo *cargo() const { + return waypoint_cargo; + } + + void set_target(core::Entity *entity); + + void set_target_label(const std::string &label); + + void set_cargo(Cargo *cargo); + + void set_dock(const bool dock); + +private: + std::string waypoint_target_label; + + core::Entity *waypoint_target; + + Cargo *waypoint_cargo; + + bool waypoint_dock; +}; + +} // namespace game + +#endif // __INCLUDED_BASE_WAYPOINT_H__ -- cgit v1.2.3