Open Source Tomb Raider Engine
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Game.h 1.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /*!
  2. * \file include/Game.h
  3. * \brief Game abstraction
  4. *
  5. * \author xythobuz
  6. */
  7. #ifndef _GAME_H_
  8. #define _GAME_H_
  9. #include <vector>
  10. #include "Camera.h"
  11. #include "Entity.h"
  12. #include "global.h"
  13. #include "Render.h"
  14. #include "TombRaider.h"
  15. #include "World.h"
  16. /*!
  17. * \brief Game abstraction
  18. */
  19. class Game {
  20. public:
  21. Game();
  22. ~Game();
  23. int initialize();
  24. bool isLoaded();
  25. int loadLevel(const char *level);
  26. void destroy();
  27. void handleAction(ActionEvents action, bool isFinished);
  28. void handleMouseMotion(int xrel, int yrel);
  29. unsigned int getTextureStart();
  30. unsigned int getTextureOffset();
  31. Entity &getLara();
  32. private:
  33. void processPakSounds();
  34. void processTextures();
  35. void processSprites();
  36. void processMoveables();
  37. void processMoveable(int index, int i, int object_id);
  38. void processModels();
  39. void processRooms();
  40. #ifdef EXPERIMENTAL
  41. void setupTextureColor(texture_tri_t *r_tri, float *colorf);
  42. #endif
  43. char *mName;
  44. bool mLoaded;
  45. TombRaider mTombRaider;
  46. unsigned int mTextureStart;
  47. unsigned int mTextureOffset;
  48. unsigned int mLara;
  49. };
  50. #endif