[Scummvm-git-logs] scummvm master -> 094516632b357876e09c0bc771bb6496a96c7bd5

dreammaster noreply at scummvm.org
Wed Oct 2 04:48:03 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:
094516632b M4: RIDDLE: Starting to implement maze rooms


Commit: 094516632b357876e09c0bc771bb6496a96c7bd5
    https://github.com/scummvm/scummvm/commit/094516632b357876e09c0bc771bb6496a96c7bd5
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-10-01T21:47:56-07:00

Commit Message:
M4: RIDDLE: Starting to implement maze rooms

Changed paths:
    engines/m4/riddle/rooms/section6/room620.cpp
    engines/m4/riddle/rooms/section6/room621.cpp
    engines/m4/riddle/rooms/section6/room622.cpp


diff --git a/engines/m4/riddle/rooms/section6/room620.cpp b/engines/m4/riddle/rooms/section6/room620.cpp
index cd5c11fa6f4..45db29fba5f 100644
--- a/engines/m4/riddle/rooms/section6/room620.cpp
+++ b/engines/m4/riddle/rooms/section6/room620.cpp
@@ -28,6 +28,28 @@ namespace Riddle {
 namespace Rooms {
 
 void Room620::init() {
+	switch (_G(game).previous_room) {
+	case KERNEL_RESTORING_GAME:
+		digi_preload("950_s28c");
+		break;
+
+	case 621:
+		ws_demand_location(670, 322, 9);
+		ws_walk(605, 322, nullptr, 1, 9);
+		player_set_commands_allowed(false);
+		break;
+
+	case 626:
+		ws_demand_location(418, 285, 5);
+		break;
+
+	default:
+		digi_preload("950_s28c");
+		ws_demand_location(418, 285, 5);
+		break;
+	}
+
+	digi_play_loop("950_s28c", 3);
 }
 
 void Room620::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room621.cpp b/engines/m4/riddle/rooms/section6/room621.cpp
index a7f20db1a5c..f5dacbfef3b 100644
--- a/engines/m4/riddle/rooms/section6/room621.cpp
+++ b/engines/m4/riddle/rooms/section6/room621.cpp
@@ -28,6 +28,34 @@ namespace Riddle {
 namespace Rooms {
 
 void Room621::init() {
+	switch (_G(game).previous_room) {
+	case KERNEL_RESTORING_GAME:
+		digi_preload("950_s28c");
+		break;
+
+	case 620:
+		ws_demand_location(-30, 310, 3);
+		ws_walk(30, 310, nullptr, 1, 3);
+		player_set_commands_allowed(false);
+		break;
+
+	case 622:
+		ws_demand_location(670, 290, 9);
+		ws_walk(605, 290, nullptr, 1, 9);
+		player_set_commands_allowed(false);
+		break;
+
+	case 627:
+		ws_demand_location(384, 293, 5);
+		break;
+
+	default:
+		digi_preload("950_s28c");
+		ws_demand_location(384, 293, 5);
+		break;
+	}
+
+	digi_play_loop("950_s28c", 3);
 }
 
 void Room621::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room622.cpp b/engines/m4/riddle/rooms/section6/room622.cpp
index 8460b39fdda..9a29492262f 100644
--- a/engines/m4/riddle/rooms/section6/room622.cpp
+++ b/engines/m4/riddle/rooms/section6/room622.cpp
@@ -28,6 +28,32 @@ namespace Riddle {
 namespace Rooms {
 
 void Room622::init() {
+	switch (_G(game).previous_room) {
+	case KERNEL_RESTORING_GAME:
+		digi_preload("950_s28c");
+		break;
+
+	case 621:
+		ws_demand_location(-30, 362, 3);
+		ws_walk(30, 362, nullptr, 1, 3);
+		player_set_commands_allowed(false);
+		break;
+
+	case 623:
+		ws_demand_location(670, 290, 9);
+		ws_walk(605, 290, nullptr, 1, 9);
+		player_set_commands_allowed(false);
+		break;
+
+	case 628:
+		ws_demand_location(313, 290, 5);
+		break;
+
+	default:
+		digi_preload("650_s28c");
+		ws_demand_location(313, 290, 5);
+		break;
+	}
 }
 
 void Room622::parser() {




More information about the Scummvm-git-logs mailing list