feat: IGameManager
This commit is contained in:
21
Engine.Core/Abstract/IGameManager.cs
Normal file
21
Engine.Core/Abstract/IGameManager.cs
Normal file
@@ -0,0 +1,21 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Syntriax.Engine.Core.Abstract;
|
||||
|
||||
public interface IGameManager : IEntity, IEnumerable<IGameObject>
|
||||
{
|
||||
Action<GameManager, IGameObject>? OnGameObjectRegistered { get; set; }
|
||||
Action<GameManager, IGameObject>? OnGameObjectUnRegistered { get; set; }
|
||||
|
||||
|
||||
IReadOnlyList<IGameObject> GameObjects { get; }
|
||||
|
||||
|
||||
void RegisterGameObject(IGameObject gameObject);
|
||||
T InstantiateGameObject<T>(params object?[]? args) where T : class, IGameObject;
|
||||
IGameObject RemoveGameObject(IGameObject gameObject);
|
||||
|
||||
void Update(EngineTime time);
|
||||
void PreDraw();
|
||||
}
|
Reference in New Issue
Block a user