public void GetPath() { path = pathFinder.GetPathFromSpawnToSeat(); index = 0; location = path[index]; grid.Taketile(location); }
private void TraversePath() { //Stop patrons from standing inside each other if (grid.IsTileFree(path[pathIndex + 1])) { pathIndex++; if (pathIndex >= path.Length) { pathIndex = path.Length - 1; } if (pathIndex == path.Length - 1) { atTable = true; } grid.Taketile(path[pathIndex], path[pathIndex - 1]); transform.position = grid.GetWorldPositionOfGrid(path[pathIndex]); } else { waitingForSpace -= secondsPerMove; if (waitingForSpace < 0) { List <Vector2> newPath = pathFinder.GetPath(path[pathIndex], path[path.Length - 1]); if (newPath != null) { NewPath(newPath); } waitingForSpace = Random.Range(1f, maxWaitTime); } } }