28 lines
927 B
C#
28 lines
927 B
C#
using UnityEngine;
|
|
|
|
namespace SuperTiled2Unity.Editor
|
|
{
|
|
// Create concrete collider types based on inheritence and geometry input
|
|
public abstract class ColliderFactory
|
|
{
|
|
public ColliderFactory(SuperImportContext importContext)
|
|
{
|
|
ImportContext = importContext;
|
|
}
|
|
|
|
public SuperImportContext ImportContext { get; private set; }
|
|
|
|
public Vector2 TransformPoint(float x, float y)
|
|
{
|
|
return TransformPoint(new Vector2(x, y));
|
|
}
|
|
|
|
public abstract Vector2 TransformPoint(Vector2 point);
|
|
|
|
public abstract Collider2D MakeBox(GameObject go, float width, float height);
|
|
public abstract Collider2D MakeEllipse(GameObject go, float width, float height);
|
|
public abstract Collider2D MakePolygon(GameObject go, Vector2[] points);
|
|
public abstract Collider2D MakePolyline(GameObject go, Vector2[] points);
|
|
}
|
|
}
|