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