feat: ICollider.OnRecalculated event added
This commit is contained in:
@@ -7,6 +7,11 @@ namespace Engine.Physics2D;
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface ICollider2D : IBehaviour
|
public interface ICollider2D : IBehaviour
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Event triggered when the collider is recalculated.
|
||||||
|
/// </summary>
|
||||||
|
Event<ICollider2D> OnRecalculated { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Event triggered when a collision is detected.
|
/// Event triggered when a collision is detected.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ namespace Engine.Physics2D;
|
|||||||
|
|
||||||
public abstract class Collider2DBase : Behaviour2D, ICollider2D
|
public abstract class Collider2DBase : Behaviour2D, ICollider2D
|
||||||
{
|
{
|
||||||
|
public Event<ICollider2D> OnRecalculated { get; } = new();
|
||||||
public Event<ICollider2D, CollisionDetectionInformation> OnCollisionDetected { get; } = new();
|
public Event<ICollider2D, CollisionDetectionInformation> OnCollisionDetected { get; } = new();
|
||||||
public Event<ICollider2D, CollisionDetectionInformation> OnCollisionResolved { get; } = new();
|
public Event<ICollider2D, CollisionDetectionInformation> OnCollisionResolved { get; } = new();
|
||||||
public Event<ICollider2D, ICollider2D> OnTriggered { get; } = new();
|
public Event<ICollider2D, ICollider2D> OnTriggered { get; } = new();
|
||||||
@@ -30,6 +31,7 @@ public abstract class Collider2DBase : Behaviour2D, ICollider2D
|
|||||||
|
|
||||||
CalculateCollider();
|
CalculateCollider();
|
||||||
NeedsRecalculation = false;
|
NeedsRecalculation = false;
|
||||||
|
OnRecalculated.Invoke(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public abstract void CalculateCollider();
|
public abstract void CalculateCollider();
|
||||||
|
|||||||
Reference in New Issue
Block a user