[Scummvm-git-logs] scummvm master -> c8a76a492a0002d34cb1cc52f47a2b8ac0634a0c

bluegr noreply at scummvm.org
Wed Jun 15 05:07:15 UTC 2022


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
c8a76a492a SCUMM: Make Loom intro fire animation run at constant speed


Commit: c8a76a492a0002d34cb1cc52f47a2b8ac0634a0c
    https://github.com/scummvm/scummvm/commit/c8a76a492a0002d34cb1cc52f47a2b8ac0634a0c
Author: Torbjörn Andersson (eriktorbjorn at users.sourceforge.net)
Date: 2022-06-15T08:07:12+03:00

Commit Message:
SCUMM: Make Loom intro fire animation run at constant speed

The fire animation is sped up along with the rest of the game while the
messenger nymph is flying. Slow it down to make it appear to run at
constant speed throughout the intro. This does not apply to the VGA
talkie version, because there the fire isn't animated.

Changed paths:
    engines/scumm/script.cpp


diff --git a/engines/scumm/script.cpp b/engines/scumm/script.cpp
index dcf3af99c90..0b4ec9342cc 100644
--- a/engines/scumm/script.cpp
+++ b/engines/scumm/script.cpp
@@ -671,6 +671,19 @@ void ScummEngine::writeVar(uint var, int value) {
 				value = 3;
 		}
 
+		// WORKAROUND: When the Loom messenger nymph flies to wake up
+		// Bobbin, the whole game is sped up. Slow down the fire
+		// animation so that it appears to run at constant speed
+		// throughout the intro. This does not apply to the VGA talkie
+		// version, because there the fire isn't animated.
+
+		else if (_game.id == GID_LOOM && _game.version < 4 && vm.slot[_currentScript].number == 44 && var == VAR_TIMER_NEXT && _enableEnhancements) {
+			Actor *a = derefActorSafe(4, "writeVar");
+			if (a) {
+				a->setAnimSpeed((value == 0) ? 6 : 0);
+			}
+		}
+
 		_scummVars[var] = value;
 
 		// Unlike the PC version, the Macintosh version of Loom appears




More information about the Scummvm-git-logs mailing list