20 lines
		
	
	
		
			655 B
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			655 B
		
	
	
	
		
			C#
		
	
	
	
	
	
namespace Engine.Core;
 | 
						|
 | 
						|
/// <summary>
 | 
						|
/// Represents a behaviour that any object in the engine that might use to interact with itself or other objects. 
 | 
						|
/// </summary>
 | 
						|
public interface IBehaviour : IEntity, IActive, IHasBehaviourController, IHasStateEnable
 | 
						|
{
 | 
						|
    /// <summary>
 | 
						|
    /// Event triggered when the priority of the <see cref="IBehaviour"/> changes.
 | 
						|
    /// </summary>
 | 
						|
    Event<IBehaviour, PriorityChangedArguments> OnPriorityChanged { get; }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// The priority of the <see cref="IBehaviour"/>.
 | 
						|
    /// </summary>
 | 
						|
    int Priority { get; set; }
 | 
						|
 | 
						|
    readonly record struct PriorityChangedArguments(int PreviousPriority);
 | 
						|
}
 |