[Scummvm-cvs-logs] scummvm master -> ee3f26e4b6548b93419b9729645ae2c3c2b5ab81
sev-
sev at scummvm.org
Tue Mar 4 22:20:41 CET 2014
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
bb29087332 FULLPIPE: Implement scene19_updateCursor()
ee3f26e4b6 FULLPIPE: Implement scene18_setupSwingers()
Commit: bb290873320bcd87e1e0c915be03518a9ab0d355
https://github.com/scummvm/scummvm/commit/bb290873320bcd87e1e0c915be03518a9ab0d355
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-03-04T13:19:48-08:00
Commit Message:
FULLPIPE: Implement scene19_updateCursor()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene18and19.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 83fafee..6f98e1a 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -891,6 +891,7 @@ namespace Fullpipe {
#define ANI_WHIRLGIG_19 1302
#define MV_WHR19_SPIN 1317
#define PIC_SC19_RTRUBA3 1515
+#define PIC_SC19_RTRUBA31 5320
#define SND_19_015 3928
#define SND_19_016 4995
#define ST_CDI_EMPTY2 1543
diff --git a/engines/fullpipe/scenes/scene18and19.cpp b/engines/fullpipe/scenes/scene18and19.cpp
index 5e69ec7..759af91 100644
--- a/engines/fullpipe/scenes/scene18and19.cpp
+++ b/engines/fullpipe/scenes/scene18and19.cpp
@@ -325,4 +325,13 @@ int scene18_updateCursor() {
return g_fp->_cursorId;
}
+int scene19_updateCursor() {
+ g_fp->updateCursorCommon();
+
+ if (g_fp->_objectIdAtCursor == PIC_SC19_RTRUBA31)
+ g_fp->_cursorId = g_vars->scene19_var05 != 0 ? PIC_CSR_GOR : PIC_CSR_DEFAULT;
+
+ return g_fp->_cursorId;
+}
+
} // End of namespace Fullpipe
Commit: ee3f26e4b6548b93419b9729645ae2c3c2b5ab81
https://github.com/scummvm/scummvm/commit/ee3f26e4b6548b93419b9729645ae2c3c2b5ab81
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-03-04T13:19:48-08:00
Commit Message:
FULLPIPE: Implement scene18_setupSwingers()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene18and19.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 6f98e1a..d84b639 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -877,6 +877,9 @@ namespace Fullpipe {
#define ANI_GIRL18 1484
#define ANI_KRESLO 1459
#define ANI_WHIRLIGIG_18 829
+#define MV_KSL_SWING 1460
+#define MV_KSL_SWINGBOY 1462
+#define MV_KSL_SWINGGIRL 1464
#define MV_WHR18_SPIN 1300
#define PIC_SC18_DOMIN 5184
#define PIC_SC18_LADDER1 1471
diff --git a/engines/fullpipe/scenes/scene18and19.cpp b/engines/fullpipe/scenes/scene18and19.cpp
index 759af91..8319c83 100644
--- a/engines/fullpipe/scenes/scene18and19.cpp
+++ b/engines/fullpipe/scenes/scene18and19.cpp
@@ -134,8 +134,58 @@ void scene19_preload() {
}
}
-void scene18_sub2(StaticANIObject *ani, Scene *sc) {
- warning("WARNING: scene18_sub2()");
+void scene18_setupSwingers(StaticANIObject *ani, Scene *sc) {
+ Swinger *swinger;
+
+ g_vars->scene18_var07.clear();
+
+ Scene *oldsc = g_fp->_currentScene;
+ g_fp->_currentScene = sc;
+
+ for (int i = 0; i < 8; i++) {
+ swinger = new Swinger;
+
+ swinger->angle = (double)i * M_PI / 4.0;
+ swinger->sx = g_vars->scene18_var20 - (int)(cos(swinger->angle) * -575.0);
+ swinger->sy = g_vars->scene18_var04 - (int)(sin(swinger->angle) * -575.0) + 87;
+ swinger->ix = swinger->sx;
+ swinger->iy = swinger->sy;
+
+ if (i) {
+ StaticANIObject *newani = new StaticANIObject(ani);
+
+ ani = newani;
+
+ swinger->ani = newani;
+ swinger->sflags = 2;
+
+ sc->addStaticANIObject(newani, 1);
+ } else {
+ swinger->ani = ani;
+ swinger->sflags = g_vars->scene18_var03 != 0 ? 4 : 1;
+ }
+
+ ani->_statics = ani->getStaticsById(ST_KSL_NORM);
+ ani->_movement = 0;
+ ani->setOXY(swinger->sx, swinger->sy);
+ ani->_priority = 30;
+ ani->_flags |= 4;
+
+ if (swinger->sflags & 2) {
+ ani->startAnim(MV_KSL_SWINGBOY, 0, -1);
+ } else {
+ if (swinger->sflags & 4)
+ ani->startAnim(MV_KSL_SWINGGIRL, 0, -1);
+ else
+ ani->startAnim(MV_KSL_SWING, 0, -1);
+ }
+
+ ani->_movement->setDynamicPhaseIndex(g_fp->_rnd->getRandomNumber(17));
+
+ g_vars->scene18_var07.push_back(swinger);
+ }
+
+ g_fp->_currentScene = oldsc;
}
void scene18_initScene1(Scene *sc) {
@@ -272,7 +322,7 @@ void scene18_initScene2(Scene *sc) {
g_fp->playSound(SND_18_010, 1);
}
- scene18_sub2(armchair, sc);
+ scene18_setupSwingers(armchair, sc);
g_vars->scene18_var21 = 0;
g_vars->scene18_var12 = 0;
More information about the Scummvm-git-logs
mailing list