Files
DemoGame/include/Engine/Globals.h

28 lines
787 B
C++

#pragma once
#include <Engine/types/Scene.h>
#include <Engine/types/GameWindow.h>
namespace Globals {
using namespace Engine;
inline std::vector<Scene*> SceneList{};
inline Scene* CurrentScene = nullptr;
inline DemoGameWindow* Window = nullptr;
inline float DeltaTime() { return Window->GetDeltaTime(); }
inline void ChangeScene(Scene* scene) { if (CurrentScene != nullptr) CurrentScene->Unload(); CurrentScene = scene; if (CurrentScene != nullptr) CurrentScene->Init(); }
inline bool ChangeScene (const std::string& scene_name)
{
Scene* scene = nullptr;
for (auto* s : SceneList)
if (s->GetName() == scene_name)
scene = s;
if (scene)
ChangeScene(scene);
return scene;
}
}