diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-04-21 19:35:17 +0300 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-04-21 19:35:17 +0300 |
commit | c638442e78b953556e7dadd4c0c34cb0c719bbc8 (patch) | |
tree | a7c623944ba26d64c4fbf3218025d8ec0145d849 /src/clientobject.h | |
parent | 3c61d57f6d7f627b32b4a8c2f461a8e01e7ac378 (diff) | |
download | minetest-c638442e78b953556e7dadd4c0c34cb0c719bbc8.tar.gz minetest-c638442e78b953556e7dadd4c0c34cb0c719bbc8.tar.bz2 minetest-c638442e78b953556e7dadd4c0c34cb0c719bbc8.zip |
Some work-in-progress in hp and mobs and a frightening amount of random fixes.
Diffstat (limited to 'src/clientobject.h')
-rw-r--r-- | src/clientobject.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/clientobject.h b/src/clientobject.h index 569e9eca6..8d211fef3 100644 --- a/src/clientobject.h +++ b/src/clientobject.h @@ -22,6 +22,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "common_irrlicht.h" #include "activeobject.h" +#include "utility.h" /* @@ -267,5 +268,49 @@ private: SmoothTranslator pos_translator; }; +/* + Oerkki1CAO +*/ + +class Oerkki1CAO : public ClientActiveObject +{ +public: + Oerkki1CAO(); + virtual ~Oerkki1CAO(); + + u8 getType() const + { + return ACTIVEOBJECT_TYPE_OERKKI1; + } + + static ClientActiveObject* create(); + + void addToScene(scene::ISceneManager *smgr); + void removeFromScene(); + void updateLight(u8 light_at_pos); + v3s16 getLightPosition(); + void updateNodePos(); + + void step(float dtime, ClientEnvironment *env); + + void processMessage(const std::string &data); + + void initialize(const std::string &data); + + core::aabbox3d<f32>* getSelectionBox() + {return &m_selection_box;} + v3f getPosition() + {return pos_translator.vect_show;} + //{return m_position;} + +private: + IntervalLimiter m_attack_interval; + core::aabbox3d<f32> m_selection_box; + scene::IMeshSceneNode *m_node; + v3f m_position; + float m_yaw; + SmoothTranslator pos_translator; +}; + #endif |