aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorStrangerke2014-06-06 23:18:01 +0200
committerStrangerke2014-06-06 23:18:01 +0200
commit3dcfa95b44ec47c6eff1de03f946e2ac20bed29e (patch)
tree89118fd00f572e59656468a89682bc77e174ec13 /engines
parent8cb50b52e0e6614343419ca75803c8a18cf085df (diff)
parent113a2824c41283facd7ae6c24be3f74213207bc9 (diff)
downloadscummvm-rg350-3dcfa95b44ec47c6eff1de03f946e2ac20bed29e.tar.gz
scummvm-rg350-3dcfa95b44ec47c6eff1de03f946e2ac20bed29e.tar.bz2
scummvm-rg350-3dcfa95b44ec47c6eff1de03f946e2ac20bed29e.zip
Merge branch 'master' of github.com:scummvm/scummvm
Diffstat (limited to 'engines')
-rw-r--r--engines/fullpipe/modal.cpp3
-rw-r--r--engines/fullpipe/motion.cpp7
-rw-r--r--engines/fullpipe/scenes.cpp5
-rw-r--r--engines/fullpipe/scenes/scene16.cpp2
-rw-r--r--engines/fullpipe/statics.cpp7
5 files changed, 17 insertions, 7 deletions
diff --git a/engines/fullpipe/modal.cpp b/engines/fullpipe/modal.cpp
index 8981cdb8e6..3dbbeb78c4 100644
--- a/engines/fullpipe/modal.cpp
+++ b/engines/fullpipe/modal.cpp
@@ -1456,6 +1456,9 @@ ModalSaveGame::ModalSaveGame() {
_cancelL = 0;
_emptyD = 0;
_emptyL = 0;
+ _fullD = 0;
+ _fullL = 0;
+ _menuScene = 0;
_queryRes = -1;
_rect = g_fp->_sceneRect;
_queryDlg = 0;
diff --git a/engines/fullpipe/motion.cpp b/engines/fullpipe/motion.cpp
index caac6d9e5a..adfc2f7326 100644
--- a/engines/fullpipe/motion.cpp
+++ b/engines/fullpipe/motion.cpp
@@ -554,8 +554,7 @@ MessageQueue *MctlLadder::doWalkTo(StaticANIObject *ani, int xpos, int ypos, int
mq->transferExCommands(newmq);
- if (newmq)
- delete newmq;
+ delete newmq;
ani->setPicAniInfo(&picinfo);
@@ -1136,6 +1135,8 @@ MessageQueue *MovGraph::sub1(StaticANIObject *ani, int x, int y, int stid, int x
_items[idx]->movarr._link = 0;
res = fillMGMinfo(_items[idx]->ani, &_items[idx]->movarr, stid2);
+
+ break;
}
}
@@ -1517,6 +1518,8 @@ Common::Array<MovItem *> *MovGraph::calcMovItems(MovArr *movarr1, MovArr *movarr
genMovItem(r, tempObList2[i], movarr1, movarr2);
+ res->push_back(r);
+
delete tempObList2[i];
}
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index b346bf3a17..13c653ad09 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -1455,6 +1455,9 @@ void BallChain::init(Ball **ball) {
Ball *BallChain::sub04(Ball *ballP, Ball *ballN) {
if (!pTail) {
+ if (!cPlexLen)
+ error("BallChain::sub04: cPlexLen is 0");
+
cPlex = (byte *)calloc(cPlexLen, sizeof(Ball));
Ball *runPtr = (Ball *)&cPlex[(cPlexLen - 1) * sizeof(Ball)];
@@ -1463,7 +1466,7 @@ Ball *BallChain::sub04(Ball *ballP, Ball *ballN) {
runPtr->p0 = pTail;
pTail = runPtr;
- runPtr -= sizeof(Ball);
+ runPtr--;
}
}
diff --git a/engines/fullpipe/scenes/scene16.cpp b/engines/fullpipe/scenes/scene16.cpp
index 9ed355fdd9..ed3c51a6c2 100644
--- a/engines/fullpipe/scenes/scene16.cpp
+++ b/engines/fullpipe/scenes/scene16.cpp
@@ -182,7 +182,7 @@ void sceneHandler16_fillMug() {
mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_BOYOUT), 0, 1);
mq->replaceKeyCode(-1, g_vars->scene16_walkingBoy->_okeyCode);
- if (mq->chain(g_vars->scene16_walkingBoy) || !mq)
+ if (!mq || mq->chain(g_vars->scene16_walkingBoy))
return;
} else {
if (!g_vars->scene16_walkingGirl)
diff --git a/engines/fullpipe/statics.cpp b/engines/fullpipe/statics.cpp
index 5d7de050f0..ec8514143e 100644
--- a/engines/fullpipe/statics.cpp
+++ b/engines/fullpipe/statics.cpp
@@ -979,11 +979,12 @@ void StaticANIObject::stopAnim_maybe() {
_ox += point.x;
_oy += point.y;
}
+ } else {
+ _statics = _movement->_staticsObj2;
}
- }
-
- if (_movement->_currDynamicPhaseIndex || !(_flags & 0x40))
+ } else {
_statics = _movement->_staticsObj2;
+ }
_statics->getSomeXY(point);