aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mohawk')
-rw-r--r--engines/mohawk/cstime_ui.cpp4
-rw-r--r--engines/mohawk/livingbooks.cpp2
-rw-r--r--engines/mohawk/myst.cpp2
-rw-r--r--engines/mohawk/myst.h2
-rw-r--r--engines/mohawk/myst_stacks/myst.cpp14
-rw-r--r--engines/mohawk/riven.cpp2
-rw-r--r--engines/mohawk/riven.h2
7 files changed, 17 insertions, 11 deletions
diff --git a/engines/mohawk/cstime_ui.cpp b/engines/mohawk/cstime_ui.cpp
index ee08384590..de7d5bde80 100644
--- a/engines/mohawk/cstime_ui.cpp
+++ b/engines/mohawk/cstime_ui.cpp
@@ -643,7 +643,7 @@ void CSTimeInterface::startDragging(uint16 id) {
_vm->getView()->dragFeature((NewFeature *)invObj->feature, _grabPoint, 4, dragFlags, NULL);
if (_vm->getCase()->getId() == 1 && id == 2) {
- // Hardcoded behaviour for the torch in the first case.
+ // Hardcoded behavior for the torch in the first case.
if (_vm->getCase()->getCurrScene()->getId() == 4) {
// This is the dark tomb.
// FIXME: apply torch hack
@@ -810,7 +810,7 @@ void CSTimeInterface::stopDragging() {
}
if (_vm->getCase()->getId() == 1 && _vm->getCase()->getCurrScene()->getId() == 4) {
- // Hardcoded behaviour for torches in the dark tomb, in the first case.
+ // Hardcoded behavior for torches in the dark tomb, in the first case.
if (_draggedItem == 1 && foundInvObjHotspot == 0xffff) {
// Trying to drag an unlit torch around?
_vm->addEvent(CSTimeEvent(kCSTimeEventCharStartFlapping, 0, 16352));
diff --git a/engines/mohawk/livingbooks.cpp b/engines/mohawk/livingbooks.cpp
index a4e7f0349c..375806cda4 100644
--- a/engines/mohawk/livingbooks.cpp
+++ b/engines/mohawk/livingbooks.cpp
@@ -3781,7 +3781,7 @@ void LBProxyItem::init() {
Common::String filename = _vm->getFileNameFromConfig("Proxies", _desc.c_str(), leftover);
if (!leftover.empty())
error("LBProxyItem tried loading proxy '%s' but got leftover '%s'", _desc.c_str(), leftover.c_str());
- uint16 baseId;
+ uint16 baseId = 0;
for (uint i = 0; i < filename.size(); i++) {
if (filename[i] == ';') {
baseId = atoi(filename.c_str() + i + 1);
diff --git a/engines/mohawk/myst.cpp b/engines/mohawk/myst.cpp
index 4f9c3a893e..b60f8bd1ee 100644
--- a/engines/mohawk/myst.cpp
+++ b/engines/mohawk/myst.cpp
@@ -1168,7 +1168,7 @@ Common::Error MohawkEngine_Myst::loadGameState(int slot) {
return Common::kUnknownError;
}
-Common::Error MohawkEngine_Myst::saveGameState(int slot, const char *desc) {
+Common::Error MohawkEngine_Myst::saveGameState(int slot, const Common::String &desc) {
Common::StringArray saveList = _gameState->generateSaveGameList();
if ((uint)slot < saveList.size())
diff --git a/engines/mohawk/myst.h b/engines/mohawk/myst.h
index 5edf774ed0..ebcc3b445c 100644
--- a/engines/mohawk/myst.h
+++ b/engines/mohawk/myst.h
@@ -193,7 +193,7 @@ public:
bool canLoadGameStateCurrently();
bool canSaveGameStateCurrently();
Common::Error loadGameState(int slot);
- Common::Error saveGameState(int slot, const char *desc);
+ Common::Error saveGameState(int slot, const Common::String &desc);
bool hasFeature(EngineFeature f) const;
private:
diff --git a/engines/mohawk/myst_stacks/myst.cpp b/engines/mohawk/myst_stacks/myst.cpp
index f77ae753d9..70abf0ccd3 100644
--- a/engines/mohawk/myst_stacks/myst.cpp
+++ b/engines/mohawk/myst_stacks/myst.cpp
@@ -2839,11 +2839,17 @@ void Myst::clockGearForwardOneStep(uint16 gear) {
}
void Myst::clockWeightDownOneStep() {
+ // The Myst ME version of this video is encoded faster than the original
+ // The weight goes on the floor one step too early. Original ME engine also has this behavior.
+ bool updateVideo = !(_vm->getFeatures() & GF_ME) || _clockWeightPosition < (2214 - 246);
+
// Set video bounds
- _clockWeightVideo = _vm->_video->playMovie(_vm->wrapMovieFilename("cl1wlfch", kMystStack) , 124, 0);
- _vm->_video->setVideoBounds(_clockWeightVideo,
- Audio::Timestamp(0, _clockWeightPosition, 600),
- Audio::Timestamp(0, _clockWeightPosition + 246, 600));
+ if (updateVideo) {
+ _clockWeightVideo = _vm->_video->playMovie(_vm->wrapMovieFilename("cl1wlfch", kMystStack) , 124, 0);
+ _vm->_video->setVideoBounds(_clockWeightVideo,
+ Audio::Timestamp(0, _clockWeightPosition, 600),
+ Audio::Timestamp(0, _clockWeightPosition + 246, 600));
+ }
// Increment value by one step
_clockWeightPosition += 246;
diff --git a/engines/mohawk/riven.cpp b/engines/mohawk/riven.cpp
index f407e650f6..57a0ac717d 100644
--- a/engines/mohawk/riven.cpp
+++ b/engines/mohawk/riven.cpp
@@ -727,7 +727,7 @@ Common::Error MohawkEngine_Riven::loadGameState(int slot) {
return _saveLoad->loadGame(_saveLoad->generateSaveGameList()[slot]) ? Common::kNoError : Common::kUnknownError;
}
-Common::Error MohawkEngine_Riven::saveGameState(int slot, const char *desc) {
+Common::Error MohawkEngine_Riven::saveGameState(int slot, const Common::String &desc) {
Common::StringArray saveList = _saveLoad->generateSaveGameList();
if ((uint)slot < saveList.size())
diff --git a/engines/mohawk/riven.h b/engines/mohawk/riven.h
index e01e03895c..c80f497e37 100644
--- a/engines/mohawk/riven.h
+++ b/engines/mohawk/riven.h
@@ -126,7 +126,7 @@ public:
bool canLoadGameStateCurrently() { return true; }
bool canSaveGameStateCurrently() { return true; }
Common::Error loadGameState(int slot);
- Common::Error saveGameState(int slot, const char *desc);
+ Common::Error saveGameState(int slot, const Common::String &desc);
bool hasFeature(EngineFeature f) const;
typedef void (*TimerProc)(MohawkEngine_Riven *vm);