2014-05-31 09:18:50 +02:00
|
|
|
#ifndef DEBUGSTATE_HPP
|
|
|
|
#define DEBUGSTATE_HPP
|
|
|
|
|
|
|
|
#include "State.hpp"
|
|
|
|
|
2016-09-09 22:13:20 +02:00
|
|
|
class DebugState : public State {
|
|
|
|
ViewCamera _debugCam;
|
|
|
|
glm::vec3 _movement;
|
|
|
|
glm::vec2 _debugLook;
|
|
|
|
bool _freeLook = false;
|
|
|
|
bool _sonicMode = false;
|
|
|
|
bool _invertedY;
|
|
|
|
|
2016-10-18 23:00:53 +02:00
|
|
|
std::shared_ptr<Menu> createDebugMenu();
|
|
|
|
std::shared_ptr<Menu> createMapMenu();
|
|
|
|
std::shared_ptr<Menu> createVehicleMenu();
|
|
|
|
std::shared_ptr<Menu> createAIMenu();
|
|
|
|
std::shared_ptr<Menu> createWeaponMenu();
|
2016-06-22 12:29:39 +02:00
|
|
|
|
2014-05-31 09:18:50 +02:00
|
|
|
public:
|
2016-09-09 22:13:20 +02:00
|
|
|
DebugState(RWGame* game, const glm::vec3& vp = {},
|
|
|
|
const glm::quat& vd = {});
|
2014-05-31 09:18:50 +02:00
|
|
|
|
2016-09-09 22:13:20 +02:00
|
|
|
virtual void enter();
|
|
|
|
virtual void exit();
|
2014-05-31 09:18:50 +02:00
|
|
|
|
2016-09-09 22:13:20 +02:00
|
|
|
virtual void tick(float dt);
|
|
|
|
virtual void draw(GameRenderer* r);
|
2014-05-31 09:18:50 +02:00
|
|
|
|
2016-09-09 22:13:20 +02:00
|
|
|
virtual void handleEvent(const SDL_Event& event);
|
2014-06-01 14:17:35 +02:00
|
|
|
|
2016-09-09 22:13:20 +02:00
|
|
|
void printCameraDetails();
|
2016-04-18 03:31:52 +02:00
|
|
|
|
2016-09-09 22:13:20 +02:00
|
|
|
void spawnVehicle(unsigned int id);
|
|
|
|
void spawnFollower(unsigned int id);
|
2016-10-19 03:22:33 +02:00
|
|
|
void giveItem(int slot);
|
2014-08-12 22:15:26 +02:00
|
|
|
|
2016-09-09 22:13:20 +02:00
|
|
|
const ViewCamera& getCamera();
|
2014-05-31 09:18:50 +02:00
|
|
|
};
|
|
|
|
|
2016-09-09 22:13:20 +02:00
|
|
|
#endif // DEBUGSTATE_HPP
|