diff options
author | Eugene Sandulenko | 2013-12-30 00:43:06 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2013-12-30 00:43:06 +0200 |
commit | 562d539db9ecb8690006236449c78335fab8f120 (patch) | |
tree | 3470e99a3338e50dcb46737b6246bb234ee0a9d2 /engines/fullpipe/scenes/scene13.cpp | |
parent | c0c8be7dce0f0109ec51d3ca6302165a6da91bc1 (diff) | |
download | scummvm-rg350-562d539db9ecb8690006236449c78335fab8f120.tar.gz scummvm-rg350-562d539db9ecb8690006236449c78335fab8f120.tar.bz2 scummvm-rg350-562d539db9ecb8690006236449c78335fab8f120.zip |
FULLPIPE: implement sceneHandler13_uneatGum()/updateBridge()
Diffstat (limited to 'engines/fullpipe/scenes/scene13.cpp')
-rw-r--r-- | engines/fullpipe/scenes/scene13.cpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/engines/fullpipe/scenes/scene13.cpp b/engines/fullpipe/scenes/scene13.cpp index 2df5d1ad9e..5689918dac 100644 --- a/engines/fullpipe/scenes/scene13.cpp +++ b/engines/fullpipe/scenes/scene13.cpp @@ -179,7 +179,18 @@ void sceneHandler13_openFast() { } void sceneHandler13_uneatGum() { - warning("STUB: sceneHandler13_uneatGum()"); + BehaviorEntryInfo *beh = g_fp->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_CHEW); + + if (beh) { + beh->_percent = 0; + beh->_delay = 36; + } + + beh = g_fp->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_PLUU); + if (beh) { + beh->_percent = 0; + beh->_delay = 36; + } } void sceneHandler13_eatGum() { @@ -192,7 +203,14 @@ void sceneHandler13_eatGum() { } void sceneHandler13_updateBridge() { - warning("STUB: sceneHandler13_updateBridge()"); + MovGraphLink *lnk = getCurrSceneSc2MotionController()->getLinkByName(sO_Bridge); + + if (lnk) { + if (g_fp->getObjectState(sO_Bridge) == g_fp->getObjectEnumState(sO_Bridge, sO_Convoluted)) + lnk->_flags |= 0x20000000; + else + lnk->_flags &= 0xDFFFFFFF; + } } void sceneHandler13_showGum() { |