[Scummvm-cvs-logs] SF.net SVN: scummvm:[40384] scummvm/trunk/engines/sci/engine/kpathing.cpp
waltervn at users.sourceforge.net
waltervn at users.sourceforge.net
Fri May 8 16:29:20 CEST 2009
Revision: 40384
http://scummvm.svn.sourceforge.net/scummvm/?rev=40384&view=rev
Author: waltervn
Date: 2009-05-08 14:29:20 +0000 (Fri, 08 May 2009)
Log Message:
-----------
SCI: AvoidPath: another workaround for ECO
Modified Paths:
--------------
scummvm/trunk/engines/sci/engine/kpathing.cpp
Modified: scummvm/trunk/engines/sci/engine/kpathing.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kpathing.cpp 2009-05-08 12:39:37 UTC (rev 40383)
+++ scummvm/trunk/engines/sci/engine/kpathing.cpp 2009-05-08 14:29:20 UTC (rev 40384)
@@ -1239,7 +1239,7 @@
}
}
- // WORKAROUND: self-intersecting polygon in ECO, room 300, remove last point
+ // WORKAROUND: self-intersecting polygons in ECO, rooms 280 and 300
if ((size == 11) && (s->_gameName == "eco")) {
if ((KP_UINT(s->script_000->locals_block->locals[13]) == 300)
&& (read_point(list, is_reg_t, 10) == Common::Point(221, 0))) {
@@ -1247,6 +1247,13 @@
size = 10;
}
}
+ if ((size == 12) && (s->_gameName == "eco")) {
+ if ((KP_UINT(s->script_000->locals_block->locals[13]) == 280)
+ && (read_point(list, is_reg_t, 11) == Common::Point(238, 189))) {
+ debug(1, "Applying fix for self-intersecting polygon in ECO, room 280");
+ size = 10;
+ }
+ }
for (i = 0; i < size; i++) {
Vertex *vertex = new Vertex(read_point(list, is_reg_t, i));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list