aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Sandulenko2013-10-23 00:36:43 +0300
committerKamil Zbróg2013-10-24 12:59:16 +0100
commit7d8fef72ab36e1055511244d470c3fc68ed7067e (patch)
treeffefe4cbb7697a45f361fbf8bc1509fcd8b9c4ce
parente053dcb1cf82c501599aefc1b3fed3473a428326 (diff)
downloadscummvm-rg350-7d8fef72ab36e1055511244d470c3fc68ed7067e.tar.gz
scummvm-rg350-7d8fef72ab36e1055511244d470c3fc68ed7067e.tar.bz2
scummvm-rg350-7d8fef72ab36e1055511244d470c3fc68ed7067e.zip
FULLPIPE: Implement MovGraph::calcOffset()
-rw-r--r--engines/fullpipe/motion.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/engines/fullpipe/motion.cpp b/engines/fullpipe/motion.cpp
index 94635a3b91..ebf896cf1e 100644
--- a/engines/fullpipe/motion.cpp
+++ b/engines/fullpipe/motion.cpp
@@ -1132,9 +1132,22 @@ double MovGraph2::findMinPath(LinkInfo *linkInfoSource, LinkInfo *linkInfoDest,
}
MovGraphNode *MovGraph::calcOffset(int ox, int oy) {
- warning("STUB: MovGraph::calcOffset()");
+ MovGraphNode *res = 0;
+ double mindist = 1.0e10;
- return 0;
+ for (ObList::iterator i = _nodes.begin(); i != _nodes.end(); ++i) {
+ assert(((CObject *)*i)->_objtype == kObjTypeMovGraphNode);
+
+ MovGraphNode *node = (MovGraphNode *)*i;
+
+ double dist = sqrt((double)((node->_x - oy) * (node->_x - oy) + (node->_x - ox) * (node->_x - ox)));
+ if (dist < mindist) {
+ mindist = dist;
+ res = node;
+ }
+ }
+
+ return res;
}
void MGM::clear() {