[Scummvm-cvs-logs] scummvm master -> 5e0236e7ad7157f67ca1eed6b4d28a959de5bc40
sev-
sev at scummvm.org
Tue Jan 7 16:28:12 CET 2014
This automated email contains information about 14 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
875b8f76f5 FULLPIPE: Initial code for scene32
2cb81f50e5 FULLPIPE: Plug scene32 in
6e828566ef FULLPIPE: Implement scene32_updateCursor() and setupMusic()
c2776345b8 FULLPIPE: Implement sceneHandler32()
61268f4424 FULLPIPE: Enable scene32
51b9d156d5 FULLPIPE: More code to scene32
a7ae2b4452 FULLPIPE: yet more code to scene32
7292a08b8a FULLPIPE: Implement sceneHandler32_buttonPush()
ae5389af8b FULLPIPE: Implement sceneHandler32_ladderLogic()
d821719c47 FULLPIPE: Implement sceneHandler32_potLogic()
929c868c5e FULLPIPE: Implement sceneHandler32_spin()
b495a16812 FULLPIPE: Implement sceneHandler32_trySit()
9313c540af FULLPIPE: Started renames in scene32
5e0236e7ad FULLPIPE: Rename remaining vars in scene32. This completes the scene
Commit: 875b8f76f535c7f72525a0fd20eb676630f631dc
https://github.com/scummvm/scummvm/commit/875b8f76f535c7f72525a0fd20eb676630f631dc
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T03:01:01-08:00
Commit Message:
FULLPIPE: Initial code for scene32
Changed paths:
A engines/fullpipe/scenes/scene32.cpp
engines/fullpipe/objectnames.h
diff --git a/engines/fullpipe/objectnames.h b/engines/fullpipe/objectnames.h
index c33750f..8939f44 100644
--- a/engines/fullpipe/objectnames.h
+++ b/engines/fullpipe/objectnames.h
@@ -54,8 +54,9 @@ namespace Fullpipe {
#define sO_In_15_2 "\xc2_15_2" // "В_15_2"
#define sO_In_15_3 "\xc2_15_3" // "В_15_3"
#define sO_In_16 "\xc2_16" // "В_16"
+#define sO_In_32 "\xc2_32" // "В_32"
#define sO_In_32_Lies "\xc2_32 \xeb\xe5\xe6\xe8\xf2" // "В_32 лежит"
-#define sO_In_32_Stands "\xc2_32 \xf2\xee\xf0\xf7\xe8\xf2" // "В_32 торчит"
+#define sO_In_32_Sticks "\xc2_32 \xf2\xee\xf0\xf7\xe8\xf2" // "В_32 торчит"
#define sO_In_33 "\xc2_33" // "В_33"
#define sO_In_7 "\xc2_7" // "В_7"
#define sO_Together "\xc2\xe4\xe2\xee\xe5\xec" // "Вдвоем"
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
new file mode 100644
index 0000000..ad2ac79
--- /dev/null
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -0,0 +1,100 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "fullpipe/fullpipe.h"
+
+#include "fullpipe/objectnames.h"
+#include "fullpipe/constants.h"
+
+#include "fullpipe/gameloader.h"
+#include "fullpipe/motion.h"
+#include "fullpipe/scenes.h"
+#include "fullpipe/statics.h"
+
+#include "fullpipe/interaction.h"
+#include "fullpipe/behavior.h"
+
+
+namespace Fullpipe {
+
+void scene32_initScene(Scene *sc) {
+ g_vars->scene32_var01 = 200;
+ g_vars->scene32_var02 = 200;
+ g_vars->scene32_var03 = 300;
+ g_vars->scene32_var04 = 300;
+ g_vars->scene32_var05 = 0;
+ g_vars->scene32_var06 = 0;
+ g_vars->scene32_var07 = 0;
+ g_vars->scene32_var08 = -1;
+ g_vars->scene32_var09 = 0;
+ g_vars->scene32_var10 = 0;
+ g_vars->scene32_flag = sc->getStaticANIObject1ById(ANI_FLAG, -1);
+ g_vars->scene32_cactus = sc->getStaticANIObject1ById(ANI_CACTUS, -1);
+ g_vars->scene32_massOrange = sc->getStaticANIObject1ById(ANI_TESTO_ORANGE, -1);
+ g_vars->scene32_massBlue = sc->getStaticANIObject1ById(ANI_TESTO_BLUE, -1);
+ g_vars->scene32_massGreen = sc->getStaticANIObject1ById(ANI_TESTO_GREEN, -1);
+ g_vars->scene32_button = sc->getStaticANIObject1ById(ANI_BUTTON_32, -1);
+
+ g_vars->scene32_massOrange->startAnim(MV_TSTO_FLOW, 0, -1);
+ g_vars->scene32_massOrange->_movement->setDynamicPhaseIndex(15);
+
+ g_vars->scene32_massGreen->startAnim(MV_TSTG_FLOW, 0, -1);
+ g_vars->scene32_massGreen->_movement->setDynamicPhaseIndex(26);
+
+ Scene *oldsc = g_fp->_currentScene;
+ StaticANIObject *ani;
+
+ if (getObjectState(sO_ClockHandle) == getObjectEnumState(sO_ClockHandle, sO_In_32_Lies)) {
+ ani = sc->getStaticANIObject1ById(ANI_INV_HANDLE, -1);
+ if (ani) {
+ g_fp->_currentScene = sc;
+
+ ani->changeStatics2(ST_HDL_LAID);
+ }
+ } else {
+ if (getObjectState(sO_ClockHandle) == getObjectEnumState(sO_ClockHandle, sO_In_32_Sticks)) {
+ ani = sc->getStaticANIObject1ById(ANI_INV_HANDLE, -1);
+
+ g_fp->_currentScene = sc;
+
+ if (ani)
+ ani->changeStatics2(ST_HDL_PLUGGED);
+
+ g_vars->scene32_button->changeStatics2(ST_BTN32_ON);
+ }
+ }
+
+ g_fp->_currentScene = oldsc;
+
+ if (getObjectState(sO_Cube) == getObjectEnumState(sO_Cube, sO_In_32)) {
+ MessageQueue *mq = new Message(sc->getMessageQueueById(QU_KBK32_START), 0, 0);
+
+ mq->sendNextCommand();
+ }
+
+ g_fp->lift_setButton(sO_Level9, ST_LBN_9N);
+ g_fp->lift_sub5(sc, QU_SC32_ENTERLIFT, QU_SC32_EXITLIFT);
+
+ g_fp->initArcadeKeys("SC_32");
+}
+
+} // End of namespace Fullpipe
Commit: 2cb81f50e500d37bf39c023eebc68e400114407c
https://github.com/scummvm/scummvm/commit/2cb81f50e500d37bf39c023eebc68e400114407c
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T03:08:51-08:00
Commit Message:
FULLPIPE: Plug scene32 in
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/module.mk
engines/fullpipe/scenes.cpp
engines/fullpipe/scenes.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 79f6a7f..674d544 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1054,6 +1054,21 @@ namespace Fullpipe {
#define SND_31_001 4377
#define ST_CTS31_GROWN2 2472
+// Scene 32
+#define ANI_BUTTON_32 5347
+#define ANI_CACTUS 2267
+#define ANI_FLAG 2257
+#define ANI_TESTO_BLUE 2659
+#define ANI_TESTO_GREEN 2662
+#define ANI_TESTO_ORANGE 2656
+#define MV_TSTG_FLOW 2663
+#define MV_TSTO_FLOW 2657
+#define QU_KBK32_START 4982
+#define QU_SC32_ENTERLIFT 2827
+#define QU_SC32_EXITLIFT 2828
+#define ST_BTN32_ON 5350
+#define ST_HDL_LAID 3039
+
// Scene 36
#define ANI_SCISSORS_36 2647
#define ANI_ROTOHRUST 2360
diff --git a/engines/fullpipe/module.mk b/engines/fullpipe/module.mk
index 55be5a7..a81ee36 100644
--- a/engines/fullpipe/module.mk
+++ b/engines/fullpipe/module.mk
@@ -51,6 +51,7 @@ MODULE_OBJS = \
scenes/scene28.o \
scenes/scene30.o \
scenes/scene31.o \
+ scenes/scene32.o \
scenes/scene36.o \
scenes/sceneDbg.o
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index 127be3b..42ff94f 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -313,6 +313,23 @@ Vars::Vars() {
scene31_cactus = 0;
scene31_plusMinus = 0;
+ scene32_var01 = 0;
+ scene32_var02 = 0;
+ scene32_var03 = 0;
+ scene32_var04 = 0;
+ scene32_var05 = 0;
+ scene32_var06 = 0;
+ scene32_var07 = 0;
+ scene32_var08 = -1;
+ scene32_var09 = 0;
+ scene32_var10 = 0;
+ scene32_flag = 0;
+ scene32_cactus = 0;
+ scene32_massOrange = 0;
+ scene32_massBlue = 0;
+ scene32_massGreen = 0;
+ scene32_button = 0;
+
scene36_rotohrust = 0;
scene36_scissors = 0;
diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h
index 0bfa9fa..5a8746f 100644
--- a/engines/fullpipe/scenes.h
+++ b/engines/fullpipe/scenes.h
@@ -441,6 +441,23 @@ public:
StaticANIObject *scene31_cactus;
StaticANIObject *scene31_plusMinus;
+ int scene32_var01;
+ int scene32_var02;
+ int scene32_var03;
+ int scene32_var04;
+ int scene32_var05;
+ int scene32_var06;
+ int scene32_var07;
+ int scene32_var08;
+ int scene32_var09;
+ int scene32_var10;
+ StaticANIObject *scene32_flag;
+ StaticANIObject *scene32_cactus;
+ StaticANIObject *scene32_massOrange;
+ StaticANIObject *scene32_massBlue;
+ StaticANIObject *scene32_massGreen;
+ StaticANIObject *scene32_button;
+
StaticANIObject *scene36_rotohrust;
StaticANIObject *scene36_scissors;
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index ad2ac79..90e5e77 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -63,7 +63,7 @@ void scene32_initScene(Scene *sc) {
Scene *oldsc = g_fp->_currentScene;
StaticANIObject *ani;
- if (getObjectState(sO_ClockHandle) == getObjectEnumState(sO_ClockHandle, sO_In_32_Lies)) {
+ if (g_fp->getObjectState(sO_ClockHandle) == g_fp->getObjectEnumState(sO_ClockHandle, sO_In_32_Lies)) {
ani = sc->getStaticANIObject1ById(ANI_INV_HANDLE, -1);
if (ani) {
g_fp->_currentScene = sc;
@@ -71,7 +71,7 @@ void scene32_initScene(Scene *sc) {
ani->changeStatics2(ST_HDL_LAID);
}
} else {
- if (getObjectState(sO_ClockHandle) == getObjectEnumState(sO_ClockHandle, sO_In_32_Sticks)) {
+ if (g_fp->getObjectState(sO_ClockHandle) == g_fp->getObjectEnumState(sO_ClockHandle, sO_In_32_Sticks)) {
ani = sc->getStaticANIObject1ById(ANI_INV_HANDLE, -1);
g_fp->_currentScene = sc;
@@ -85,8 +85,8 @@ void scene32_initScene(Scene *sc) {
g_fp->_currentScene = oldsc;
- if (getObjectState(sO_Cube) == getObjectEnumState(sO_Cube, sO_In_32)) {
- MessageQueue *mq = new Message(sc->getMessageQueueById(QU_KBK32_START), 0, 0);
+ if (g_fp->getObjectState(sO_Cube) == g_fp->getObjectEnumState(sO_Cube, sO_In_32)) {
+ MessageQueue *mq = new MessageQueue(sc->getMessageQueueById(QU_KBK32_START), 0, 0);
mq->sendNextCommand();
}
Commit: 6e828566ef017c9c66fb16390bc96422c01ab021
https://github.com/scummvm/scummvm/commit/6e828566ef017c9c66fb16390bc96422c01ab021
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T03:15:42-08:00
Commit Message:
FULLPIPE: Implement scene32_updateCursor() and setupMusic()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/fullpipe.h
engines/fullpipe/lift.cpp
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 674d544..a993c80 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1063,6 +1063,7 @@ namespace Fullpipe {
#define ANI_TESTO_ORANGE 2656
#define MV_TSTG_FLOW 2663
#define MV_TSTO_FLOW 2657
+#define PIC_SC32_LADDER 4296
#define QU_KBK32_START 4982
#define QU_SC32_ENTERLIFT 2827
#define QU_SC32_EXITLIFT 2828
diff --git a/engines/fullpipe/fullpipe.h b/engines/fullpipe/fullpipe.h
index 7c7ac05..824ea08 100644
--- a/engines/fullpipe/fullpipe.h
+++ b/engines/fullpipe/fullpipe.h
@@ -272,6 +272,7 @@ public:
void lift_sub1(StaticANIObject *ani);
void lift_startExitQueue();
void lift_sub05(ExCommand *ex);
+ bool lift_checkButton(const char *varname);
GameVar *_musicGameVar;
Audio::SoundHandle _sceneTrackHandle;
diff --git a/engines/fullpipe/lift.cpp b/engines/fullpipe/lift.cpp
index ca23d82..cb811d6 100644
--- a/engines/fullpipe/lift.cpp
+++ b/engines/fullpipe/lift.cpp
@@ -105,4 +105,10 @@ void FullpipeEngine::lift_sub05(ExCommand *ex) {
warning("STUB: FullpipeEngine::lift_sub05()");
}
+bool FullpipeEngine::lift_checkButton(const char *varname) {
+ warning("STUB: FullpipeEngine::lift_checkButton(%s)", varname);
+
+ return false;
+}
+
} // End of namespace Fullpipe
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index 90e5e77..6b6560f 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -97,4 +97,18 @@ void scene32_initScene(Scene *sc) {
g_fp->initArcadeKeys("SC_32");
}
+void scene32_setupMusic() {
+ if (g_fp->lift_checkButton(sO_Level6))
+ g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_32"), "MUSIC2", 1);
+}
+
+int scene32_updateCursor() {
+ g_fp->updateCursorCommon();
+
+ if (g_fp->_objectIdAtCursor == PIC_SC32_LADDER && g_fp->_cursorId == PIC_CSR_ITN)
+ g_fp->_cursorId = g_vars->scene32_var09 ? PIC_CSR_GOD : PIC_CSR_GOU; // TODO FIXME doublecheck
+
+ return g_fp->_cursorId;
+}
+
} // End of namespace Fullpipe
Commit: c2776345b850db67a0045987e53efec6d831c97b
https://github.com/scummvm/scummvm/commit/c2776345b850db67a0045987e53efec6d831c97b
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T06:09:57-08:00
Commit Message:
FULLPIPE: Implement sceneHandler32()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index a993c80..11ee8fa 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1061,15 +1061,36 @@ namespace Fullpipe {
#define ANI_TESTO_BLUE 2659
#define ANI_TESTO_GREEN 2662
#define ANI_TESTO_ORANGE 2656
+#define MSG_SC32_ONLADDER 2270
+#define MSG_SC32_SPIN 2405
+#define MSG_SC32_STARTCACTUS 2414
+#define MSG_SC32_STARTFLAGLEFT 2310
+#define MSG_SC32_STARTFLAGRIGHT 2309
+#define MSG_SC32_STOPFLAG 2311
+#define MSG_SC32_TRUBATOBACK 5181
+#define MSG_SC32_TRUBATOFRONT 5180
+#define MSG_SC32_TRYSIT 2294
+#define MV_FLG_CYCLEL 2262
+#define MV_FLG_CYCLER 2266
+#define MV_FLG_STARTL 2258
+#define MV_FLG_STARTR 2263
+#define MV_FLG_STOPL 2261
+#define MV_FLG_STOPR 2265
#define MV_TSTG_FLOW 2663
#define MV_TSTO_FLOW 2657
#define PIC_SC32_LADDER 4296
+#define PIC_SC32_RTRUBA 2292
#define QU_KBK32_START 4982
#define QU_SC32_ENTERLIFT 2827
#define QU_SC32_EXITLIFT 2828
#define ST_BTN32_ON 5350
+#define ST_FLG_LEFT 2260
+#define ST_FLG_RIGHT 2264
#define ST_HDL_LAID 3039
+// Scene 33
+#define MSG_SC33_TRYKUBIK 4980
+
// Scene 36
#define ANI_SCISSORS_36 2647
#define ANI_ROTOHRUST 2360
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index 6b6560f..67366e8 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -111,4 +111,211 @@ int scene32_updateCursor() {
return g_fp->_cursorId;
}
+void sceneHandler32_tryCube() {
+ warning("STUB: sceneHandler32_tryCube()");
+}
+
+void sceneHandler32_startCactus() {
+ warning("STUB: sceneHandler32_startCactus()");
+}
+
+void sceneHandler32_spin(ExCommand *cmd) {
+ warning("STUB: sceneHandler32_spin(cmd)");
+}
+
+void sceneHandler32_startFlagLeft() {
+ warning("STUB: sceneHandler32_startFlagLeft()");
+}
+
+void sceneHandler32_startFlagRight() {
+ warning("STUB: sceneHandler32_startFlagRight()");
+}
+
+void sceneHandler32_trySit(ExCommand *cmd) {
+ warning("STUB: sceneHandler32_trySit(cmd)");
+}
+
+void sceneHandler32_buttonPush() {
+ warning("STUB: sceneHandler32_buttonPush()");
+}
+
+void sceneHandler32_installHandle() {
+ warning("STUB: sceneHandler32_installHandle()");
+}
+
+void sceneHandler32_animateCactus() {
+ warning("STUB: sceneHandler32_animateCactus()");
+}
+
+void sceneHandler32_ladderLogic(ExCommand *cmd) {
+ warning("STUB: sceneHandler32_ladderLogic(cmd)");
+}
+
+void sceneHandler32_potLogic(ExCommand *cmd) {
+ warning("STUB: sceneHandler32_potLogic(cmd)");
+}
+
+int sceneHandler32(ExCommand *cmd) {
+ if (cmd->_messageKind != 17)
+ return 0;
+
+ switch (cmd->_messageNum) {
+ case MSG_LIFT_CLOSEDOOR:
+ g_fp->lift_closedoorSeq();
+ break;
+
+ case MSG_LIFT_EXITLIFT:
+ g_fp->lift_exitSeq(cmd);
+ break;
+
+ case MSG_LIFT_STARTEXITQUEUE:
+ g_fp->lift_startExitQueue();
+ break;
+
+ case MSG_SC32_TRUBATOBACK:
+ g_fp->_currentScene->getPictureObjectById(PIC_SC32_RTRUBA, 0)->_priority = 20;
+ break;
+
+ case MSG_SC32_TRUBATOFRONT:
+ g_fp->_currentScene->getPictureObjectById(PIC_SC32_RTRUBA, 0)->_priority = 0;
+ break;
+
+ case MSG_LIFT_CLICKBUTTON:
+ g_fp->lift_animation3();
+ break;
+
+ case MSG_SC33_TRYKUBIK:
+ sceneHandler32_tryCube();
+ break;
+
+ case MSG_SC32_STARTCACTUS:
+ sceneHandler32_startCactus();
+ break;
+
+ case MSG_SC32_STOPFLAG:
+ g_vars->scene32_var05 = 0;
+ g_vars->scene32_var06 = 1;
+ break;
+
+ case MSG_SC32_SPIN:
+ sceneHandler32_spin(cmd);
+ break;
+
+ case MSG_SC32_STARTFLAGLEFT :
+ sceneHandler32_startFlagLeft();
+ break;
+
+ case MSG_SC32_STARTFLAGRIGHT:
+ sceneHandler32_startFlagRight();
+ break;
+
+ case MSG_SC32_TRYSIT:
+ sceneHandler32_trySit(cmd);
+ break;
+
+ case MSG_LIFT_GO:
+ g_fp->lift_goAnimation();
+ break;
+
+ case MSG_SC32_ONLADDER:
+ g_vars->scene32_var09 = 1;
+
+ getCurrSceneSc2MotionController()->clearEnabled();
+ getGameLoaderInteractionController()->disableFlag24();
+ break;
+
+ case MSG_SC6_BTNPUSH:
+ sceneHandler32_buttonPush();
+ break;
+
+ case 64:
+ g_fp->lift_sub05(cmd);
+ break;
+
+ case MSG_SC6_INSTHANDLE:
+ sceneHandler32_installHandle();
+ break;
+
+ case 33:
+ if (g_fp->_aniMan2) {
+ int x = g_fp->_aniMan2->_ox;
+
+ if (x < g_fp->_sceneRect.left + g_vars->scene32_var01)
+ g_fp->_currentScene->_x = x - g_vars->scene32_var03 - g_fp->_sceneRect.left;
+
+ if (x > g_fp->_sceneRect.right - g_vars->scene32_var01)
+ g_fp->_currentScene->_x = x + g_vars->scene32_var03 - g_fp->_sceneRect.right;
+ }
+
+ if (!g_vars->scene32_flag->_movement) {
+ if (g_vars->scene32_var05) {
+ if (g_vars->scene32_flag->_statics->_staticsId == ST_FLG_RIGHT)
+ g_vars->scene32_flag->startAnim(MV_FLG_CYCLER, 0, -1);
+ else if (g_vars->scene32_flag->_statics->_staticsId == ST_FLG_LEFT)
+ g_vars->scene32_flag->startAnim(MV_FLG_CYCLEL, 0, -1);
+ }
+
+ if (g_vars->scene32_var06 && !g_vars->scene32_var05) {
+ if (g_vars->scene32_flag->_statics->_staticsId == ST_FLG_RIGHT)
+ g_vars->scene32_flag->startAnim(MV_FLG_STOPR, 0, -1);
+ else if (g_vars->scene32_flag->_statics->_staticsId == ST_FLG_LEFT)
+ g_vars->scene32_flag->startAnim(MV_FLG_STOPL, 0, -1);
+
+ g_vars->scene32_var06 = 0;
+ }
+ }
+
+ if (g_vars->scene32_var08) {
+ if (g_vars->scene32_var08 > 0)
+ --g_vars->scene32_var08;
+
+ g_fp->_behaviorManager->updateBehaviors();
+
+ g_fp->startSceneTrack();
+ } else {
+ sceneHandler32_animateCactus();
+
+ g_fp->_behaviorManager->updateBehaviors();
+
+ g_fp->startSceneTrack();
+
+ }
+ break;
+
+ case 29:
+ if (g_vars->scene32_var09) {
+ sceneHandler32_ladderLogic(cmd);
+ cmd->_messageKind = 0;
+ break;
+ }
+
+ if (!g_vars->scene32_var07 || g_fp->_aniMan->_movement) {
+ StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY);
+
+ if (ani && ani->_id == ANI_LIFTBUTTON) {
+ g_fp->lift_sub1(ani);
+
+ cmd->_messageKind = 0;
+ break;
+ }
+
+ if (g_fp->_cursorId == PIC_CSR_GOFAR_R || g_fp->_cursorId == PIC_CSR_GOFAR_L) {
+ if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1)
+ || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0))
+ g_fp->processArcade(cmd);
+ }
+ break;
+ }
+
+ if (!g_vars->scene32_var10)
+ sceneHandler32_potLogic(cmd);
+
+ cmd->_messageKind = 0;
+
+ break;
+ }
+
+ return 0;
+}
+
} // End of namespace Fullpipe
Commit: 61268f4424dfb45bd20c69a5ad71aafde48538f4
https://github.com/scummvm/scummvm/commit/61268f4424dfb45bd20c69a5ad71aafde48538f4
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T06:30:52-08:00
Commit Message:
FULLPIPE: Enable scene32
Changed paths:
engines/fullpipe/scenes.cpp
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index 42ff94f..36a7191 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -853,7 +853,6 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
_updateCursorCallback = defaultUpdateCursor;
break;
-#if 0
case SC_32:
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_32");
scene->preloadMovements(sceneVar);
@@ -862,10 +861,11 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
scene->initObjectCursors("SC_32");
setSceneMusicParameters(sceneVar);
insertMessageHandler(sceneHandler32, 2, 2);
- scene32_sub_42C5C0();
+ scene32_setupMusic();
_updateCursorCallback = scene32_updateCursor;
break;
+#if 0
case SC_33:
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_33");
scene->preloadMovements(sceneVar);
Commit: 51b9d156d535c922cb4240a7686f790d58c97d46
https://github.com/scummvm/scummvm/commit/51b9d156d535c922cb4240a7686f790d58c97d46
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T06:31:24-08:00
Commit Message:
FULLPIPE: More code to scene32
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 11ee8fa..88f5492 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1080,11 +1080,13 @@ namespace Fullpipe {
#define MV_TSTO_FLOW 2657
#define PIC_SC32_LADDER 4296
#define PIC_SC32_RTRUBA 2292
+#define QU_KBK32_GO 4977
#define QU_KBK32_START 4982
#define QU_SC32_ENTERLIFT 2827
#define QU_SC32_EXITLIFT 2828
#define ST_BTN32_ON 5350
#define ST_FLG_LEFT 2260
+#define ST_FLG_NORM 2259
#define ST_FLG_RIGHT 2264
#define ST_HDL_LAID 3039
diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h
index 5a8746f..c866e62 100644
--- a/engines/fullpipe/scenes.h
+++ b/engines/fullpipe/scenes.h
@@ -143,6 +143,11 @@ int sceneHandler30(ExCommand *cmd);
void scene31_initScene(Scene *sc);
int sceneHandler31(ExCommand *ex);
+void scene32_initScene(Scene *sc);
+void scene32_setupMusic();
+int sceneHandler32(ExCommand *cmd);
+int scene32_updateCursor();
+
int scene36_updateCursor();
void scene36_initScene(Scene *sc);
int sceneHandler36(ExCommand *cmd);
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index 67366e8..f032970 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -112,7 +112,8 @@ int scene32_updateCursor() {
}
void sceneHandler32_tryCube() {
- warning("STUB: sceneHandler32_tryCube()");
+ if (g_fp->getObjectState(sO_Cube) == g_fp->getObjectEnumState(sO_Cube, sO_In_33))
+ chainQueue(QU_KBK32_GO, 0);
}
void sceneHandler32_startCactus() {
@@ -124,11 +125,17 @@ void sceneHandler32_spin(ExCommand *cmd) {
}
void sceneHandler32_startFlagLeft() {
- warning("STUB: sceneHandler32_startFlagLeft()");
+ g_vars->scene32_flag->changeStatics2(ST_FLG_NORM);
+ g_vars->scene32_flag->startAnim(MV_FLG_STARTL, 0, -1);
+
+ g_vars->scene32_var05 = 1;
}
void sceneHandler32_startFlagRight() {
- warning("STUB: sceneHandler32_startFlagRight()");
+ g_vars->scene32_flag->changeStatics2(ST_FLG_NORM);
+ g_vars->scene32_flag->startAnim(MV_FLG_STARTR, 0, -1);
+
+ g_vars->scene32_var05 = 1;
}
void sceneHandler32_trySit(ExCommand *cmd) {
Commit: a7ae2b4452877fb2728d6f9feb810360e5b517df
https://github.com/scummvm/scummvm/commit/a7ae2b4452877fb2728d6f9feb810360e5b517df
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T06:35:40-08:00
Commit Message:
FULLPIPE: yet more code to scene32
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 88f5492..9f2f888 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1080,15 +1080,19 @@ namespace Fullpipe {
#define MV_TSTO_FLOW 2657
#define PIC_SC32_LADDER 4296
#define PIC_SC32_RTRUBA 2292
+#define QU_CTS_GROW 2416
+#define QU_CTS_GROWMAN 2417
#define QU_KBK32_GO 4977
#define QU_KBK32_START 4982
#define QU_SC32_ENTERLIFT 2827
#define QU_SC32_EXITLIFT 2828
+#define QU_SC32_SHOWHANDLE 2399
#define ST_BTN32_ON 5350
#define ST_FLG_LEFT 2260
#define ST_FLG_NORM 2259
#define ST_FLG_RIGHT 2264
#define ST_HDL_LAID 3039
+#define ST_MAN32_SIT 2277
// Scene 33
#define MSG_SC33_TRYKUBIK 4980
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index f032970..fa0ad86 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -117,7 +117,8 @@ void sceneHandler32_tryCube() {
}
void sceneHandler32_startCactus() {
- warning("STUB: sceneHandler32_startCactus()");
+ g_vars->scene32_var08 = 48;
+ g_vars->scene32_var10 = 0;
}
void sceneHandler32_spin(ExCommand *cmd) {
@@ -147,11 +148,19 @@ void sceneHandler32_buttonPush() {
}
void sceneHandler32_installHandle() {
- warning("STUB: sceneHandler32_installHandle()");
+ chainQueue(QU_SC32_SHOWHANDLE, 0);
+
+ g_vars->scene32_button->changeStatics2(ST_BTN32_ON);
}
void sceneHandler32_animateCactus() {
- warning("STUB: sceneHandler32_animateCactus()");
+ if (g_fp->_aniMan->_statics->_staticsId != ST_MAN32_SIT)
+ chainQueue(QU_CTS_GROW, 1);
+ else
+ chainQueue(QU_CTS_GROWMAN, 1);
+
+ g_vars->scene32_var08 = -1;
+ g_vars->scene32_var10 = 1;
}
void sceneHandler32_ladderLogic(ExCommand *cmd) {
Commit: 7292a08b8a96fba418249db65614f5898c9f25c5
https://github.com/scummvm/scummvm/commit/7292a08b8a96fba418249db65614f5898c9f25c5
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T06:43:33-08:00
Commit Message:
FULLPIPE: Implement sceneHandler32_buttonPush()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 9f2f888..532cfdc 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1086,7 +1086,9 @@ namespace Fullpipe {
#define QU_KBK32_START 4982
#define QU_SC32_ENTERLIFT 2827
#define QU_SC32_EXITLIFT 2828
+#define QU_SC32_FALLHANDLE 5351
#define QU_SC32_SHOWHANDLE 2399
+#define ST_BTN32_OFF 5349
#define ST_BTN32_ON 5350
#define ST_FLG_LEFT 2260
#define ST_FLG_NORM 2259
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index fa0ad86..38a29d3 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -144,7 +144,15 @@ void sceneHandler32_trySit(ExCommand *cmd) {
}
void sceneHandler32_buttonPush() {
- warning("STUB: sceneHandler32_buttonPush()");
+ if (g_fp->getObjectState(sO_ClockHandle) == g_fp->getObjectEnumState(sO_ClockHandle, sO_In_32_Sticks)) {
+ StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_INV_HANDLE, -1);
+ if (ani)
+ ani->changeStatics2(ST_HDL_PLUGGED);
+
+ chainQueue(QU_SC32_FALLHANDLE, 1);
+
+ g_vars->scene32_button->changeStatics2(ST_BTN32_OFF);
+ }
}
void sceneHandler32_installHandle() {
Commit: ae5389af8bd3b248b3bbbcbf8fd62284586b0d22
https://github.com/scummvm/scummvm/commit/ae5389af8bd3b248b3bbbcbf8fd62284586b0d22
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T06:50:52-08:00
Commit Message:
FULLPIPE: Implement sceneHandler32_ladderLogic()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 532cfdc..21ae1d9 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1087,6 +1087,7 @@ namespace Fullpipe {
#define QU_SC32_ENTERLIFT 2827
#define QU_SC32_EXITLIFT 2828
#define QU_SC32_FALLHANDLE 5351
+#define QU_SC32_FROMLADDER 4300
#define QU_SC32_SHOWHANDLE 2399
#define ST_BTN32_OFF 5349
#define ST_BTN32_ON 5350
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index 38a29d3..ac26cf4 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -172,7 +172,21 @@ void sceneHandler32_animateCactus() {
}
void sceneHandler32_ladderLogic(ExCommand *cmd) {
- warning("STUB: sceneHandler32_ladderLogic(cmd)");
+ MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC32_FROMLADDER), 0, 0);
+
+ if (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) != PIC_SC32_LADDER)
+ mq->addExCommandToEnd(cmd->createClone());
+
+ mq->setFlags(mq->getFlags() | 1);
+
+ g_fp->_aniMan->changeStatics2(ST_MAN_STANDLADDER);
+ if (!mq->chain(g_fp->_aniMan))
+ delete mq;
+
+ g_vars->scene32_var09 = 0;
+
+ getCurrSceneSc2MotionController()->setEnabled();
+ getGameLoaderInteractionController()->enableFlag24();
}
void sceneHandler32_potLogic(ExCommand *cmd) {
Commit: d821719c47cc8fae2e52f9a673ac5662344794c8
https://github.com/scummvm/scummvm/commit/d821719c47cc8fae2e52f9a673ac5662344794c8
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T06:57:06-08:00
Commit Message:
FULLPIPE: Implement sceneHandler32_potLogic()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 21ae1d9..f0d978b 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1058,6 +1058,7 @@ namespace Fullpipe {
#define ANI_BUTTON_32 5347
#define ANI_CACTUS 2267
#define ANI_FLAG 2257
+#define ANI_KADKA 2670
#define ANI_TESTO_BLUE 2659
#define ANI_TESTO_GREEN 2662
#define ANI_TESTO_ORANGE 2656
@@ -1076,6 +1077,7 @@ namespace Fullpipe {
#define MV_FLG_STARTR 2263
#define MV_FLG_STOPL 2261
#define MV_FLG_STOPR 2265
+#define MV_MAN32_STANDUP 2313
#define MV_TSTG_FLOW 2663
#define MV_TSTO_FLOW 2657
#define PIC_SC32_LADDER 4296
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index ac26cf4..4f2b78f 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -190,7 +190,28 @@ void sceneHandler32_ladderLogic(ExCommand *cmd) {
}
void sceneHandler32_potLogic(ExCommand *cmd) {
- warning("STUB: sceneHandler32_potLogic(cmd)");
+ if (g_vars->scene32_var08 < 0 || g_vars->scene32_var08 > 20) {
+ MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact());
+
+ ExCommand *ex = new ExCommand(ANI_MAN, 1, MV_MAN32_STANDUP, 0, 0, 0, 1, 0, 0, 0);
+
+ ex->_excFlags |= 2;
+
+ mq->addExCommandToEnd(ex);
+
+ StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY);
+
+ if (!ani || ani->_id != ANI_KADKA)
+ mq->addExCommandToEnd(cmd->createClone());
+
+ mq->setFlags(mq->getFlags() | 1);
+ mq->chain(0);
+
+ getCurrSceneSc2MotionController()->setEnabled();
+ getGameLoaderInteractionController()->enableFlag24();
+
+ g_vars->scene32_var07 = 0;
+ }
}
int sceneHandler32(ExCommand *cmd) {
Commit: 929c868c5e1123a2e364e0c473b6a162dd122d80
https://github.com/scummvm/scummvm/commit/929c868c5e1123a2e364e0c473b6a162dd122d80
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T07:09:57-08:00
Commit Message:
FULLPIPE: Implement sceneHandler32_spin()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index f0d978b..3df6ab3 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1071,6 +1071,7 @@ namespace Fullpipe {
#define MSG_SC32_TRUBATOBACK 5181
#define MSG_SC32_TRUBATOFRONT 5180
#define MSG_SC32_TRYSIT 2294
+#define MV_CTS_DEFAULT 4299
#define MV_FLG_CYCLEL 2262
#define MV_FLG_CYCLER 2266
#define MV_FLG_STARTL 2258
@@ -1082,10 +1083,12 @@ namespace Fullpipe {
#define MV_TSTO_FLOW 2657
#define PIC_SC32_LADDER 4296
#define PIC_SC32_RTRUBA 2292
+#define QU_CTS_BACK 2415
#define QU_CTS_GROW 2416
#define QU_CTS_GROWMAN 2417
#define QU_KBK32_GO 4977
#define QU_KBK32_START 4982
+#define QU_KDK_DRIZZLE 4301
#define QU_SC32_ENTERLIFT 2827
#define QU_SC32_EXITLIFT 2828
#define QU_SC32_FALLHANDLE 5351
@@ -1093,6 +1096,8 @@ namespace Fullpipe {
#define QU_SC32_SHOWHANDLE 2399
#define ST_BTN32_OFF 5349
#define ST_BTN32_ON 5350
+#define ST_CTS_EMPTY 2269
+#define ST_CTS_GROWUP 2467
#define ST_FLG_LEFT 2260
#define ST_FLG_NORM 2259
#define ST_FLG_RIGHT 2264
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index 4f2b78f..b73dd99 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -122,7 +122,40 @@ void sceneHandler32_startCactus() {
}
void sceneHandler32_spin(ExCommand *cmd) {
- warning("STUB: sceneHandler32_spin(cmd)");
+ MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(cmd->_parId);
+
+ if (!mq || !mq->getCount() <= 0)
+ return;
+
+ ExCommand *ex = mq->getExCommandByIndex(0);
+ ExCommand *newex;
+
+ if ((g_vars->scene32_cactus->_movement && g_vars->scene32_cactus->_movement->_id == MV_CTS_DEFAULT)
+ || g_vars->scene32_cactus->_statics->_staticsId == ST_CTS_GROWUP) {
+ for (int i = 0; i < 12; i++) {
+ newex = ex->createClone();
+ newex->_excFlags |= 2;
+ mq->insertExCommandAt(1, newex);
+ }
+
+ g_vars->scene32_cactus->changeStatics2(ST_CTS_GROWUP);
+
+ chainQueue(QU_CTS_BACK, 1);
+
+ g_vars->scene32_var10 = 0;
+
+ return;
+ }
+
+ if (g_vars->scene32_cactus->_statics->_staticsId == ST_CTS_EMPTY && g_vars->scene32_var08 < 0) {
+ for (int i = 0; i < 2; i++) {
+ newex = ex->createClone();
+ newex->_excFlags |= 2;
+ mq->insertExCommandAt(1, newex);
+ }
+
+ chainQueue(QU_KDK_DRIZZLE, 0);
+ }
}
void sceneHandler32_startFlagLeft() {
Commit: b495a16812ead9bae573dbf1c31aea7fe9e1b134
https://github.com/scummvm/scummvm/commit/b495a16812ead9bae573dbf1c31aea7fe9e1b134
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T07:14:57-08:00
Commit Message:
FULLPIPE: Implement sceneHandler32_trySit()
Changed paths:
engines/fullpipe/constants.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index 3df6ab3..aba3c61 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -1078,6 +1078,7 @@ namespace Fullpipe {
#define MV_FLG_STARTR 2263
#define MV_FLG_STOPL 2261
#define MV_FLG_STOPR 2265
+#define MV_MAN32_SITDOWN 2276
#define MV_MAN32_STANDUP 2313
#define MV_TSTG_FLOW 2663
#define MV_TSTO_FLOW 2657
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index b73dd99..4b463c4 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -173,7 +173,29 @@ void sceneHandler32_startFlagRight() {
}
void sceneHandler32_trySit(ExCommand *cmd) {
- warning("STUB: sceneHandler32_trySit(cmd)");
+ MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(cmd->_parId);
+
+ if (!mq || !mq->getCount() <= 0)
+ return;
+
+ ExCommand *ex = mq->getExCommandByIndex(0);
+
+ if (g_vars->scene32_var10 || g_vars->scene32_cactus->_movement
+ || g_vars->scene32_cactus->_statics->_staticsId != ST_CTS_EMPTY
+ || (g_vars->scene32_var08 >= 0 && g_vars->scene32_var08 <= 20)) {
+ ex->_messageKind = 0;
+ ex->_excFlags |= 1;
+ } else {
+ ex->_parentId = ANI_MAN;
+ ex->_messageKind = 1;
+ ex->_messageNum = MV_MAN32_SITDOWN;
+ ex->_keyCode = g_fp->_aniMan->_okeyCode;
+
+ g_vars->scene32_var07 = 1;
+
+ getCurrSceneSc2MotionController()->clearEnabled();
+ getGameLoaderInteractionController()->disableFlag24();
+ }
}
void sceneHandler32_buttonPush() {
Commit: 9313c540afde6f06a91d247b2e2f2b7c0fb5a033
https://github.com/scummvm/scummvm/commit/9313c540afde6f06a91d247b2e2f2b7c0fb5a033
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T07:20:15-08:00
Commit Message:
FULLPIPE: Started renames in scene32
Changed paths:
engines/fullpipe/scenes.cpp
engines/fullpipe/scenes.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index 36a7191..ae5807f 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -313,12 +313,8 @@ Vars::Vars() {
scene31_cactus = 0;
scene31_plusMinus = 0;
- scene32_var01 = 0;
- scene32_var02 = 0;
- scene32_var03 = 0;
- scene32_var04 = 0;
- scene32_var05 = 0;
- scene32_var06 = 0;
+ scene32_flagIsWaving = false;
+ scene32_flagNeedsStopping = false;
scene32_var07 = 0;
scene32_var08 = -1;
scene32_var09 = 0;
diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h
index c866e62..7b0b1b6 100644
--- a/engines/fullpipe/scenes.h
+++ b/engines/fullpipe/scenes.h
@@ -446,12 +446,8 @@ public:
StaticANIObject *scene31_cactus;
StaticANIObject *scene31_plusMinus;
- int scene32_var01;
- int scene32_var02;
- int scene32_var03;
- int scene32_var04;
- int scene32_var05;
- int scene32_var06;
+ bool scene32_flagIsWaving;
+ bool scene32_flagNeedsStopping;
int scene32_var07;
int scene32_var08;
int scene32_var09;
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index 4b463c4..75f729a 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -37,12 +37,8 @@
namespace Fullpipe {
void scene32_initScene(Scene *sc) {
- g_vars->scene32_var01 = 200;
- g_vars->scene32_var02 = 200;
- g_vars->scene32_var03 = 300;
- g_vars->scene32_var04 = 300;
- g_vars->scene32_var05 = 0;
- g_vars->scene32_var06 = 0;
+ g_vars->scene32_flagIsWaving = false;
+ g_vars->scene32_flagNeedsStopping = false;
g_vars->scene32_var07 = 0;
g_vars->scene32_var08 = -1;
g_vars->scene32_var09 = 0;
@@ -162,14 +158,14 @@ void sceneHandler32_startFlagLeft() {
g_vars->scene32_flag->changeStatics2(ST_FLG_NORM);
g_vars->scene32_flag->startAnim(MV_FLG_STARTL, 0, -1);
- g_vars->scene32_var05 = 1;
+ g_vars->scene32_flagIsWaving = true;
}
void sceneHandler32_startFlagRight() {
g_vars->scene32_flag->changeStatics2(ST_FLG_NORM);
g_vars->scene32_flag->startAnim(MV_FLG_STARTR, 0, -1);
- g_vars->scene32_var05 = 1;
+ g_vars->scene32_flagIsWaving = true;
}
void sceneHandler32_trySit(ExCommand *cmd) {
@@ -307,8 +303,8 @@ int sceneHandler32(ExCommand *cmd) {
break;
case MSG_SC32_STOPFLAG:
- g_vars->scene32_var05 = 0;
- g_vars->scene32_var06 = 1;
+ g_vars->scene32_flagIsWaving = false;
+ g_vars->scene32_flagNeedsStopping = true;
break;
case MSG_SC32_SPIN:
@@ -354,28 +350,28 @@ int sceneHandler32(ExCommand *cmd) {
if (g_fp->_aniMan2) {
int x = g_fp->_aniMan2->_ox;
- if (x < g_fp->_sceneRect.left + g_vars->scene32_var01)
- g_fp->_currentScene->_x = x - g_vars->scene32_var03 - g_fp->_sceneRect.left;
+ if (x < g_fp->_sceneRect.left + 200)
+ g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left;
- if (x > g_fp->_sceneRect.right - g_vars->scene32_var01)
- g_fp->_currentScene->_x = x + g_vars->scene32_var03 - g_fp->_sceneRect.right;
+ if (x > g_fp->_sceneRect.right - 200)
+ g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right;
}
if (!g_vars->scene32_flag->_movement) {
- if (g_vars->scene32_var05) {
+ if (g_vars->scene32_flagIsWaving) {
if (g_vars->scene32_flag->_statics->_staticsId == ST_FLG_RIGHT)
g_vars->scene32_flag->startAnim(MV_FLG_CYCLER, 0, -1);
else if (g_vars->scene32_flag->_statics->_staticsId == ST_FLG_LEFT)
g_vars->scene32_flag->startAnim(MV_FLG_CYCLEL, 0, -1);
}
- if (g_vars->scene32_var06 && !g_vars->scene32_var05) {
+ if (g_vars->scene32_flagNeedsStopping && !g_vars->scene32_flagIsWaving) {
if (g_vars->scene32_flag->_statics->_staticsId == ST_FLG_RIGHT)
g_vars->scene32_flag->startAnim(MV_FLG_STOPR, 0, -1);
else if (g_vars->scene32_flag->_statics->_staticsId == ST_FLG_LEFT)
g_vars->scene32_flag->startAnim(MV_FLG_STOPL, 0, -1);
- g_vars->scene32_var06 = 0;
+ g_vars->scene32_flagNeedsStopping = false;
}
}
Commit: 5e0236e7ad7157f67ca1eed6b4d28a959de5bc40
https://github.com/scummvm/scummvm/commit/5e0236e7ad7157f67ca1eed6b4d28a959de5bc40
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-07T07:26:59-08:00
Commit Message:
FULLPIPE: Rename remaining vars in scene32. This completes the scene
Changed paths:
engines/fullpipe/scenes.cpp
engines/fullpipe/scenes.h
engines/fullpipe/scenes/scene32.cpp
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index ae5807f..08b3a0e 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -315,10 +315,10 @@ Vars::Vars() {
scene32_flagIsWaving = false;
scene32_flagNeedsStopping = false;
- scene32_var07 = 0;
- scene32_var08 = -1;
- scene32_var09 = 0;
- scene32_var10 = 0;
+ scene32_dudeIsSitting = false;
+ scene32_cactusCounter = -1;
+ scene32_dudeOnLadder = false;
+ scene32_cactusIsGrowing = false;
scene32_flag = 0;
scene32_cactus = 0;
scene32_massOrange = 0;
diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h
index 7b0b1b6..ec3602e 100644
--- a/engines/fullpipe/scenes.h
+++ b/engines/fullpipe/scenes.h
@@ -448,10 +448,10 @@ public:
bool scene32_flagIsWaving;
bool scene32_flagNeedsStopping;
- int scene32_var07;
- int scene32_var08;
- int scene32_var09;
- int scene32_var10;
+ bool scene32_dudeIsSitting;
+ int scene32_cactusCounter;
+ bool scene32_dudeOnLadder;
+ bool scene32_cactusIsGrowing;
StaticANIObject *scene32_flag;
StaticANIObject *scene32_cactus;
StaticANIObject *scene32_massOrange;
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index 75f729a..8d462fb 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -39,10 +39,10 @@ namespace Fullpipe {
void scene32_initScene(Scene *sc) {
g_vars->scene32_flagIsWaving = false;
g_vars->scene32_flagNeedsStopping = false;
- g_vars->scene32_var07 = 0;
- g_vars->scene32_var08 = -1;
- g_vars->scene32_var09 = 0;
- g_vars->scene32_var10 = 0;
+ g_vars->scene32_dudeIsSitting = false;
+ g_vars->scene32_cactusCounter = -1;
+ g_vars->scene32_dudeOnLadder = false;
+ g_vars->scene32_cactusIsGrowing = false;
g_vars->scene32_flag = sc->getStaticANIObject1ById(ANI_FLAG, -1);
g_vars->scene32_cactus = sc->getStaticANIObject1ById(ANI_CACTUS, -1);
g_vars->scene32_massOrange = sc->getStaticANIObject1ById(ANI_TESTO_ORANGE, -1);
@@ -102,7 +102,7 @@ int scene32_updateCursor() {
g_fp->updateCursorCommon();
if (g_fp->_objectIdAtCursor == PIC_SC32_LADDER && g_fp->_cursorId == PIC_CSR_ITN)
- g_fp->_cursorId = g_vars->scene32_var09 ? PIC_CSR_GOD : PIC_CSR_GOU; // TODO FIXME doublecheck
+ g_fp->_cursorId = g_vars->scene32_dudeOnLadder ? PIC_CSR_GOD : PIC_CSR_GOU; // TODO FIXME doublecheck
return g_fp->_cursorId;
}
@@ -113,8 +113,8 @@ void sceneHandler32_tryCube() {
}
void sceneHandler32_startCactus() {
- g_vars->scene32_var08 = 48;
- g_vars->scene32_var10 = 0;
+ g_vars->scene32_cactusCounter = 48;
+ g_vars->scene32_cactusIsGrowing = false;
}
void sceneHandler32_spin(ExCommand *cmd) {
@@ -138,12 +138,12 @@ void sceneHandler32_spin(ExCommand *cmd) {
chainQueue(QU_CTS_BACK, 1);
- g_vars->scene32_var10 = 0;
+ g_vars->scene32_cactusIsGrowing = false;
return;
}
- if (g_vars->scene32_cactus->_statics->_staticsId == ST_CTS_EMPTY && g_vars->scene32_var08 < 0) {
+ if (g_vars->scene32_cactus->_statics->_staticsId == ST_CTS_EMPTY && g_vars->scene32_cactusCounter < 0) {
for (int i = 0; i < 2; i++) {
newex = ex->createClone();
newex->_excFlags |= 2;
@@ -176,9 +176,9 @@ void sceneHandler32_trySit(ExCommand *cmd) {
ExCommand *ex = mq->getExCommandByIndex(0);
- if (g_vars->scene32_var10 || g_vars->scene32_cactus->_movement
+ if (g_vars->scene32_cactusIsGrowing || g_vars->scene32_cactus->_movement
|| g_vars->scene32_cactus->_statics->_staticsId != ST_CTS_EMPTY
- || (g_vars->scene32_var08 >= 0 && g_vars->scene32_var08 <= 20)) {
+ || (g_vars->scene32_cactusCounter >= 0 && g_vars->scene32_cactusCounter <= 20)) {
ex->_messageKind = 0;
ex->_excFlags |= 1;
} else {
@@ -187,7 +187,7 @@ void sceneHandler32_trySit(ExCommand *cmd) {
ex->_messageNum = MV_MAN32_SITDOWN;
ex->_keyCode = g_fp->_aniMan->_okeyCode;
- g_vars->scene32_var07 = 1;
+ g_vars->scene32_dudeIsSitting = true;
getCurrSceneSc2MotionController()->clearEnabled();
getGameLoaderInteractionController()->disableFlag24();
@@ -218,8 +218,8 @@ void sceneHandler32_animateCactus() {
else
chainQueue(QU_CTS_GROWMAN, 1);
- g_vars->scene32_var08 = -1;
- g_vars->scene32_var10 = 1;
+ g_vars->scene32_cactusCounter = -1;
+ g_vars->scene32_cactusIsGrowing = true;
}
void sceneHandler32_ladderLogic(ExCommand *cmd) {
@@ -234,14 +234,14 @@ void sceneHandler32_ladderLogic(ExCommand *cmd) {
if (!mq->chain(g_fp->_aniMan))
delete mq;
- g_vars->scene32_var09 = 0;
+ g_vars->scene32_dudeOnLadder = false;
getCurrSceneSc2MotionController()->setEnabled();
getGameLoaderInteractionController()->enableFlag24();
}
void sceneHandler32_potLogic(ExCommand *cmd) {
- if (g_vars->scene32_var08 < 0 || g_vars->scene32_var08 > 20) {
+ if (g_vars->scene32_cactusCounter < 0 || g_vars->scene32_cactusCounter > 20) {
MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact());
ExCommand *ex = new ExCommand(ANI_MAN, 1, MV_MAN32_STANDUP, 0, 0, 0, 1, 0, 0, 0);
@@ -261,7 +261,7 @@ void sceneHandler32_potLogic(ExCommand *cmd) {
getCurrSceneSc2MotionController()->setEnabled();
getGameLoaderInteractionController()->enableFlag24();
- g_vars->scene32_var07 = 0;
+ g_vars->scene32_dudeIsSitting = false;
}
}
@@ -328,7 +328,7 @@ int sceneHandler32(ExCommand *cmd) {
break;
case MSG_SC32_ONLADDER:
- g_vars->scene32_var09 = 1;
+ g_vars->scene32_dudeOnLadder = true;
getCurrSceneSc2MotionController()->clearEnabled();
getGameLoaderInteractionController()->disableFlag24();
@@ -375,9 +375,9 @@ int sceneHandler32(ExCommand *cmd) {
}
}
- if (g_vars->scene32_var08) {
- if (g_vars->scene32_var08 > 0)
- --g_vars->scene32_var08;
+ if (g_vars->scene32_cactusCounter) {
+ if (g_vars->scene32_cactusCounter > 0)
+ --g_vars->scene32_cactusCounter;
g_fp->_behaviorManager->updateBehaviors();
@@ -393,13 +393,13 @@ int sceneHandler32(ExCommand *cmd) {
break;
case 29:
- if (g_vars->scene32_var09) {
+ if (g_vars->scene32_dudeOnLadder) {
sceneHandler32_ladderLogic(cmd);
cmd->_messageKind = 0;
break;
}
- if (!g_vars->scene32_var07 || g_fp->_aniMan->_movement) {
+ if (!g_vars->scene32_dudeIsSitting || g_fp->_aniMan->_movement) {
StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY);
if (ani && ani->_id == ANI_LIFTBUTTON) {
@@ -417,7 +417,7 @@ int sceneHandler32(ExCommand *cmd) {
break;
}
- if (!g_vars->scene32_var10)
+ if (!g_vars->scene32_cactusIsGrowing)
sceneHandler32_potLogic(cmd);
cmd->_messageKind = 0;
More information about the Scummvm-git-logs
mailing list