Dungeon generation refactor (#17121)

This commit is contained in:
metalgearsloth
2023-06-27 19:17:42 +10:00
committed by GitHub
parent b3d395f214
commit cca1a78384
26 changed files with 1528 additions and 496 deletions

View File

@@ -16,25 +16,12 @@ public sealed partial class PathfindingSystem
return dx + dy;
}
public float ManhattanDistance(Vector2i start, Vector2i end)
{
var distance = end - start;
return Math.Abs(distance.X) + Math.Abs(distance.Y);
}
public float OctileDistance(PathPoly start, PathPoly end)
{
var (dx, dy) = GetDiff(start, end);
return dx + dy + (1.41f - 2) * Math.Min(dx, dy);
}
public float OctileDistance(Vector2i start, Vector2i end)
{
var diff = start - end;
var ab = Vector2.Abs(diff);
return ab.X + ab.Y + (1.41f - 2) * Math.Min(ab.X, ab.Y);
}
private Vector2 GetDiff(PathPoly start, PathPoly end)
{
var startPos = start.Box.Center;