public List <Vector2> GetPath(int startIndex) { if (!Head) { List <Vector2> path = new List <Vector2>(); for (int i = 0; i <= startIndex; i += 1) { path.Add(Path[i]); } return(path); } else { return(Head.GetPath(startIndex)); } }