public void Init(IPathFindingRules pathFindingRules, AStarSearch search) { _pathFindingRules = pathFindingRules; _search = search; UnBuild(); Build(); }
void Start() { _grid = new Node[_gridSizeY, _gridSizeX]; _position = transform.position; Vector2 bottomLeftCell = GetBottomLeftCellCenter(); for (var y = 0; y < _gridSizeY; ++y) { for (var x = 0; x < _gridSizeX; ++x) { Vector2 cellCenter = bottomLeftCell + new Vector2(x * _cellSize, y * _cellSize); bool isOccupiedCell = IsOccupiedCell(cellCenter); _grid[y, x] = new Node(!isOccupiedCell, cellCenter, x, y); } } _pathFindingRules = new PlatformerRules(_agent); _search = new AStarSearch(this); }