[Scummvm-cvs-logs] scummvm master -> 5e099e90bcdfb87c289b919ddac60e60fbf6bdd7

urukgit urukgit at users.noreply.github.com
Sat Sep 6 22:53:17 CEST 2014


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:
5e099e90bc CGE2: Make the intro skippable.


Commit: 5e099e90bcdfb87c289b919ddac60e60fbf6bdd7
    https://github.com/scummvm/scummvm/commit/5e099e90bcdfb87c289b919ddac60e60fbf6bdd7
Author: Peter Bozsó (koppirnyo at gmail.com)
Date: 2014-09-06T22:52:24+02:00

Commit Message:
CGE2: Make the intro skippable.

Changed paths:
    engines/cge2/cge2.cpp
    engines/cge2/cge2.h
    engines/cge2/cge2_main.cpp
    engines/cge2/events.cpp



diff --git a/engines/cge2/cge2.cpp b/engines/cge2/cge2.cpp
index 8b51dda..8e70f0e 100644
--- a/engines/cge2/cge2.cpp
+++ b/engines/cge2/cge2.cpp
@@ -76,6 +76,7 @@ CGE2Engine::CGE2Engine(OSystem *syst, const ADGameDescription *gameDescription)
 		_vol[i] = nullptr;
 	_eventManager = nullptr;
 	_map = nullptr;
+	_skipIntro = false;
 	_quitFlag = false;
 	_bitmapPalette = nullptr;
 	_startupMode = 1;
diff --git a/engines/cge2/cge2.h b/engines/cge2/cge2.h
index 8e94683..79cb206 100644
--- a/engines/cge2/cge2.h
+++ b/engines/cge2/cge2.h
@@ -280,6 +280,7 @@ public:
 
 	Common::RandomSource _randomSource;
 
+	bool _skipIntro;
 	bool _quitFlag;
 	Dac *_bitmapPalette;
 	int _startupMode;
diff --git a/engines/cge2/cge2_main.cpp b/engines/cge2/cge2_main.cpp
index c52a354..3a994dd 100644
--- a/engines/cge2/cge2_main.cpp
+++ b/engines/cge2/cge2_main.cpp
@@ -396,7 +396,7 @@ void CGE2Engine::movie(const char *ext) {
 		sceneUp(_now);
 		_keyboard->setClient(_sys);
 
-		while (!_commandHandler->idle() && !_quitFlag)
+		while (!_commandHandler->idle() && !_quitFlag && !_skipIntro)
 			mainLoop();
 
 		_keyboard->setClient(nullptr);
@@ -532,11 +532,11 @@ void CGE2Engine::mainLoop() {
 	// Handle a delay between game frames
 	handleFrame();
 
-	// Handle any pending events
-	_eventManager->poll();
-
 	// Check shouldQuit()
 	_quitFlag = shouldQuit();
+
+	// Handle any pending events
+	_eventManager->poll();
 }
 
 void CGE2Engine::checkSounds() {
diff --git a/engines/cge2/events.cpp b/engines/cge2/events.cpp
index ed1ec66..13f6b4d 100644
--- a/engines/cge2/events.cpp
+++ b/engines/cge2/events.cpp
@@ -219,6 +219,8 @@ void EventManager::poll() {
 		switch (_event.type) {
 		case Common::EVENT_KEYDOWN:
 		case Common::EVENT_KEYUP:
+			if (_vm->_startupMode == 1)
+				_vm->_skipIntro = true; // So the player can interrupt the intro.
 			// Handle keyboard events
 			_vm->_keyboard->newKeyboard(_event);
 			handleEvents();






More information about the Scummvm-git-logs mailing list