diff options
author | kleonc <9283098+kleonc@users.noreply.github.com> | 2022-04-14 17:13:53 +0200 |
---|---|---|
committer | kleonc <9283098+kleonc@users.noreply.github.com> | 2022-04-14 17:13:53 +0200 |
commit | 9ab69b89f865b57282507da1780a53bf0998b79c (patch) | |
tree | 6ad2fa87c1eae9d9632f7336cd5bf216b7502384 /modules/navigation | |
parent | 12cb05b3040242deebb87262aed8c04218b69044 (diff) |
NavMap::get_path Fix not resetting least_cost_id
Diffstat (limited to 'modules/navigation')
-rw-r--r-- | modules/navigation/nav_map.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/modules/navigation/nav_map.cpp b/modules/navigation/nav_map.cpp index 70d50999f9..217e503d82 100644 --- a/modules/navigation/nav_map.cpp +++ b/modules/navigation/nav_map.cpp @@ -226,6 +226,7 @@ Vector<Vector3> NavMap::get_path(Vector3 p_origin, Vector3 p_destination, bool p navigation_polys.push_back(np); to_visit.clear(); to_visit.push_back(0); + least_cost_id = 0; reachable_end = nullptr; @@ -245,6 +246,8 @@ Vector<Vector3> NavMap::get_path(Vector3 p_origin, Vector3 p_destination, bool p } } + ERR_BREAK(least_cost_id == -1); + // Stores the further reachable end polygon, in case our goal is not reachable. if (is_reachable) { float d = navigation_polys[least_cost_id].entry.distance_to(p_destination); @@ -254,8 +257,6 @@ Vector<Vector3> NavMap::get_path(Vector3 p_origin, Vector3 p_destination, bool p } } - ERR_BREAK(least_cost_id == -1); - // Check if we reached the end if (navigation_polys[least_cost_id].poly == end_poly) { found_route = true; |