feat: IActive interface added for hierarchy active state

This commit is contained in:
2025-04-01 13:22:14 +03:00
parent d4c6288b38
commit 417ddca972
12 changed files with 119 additions and 30 deletions

View File

@@ -0,0 +1,19 @@
namespace Syntriax.Engine.Core.Abstract;
/// <summary>
/// Represents an entity which can be active or not.
/// </summary>
public interface IActive
{
/// <summary>
/// Event triggered when the <see cref="IsActive"/> state of the <see cref="IActive"/> changes.
/// </summary>
event ActiveChangedEventHandler? OnActiveChanged;
/// <summary>
/// The value indicating whether the <see cref="IActive"/> is enabled.
/// </summary>
bool IsActive { get; }
delegate void ActiveChangedEventHandler(IActive sender, bool previousState);
}