40 lines
No EOL
677 B
C++
40 lines
No EOL
677 B
C++
#pragma once
|
|
|
|
#include <string>
|
|
#include <GLFW/glfw3.h>
|
|
|
|
#ifdef LINUX
|
|
#define GLFW_EXPOSE_NATIVE_X11
|
|
#elif MACOS
|
|
//until i can figure out a way to stop the Component class conflicting
|
|
//#define GLFW_EXPOSE_NATIVE_COCOA
|
|
#endif
|
|
#include <GLFW/glfw3native.h>
|
|
#include <entitypool.hpp>
|
|
|
|
class Entity;
|
|
class Engine;
|
|
|
|
struct GlobalState
|
|
{
|
|
int selectedID = 0;
|
|
bool isSelectionEntity = true;
|
|
|
|
GLFWwindow* window = nullptr;
|
|
Engine* engine = nullptr;
|
|
|
|
EntityPool temporaryEntityState;
|
|
|
|
std::string projectRoot;
|
|
|
|
bool isCurrentlyPlaying = false;
|
|
|
|
Entity* editorCamera;
|
|
};
|
|
|
|
inline GlobalState& GetState()
|
|
{
|
|
static GlobalState state;
|
|
|
|
return state;
|
|
} |