[Scummvm-cvs-logs] scummvm master -> 63b669cfc4ec0cae7be83949f98ee3fd48607f90

dreammaster dreammaster at scummvm.org
Mon Mar 25 14:19:04 CET 2013


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:
63b669cfc4 HOPKINS: Fix for not being able to quit during underater base entrance cutscene


Commit: 63b669cfc4ec0cae7be83949f98ee3fd48607f90
    https://github.com/scummvm/scummvm/commit/63b669cfc4ec0cae7be83949f98ee3fd48607f90
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2013-03-25T06:18:13-07:00

Commit Message:
HOPKINS: Fix for not being able to quit during underater base entrance cutscene

Changed paths:
    engines/hopkins/events.cpp
    engines/hopkins/hopkins.cpp



diff --git a/engines/hopkins/events.cpp b/engines/hopkins/events.cpp
index 1f42bf1..a73ce41 100644
--- a/engines/hopkins/events.cpp
+++ b/engines/hopkins/events.cpp
@@ -420,11 +420,11 @@ void EventsManager::refreshScreenAndEvents() {
 	bool externalLoopFl = false;
 	do {
 		while (!_vm->shouldQuit()) {
-			checkForNextFrameCounter();
+			pollEvents();
 			bool innerLoopFl = false;
 
-			while (_breakoutFl || _vm->_globals->iRegul != 1) {
-				checkForNextFrameCounter();
+			while (!_vm->shouldQuit() && (_breakoutFl || _vm->_globals->iRegul != 1)) {
+				pollEvents();
 
 				if (!_breakoutFl) {
 					innerLoopFl = true;
diff --git a/engines/hopkins/hopkins.cpp b/engines/hopkins/hopkins.cpp
index a355226..4051e5a 100644
--- a/engines/hopkins/hopkins.cpp
+++ b/engines/hopkins/hopkins.cpp
@@ -2039,7 +2039,7 @@ void HopkinsEngine::playUnderwaterBaseCutscene() {
 	_graphicsManager->displayAllBob();
 	_objectsManager->loadLinkFile("IM92");
 
-	for (int cpt = 0; cpt <= 4; cpt++)
+	for (int cpt = 0; cpt <= 4 && !shouldQuit(); cpt++) 
 		_eventsManager->refreshScreenAndEvents();
 
 	_graphicsManager->fadeInLong();
@@ -2047,14 +2047,16 @@ void HopkinsEngine::playUnderwaterBaseCutscene() {
 
 	do
 		_eventsManager->refreshScreenAndEvents();
-	while (_objectsManager->getBobAnimDataIdx(8) != 22);
+	while (!shouldQuit() && _objectsManager->getBobAnimDataIdx(8) != 22);
 
-	_graphicsManager->fadeOutLong();
-	_graphicsManager->endDisplayBob();
-	_objectsManager->resetHidingItems();
-	_globals->_disableInventFl = false;
-	_globals->_exitId = 93;
-	_globals->iRegul = 0;
+	if (!shouldQuit()) {
+		_graphicsManager->fadeOutLong();
+		_graphicsManager->endDisplayBob();
+		_objectsManager->resetHidingItems();
+		_globals->_disableInventFl = false;
+		_globals->_exitId = 93;
+		_globals->iRegul = 0;
+	}
 }
 
 void HopkinsEngine::playEnding() {






More information about the Scummvm-git-logs mailing list