[Scummvm-cvs-logs] scummvm master -> 63f80c365f9f9b5622fda6a6fd888efd95dc7243
sev-
sev at scummvm.org
Tue Dec 31 18:02:23 CET 2013
This automated email contains information about 7 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
f643fd8fea FULLPIPE: Implement sceneHandler14_endArcade()
fa472d3118 FULLPIPE: Fix out-of-bounds read.
16e510f78c FULLPIPE: Remove redundant check. CID 1147505
3209d5c0f3 FULLPIPE: Implement sceneHandler14_grandmaJump()
5b13fe488c FULLPIPE: Implement sceneHandler14_manKickBall()
5e43ec5bdb FULLPIPE: More code to scene14
63f80c365f FULLPIPE: Implement sceneHandler14_sub13()
Commit: f643fd8fea0f62282b9a8cf784755d6d16f921a8
https://github.com/scummvm/scummvm/commit/f643fd8fea0f62282b9a8cf784755d6d16f921a8
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-31T08:02:28-08:00
Commit Message:
FULLPIPE: Implement sceneHandler14_endArcade()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene14.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index f44b397..d75d6b7 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -599,6 +599,10 @@ namespace Fullpipe {
#define MV_BAL14_SPIN 1247
#define MV_MAN14_KICK 1237
#define MV_MAN14_STEPFW 1240
+#define ST_GMA_SIT 1229
+#define QU_GMA_BLINK 1252
+#define QU_GMA_THROW 1255
+
#define QU_SC14_ENTERLIFT 1225
#define QU_SC14_EXITLIFT 1226
diff --git a/engines/fullpipe/scenes/scene14.cpp b/engines/fullpipe/scenes/scene14.cpp
index 7433a91..385f926 100644
--- a/engines/fullpipe/scenes/scene14.cpp
+++ b/engines/fullpipe/scenes/scene14.cpp
@@ -32,7 +32,7 @@
#include "fullpipe/interaction.h"
#include "fullpipe/behavior.h"
-
+#include "fullpipe/input.h"
namespace Fullpipe {
@@ -168,7 +168,28 @@ void sceneHandler14_startArcade() {
}
void sceneHandler14_endArcade() {
- warning("STUB: sceneHandler14_endArcade()");
+ g_vars->scene14_var03 = 0;
+
+ setInputDisabled(0);
+
+ getGameLoaderInteractionController()->enableFlag24();
+ getCurrSceneSc2MotionController()->setEnabled();
+
+ BehaviorEntryInfo *beh = g_fp->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_BLINK);
+ if (beh)
+ beh->_percent = 327;
+
+ beh = g_fp->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_THROW);
+ if (beh)
+ beh->_percent = 0;
+
+ g_vars->scene14_var01 = 200;
+ g_vars->scene14_var02 = 200;
+
+ g_fp->_aniMan2 = g_fp->_aniMan;
+
+ g_vars->scene14_var07 = 300;
+ g_vars->scene14_var08 = 300;
}
void sceneHandler14_sub01() {
Commit: fa472d31185424c66b5687c2b8812efe2bd8fe8e
https://github.com/scummvm/scummvm/commit/fa472d31185424c66b5687c2b8812efe2bd8fe8e
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-31T08:06:25-08:00
Commit Message:
FULLPIPE: Fix out-of-bounds read.
Changed paths:
engines/fullpipe/scenes.cpp
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index 835f324..d2dc621 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -259,7 +259,7 @@ int FullpipeEngine::convertScene(int scene) {
}
int FullpipeEngine::getSceneEntrance(int scene) {
- for (int i = 0; i < 41; i++)
+ for (int i = 0; i < 40; i++)
if (scenes[i] == scene)
return scenesD[i];
Commit: 16e510f78ca1cbc67924cf0521e7712fc51d94d0
https://github.com/scummvm/scummvm/commit/16e510f78ca1cbc67924cf0521e7712fc51d94d0
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-31T08:07:47-08:00
Commit Message:
FULLPIPE: Remove redundant check. CID 1147505
Changed paths:
engines/fullpipe/scenes/scene14.cpp
diff --git a/engines/fullpipe/scenes/scene14.cpp b/engines/fullpipe/scenes/scene14.cpp
index 385f926..e596c21 100644
--- a/engines/fullpipe/scenes/scene14.cpp
+++ b/engines/fullpipe/scenes/scene14.cpp
@@ -56,10 +56,8 @@ void scene14_initScene(Scene *sc) {
StaticANIObject *ball = sc->getStaticANIObject1ById(ANI_BALL14, -1);
- if (ball) {
- ball->_flags &= 0xFFFB;
- g_vars->scene14_var11.push_back(ball);
- }
+ ball->_flags &= 0xFFFB;
+ g_vars->scene14_var11.push_back(ball);
for (uint i = 0; i < 3; i++) {
ball = new StaticANIObject(ball); // create a copy
Commit: 3209d5c0f3620bb141e45da287f25cf4d576dd8e
https://github.com/scummvm/scummvm/commit/3209d5c0f3620bb141e45da287f25cf4d576dd8e
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-31T08:12:40-08:00
Commit Message:
FULLPIPE: Implement sceneHandler14_grandmaJump()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene14.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index d75d6b7..68c5b67 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -601,6 +601,8 @@ namespace Fullpipe {
#define MV_MAN14_STEPFW 1240
#define ST_GMA_SIT 1229
#define QU_GMA_BLINK 1252
+#define QU_GMA_JUMPBK 1251
+#define QU_GMA_JUMPFW 1249
#define QU_GMA_THROW 1255
#define QU_SC14_ENTERLIFT 1225
diff --git a/engines/fullpipe/scenes/scene14.cpp b/engines/fullpipe/scenes/scene14.cpp
index e596c21..88f4e8e 100644
--- a/engines/fullpipe/scenes/scene14.cpp
+++ b/engines/fullpipe/scenes/scene14.cpp
@@ -139,7 +139,16 @@ void sceneHandler14_showBallFly() {
}
void sceneHandler14_grandmaJump() {
- warning("STUB: sceneHandler14_grandmaJump()");
+ BehaviorEntryInfo *beh1 = g_fp->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_JUMPFW);
+ BehaviorEntryInfo *beh2 = g_fp->_behaviorManager->getBehaviorEntryInfoByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_JUMPBK);
+
+ if (beh1) {
+ if (beh2) {
+ int p = beh1->_percent;
+ beh1->_percent = beh2->_percent;
+ beh2->_percent = p;
+ }
+ }
}
void sceneHandler14_winArcade() {
Commit: 5b13fe488cd4b9fe2d59cb44e14605346e156117
https://github.com/scummvm/scummvm/commit/5b13fe488cd4b9fe2d59cb44e14605346e156117
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-31T08:27:24-08:00
Commit Message:
FULLPIPE: Implement sceneHandler14_manKickBall()
Changed paths:
engines/fullpipe/scenes.cpp
engines/fullpipe/scenes.h
engines/fullpipe/scenes/scene14.cpp
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index d2dc621..31753b9 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -218,6 +218,10 @@ Vars::Vars() {
scene14_var17 = 0;
scene14_var18 = 0;
scene14_var19 = 0;
+ scene14_var20 = 0;
+ scene14_var21 = 0;
+ scene14_var22 = 0;
+ scene14_var23 = 0;
scene15_chantingCountdown = 0;
scene15_plusminus = 0;
diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h
index 93abacd..db7aa12 100644
--- a/engines/fullpipe/scenes.h
+++ b/engines/fullpipe/scenes.h
@@ -284,7 +284,7 @@ public:
int scene14_var07;
int scene14_var08;
StaticANIObject *scene14_pink;
- int scene14_var10;
+ StaticANIObject *scene14_var10;
Common::List<StaticANIObject *> scene14_var11;
Common::List<StaticANIObject *> scene14_var12;
int scene14_var13;
@@ -294,6 +294,10 @@ public:
int scene14_var17;
int scene14_var18;
int scene14_var19;
+ int scene14_var20;
+ int scene14_var21;
+ int scene14_var22;
+ int scene14_var23;
int scene15_chantingCountdown;
StaticANIObject *scene15_plusminus;
diff --git a/engines/fullpipe/scenes/scene14.cpp b/engines/fullpipe/scenes/scene14.cpp
index 88f4e8e..e687270 100644
--- a/engines/fullpipe/scenes/scene14.cpp
+++ b/engines/fullpipe/scenes/scene14.cpp
@@ -131,7 +131,23 @@ void sceneHandler14_showBallMan() {
}
void sceneHandler14_manKickBall() {
- warning("STUB: sceneHandler14_manKickBall()");
+ int val = (g_vars->scene14_var16 + 65 - (g_vars->scene14_var14 - 85)) / -32;
+ int den = val;
+
+ g_vars->scene14_var22 = g_vars->scene14_var14 - 85;
+ g_vars->scene14_var23 = g_vars->scene14_var15 - 76;
+ g_vars->scene14_var20 = -32;
+
+ if (!val)
+ den = 1;
+
+ g_vars->scene14_var21 = (g_vars->scene14_var17 - 102 - val * val / 2 - (g_vars->scene14_var15 - 76)) / den;
+
+ g_vars->scene14_var10->show1(g_vars->scene14_var14 - 85, g_vars->scene14_var15 - 76, -1, 0);
+ g_vars->scene14_var10->startAnim(MV_BAL14_SPIN, 0, -1);
+ g_vars->scene14_var10->_priority = 5;
+
+ g_vars->scene14_var05 = 1;
}
void sceneHandler14_showBallFly() {
Commit: 5e43ec5bdba34146915a1ebb571bbe0a6a66849e
https://github.com/scummvm/scummvm/commit/5e43ec5bdba34146915a1ebb571bbe0a6a66849e
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-31T08:32:44-08:00
Commit Message:
FULLPIPE: More code to scene14
Changed paths:
engines/fullpipe/scenes/scene14.cpp
diff --git a/engines/fullpipe/scenes/scene14.cpp b/engines/fullpipe/scenes/scene14.cpp
index e687270..a25ee4e 100644
--- a/engines/fullpipe/scenes/scene14.cpp
+++ b/engines/fullpipe/scenes/scene14.cpp
@@ -115,11 +115,25 @@ int sceneHandler14_updateScreenCallback() {
}
void sceneHandler14_showBallGrandmaHit2() {
- warning("STUB: sceneHandler14_showBallGrandmaHit2()");
+ if (g_vars->scene14_var10) {
+ g_vars->scene14_var10->show1(g_vars->scene14_var16 + 223, g_vars->scene14_var17 + 35, MV_BAL14_SPIN, 0);
+ g_vars->scene14_var10->_priority = 27;
+
+ g_vars->scene14_pink = g_vars->scene14_var10;
+
+ g_vars->scene14_var10 = 0;
+ }
}
void sceneHandler14_showBallGrandmaDive() {
- warning("STUB: sceneHandler14_showBallGrandmaDive()");
+ if (g_vars->scene14_var10) {
+ g_vars->scene14_var10->show1(g_vars->scene14_var16 + 506, g_vars->scene14_var17 - 29, -1, 0);
+
+ g_vars->scene14_var11.push_back(g_vars->scene14_var10);
+ g_vars->scene14_var10 = 0;
+ }
+
+ g_fp->_aniMan2 = g_fp->_aniMan;
}
void sceneHandler14_showBallGrandmaHit() {
Commit: 63f80c365f9f9b5622fda6a6fd888efd95dc7243
https://github.com/scummvm/scummvm/commit/63f80c365f9f9b5622fda6a6fd888efd95dc7243
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-12-31T08:38:51-08:00
Commit Message:
FULLPIPE: Implement sceneHandler14_sub13()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene14.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 68c5b67..2b1d010 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -599,12 +599,13 @@ namespace Fullpipe {
#define MV_BAL14_SPIN 1247
#define MV_MAN14_KICK 1237
#define MV_MAN14_STEPFW 1240
+#define PIC_SC14_RTRUBA 1221
#define ST_GMA_SIT 1229
#define QU_GMA_BLINK 1252
#define QU_GMA_JUMPBK 1251
#define QU_GMA_JUMPFW 1249
#define QU_GMA_THROW 1255
-
+#define QU_SC14_ENDARCADE 1391
#define QU_SC14_ENTERLIFT 1225
#define QU_SC14_EXITLIFT 1226
diff --git a/engines/fullpipe/scenes/scene14.cpp b/engines/fullpipe/scenes/scene14.cpp
index a25ee4e..94b6d23f 100644
--- a/engines/fullpipe/scenes/scene14.cpp
+++ b/engines/fullpipe/scenes/scene14.cpp
@@ -287,7 +287,21 @@ void sceneHandler14_sub12() {
}
void sceneHandler14_sub13() {
- warning("STUB: sceneHandler14_sub13()");
+ g_vars->scene14_var03 = 0;
+
+ if (g_fp->_aniMan->_movement)
+ g_fp->_aniMan->_movement->gotoLastFrame();
+
+ g_fp->_aniMan->stopAnim_maybe();
+
+ handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC14_RTRUBA, 0), 0);
+
+ g_vars->scene14_grandma->changeStatics2(ST_GMA_SIT);
+
+ chainQueue(QU_SC14_ENDARCADE, 0);
+
+ getGameLoaderInteractionController()->disableFlag24();
+ getCurrSceneSc2MotionController()->clearEnabled();
}
int sceneHandler14(ExCommand *cmd) {
More information about the Scummvm-git-logs
mailing list