2023-11-23 22:07:49 +03:00
|
|
|
using System;
|
|
|
|
|
|
|
|
namespace Syntriax.Engine.Core.Abstract;
|
|
|
|
|
2024-02-01 12:14:53 +03:00
|
|
|
/// <summary>
|
|
|
|
/// Represents a game object with various properties and functionalities.
|
|
|
|
/// </summary>
|
2024-01-30 12:26:17 +03:00
|
|
|
public interface IGameObject : IEntity, IAssignableGameManager, IAssignableTransform, IAssignableBehaviourController, INameable, IInitialize
|
2023-11-23 22:07:49 +03:00
|
|
|
{
|
2024-02-01 12:14:53 +03:00
|
|
|
/// <summary>
|
|
|
|
/// Event triggered when the <see cref="Update"/> method is called.
|
|
|
|
/// </summary>
|
2024-01-22 22:45:40 +03:00
|
|
|
Action<IGameObject>? OnUpdated { get; set; }
|
2023-11-23 22:07:49 +03:00
|
|
|
|
2024-02-01 12:14:53 +03:00
|
|
|
/// <summary>
|
|
|
|
/// Updates the game object.
|
|
|
|
/// </summary>
|
2024-01-22 22:45:40 +03:00
|
|
|
void Update();
|
2023-11-23 22:07:49 +03:00
|
|
|
}
|