using System; using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using Microsoft.Xna.Framework; using Syntriax.Engine.Core.Abstract; namespace Syntriax.Engine.Physics2D.Abstract; public interface ICollider2D : IBehaviour, IAssignableTransform { IRigidBody2D? RigidBody2D { get; } Action? OnCollision { get; set; } Vector2 OffsetPosition { get; set; } Vector2 OffsetScale { get; set; } float OffsetRotation { get; set; } IReadOnlyList Vertices { get; } bool CheckCollision(Vector2 point, ICollider2D otherCollider, out Vector2 normal); void RecalculateVertices(); }