diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/mohawk/myst_stacks/myst.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/engines/mohawk/myst_stacks/myst.cpp b/engines/mohawk/myst_stacks/myst.cpp index e72d4e5c59..3ef0a99822 100644 --- a/engines/mohawk/myst_stacks/myst.cpp +++ b/engines/mohawk/myst_stacks/myst.cpp @@ -844,16 +844,19 @@ void Myst::o_fireplaceToggleButton(uint16 var, const ArgumentsArray &args) { uint16 bitmask = args[0]; uint16 line = _fireplaceLines[var - 17]; + // The animations are too slow when playing each animation image at 60fps. + // Only play every second image. + if (line & bitmask) { // Unset button - for (uint i = 4795; i >= 4779; i--) { + for (uint i = 4795; i >= 4779; i -= 2) { _vm->_gfx->copyImageToScreen(i, getInvokingResource<MystArea>()->getRect()); _vm->doFrame(); } _fireplaceLines[var - 17] &= ~bitmask; } else { // Set button - for (uint i = 4779; i <= 4795; i++) { + for (uint i = 4779; i <= 4795; i += 2) { _vm->_gfx->copyImageToScreen(i, getInvokingResource<MystArea>()->getRect()); _vm->doFrame(); } |