[Scummvm-cvs-logs] SF.net SVN: scummvm: [26276] scummvm/trunk/engines/parallaction/walk.cpp
peres001 at users.sourceforge.net
peres001 at users.sourceforge.net
Thu Mar 22 20:49:16 CET 2007
Revision: 26276
http://scummvm.svn.sourceforge.net/scummvm/?rev=26276&view=rev
Author: peres001
Date: 2007-03-22 12:49:15 -0700 (Thu, 22 Mar 2007)
Log Message:
-----------
unrolled loop in buildWalkPath and renamed some variables
Modified Paths:
--------------
scummvm/trunk/engines/parallaction/walk.cpp
Modified: scummvm/trunk/engines/parallaction/walk.cpp
===================================================================
--- scummvm/trunk/engines/parallaction/walk.cpp 2007-03-22 18:49:42 UTC (rev 26275)
+++ scummvm/trunk/engines/parallaction/walk.cpp 2007-03-22 19:49:15 UTC (rev 26276)
@@ -178,35 +178,27 @@
// path is obstructed: find alternative
- WalkNode v58;
- addNode(&v58, v48);
+ WalkNode dummy;
+ addNode(&dummy, v48);
Common::Point stop(v48->_x, v48->_y);
Common::Point pos(_vm->_char._ani._left, _vm->_char._ani._top);
- bool emptyList = true;
+ v48 = &dummy;
+ uint32 v34 = buildSubPath(pos, stop, v48);
+ if (v38 != 0 && v34 > v38) {
+ // no alternative path (gap?)
+ freeNodeList(dummy._next);
+ return v44;
+ }
- do {
+ ((WalkNode*)(dummy._next))->getPoint(stop);
- v48 = &v58;
+ v48 = &dummy;
+ buildSubPath(pos, stop, v48);
- uint32 v34 = buildSubPath(pos, stop, v48);
-
- if (!emptyList) break;
-
- if (v38 != 0 && v34 > v38) {
- // no alternative path (gap?)
- freeNodeList(v58._next);
- return v44;
- }
-
- ((WalkNode*)(v58._next))->getPoint(stop);
- emptyList = false;
-
- } while (true);
-
delete v44;
- return (WalkNode*)v58._next;
+ return (WalkNode*)dummy._next;
}
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