aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Kasak2009-07-07 21:30:36 +0000
committerDenis Kasak2009-07-07 21:30:36 +0000
commitdd955bb08e57a13476afa4f852a97764fe6ad2a6 (patch)
tree86cc937739bd944743fce33653c6d93ddce82d94
parentbab9293f979f706f9e2334011e4a34cf249ecddb (diff)
downloadscummvm-rg350-dd955bb08e57a13476afa4f852a97764fe6ad2a6.tar.gz
scummvm-rg350-dd955bb08e57a13476afa4f852a97764fe6ad2a6.tar.bz2
scummvm-rg350-dd955bb08e57a13476afa4f852a97764fe6ad2a6.zip
* Made Game::_variables private and, instead, added Game::{get,set}Variable() methods.
* Removed obsolete comment about the cyclic field not being used in Game::loadAnimation() svn-id: r42246
-rw-r--r--engines/draci/game.cpp12
-rw-r--r--engines/draci/game.h5
-rw-r--r--engines/draci/script.cpp4
3 files changed, 16 insertions, 5 deletions
diff --git a/engines/draci/game.cpp b/engines/draci/game.cpp
index ce09ff42a5..cb8385b741 100644
--- a/engines/draci/game.cpp
+++ b/engines/draci/game.cpp
@@ -211,7 +211,9 @@ int Game::loadAnimation(uint animNum, uint z) {
// FIXME: handle these properly
animationReader.readByte(); // Memory logic field, not used
animationReader.readByte(); // Disable erasing field, not used
- bool cyclic = animationReader.readByte(); // Cyclic field, not used
+
+ bool cyclic = animationReader.readByte();
+
animationReader.readByte(); // Relative field, not used
Animation *anim = _vm->_anims->addAnimation(animNum, z, false);
@@ -339,6 +341,14 @@ int Game::getRoomNum() {
return _currentRoom._roomNum;
}
+int Game::getVariable(int numVar) {
+ return _variables[numVar];
+}
+
+void Game::setVariable(int numVar, int value) {
+ _variables[numVar] = value;
+}
+
Game::~Game() {
delete[] _persons;
delete[] _variables;
diff --git a/engines/draci/game.h b/engines/draci/game.h
index 124aa5c769..48f127666d 100644
--- a/engines/draci/game.h
+++ b/engines/draci/game.h
@@ -129,11 +129,12 @@ public:
GameObject *getObject(uint objNum);
- int *_variables;
+ int getVariable(int varNum);
+ void setVariable(int varNum, int value);
private:
DraciEngine *_vm;
-
+ int *_variables;
GameInfo *_info;
Person *_persons;
uint16 *_dialogOffsets;
diff --git a/engines/draci/script.cpp b/engines/draci/script.cpp
index 028d4a0b43..9047d6c8cc 100644
--- a/engines/draci/script.cpp
+++ b/engines/draci/script.cpp
@@ -303,10 +303,10 @@ int Script::handleMathExpression(Common::MemoryReadStream &reader) {
case kMathVariable:
value = reader.readUint16LE();
- stk.push(_vm->_game->_variables[value-1]);
+ stk.push(_vm->_game->getVariable(value-1));
debugC(3, kDraciBytecodeDebugLevel, "\t\tvariable: %d (%d)", value,
- _vm->_game->_variables[value-1]);
+ _vm->_game->getVariable(value-1));
break;
case kMathFunctionCall: