[Scummvm-cvs-logs] SF.net SVN: scummvm:[54982] scummvm/trunk/engines/mohawk/myst_stacks
tdhs at users.sourceforge.net
tdhs at users.sourceforge.net
Tue Dec 21 02:09:14 CET 2010
Revision: 54982
http://scummvm.svn.sourceforge.net/scummvm/?rev=54982&view=rev
Author: tdhs
Date: 2010-12-21 01:09:14 +0000 (Tue, 21 Dec 2010)
Log Message:
-----------
MOHAWK: Add Framework of getVar(), setVar() and toggleVar() to Myst Stoneship Script Parser.
Modified Paths:
--------------
scummvm/trunk/engines/mohawk/myst_stacks/stoneship.cpp
scummvm/trunk/engines/mohawk/myst_stacks/stoneship.h
Modified: scummvm/trunk/engines/mohawk/myst_stacks/stoneship.cpp
===================================================================
--- scummvm/trunk/engines/mohawk/myst_stacks/stoneship.cpp 2010-12-20 21:46:28 UTC (rev 54981)
+++ scummvm/trunk/engines/mohawk/myst_stacks/stoneship.cpp 2010-12-21 01:09:14 UTC (rev 54982)
@@ -26,6 +26,7 @@
#include "mohawk/myst.h"
#include "mohawk/graphics.h"
#include "mohawk/myst_areas.h"
+#include "mohawk/myst_saveload.h"
#include "mohawk/sound.h"
#include "mohawk/video.h"
#include "mohawk/myst_stacks/stoneship.h"
@@ -90,6 +91,90 @@
opcode_209_run();
}
+uint16 MystScriptParser_Stoneship::getVar(uint16 var) {
+ MystVariables::Globals &globals = _vm->_saveLoad->_v->globals;
+ MystVariables::Stoneship &stoneship = _vm->_saveLoad->_v->stoneship;
+
+ switch(var) {
+//case 0: // Water Drained From Lighthouse / Right Button Of Pump
+// return 0; // Water Present / Button Dark
+// return 1; // Water Drained / Button Lit & Released
+// return 2; // Button Lit & Depressed
+//case 1: // Water Drained From Tunnels To Brothers' Rooms / Middle Button Of Pump
+// return 0; // Water Present / Button Dark
+// return 1; // Water Drained / Button Lit & Released
+// return 2; // Button Lit & Depressed
+//case 2: // Water Drained From Ship Cabin Tunnel / Left Button Of Pump
+// return 0; // Water Present / Button Dark
+// return 1; // Water Drained / Button Lit & Released
+// return 2; // Button Lit & Depressed
+//case 3: // Lighthouse Chest Floating(?)
+// return 0;
+// return 1;
+//case 4: // Lighthouse State - Close Up
+// return 0; // Flooded
+// return 1; // Drained
+// return 2; // Flooded, Chest Floating
+//case 5: // Lighthouse Trapdoor State
+// return 0; // Closed, No Lock
+// return 1; // Open
+// return 2; // Closed, Lock
+//case 7:
+// return;
+//case 11:
+// return;
+//case 12:
+// return;
+//case 13: // State Of Tunnels To Brothers' Rooms - Close Up
+// return 0; Dark, Flooded
+// return 1; Dark, Drained
+// return 2; Lit, Flooded
+// return 3; Lit, Drained
+//case 14: // State Of Tunnels To Brothers' Rooms - Far
+// return 0; // Lights Off
+// return 1; // Lights On
+// return 2; // Lights Off
+//case 16: // Ship Chamber Light State
+// return 0; // Off
+// return 1; // On
+//case 20: // Ship Chamber Table/Book State
+// return 0;
+// return 1;
+//case 28: // Telescope Angle Position
+// return;
+//case 36: // Ship Chamber Door State
+// return 0; // Closed
+// return 1; // Open, Light Off
+// return 2; // Open, Light On
+ default:
+ return MystScriptParser::getVar(var);
+ }
+}
+
+void MystScriptParser_Stoneship::toggleVar(uint16 var) {
+ MystVariables::Globals &globals = _vm->_saveLoad->_v->globals;
+ MystVariables::Stoneship &stoneship = _vm->_saveLoad->_v->stoneship;
+
+ switch(var) {
+ default:
+ MystScriptParser::toggleVar(var);
+ break;
+ }
+}
+
+bool MystScriptParser_Stoneship::setVarValue(uint16 var, uint16 value) {
+ MystVariables::Stoneship &stoneship = _vm->_saveLoad->_v->stoneship;
+ bool refresh = false;
+
+ switch (var) {
+ default:
+ refresh = MystScriptParser::setVarValue(var, value);
+ break;
+ }
+
+ return refresh;
+}
+
void MystScriptParser_Stoneship::opcode_100(uint16 op, uint16 var, uint16 argc, uint16 *argv) {
// Used for Cards 2185 (Water Pump)
varUnusedCheck(op, var);
Modified: scummvm/trunk/engines/mohawk/myst_stacks/stoneship.h
===================================================================
--- scummvm/trunk/engines/mohawk/myst_stacks/stoneship.h 2010-12-20 21:46:28 UTC (rev 54981)
+++ scummvm/trunk/engines/mohawk/myst_stacks/stoneship.h 2010-12-21 01:09:14 UTC (rev 54982)
@@ -47,6 +47,9 @@
private:
void setupOpcodes();
+ uint16 getVar(uint16 var);
+ void toggleVar(uint16 var);
+ bool setVarValue(uint16 var, uint16 value);
void opcode_200_run();
void opcode_200_disable();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list