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.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  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 <string>
  10. #include <vector>
  11. #include "Entity.h"
  12. class Game {
  13. public:
  14. Game();
  15. ~Game();
  16. int initialize();
  17. bool isLoaded();
  18. int loadLevel(const char* level);
  19. void destroy();
  20. void display();
  21. void handleAction(ActionEvents action, bool isFinished);
  22. void handleMouseMotion(int xrel, int yrel, int xabs, int yabs);
  23. Entity& getLara();
  24. void setLara(long lara);
  25. private:
  26. void processPakSounds();
  27. void processTextures();
  28. void processSprites();
  29. void processMoveables();
  30. void processMoveable(int index, int i, int object_id);
  31. void processModels();
  32. void processRooms();
  33. std::string levelName;
  34. bool mLoaded;
  35. long mLara;
  36. };
  37. Game& getGame();
  38. #endif