diff options
author | Nils Dagsson Moskopp <nils@dieweltistgarnichtso.net> | 2011-07-20 22:04:24 +0200 |
---|---|---|
committer | Nils Dagsson Moskopp <nils@dieweltistgarnichtso.net> | 2011-07-20 22:05:57 +0200 |
commit | 84684e53edcf319f1aebd69b003ae016173dc485 (patch) | |
tree | 1752dfbd99cd724df9758aeaaa6c52ddb54dfbed /src/content_cao.h | |
parent | 4c0e36a5e9c76af6e5db1d739275f41f079d19d4 (diff) | |
download | minetest-84684e53edcf319f1aebd69b003ae016173dc485.tar.gz minetest-84684e53edcf319f1aebd69b003ae016173dc485.tar.bz2 minetest-84684e53edcf319f1aebd69b003ae016173dc485.zip |
+ fireflies
Diffstat (limited to 'src/content_cao.h')
-rw-r--r-- | src/content_cao.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/content_cao.h b/src/content_cao.h index 146e23b0c..b984be136 100644 --- a/src/content_cao.h +++ b/src/content_cao.h @@ -243,6 +243,48 @@ private: bool m_damage_texture_enabled; }; +/* + FireflyCAO +*/ + +class FireflyCAO : public ClientActiveObject +{ +public: + FireflyCAO(); + virtual ~FireflyCAO(); + + u8 getType() const + { + return ACTIVEOBJECT_TYPE_FIREFLY; + } + + 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 m_position;} + +private: + core::aabbox3d<f32> m_selection_box; + scene::IMeshSceneNode *m_node; + v3f m_position; + float m_yaw; + SmoothTranslator pos_translator; +}; + #endif |