using System.Collections.Generic; namespace HxGame.PathFinding { public delegate float OnCellCross(int cellIndex); interface IPathFinder { HeuristicFormula Formula { get; set; } bool Diagonals { get; set; } float HeavyDiagonalsCost { get; set; } bool HexagonalGrid { get; set; } float HeuristicEstimate { get; set; } int MaxSteps { get; set; } float MaxSearchCost { get; set; } int CellGroupMask { get; set; } bool IgnoreCanCrossCheck { get; set; } bool IgnoreCellCost { get; set; } bool IncludeInvisibleCells { get; set; } List FindPath(CellNode start, CellNode end, out float cost, bool evenLayout); void SetCalcMatrix(CellNode[] grid); OnCellCross OnCellCross { get; set; } } }