using System; using Syntriax.Engine.Core.Abstract; namespace Syntriax.Engine.Physics2D.Abstract; /// /// Represents a 2D collider. /// public interface ICollider2D : IBehaviour, IAssignableTransform { /// /// Event triggered when a collision is detected. /// Action? OnCollisionDetected { get; set; } /// /// Event triggered when a collision is resolved. /// Action? OnCollisionResolved { get; set; } /// /// Event triggered when another triggers this . /// Action? OnTriggered { get; set; } /// /// The associated with the . /// IRigidBody2D? RigidBody2D { get; } /// /// The value indicating whether the is a trigger. /// bool IsTrigger { get; set; } /// /// Recalculates properties. /// void Recalculate(); }