using System;
namespace Syntriax.Engine.Core.Abstract;
///
/// Responsible for every behaviour an object in the game might have, controlled by .
///
public interface IBehaviour : IEntity, IAssignableBehaviourController, IAssignableStateEnable, IInitialize
{
///
/// Callback triggered when the has changed.
///
Action? OnPriorityChanged { get; set; }
///
/// Call priority of the .
///
int Priority { get; set; }
///
/// If the is active.
///
bool IsActive { get; }
}