26 lines
690 B
C#
26 lines
690 B
C#
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<ICollider2D, ICollider2D>? OnCollision { get; set; }
|
|
|
|
Vector2 OffsetPosition { get; set; }
|
|
Vector2 OffsetScale { get; set; }
|
|
float OffsetRotation { get; set; }
|
|
IReadOnlyList<Vector2> Vertices { get; }
|
|
|
|
|
|
bool CheckCollision(Vector2 point, ICollider2D otherCollider, out CollisionInformation? collisionInformation);
|
|
|
|
void RecalculateVertices();
|
|
}
|