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.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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 "Entity.h"
  11. #include "TombRaider.h"
  12. /*!
  13. * \brief Game abstraction
  14. */
  15. class Game {
  16. public:
  17. Game();
  18. ~Game();
  19. int initialize();
  20. bool isLoaded();
  21. int loadLevel(const char *level);
  22. void destroy();
  23. void handleAction(ActionEvents action, bool isFinished);
  24. void handleMouseMotion(int xrel, int yrel);
  25. unsigned int getTextureStart();
  26. unsigned int getTextureOffset();
  27. Entity &getLara();
  28. private:
  29. void processPakSounds();
  30. void processTextures();
  31. void processSprites();
  32. void processMoveables();
  33. void processMoveable(int index, int i, int object_id);
  34. void processModels();
  35. void processRooms();
  36. char *mName;
  37. bool mLoaded;
  38. TombRaider mTombRaider;
  39. unsigned int mTextureStart;
  40. unsigned int mTextureOffset;
  41. long mLara;
  42. };
  43. Game &getGame();
  44. #endif