Open Source Tomb Raider Engine
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

Entity.h 969B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*!
  2. * \file include/Entity.h
  3. * \brief World Entities
  4. *
  5. * \author xythobuz
  6. */
  7. #ifndef _ENTITY_H_
  8. #define _ENTITY_H_
  9. #include "math/math.h"
  10. #include "TombRaider.h"
  11. class Entity {
  12. public:
  13. typedef enum {
  14. MoveTypeWalkNoSwim = -1,
  15. MoveTypeWalk = 0,
  16. MoveTypeNoClipping = 1,
  17. MoveTypeFly = 2,
  18. MoveTypeSwim = 3
  19. } MoveType;
  20. Entity(TombRaider &tr);
  21. // Animation State
  22. unsigned int getAnimationFrame();
  23. void setAnimationFrame(unsigned int index);
  24. unsigned int getBoneFrame();
  25. void setBoneFrame(unsigned int index);
  26. unsigned int getIdleAnimation();
  27. void setIdleAnimation(unsigned int index);
  28. private:
  29. vec3_t pos;
  30. vec3_t angles;
  31. int room;
  32. unsigned int skeletalModel;
  33. MoveType moveType;
  34. int state;
  35. int objectId;
  36. // Animation State
  37. unsigned int boneFrame;
  38. unsigned int animationFrame;
  39. unsigned int idleAnimation;
  40. };
  41. #endif