55 for (
size_t i = 0; i <
Scenes.GetSize(); ++i) {
68 virtual void Loop(
float DeltaTime) = 0;
75 if (scene)
Scenes.add(scene);
80 int index =
Scenes.indexOf(scene);
virtual SceneBase * GetActiveScene()
virtual void Loop(float DeltaTime)=0
Per-frame update, called after the active scene's own update.
virtual bool GetIsGameRunning()=0
Sleak::List< Sleak::SceneBase * > Scenes
virtual bool Initialize()=0
One-time setup before the loop starts. Return false to abort the run.
virtual void SetActiveScene(SceneBase *scene)
Deactivates the current scene and activates the given one.
virtual void RemoveScene(SceneBase *scene)
Unloads, destroys, and drops a scene from the registry.
virtual void SetActiveScene(int index)
Activates the scene at the given index in the registry.
virtual void AddScene(SceneBase *scene)
Registers a scene; the game takes ownership.
virtual void Begin()=0
Called once after Initialize(), before the first Loop().
Implements a dynamic array-like list for storing and managing a collection of elements.
Root namespace for everything the engine exposes.