apply formatting
This commit is contained in:
34
Engine/src/Scene/SceneManager.cs
Normal file
34
Engine/src/Scene/SceneManager.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using Engine.Scene.Component.BuiltIn;
|
||||
|
||||
namespace Engine.Scene;
|
||||
|
||||
public class SceneManager : IUpdate, IRender
|
||||
{
|
||||
public Scene? CurrentScene => _currentScene;
|
||||
|
||||
private Scene? _currentScene;
|
||||
private Scene? _nextScene;
|
||||
|
||||
public void TransitionTo(Scene parScene)
|
||||
{
|
||||
_nextScene = parScene;
|
||||
}
|
||||
|
||||
public void Update(double parDeltaTime)
|
||||
{
|
||||
if (_nextScene != null)
|
||||
{
|
||||
_currentScene?.Exit();
|
||||
_currentScene = _nextScene;
|
||||
_nextScene = null;
|
||||
_currentScene.Enter();
|
||||
}
|
||||
|
||||
_currentScene?.Update(parDeltaTime);
|
||||
}
|
||||
|
||||
public void Render()
|
||||
{
|
||||
_currentScene?.Render();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user