diff --git a/similar/main/gameseg.cpp b/similar/main/gameseg.cpp index 733cb1e18..7b2101319 100644 --- a/similar/main/gameseg.cpp +++ b/similar/main/gameseg.cpp @@ -737,12 +737,6 @@ imsegptridx_t find_point_seg(const vms_vector &p,const imsegptridx_t segnum) #define MAX_LOC_POINT_SEGS 64 -namespace dcx { - -int Connected_segment_distance; - -} - namespace dsx { #if defined(DXX_BUILD_DESCENT_I) static inline void add_to_fcd_cache(int seg0, int seg1, int depth, vm_distance dist) @@ -826,7 +820,6 @@ vm_distance find_connected_distance(const vms_vector &p0, const vcsegptridx_t se } if (seg0 == seg1) { - Connected_segment_distance = 0; return vm_vec_dist_quick(p0, p1); } else { auto conn_side = find_connect_side(seg0, seg1); @@ -836,7 +829,6 @@ vm_distance find_connected_distance(const vms_vector &p0, const vcsegptridx_t se if (WALL_IS_DOORWAY(seg1, conn_side) & wid_flag) #endif { - Connected_segment_distance = 1; return vm_vec_dist_quick(p0, p1); } } @@ -854,7 +846,6 @@ vm_distance find_connected_distance(const vms_vector &p0, const vcsegptridx_t se range_for (auto &i, Fcd_cache) if (i.seg0 == seg0 && i.seg1 == seg1) { - Connected_segment_distance = i.csd; return i.dist; } #endif @@ -886,7 +877,7 @@ vm_distance find_connected_distance(const vms_vector &p0, const vcsegptridx_t se depth[qtail++] = cur_depth+1; if (max_depth != -1) { if (depth[qtail-1] == max_depth) { - Connected_segment_distance = 1000; + constexpr auto Connected_segment_distance = 1000; add_to_fcd_cache(seg0, seg1, Connected_segment_distance, fcd_abort_cache_value); return fcd_abort_return_value; } @@ -899,7 +890,7 @@ vm_distance find_connected_distance(const vms_vector &p0, const vcsegptridx_t se } // for (sidenum... if (qhead >= qtail) { - Connected_segment_distance = 1000; + constexpr auto Connected_segment_distance = 1000; add_to_fcd_cache(seg0, seg1, Connected_segment_distance, fcd_abort_cache_value); return fcd_abort_return_value; } @@ -914,7 +905,7 @@ fcd_done1: ; // Set qtail to the segment which ends at the goal. while (seg_queue[--qtail].end != seg1) if (qtail < 0) { - Connected_segment_distance = 1000; + constexpr auto Connected_segment_distance = 1000; add_to_fcd_cache(seg0, seg1, Connected_segment_distance, fcd_abort_cache_value); return fcd_abort_return_value; } @@ -940,7 +931,6 @@ fcd_done1: ; num_points++; if (num_points == 1) { - Connected_segment_distance = num_points; return vm_vec_dist_quick(p0, p1); } auto dist = vm_vec_dist_quick(p1, point_segs[1].point); @@ -950,7 +940,6 @@ fcd_done1: ; dist += vm_vec_dist_quick(point_segs[i].point, point_segs[i+1].point); } - Connected_segment_distance = num_points; add_to_fcd_cache(seg0, seg1, num_points, dist); return dist;