namespace Syntriax.Engine.Core.Abstract;
///
/// Indicates the object is an with an assignable field.
///
public interface IAssignableGameManager : IAssignable
{
///
/// Event triggered when the value has has been assigned a new value.
///
event OnGameManagerAssignedEventHandler? OnGameManagerAssigned;
///
IGameManager GameManager { get; }
///
/// Assign a value to the field of this object.
///
/// New to assign.
///
/// , if the value given assigned successfully assigned, if not.
///
bool Assign(IGameManager gameManager);
delegate void OnGameManagerAssignedEventHandler(IAssignableGameManager sender);
}