EntityModel.h 900 B

1234567891011121314151617181920212223242526272829303132333435
  1. #ifndef ENTITY_MODEL_H
  2. #define ENTITY_MODEL_H
  3. #include "Entity.h"
  4. class EntityModel : public Entity
  5. {
  6. public:
  7. EntityModel( const Ogre::String& name, const Ogre::String file_name, Ogre::SceneNode* node );
  8. virtual ~EntityModel();
  9. virtual void Update();
  10. // model related
  11. virtual void SetVisible( const bool visible );
  12. virtual bool IsVisible() const;
  13. // animation related
  14. virtual void PlayAnimation( const Ogre::String& animation, AnimationState state, AnimationPlayType play_type, const float start, const float end );
  15. virtual void PlayAnimationContinue( const Ogre::String& animation );
  16. virtual void UpdateAnimation( const float delta );
  17. private:
  18. EntityModel();
  19. private:
  20. Ogre::Entity* m_Model;
  21. Ogre::AnimationState* m_AnimationCurrent;
  22. };
  23. #endif // ENTITY_MODEL_H