diff options
Diffstat (limited to 'engines/gob')
| -rw-r--r-- | engines/gob/pregob/onceupon/abracadabra.cpp | 14 | ||||
| -rw-r--r-- | engines/gob/pregob/onceupon/babayaga.cpp | 14 | ||||
| -rw-r--r-- | engines/gob/pregob/onceupon/onceupon.cpp | 27 | ||||
| -rw-r--r-- | engines/gob/pregob/onceupon/onceupon.h | 1 | 
4 files changed, 56 insertions, 0 deletions
diff --git a/engines/gob/pregob/onceupon/abracadabra.cpp b/engines/gob/pregob/onceupon/abracadabra.cpp index abf9fdce61..5c1bd0149b 100644 --- a/engines/gob/pregob/onceupon/abracadabra.cpp +++ b/engines/gob/pregob/onceupon/abracadabra.cpp @@ -57,19 +57,33 @@ Abracadabra::~Abracadabra() {  void Abracadabra::run() {  	init(); +	// Copy protection  	bool correctCP = doCopyProtection(kCopyProtectionColors, kCopyProtectionShapes, kCopyProtectionObfuscate);  	if (_vm->shouldQuit() || !correctCP)  		return; +	// "Loading"  	showWait();  	if (_vm->shouldQuit())  		return; +	// Quote about fairy tales  	showQuote();  	if (_vm->shouldQuit())  		return; +	// Once Upon A Time title  	showTitle(); +	if (_vm->shouldQuit()) +		return; + +	// Game title screen +	showChapter(0); +	if (_vm->shouldQuit()) +		return; + +	// "Loading" +	showWait();  }  } // End of namespace OnceUpon diff --git a/engines/gob/pregob/onceupon/babayaga.cpp b/engines/gob/pregob/onceupon/babayaga.cpp index 9bca0e27d0..608d85e977 100644 --- a/engines/gob/pregob/onceupon/babayaga.cpp +++ b/engines/gob/pregob/onceupon/babayaga.cpp @@ -57,19 +57,33 @@ BabaYaga::~BabaYaga() {  void BabaYaga::run() {  	init(); +	// Copy protection  	bool correctCP = doCopyProtection(kCopyProtectionColors, kCopyProtectionShapes, kCopyProtectionObfuscate);  	if (_vm->shouldQuit() || !correctCP)  		return; +	// "Loading"  	showWait();  	if (_vm->shouldQuit())  		return; +	// Quote about fairy tales  	showQuote();  	if (_vm->shouldQuit())  		return; +	// Once Upon A Time title  	showTitle(); +	if (_vm->shouldQuit()) +		return; + +	// Game title screen +	showChapter(0); +	if (_vm->shouldQuit()) +		return; + +	// "Loading" +	showWait();  }  } // End of namespace OnceUpon diff --git a/engines/gob/pregob/onceupon/onceupon.cpp b/engines/gob/pregob/onceupon/onceupon.cpp index 73322658de..6d185d007d 100644 --- a/engines/gob/pregob/onceupon/onceupon.cpp +++ b/engines/gob/pregob/onceupon/onceupon.cpp @@ -613,6 +613,33 @@ void OnceUpon::stopTitleMusic() {  		_vm->_sound->sampleFree(_vm->_sound->sampleGetBySlot(i));  } +void OnceUpon::showChapter(int chapter) { +	// Display the intro text to a chapter + +	fadeOut(); +	clearScreen(); +	setGamePalette(11); + +	// Parchment background +	_vm->_video->drawPackedSprite("parch.cmp", *_vm->_draw->_backSurface); + +	static const Font *fonts[3] = { _plettre, _glettre, _plettre }; + +	const Common::String chapterFile = getLocFile(Common::String::format("gene%d.tx", chapter)); + +	TXTFile *gameTitle = loadTXT(chapterFile, TXTFile::kFormatStringPositionColorFont); +	gameTitle->draw(*_vm->_draw->_backSurface, fonts, ARRAYSIZE(fonts)); +	delete gameTitle; + +	_vm->_draw->forceBlit(); + +	fadeIn(); + +	waitInput(); + +	fadeOut(); +} +  } // End of namespace OnceUpon  } // End of namespace Gob diff --git a/engines/gob/pregob/onceupon/onceupon.h b/engines/gob/pregob/onceupon/onceupon.h index 97f7e6b77e..96f88cbb5f 100644 --- a/engines/gob/pregob/onceupon/onceupon.h +++ b/engines/gob/pregob/onceupon/onceupon.h @@ -52,6 +52,7 @@ protected:  	void showWait();  	void showQuote();  	void showTitle(); +	void showChapter(int chapter);  	Font *_jeudak;  | 
