2023-11-30 17:52:09 +03:00
|
|
|
using System;
|
|
|
|
using System.Collections.Generic;
|
2023-12-05 17:39:38 +03:00
|
|
|
|
2023-11-30 17:52:09 +03:00
|
|
|
using Microsoft.Xna.Framework;
|
|
|
|
|
|
|
|
using Syntriax.Engine.Core.Abstract;
|
|
|
|
|
|
|
|
namespace Syntriax.Engine.Physics2D.Abstract;
|
|
|
|
|
|
|
|
public interface ICollider2D : IBehaviour, IAssignableTransform
|
|
|
|
{
|
2023-12-06 13:25:16 +03:00
|
|
|
Action<ICollider2D, ICollider2D>? OnCollisionPreResolve { get; set; }
|
|
|
|
|
2023-12-04 13:14:23 +03:00
|
|
|
IRigidBody2D? RigidBody2D { get; }
|
|
|
|
|
2023-12-06 13:25:16 +03:00
|
|
|
IReadOnlyList<Vector2> Vertices { get; }
|
2023-11-30 17:52:09 +03:00
|
|
|
|
2023-12-06 13:25:16 +03:00
|
|
|
bool CheckCollision(Vector2 point);
|
2023-12-05 17:39:38 +03:00
|
|
|
void Recalculate();
|
2023-11-30 17:52:09 +03:00
|
|
|
}
|