From 629d758dbc8bbedf730b271073137844aec99771 Mon Sep 17 00:00:00 2001 From: Syntriax Date: Sat, 4 Apr 2026 19:02:25 +0300 Subject: [PATCH] feat: ICollider.OnRecalculated event added --- Engine.Physics2D/Abstract/ICollider2D.cs | 5 +++++ Engine.Physics2D/Collider2DBase.cs | 2 ++ 2 files changed, 7 insertions(+) diff --git a/Engine.Physics2D/Abstract/ICollider2D.cs b/Engine.Physics2D/Abstract/ICollider2D.cs index 606ee8f..d0ff006 100644 --- a/Engine.Physics2D/Abstract/ICollider2D.cs +++ b/Engine.Physics2D/Abstract/ICollider2D.cs @@ -7,6 +7,11 @@ namespace Engine.Physics2D; /// public interface ICollider2D : IBehaviour { + /// + /// Event triggered when the collider is recalculated. + /// + Event OnRecalculated { get; } + /// /// Event triggered when a collision is detected. /// diff --git a/Engine.Physics2D/Collider2DBase.cs b/Engine.Physics2D/Collider2DBase.cs index 329592d..7e13116 100644 --- a/Engine.Physics2D/Collider2DBase.cs +++ b/Engine.Physics2D/Collider2DBase.cs @@ -4,6 +4,7 @@ namespace Engine.Physics2D; public abstract class Collider2DBase : Behaviour2D, ICollider2D { + public Event OnRecalculated { get; } = new(); public Event OnCollisionDetected { get; } = new(); public Event OnCollisionResolved { get; } = new(); public Event OnTriggered { get; } = new(); @@ -30,6 +31,7 @@ public abstract class Collider2DBase : Behaviour2D, ICollider2D CalculateCollider(); NeedsRecalculation = false; + OnRecalculated.Invoke(this); } public abstract void CalculateCollider();