[Scummvm-git-logs] scummvm master -> 9ec9b287a6d66c2a815387ad83c1f32b5be6c685

bluegr bluegr at gmail.com
Fri Jun 11 23:29:28 UTC 2021


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:
9ec9b287a6 TRECISION: Fix alt room initialization


Commit: 9ec9b287a6d66c2a815387ad83c1f32b5be6c685
    https://github.com/scummvm/scummvm/commit/9ec9b287a6d66c2a815387ad83c1f32b5be6c685
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2021-06-12T02:29:17+03:00

Commit Message:
TRECISION: Fix alt room initialization

A regression from 9052efb49710a41649c17d9f9dee0beac3dc7d10, which ended
up initializing the rooms all the time

Changed paths:
    engines/trecision/logic.cpp


diff --git a/engines/trecision/logic.cpp b/engines/trecision/logic.cpp
index 64560231a7..321209e3e4 100644
--- a/engines/trecision/logic.cpp
+++ b/engines/trecision/logic.cpp
@@ -3911,13 +3911,45 @@ void LogicManager::doSystemChangeRoom(uint16 room) {
 	_vm->_graphicsMgr->showCursor();
 
 	if (_vm->_curRoom == kRoom21) {
-		_vm->_logicMgr->setupAltRoom(kRoom21, _vm->_oldRoom == kRoom23A || _vm->_oldRoom == kRoom23B);
+		switch (_vm->_oldRoom) {
+		case kRoom22:
+			_vm->_logicMgr->setupAltRoom(kRoom21, false);
+			break;
+		case kRoom23A:
+		case kRoom23B:
+			_vm->_logicMgr->setupAltRoom(kRoom21, true);
+			break;
+		}
 	} else if (_vm->_curRoom == kRoom24) {
-		_vm->_logicMgr->setupAltRoom(kRoom24, _vm->_oldRoom == kRoom26);
+		switch (_vm->_oldRoom) {
+		case kRoom23A:
+		case kRoom23B:
+			_vm->_logicMgr->setupAltRoom(kRoom24, false);
+			break;
+		case kRoom26:
+			_vm->_logicMgr->setupAltRoom(kRoom24, true);
+			break;
+		}
 	} else if (_vm->_curRoom == kRoom2A) {
-		_vm->_logicMgr->setupAltRoom(kRoom2A, _vm->_oldRoom == kRoom25);
+		switch (_vm->_oldRoom) {
+		case kRoom25:
+			_vm->_logicMgr->setupAltRoom(kRoom2A, true);
+			break;
+		case kRoom2B:
+		case kRoom29:
+		case kRoom29L:
+			_vm->_logicMgr->setupAltRoom(kRoom2A, false);
+			break;
+		}
 	} else if (_vm->_curRoom == kRoom2B) {
-		_vm->_logicMgr->setupAltRoom(kRoom2B, _vm->_oldRoom == kRoom28);
+		switch (_vm->_oldRoom) {
+		case kRoom28:
+			_vm->_logicMgr->setupAltRoom(kRoom2B, true);
+			break;
+		case kRoom2A:
+			_vm->_logicMgr->setupAltRoom(kRoom2B, false);
+			break;
+		}
 	} else if (_vm->_room[_vm->_curRoom].hasExtra()) {
 		// for save/load
 		switch (_vm->_curRoom) {




More information about the Scummvm-git-logs mailing list