diff options
author | Eugene Sandulenko | 2013-10-23 00:36:43 +0300 |
---|---|---|
committer | Kamil Zbróg | 2013-10-24 12:59:16 +0100 |
commit | 7d8fef72ab36e1055511244d470c3fc68ed7067e (patch) | |
tree | ffefe4cbb7697a45f361fbf8bc1509fcd8b9c4ce | |
parent | e053dcb1cf82c501599aefc1b3fed3473a428326 (diff) | |
download | scummvm-rg350-7d8fef72ab36e1055511244d470c3fc68ed7067e.tar.gz scummvm-rg350-7d8fef72ab36e1055511244d470c3fc68ed7067e.tar.bz2 scummvm-rg350-7d8fef72ab36e1055511244d470c3fc68ed7067e.zip |
FULLPIPE: Implement MovGraph::calcOffset()
-rw-r--r-- | engines/fullpipe/motion.cpp | 17 |
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() { |