diff options
author | Stijn Buys <ingar@osirion.org> | 2012-04-22 19:48:27 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2012-04-22 19:48:27 +0000 |
commit | 8f124fabdfd6761cefbcc2c4120ba325692f5d0b (patch) | |
tree | 21d38bdc6088654802d736dcb905429c42bd591a /src/core/slot.h | |
parent | d1931b1ebbe79cbd0f41290acbf9cb6d4c462878 (diff) |
Initial support for per-entity weapon slots.
Diffstat (limited to 'src/core/slot.h')
-rw-r--r-- | src/core/slot.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/src/core/slot.h b/src/core/slot.h new file mode 100644 index 0000000..e99f33c --- /dev/null +++ b/src/core/slot.h @@ -0,0 +1,51 @@ +/* + core/slot.h + This file is part of the Osirion project and is distributed under + the terms of the GNU General Public License version 2. +*/ + +#ifndef __INCLUDED_CORE_SLOT_H__ +#define __INCLUDED_CORE_SLOT_H__ + +#include "math/vector3f.h" +#include "math/axis.h" + +#include "core/item.h" + +namespace core +{ + +/** + * @brief A single equipment or weapon slots + * */ +class Slot { +public: + Slot(); + Slot(const math::Vector3f &location); + + ~Slot(); + + inline const math::Vector3f &location() { + return slot_location; + } + + + inline void set_item(Item *item) + { + slot_item = item; + } + + inline void set_location(const math::Vector3f &location) + { + slot_location.assign(location); + } + +private: + math::Vector3f slot_location; + Item *slot_item; +}; + +} // namespace core + +#endif // __INCLUDED_CORE_SLOTS_H__ + |