42 lines
561 B
C++
42 lines
561 B
C++
#pragma once
|
|
|
|
#include "Scenes/MainMenu.h"
|
|
#include <ConstGlobals.h>
|
|
#include <SFML/Graphics.hpp>
|
|
#include <Scenes.h>
|
|
|
|
#include <utility.h>
|
|
|
|
#include <tuple>
|
|
|
|
enum class Scenes : int
|
|
{
|
|
Play,
|
|
MainMenu,
|
|
SceneCount
|
|
};
|
|
|
|
inline constexpr int SCENE_COUNT {(int)Scenes::SceneCount};
|
|
|
|
using SceneContainer = std::tuple
|
|
<
|
|
Play_s,
|
|
MainMenu_s
|
|
>;
|
|
|
|
class GameEngine
|
|
{
|
|
private:
|
|
void changeScene(Scenes scene_in);
|
|
|
|
public:
|
|
void run();
|
|
|
|
private:
|
|
sf::RenderWindow m_window;
|
|
SceneContainer m_scenes;
|
|
Scenes m_currentScene;
|
|
Scenes m_previousScene;
|
|
bool m_running;
|
|
|
|
}; |