[Scummvm-cvs-logs] scummvm master -> 568b860c8a76f397bd09cf64723b2818b4ade2e1

Strangerke Strangerke at scummvm.org
Sat Mar 23 17:00:26 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:
568b860c8a HOPKINS: Some code rework in ScriptManager


Commit: 568b860c8a76f397bd09cf64723b2818b4ade2e1
    https://github.com/scummvm/scummvm/commit/568b860c8a76f397bd09cf64723b2818b4ade2e1
Author: Strangerke (strangerke at scummvm.org)
Date: 2013-03-23T08:59:22-07:00

Commit Message:
HOPKINS: Some code rework in ScriptManager

Changed paths:
    engines/hopkins/script.cpp



diff --git a/engines/hopkins/script.cpp b/engines/hopkins/script.cpp
index ac7182c..56dc5e1 100644
--- a/engines/hopkins/script.cpp
+++ b/engines/hopkins/script.cpp
@@ -689,17 +689,26 @@ int ScriptManager::handleOpcode(byte *dataP) {
 		case 36:
 			if (_vm->_globals->_saveData->_data[svField270] == 2 && _vm->_globals->_saveData->_data[svField94] == 1 && _vm->_globals->_saveData->_data[svField95] == 1)
 				_vm->_globals->_saveData->_data[svField270] = 3;
-			if (!_vm->_globals->_saveData->_data[svField270])
+			
+			switch (_vm->_globals->_saveData->_data[svField270]) {
+			case 0:
 				_vm->_talkManager->startStaticCharacterDialogue("PATRON0.pe2");
-			if (_vm->_globals->_saveData->_data[svField270] == 1)
+				break;
+			case 1:
 				_vm->_talkManager->startStaticCharacterDialogue("PATRON1.pe2");
-			if (_vm->_globals->_saveData->_data[svField270] == 2)
+				break;
+			case 2:
 				_vm->_talkManager->startStaticCharacterDialogue("PATRON2.pe2");
-			if (_vm->_globals->_saveData->_data[svField270] == 3)
+				break;
+			case 3:
 				_vm->_talkManager->startStaticCharacterDialogue("PATRON3.pe2");
-			if (_vm->_globals->_saveData->_data[svField270] > 3) {
-				_vm->_talkManager->startStaticCharacterDialogue("PATRON4.pe2");
-				_vm->_globals->_saveData->_data[svField270] = 5;
+				break;
+			default:
+				if (_vm->_globals->_saveData->_data[svField270] > 3) {
+					_vm->_talkManager->startStaticCharacterDialogue("PATRON4.pe2");
+					_vm->_globals->_saveData->_data[svField270] = 5;
+				}
+				break;
 			}
 			break;
 
@@ -1340,7 +1349,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
 		case 94:
 			if (!_vm->_globals->_saveData->_data[svField228])
 				_vm->_talkManager->startAnimatedCharacterDialogue("flicn.pe2");
-			if (_vm->_globals->_saveData->_data[svField228] == 1)
+			else if (_vm->_globals->_saveData->_data[svField228] == 1)
 				_vm->_talkManager->startAnimatedCharacterDialogue("flicn1.pe2");
 			break;
 
@@ -1413,14 +1422,17 @@ int ScriptManager::handleOpcode(byte *dataP) {
 			_vm->_globals->_oldDirection = DIR_NONE;
 			_vm->_globals->Compteur = 0;
 			_vm->_linesManager->_route = (RouteItem *)g_PTRNUL;
-			if (_vm->_globals->_saveData->_data[svField253] == 1) {
+			switch (_vm->_globals->_saveData->_data[svField253]) {
+			case 1:
 				_vm->_linesManager->_route = _vm->_linesManager->PARCOURS2(_vm->_objectsManager->getSpriteX(0), _vm->_objectsManager->getSpriteY(0), 201, 294);
-			}
-			if (_vm->_globals->_saveData->_data[svField253] == 2) {
+				break;
+			case 2:
 				_vm->_linesManager->_route = _vm->_linesManager->PARCOURS2(_vm->_objectsManager->getSpriteX(0), _vm->_objectsManager->getSpriteY(0), 158, 338);
-			}
-			if (_vm->_globals->_saveData->_data[svField253] > 2) {
-				_vm->_linesManager->_route = _vm->_linesManager->PARCOURS2(_vm->_objectsManager->getSpriteX(0), _vm->_objectsManager->getSpriteY(0), 211, 393);
+				break;
+			default:
+				if (_vm->_globals->_saveData->_data[svField253] > 2)
+					_vm->_linesManager->_route = _vm->_linesManager->PARCOURS2(_vm->_objectsManager->getSpriteX(0), _vm->_objectsManager->getSpriteY(0), 211, 393);
+				break;
 			}
 			_vm->_globals->_checkDistanceFl = true;
 			do {
@@ -2215,18 +2227,26 @@ int ScriptManager::handleOpcode(byte *dataP) {
 					return -1; // Exiting game
 
 				_vm->_eventsManager->refreshScreenAndEvents();
-				if (_vm->_objectsManager->getBobAnimDataIdx(1) == 12 && !soundFlag) {
-					_vm->_soundManager->playSoundFile("SOUND86.WAV");
-					soundFlag = true;
-				}
-				if (_vm->_objectsManager->getBobAnimDataIdx(1) == 13)
+				switch (_vm->_objectsManager->getBobAnimDataIdx(1)) {
+				case 12:
+					if (!soundFlag) {
+						_vm->_soundManager->playSoundFile("SOUND86.WAV");
+						soundFlag = true;
+					}
+					break;
+				case 13:
+				// The original was starting then stopping sound at 25
+				// It looked wrong so the check was set on 26
+				case 26:
 					soundFlag = false;
-				if (_vm->_objectsManager->getBobAnimDataIdx(1) == 25 && !soundFlag) {
-					_vm->_soundManager->playSoundFile("SOUND85.WAV");
-					soundFlag = true;
+					break;
+				case 25:
+					if (!soundFlag) {
+						_vm->_soundManager->playSoundFile("SOUND85.WAV");
+						soundFlag = true;
+					}
+					break;
 				}
-				if (_vm->_objectsManager->getBobAnimDataIdx(1) == 25)
-					soundFlag = false;
 			} while (_vm->_objectsManager->getBobAnimDataIdx(1) != 32);
 			_vm->_objectsManager->stopBobAnimation(1);
 			_vm->_objectsManager->setBobAnimation(2);






More information about the Scummvm-git-logs mailing list