souleng
Game engine providing full Python scripting support
Loading...
Searching...
No Matches
SceneManager.hpp
1#pragma once
2
3#include "ScriptedScene.hpp"
4#include <pybind11/pybind11.h>
5#include <unordered_map>
6
9
11 static SceneManager &instance();
12
16 void AddScene(std::string sceneName, pybind11::module_ sceneScript);
17
20 void ChangeActiveScene(std::string sceneName);
21
24 void RunActiveScene(float dt);
25
27 void EndGame();
28
30 bool GameEnded();
31
32private:
35 static SceneManager *mInstance;
36 bool mEndGame{false};
37 std::string mActiveSceneKey;
38 std::unordered_map<std::string, ScriptedScene> mScenes;
39};
Singleton manager for running the active scenes and swapping scenes out.
Definition SceneManager.hpp:8
void AddScene(std::string sceneName, pybind11::module_ sceneScript)
Definition SceneManager.cpp:18
void EndGame()
Callable from scripts to signal that the game should be terminated.
Definition SceneManager.cpp:38
void ChangeActiveScene(std::string sceneName)
Definition SceneManager.cpp:23
void RunActiveScene(float dt)
Definition SceneManager.cpp:32
static SceneManager & instance()
Singleton accessor.
Definition SceneManager.cpp:11
bool GameEnded()
Callable from C++ to check if the game should be terminated.
Definition SceneManager.cpp:40