[Scummvm-git-logs] scummvm master -> 890f9852eaa13393083739b3869bb974b1360fd7

bluegr noreply at scummvm.org
Sun Jun 12 21:42:37 UTC 2022


This automated email contains information about 5 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
79bc9abd2a CHEWY: Properly restore the mouse cursor when selecting an action
becbe8ad0f CHEWY: Remove unused menu flag
626b63a4d2 CHEWY: Properly play music during the title sequence
7655cea371 CHEWY: Play action dialogs when subtitles are disabled
890f9852ea CHEWY: Fixes for speech only mode


Commit: 79bc9abd2a39cad8aeaf35b53b363ce3a7f240c3
    https://github.com/scummvm/scummvm/commit/79bc9abd2a39cad8aeaf35b53b363ce3a7f240c3
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2022-06-13T00:42:14+03:00

Commit Message:
CHEWY: Properly restore the mouse cursor when selecting an action

A regression from c0fbc05b2af41c7c6490b3ad034e8b4971c4a8a7

Changed paths:
    engines/chewy/main.cpp


diff --git a/engines/chewy/main.cpp b/engines/chewy/main.cpp
index fa43ccd8274..82481a67c71 100644
--- a/engines/chewy/main.cpp
+++ b/engines/chewy/main.cpp
@@ -365,6 +365,7 @@ bool mainLoop(int16 mode) {
 			default:
 				if (_G(menu_display) != 0) {
 					menuExit();
+					_G(cur)->show_cur();
 					_G(menu_flag) = MENU_HIDE;
 					_G(menu_display) = 0;
 					_G(cur_display) = true;


Commit: becbe8ad0f69daf0958ac41a7ca0cda3b0a09111
    https://github.com/scummvm/scummvm/commit/becbe8ad0f69daf0958ac41a7ca0cda3b0a09111
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2022-06-13T00:42:14+03:00

Commit Message:
CHEWY: Remove unused menu flag

Changed paths:
    engines/chewy/dialogs/main_menu.cpp
    engines/chewy/globals.h
    engines/chewy/main.cpp


diff --git a/engines/chewy/dialogs/main_menu.cpp b/engines/chewy/dialogs/main_menu.cpp
index 8dd26270a17..8f983e3f431 100644
--- a/engines/chewy/dialogs/main_menu.cpp
+++ b/engines/chewy/dialogs/main_menu.cpp
@@ -162,7 +162,6 @@ void MainMenu::animate() {
 	calcMouseText(g_events->_mousePos.x, g_events->_mousePos.y, 1);
 	_G(cur)->plot_cur();
 	_G(mouseLeftClick) = false;
-	_G(menu_flag) = 0;
 	_G(out)->setPointer(nullptr);
 	_G(out)->copyToScreen();
 
diff --git a/engines/chewy/globals.h b/engines/chewy/globals.h
index 2c53c2d901e..260b36e1aac 100644
--- a/engines/chewy/globals.h
+++ b/engines/chewy/globals.h
@@ -227,7 +227,6 @@ public:
 	};
 
 	// main.cpp
-	int16 _menu_flag = 0;
 	bool _inv_disp_ok = 0;
 	int16 _txt_aus_click = 0;
 	int16 _txt_nummer = 0;
diff --git a/engines/chewy/main.cpp b/engines/chewy/main.cpp
index 82481a67c71..0d20cff0551 100644
--- a/engines/chewy/main.cpp
+++ b/engines/chewy/main.cpp
@@ -249,7 +249,6 @@ bool mainLoop(int16 mode) {
 			_G(cur)->show_cur();
 			Dialogs::Inventory::menu();
 			menuExit();
-			_G(menu_flag) = MENU_HIDE;
 			_G(menu_display) = 0;
 			_G(cur_display) = true;
 			if (_G(gameState).AkInvent == -1) {
@@ -317,7 +316,6 @@ bool mainLoop(int16 mode) {
 				_G(cur)->show_cur();
 				Dialogs::Inventory::menu();
 				menuExit();
-				_G(menu_flag) = MENU_HIDE;
 				_G(menu_display) = 0;
 				_G(cur_display) = true;
 				if (_G(gameState).AkInvent == -1) {
@@ -366,7 +364,6 @@ bool mainLoop(int16 mode) {
 				if (_G(menu_display) != 0) {
 					menuExit();
 					_G(cur)->show_cur();
-					_G(menu_flag) = MENU_HIDE;
 					_G(menu_display) = 0;
 					_G(cur_display) = true;
 					_G(cur)->move(_G(maus_old_x), _G(maus_old_y));
@@ -405,7 +402,6 @@ bool mainLoop(int16 mode) {
 
 		if (_G(menu_display) == MENU_HIDE) {
 			menuExit();
-			_G(menu_flag) = MENU_HIDE;
 			_G(menu_display) = 0;
 			_G(cur_display) = true;
 			_G(cur)->move(_G(maus_old_x), _G(maus_old_y));
@@ -577,7 +573,6 @@ void setupScreen(SetupScreenMode mode) {
 	_G(atds)->print_ats(_G(spieler_vector)[P_CHEWY].Xypos[0] + CH_HOT_X,
 	                _G(spieler_vector)[P_CHEWY].Xypos[1], _G(gameState).scrollx, _G(gameState).scrolly);
 	_G(mouseLeftClick) = false;
-	_G(menu_flag) = false;
 	if (mode == DO_SETUP) {
 		_G(out)->setPointer(nullptr);
 		switch (_G(fx_blend)) {
@@ -1579,7 +1574,6 @@ void get_user_key(int16 mode) {
 			_G(tmp_menu_item) = _G(menu_item);
 			_G(menu_item) = CUR_USE;
 			Dialogs::Inventory::menu();
-			_G(menu_flag) = MENU_HIDE;
 			_G(menu_display) = 0;
 			_G(cur_display) = true;
 			if (_G(gameState).AkInvent == -1) {


Commit: 626b63a4d201024f66b43c8b52100938b0cc8b1e
    https://github.com/scummvm/scummvm/commit/626b63a4d201024f66b43c8b52100938b0cc8b1e
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2022-06-13T00:42:15+03:00

Commit Message:
CHEWY: Properly play music during the title sequence

Changed paths:
    engines/chewy/r_event.cpp


diff --git a/engines/chewy/r_event.cpp b/engines/chewy/r_event.cpp
index d92f77ec5ea..a1d31eaa03b 100644
--- a/engines/chewy/r_event.cpp
+++ b/engines/chewy/r_event.cpp
@@ -776,6 +776,11 @@ void flic_cut(int16 nr) {
 		playIntroSequence();
 		break;
 
+	case FCUT_155:
+	case FCUT_160:
+		g_engine->_video->playVideo(nr, false);
+		break;
+
 	default:
 		g_engine->_video->playVideo(nr);
 		break;


Commit: 7655cea37193892e5f9577491b5741474530ddba
    https://github.com/scummvm/scummvm/commit/7655cea37193892e5f9577491b5741474530ddba
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2022-06-13T00:42:15+03:00

Commit Message:
CHEWY: Play action dialogs when subtitles are disabled

We're still missing the screen update, so Chewy is not animating yet

Changed paths:
    engines/chewy/sprite.cpp


diff --git a/engines/chewy/sprite.cpp b/engines/chewy/sprite.cpp
index cb2cedfa38b..47e84a514da 100644
--- a/engines/chewy/sprite.cpp
+++ b/engines/chewy/sprite.cpp
@@ -497,15 +497,15 @@ bool startAtsWait(int16 txtNr, int16 txtMode, int16 col, int16 mode) {
 			if (_G(menu_item) != CUR_WALK)
 				atdsStringStart(30000, 0, 0, AAD_STR_START);
 
-			int16 VocNr;
-			shown = _G(atds)->start_ats(txtNr, txtMode, col, mode, &VocNr);
+			int16 vocNr;
+			shown = _G(atds)->start_ats(txtNr, txtMode, col, mode, &vocNr);
 
-			if (shown && g_engine->_sound->speechEnabled())  {
+			if (g_engine->_sound->speechEnabled())  {
 				const int16 vocx = _G(spieler_vector)[P_CHEWY].Xypos[0] - _G(gameState).scrollx + _G(spieler_mi)[P_CHEWY].HotX;
 
 				g_engine->_sound->setSoundChannelBalance(0, _G(atds)->getStereoPos(vocx));
-				if (VocNr >= 0) {
-					g_engine->_sound->playSpeech(VocNr, !g_engine->_sound->subtitlesEnabled());
+				if (vocNr >= 0) {
+					g_engine->_sound->playSpeech(vocNr, false);
 				}
 
 				setupScreen(DO_SETUP);


Commit: 890f9852eaa13393083739b3869bb974b1360fd7
    https://github.com/scummvm/scummvm/commit/890f9852eaa13393083739b3869bb974b1360fd7
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2022-06-13T00:42:15+03:00

Commit Message:
CHEWY: Fixes for speech only mode

Changed paths:
    engines/chewy/atds.cpp


diff --git a/engines/chewy/atds.cpp b/engines/chewy/atds.cpp
index 157ce75c4c7..8a1162d92ad 100644
--- a/engines/chewy/atds.cpp
+++ b/engines/chewy/atds.cpp
@@ -420,10 +420,6 @@ bool Atdsys::start_ats(int16 txtNr, int16 txtMode, int16 color, int16 mode, int1
 		_atsv._color = color;
 		_printDelayCount1 = _atsv._delayCount / 10;
 		_mousePush = true;
-
-		if (*vocNr == -1) {
-			_atsv.shown = g_engine->_sound->subtitlesEnabled();
-		}
 	}
 
 	return _atsv.shown;
@@ -647,10 +643,10 @@ void Atdsys::print_aad(int16 scrX, int16 scrY) {
 			SplitStringRet splitString;
 			split_string(&tmp_ssi, &splitString);
 
-			if (g_engine->_sound->subtitlesEnabled() ||
-			        (_aadv._strHeader->_vocNr - ATDS_VOC_OFFSET) == -1) {
-				const int16 h = _G(fontMgr)->getFont()->getDataHeight();
-				for (int16 i = 0; i < splitString._nr; i++) {
+			const int16 h = _G(fontMgr)->getFont()->getDataHeight();
+			for (int16 i = 0; i < splitString._nr; i++) {
+				if (g_engine->_sound->subtitlesEnabled() ||
+					_aadv._strHeader->_vocNr - ATDS_VOC_OFFSET == -1) {
 					_G(out)->printxy(splitString._x[i] + 1,
 									 splitString._y + (i * h),
 									 0, 300, 0, splitString._strPtr[i]);
@@ -665,38 +661,26 @@ void Atdsys::print_aad(int16 scrX, int16 scrY) {
 									 0, 300, 0, splitString._strPtr[i]);
 					_G(out)->printxy(splitString._x[i],
 									 splitString._y + (i * h),
-					              _aadv._person[personId]._color,
+									 _aadv._person[personId]._color,
 									 300, 0, splitString._strPtr[i]);
-					tmp_ptr += strlen(splitString._strPtr[i]) + 1;
 				}
-				str_null2leer(start_ptr, start_ptr + txt_len - 1);
-
+				tmp_ptr += strlen(splitString._strPtr[i]) + 1;
 			}
+			str_null2leer(start_ptr, start_ptr + txt_len - 1);
 
 			if (g_engine->_sound->speechEnabled() &&
-					(_aadv._strHeader->_vocNr - ATDS_VOC_OFFSET) != -1) {
+					_aadv._strHeader->_vocNr - ATDS_VOC_OFFSET != -1) {
 				if (_atdsv._vocNr != _aadv._strHeader->_vocNr - ATDS_VOC_OFFSET) {
 					_atdsv._vocNr = _aadv._strHeader->_vocNr - ATDS_VOC_OFFSET;
-					g_engine->_sound->playSpeech(_atdsv._vocNr, !g_engine->_sound->subtitlesEnabled());
+					g_engine->_sound->playSpeech(_atdsv._vocNr, false);
 					int16 vocx = _G(spieler_vector)[personId].Xypos[0] -
 								 _G(gameState).scrollx + _G(spieler_mi)[personId].HotX;
 					g_engine->_sound->setSoundChannelBalance(0, getStereoPos(vocx));
 
 					if (!g_engine->_sound->subtitlesEnabled()) {
 						_aadv._strNr = -1;
-						_aadv._delayCount = 1;
 					}
 				}
-
-				// FIXME: This breaks subtitles, as it removes
-				// all string terminators. This was previously
-				// used when either speech or subtitles (but not
-				// both) were selected, but its logic is broken.
-				// Check if it should be removed altogether.
-				/*for (int16 i = 0; i < splitString._nr; i++) {
-					tmp_ptr += strlen(splitString._strPtr[i]) + 1;
-				}
-				str_null2leer(start_ptr, start_ptr + txt_len - 1);*/
 			}
 
 			if (_aadv._delayCount <= 0) {
@@ -733,13 +717,8 @@ void Atdsys::print_aad(int16 scrX, int16 scrY) {
 					_aadv._silentCount = _atdsv._silent;
 				}
 			} else {
-				if (g_engine->_sound->subtitlesEnabled() ||
-				        (_aadv._strHeader->_vocNr - ATDS_VOC_OFFSET) == -1)
+				if (_aadv._strHeader->_vocNr - ATDS_VOC_OFFSET == -1)
 					--_aadv._delayCount;
-
-				else if (!g_engine->_sound->subtitlesEnabled()) {
-					_aadv._delayCount = 0;
-				}
 			}
 		} else {
 			--_aadv._silentCount;




More information about the Scummvm-git-logs mailing list