[Scummvm-git-logs] scummvm master -> 7330b833964e0363cdb770c10670c4de22c422cf

dreammaster noreply at scummvm.org
Sun Oct 13 19:24:14 UTC 2024


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:
7330b83396 M4: RIDDLE: Introduction is now completable


Commit: 7330b833964e0363cdb770c10670c4de22c422cf
    https://github.com/scummvm/scummvm/commit/7330b833964e0363cdb770c10670c4de22c422cf
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-10-13T12:24:06-07:00

Commit Message:
M4: RIDDLE: Introduction is now completable

There seems to be an underlying issue with ws_walk at the
Odditorium that sees Ripley not fully reach the door. In this
scene, Mei also disappears, but I checked and that actually
happens in the original as well.

Changed paths:
    engines/m4/gui/gui_sys.cpp
    engines/m4/m4.cpp
    engines/m4/riddle/rooms/section.cpp
    engines/m4/riddle/rooms/section3/room352.cpp
    engines/m4/riddle/rooms/section9/room908.cpp


diff --git a/engines/m4/gui/gui_sys.cpp b/engines/m4/gui/gui_sys.cpp
index 6c193b6de7f..61318e03d70 100644
--- a/engines/m4/gui/gui_sys.cpp
+++ b/engines/m4/gui/gui_sys.cpp
@@ -67,7 +67,8 @@ void gui_system_event_handler() {
 
 	// WORKAROUND: Keep the player_info up to date, in case the game
 	// is saved directly via the GMM without moving the mouse
-	if (_G(my_walker) && _G(player).walker_in_this_scene &&_G(player).walker_visible)
+	if (_G(my_walker) && _G(player).walker_in_this_scene &&
+			_G(player).walker_visible && INTERFACE_VISIBLE)
 		player_update_info();
 
 	// Deal with mouse events first..
@@ -76,7 +77,7 @@ void gui_system_event_handler() {
 
 	newMouseEvent = mouse_get_event();
 
-	if (newMouseEvent != _ME_no_event) {		//We have a mouse event
+	if (newMouseEvent != _ME_no_event) {	// We have a mouse event
 		gui_mouse_refresh();
 		_G(oldX) = _G(mouseX);
 		_G(oldY) = _G(mouseY);
diff --git a/engines/m4/m4.cpp b/engines/m4/m4.cpp
index 3f715aec924..4fbb53350df 100644
--- a/engines/m4/m4.cpp
+++ b/engines/m4/m4.cpp
@@ -290,6 +290,7 @@ Common::Error M4Engine::syncGame(Common::Serializer &s) {
 
 		digi_set_overall_volume(_G(game).digi_overall_volume_percent);
 		midi_set_overall_volume(_G(game).midi_overall_volume_percent);
+		interface_show();
 	}
 
 	return Common::kNoError;
diff --git a/engines/m4/riddle/rooms/section.cpp b/engines/m4/riddle/rooms/section.cpp
index 878480192e9..e53d2c24e4c 100644
--- a/engines/m4/riddle/rooms/section.cpp
+++ b/engines/m4/riddle/rooms/section.cpp
@@ -30,13 +30,6 @@ namespace Rooms {
 
 void Section::global_room_init() {
 	digi_preload("950_s51", 950);
-
-	int roomId = _G(game).room_id;
-
-	if (roomId < 900 && roomId != 494)
-		_GINT().show();
-	else
-		_GINT().hide();
 }
 
 void Section::tick() {
diff --git a/engines/m4/riddle/rooms/section3/room352.cpp b/engines/m4/riddle/rooms/section3/room352.cpp
index 6191803d9f6..98d48c4789b 100644
--- a/engines/m4/riddle/rooms/section3/room352.cpp
+++ b/engines/m4/riddle/rooms/section3/room352.cpp
@@ -30,8 +30,8 @@ namespace Riddle {
 namespace Rooms {
 
 void Room352::preload() {
-	_G(player).walker_type = 0;
-	_G(player).shadow_type = 0;
+	_G(player).walker_type = WALKER_PLAYER;
+	_G(player).shadow_type = SHADOW_PLAYER;
 	LoadWSAssets("OTHER SCRIPT");
 }
 
@@ -111,9 +111,9 @@ void Room352::daemon() {
 
 		series_ranged_play_xy("rip suit reaches for door", 1, 0, 0, 4,
 			_playerX, _playerY, _playerScale, 0, 6, 21);
-		series_ranged_play_xy("ripsh1", -1, 0, 0, 0,
+		_ripsh1 = series_ranged_play_xy("ripsh1", -1, 0, 0, 0,
 			_playerX, _playerY, _playerScale, 0, 3000, -1);
-		sendWSMessage_60000(_ripsh1);
+		sendWSMessage_60000(_G(my_walker));
 		digi_play("352_s02", 1);
 		break;
 
@@ -159,7 +159,7 @@ void Room352::daemon() {
 		break;
 
 	case 24:
-		series_ranged_play_xy("rip turns from door", 1, 0, 0, 6,
+		series_ranged_play_xy("rip turns from door talks", 1, 0, 0, 6,
 			_playerX, _playerY, _playerScale, 0, 5, 113);
 		digi_play("352r01", 1, 255, 111);
 		break;
diff --git a/engines/m4/riddle/rooms/section9/room908.cpp b/engines/m4/riddle/rooms/section9/room908.cpp
index 4cbe6618857..9d654adad8d 100644
--- a/engines/m4/riddle/rooms/section9/room908.cpp
+++ b/engines/m4/riddle/rooms/section9/room908.cpp
@@ -78,18 +78,15 @@ void Room908::daemon() {
 		digi_stop(1);
 		digi_stop(2);
 		digi_stop(3);
-		_G(game).new_room = 352;
-		_G(game).new_section = 3;
+		_G(game).setRoom(352);
 		break;
 
 	case 55:
-		_G(game).new_room = 304;
-		_G(game).new_section = 3;
+		_G(game).setRoom(304);
 		break;
 
 	case 56:
-		_G(game).new_room = 494;
-		_G(game).new_section = 4;
+		_G(game).setRoom(494);
 		break;
 
 	case 71:




More information about the Scummvm-git-logs mailing list