From 90cef59d3b2afb05c70049941b99966e515a3d23 Mon Sep 17 00:00:00 2001 From: Walter van Niftrik Date: Sat, 9 May 2009 01:23:52 +0000 Subject: SCI: AvoidPath: No longer excludes edges on screen borders for pathfinding, as only the earlier games seem to do this. We may need to add a SCI version check here if this change breaks anything in earlier games. svn-id: r40398 --- engines/sci/engine/kpathing.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'engines/sci/engine') diff --git a/engines/sci/engine/kpathing.cpp b/engines/sci/engine/kpathing.cpp index 13830fba3d..a6e7799dfc 100644 --- a/engines/sci/engine/kpathing.cpp +++ b/engines/sci/engine/kpathing.cpp @@ -258,7 +258,7 @@ struct PathfindingState { static Vertex *vertex_cur; // FIXME -// Temporary hack to deal with points in reg_ts +// FIXME: Temporary hack to deal with points in reg_ts static bool polygon_is_reg_t(const byte *list, int size) { // Check the first three reg_ts for (int i = 0; i < (size < 3 ? size : 3); i++) @@ -1556,10 +1556,13 @@ static void dijkstra(PathfindingState *s) { uint32 new_dist; Vertex *vertex = *it; + // Early pathfinding-enabled games exclude edges on screen borders. +// FIXME: Enable this selectively for those games that need it. +#if 0 // Avoid plotting path along screen edge if ((vertex != s->vertex_end) && point_on_screen_border(vertex->v)) continue; - +#endif new_dist = vertex_min->dist + (uint32)sqrt((float)vertex_min->v.sqrDist(vertex->v)); if (new_dist < vertex->dist) { vertex->dist = new_dist; -- cgit v1.2.3