diff options
| author | Torbjörn Andersson | 2015-06-14 22:51:39 +0200 | 
|---|---|---|
| committer | Torbjörn Andersson | 2015-06-14 22:52:41 +0200 | 
| commit | 8ed2e75256a3bdf1b11a3d6296da3f1346a689a9 (patch) | |
| tree | 7e65b6ea4f5baf87c15a22442b37ad4bd2bd01b1 | |
| parent | d63b1444f28f87e2fc611075570d7f4a7a6a0e07 (diff) | |
| download | scummvm-rg350-8ed2e75256a3bdf1b11a3d6296da3f1346a689a9.tar.gz scummvm-rg350-8ed2e75256a3bdf1b11a3d6296da3f1346a689a9.tar.bz2 scummvm-rg350-8ed2e75256a3bdf1b11a3d6296da3f1346a689a9.zip | |
SHERLOCK: Roll credits for 3DO Serrated Scalpel
There's a missing "brighten the image" effect, and the speed of
the scrolling text may need some tuning. But it's a start.
| -rw-r--r-- | engines/sherlock/scalpel/scalpel.cpp | 23 | 
1 files changed, 23 insertions, 0 deletions
| diff --git a/engines/sherlock/scalpel/scalpel.cpp b/engines/sherlock/scalpel/scalpel.cpp index 130d1b3125..5268f7d2f8 100644 --- a/engines/sherlock/scalpel/scalpel.cpp +++ b/engines/sherlock/scalpel/scalpel.cpp @@ -775,6 +775,29 @@ bool ScalpelEngine::showOfficeCutscene3DO() {  	if (finished)  		finished = _animation->play3DO("COFF4", true, 1, false, 3); +	if (finished) { +		finished = _music->waitUntilMSec(244500, 0, 0, 500); + +		// TODO: Brighten the image, possibly by doing a partial fade +		// to white. + +		_screen->_backBuffer1.blitFrom(*_screen); + +		for (int nr = 1; finished && nr <= 4; nr++) { +			char filename[15]; +			sprintf(filename, "credits%d.cel", nr); +			ImageFile3DO *creditsImage = new ImageFile3DO(filename, kImageFile3DOType_Cel); +			ImageFrame *creditsFrame = &(*creditsImage)[0]; +			for (int i = 0; finished && i < 200 + creditsFrame->_height; i++) { +				_screen->blitFrom(_screen->_backBuffer1); +				_screen->transBlitFrom(creditsFrame->_frame, Common::Point((320 - creditsFrame->_width) / 2, 200 - i)); +				if (!_events->delay(80, true)) +					finished = false; +			} +			delete creditsImage; +		} +	} +  	return finished;  } | 
