[Scummvm-cvs-logs] scummvm master -> 856b52b8160816d532bce39a620a46371d344eba

m-kiewitz m_kiewitz at users.sourceforge.net
Mon Jun 8 17:59:34 CEST 2015


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:
856b52b816 SHERLOCK: 3DO intro cels added (+scream +note)


Commit: 856b52b8160816d532bce39a620a46371d344eba
    https://github.com/scummvm/scummvm/commit/856b52b8160816d532bce39a620a46371d344eba
Author: Martin Kiewitz (m_kiewitz at users.sourceforge.net)
Date: 2015-06-08T18:00:00+02:00

Commit Message:
SHERLOCK: 3DO intro cels added (+scream +note)

Changed paths:
    engines/sherlock/scalpel/scalpel.cpp



diff --git a/engines/sherlock/scalpel/scalpel.cpp b/engines/sherlock/scalpel/scalpel.cpp
index caa0f70..42cbf70 100644
--- a/engines/sherlock/scalpel/scalpel.cpp
+++ b/engines/sherlock/scalpel/scalpel.cpp
@@ -562,6 +562,8 @@ bool ScalpelEngine::showCityCutscene3DO() {
 		finished = _animation->play3DO("26open2", true, 1, 0, 2);
 
 	if (finished) {
+		_screen->_backBuffer2.blitFrom(*_screen);
+
 		// "Sherlock Holmes" (title)
 		ImageFile3DO titleImage_SherlockHolmesTitle("title1ab.cel");
 
@@ -576,6 +578,29 @@ bool ScalpelEngine::showCityCutscene3DO() {
 			finished = _events->delay(3500, true);
 		}
 		// Title is supposed to get faded away after that
+		if (finished) {
+			// Restore screen
+			_screen->blitFrom(_screen->_backBuffer2);
+		}
+	}
+
+	if (finished)
+		finished = _events->delay(2000);
+
+	if (finished) {
+		// TODO: fade to black
+		_screen->clear();
+	}
+
+	if (finished) {
+		// "In the alley behind the Regency Theatre..."
+		ImageFile3DO titleImage_InTheAlley("title1d.cel");
+
+		_screen->transBlitFromUnscaled3DO(titleImage_InTheAlley[0]._frame, Common::Point(72, 51));
+		// TODO: Supposed to get faded in and out
+		finished = _events->delay(2500, true);
+
+		// Fade out
 	}
 	return finished;
 }
@@ -583,21 +608,74 @@ bool ScalpelEngine::showCityCutscene3DO() {
 bool ScalpelEngine::showAlleyCutscene3DO() {
 	bool finished = _animation->play3DO("27PRO1", true, 1, 3, 2);
 
+	if (finished) {
+		// Fade out...
+		finished = _events->delay(1000, true);
+	}
+
 	if (finished)
 		finished = _animation->play3DO("27PRO2", true, 1, 0, 2);
 
+	if (finished) {
+		// Show screaming victim
+		ImageFile3DO titleImage_ScreamingVictim("scream.cel");
+
+		_screen->transBlitFromUnscaled3DO(titleImage_ScreamingVictim[0]._frame, Common::Point(0, 0));
+
+		// Play "scream.aiff"
+		if (_sound->_voices)
+			_sound->playSound("prologue/sounds/scream.aiff", WAIT_RETURN_IMMEDIATELY, 100);
+
+		finished = _events->delay(6000, true);
+	}
+
+	if (finished) {
+		// TODO: quick fade out
+		_screen->clear();
+
+		finished = _events->delay(2000, true);
+	}
+
 	if (finished)
 		finished = _animation->play3DO("27PRO3", true, 1, 0, 2);
 
+	if (finished) {
+		// Fade to black
+		_screen->clear();
+	}
+
+	if (finished) {
+		// "Early the following morning on Baker Street..."
+		ImageFile3DO titleImage_EarlyTheFollowingMorning("title3.cel");
+
+		_screen->transBlitFromUnscaled3DO(titleImage_EarlyTheFollowingMorning[0]._frame, Common::Point(35, 51));
+		// TODO: Fade in
+
+		finished = _events->delay(3000, true);
+	}
+
 	return finished;
 }
 
 bool ScalpelEngine::showStreetCutscene3DO() {
-	bool finished = _animation->play3DO("14KICK", true, 1, 3, 2);
+	// wait a bit
+	bool finished = _events->delay(500);
+
+	if (finished) {
+		// fade out "Early the following morning..."
+		_screen->clear();
+
+		// wait for music a bit
+		finished = _events->delay(1000, true);
+	}
+
+	finished = _animation->play3DO("14KICK", true, 1, 3, 2);
 
 	if (finished)
 		finished = _animation->play3DO("14NOTE", true, 1, 0, 3);
 
+	// TODO: fade out
+
 	return finished;
 }
 
@@ -607,6 +685,24 @@ bool ScalpelEngine::showOfficeCutscene3DO() {
 	if (finished)
 		finished = _animation->play3DO("COFF2", true, 1, 0, 3);
 
+	if (finished) {
+		// Show the note
+		ImageFile3DO titleImage_CoffeeNote("note.cel");
+
+		_screen->clear();
+		_screen->transBlitFromUnscaled3DO(titleImage_CoffeeNote[0]._frame, Common::Point(0, 0));
+
+		if (_sound->_voices) {
+			finished = _sound->playSound("prologue/sounds/note.aiff", WAIT_KBD_OR_FINISH);
+		} else
+			finished = _events->delay(19000);
+
+		if (finished) {
+			_events->clearEvents();
+			finished = _events->delay(500);
+		}
+	}
+
 	if (finished)
 		finished = _animation->play3DO("COFF3", true, 1, 0, 3);
 






More information about the Scummvm-git-logs mailing list