[Scummvm-git-logs] scummvm master -> 82400296a57725b3ecc47bb179493e44dbafd981

Strangerke noreply at scummvm.org
Wed Oct 16 22:33:31 UTC 2024


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

Summary:
a6aa498922 M4: RIDDLE: Fix an issue in rooms 824 and 834
82400296a5 M4: RIDDLE: Implement room 844 as a Sector8Room


Commit: a6aa498922efa6d08502f2bb0c8b99794dbe6cfd
    https://github.com/scummvm/scummvm/commit/a6aa498922efa6d08502f2bb0c8b99794dbe6cfd
Author: Strangerke (arnaud.boutonne at gmail.com)
Date: 2024-10-17T00:27:46+01:00

Commit Message:
M4: RIDDLE: Fix an issue in rooms 824 and 834

Changed paths:
    engines/m4/riddle/rooms/section8/room824.cpp
    engines/m4/riddle/rooms/section8/room834.cpp


diff --git a/engines/m4/riddle/rooms/section8/room824.cpp b/engines/m4/riddle/rooms/section8/room824.cpp
index 32abeedade0..5e4b73058fe 100644
--- a/engines/m4/riddle/rooms/section8/room824.cpp
+++ b/engines/m4/riddle/rooms/section8/room824.cpp
@@ -100,7 +100,7 @@ void Room824::init() {
 			_field70 = 4;
 			_guessX = 1815;
 			_guessIndex = 11;
-			ws_walk(_G(my_walker), 1765, 348, nullptr, 0, 9, true);
+			ws_walk(_G(my_walker), 1765, 348, nullptr, -1, 9, true);
 			DisposePath(_mcTrekMach->walkPath);
 			_mcTrekMach->walkPath = CreateCustomPath(1832, 325, 1815, 400, 0xffff);
 			ws_custom_walk(_mcTrekMach, 11, 1, true);
diff --git a/engines/m4/riddle/rooms/section8/room834.cpp b/engines/m4/riddle/rooms/section8/room834.cpp
index 5933b0041bf..a90a7eec280 100644
--- a/engines/m4/riddle/rooms/section8/room834.cpp
+++ b/engines/m4/riddle/rooms/section8/room834.cpp
@@ -94,7 +94,7 @@ void Room834::init() {
 			_field70 = 4;
 			_guessX = 1815;
 			_guessIndex = 11;
-			ws_walk(_G(my_walker), 1765, 348, nullptr, 0, 9, true);
+			ws_walk(_G(my_walker), 1765, 348, nullptr, -1, 9, true);
 			DisposePath(_mcTrekMach->walkPath);
 			_mcTrekMach->walkPath = CreateCustomPath(1836, 329, 1815, 400, 0xffff);
 			ws_custom_walk(_mcTrekMach, 11, 1, true);


Commit: 82400296a57725b3ecc47bb179493e44dbafd981
    https://github.com/scummvm/scummvm/commit/82400296a57725b3ecc47bb179493e44dbafd981
Author: Strangerke (arnaud.boutonne at gmail.com)
Date: 2024-10-17T00:32:26+01:00

Commit Message:
M4: RIDDLE: Implement room 844 as a Sector8Room

Changed paths:
    engines/m4/riddle/rooms/section8/room844.cpp
    engines/m4/riddle/rooms/section8/room844.h


diff --git a/engines/m4/riddle/rooms/section8/room844.cpp b/engines/m4/riddle/rooms/section8/room844.cpp
index 7b9c98f2212..9bc894bde51 100644
--- a/engines/m4/riddle/rooms/section8/room844.cpp
+++ b/engines/m4/riddle/rooms/section8/room844.cpp
@@ -21,6 +21,7 @@
 
 #include "m4/riddle/rooms/section8/room844.h"
 #include "m4/graphics/gr_series.h"
+#include "m4/riddle/riddle.h"
 #include "m4/riddle/vars.h"
 
 namespace M4 {
@@ -28,9 +29,88 @@ namespace Riddle {
 namespace Rooms {
 
 void Room844::init() {
-}
+	_currentRoom = 844;
+	if (_G(flags)[V276] == 0) {
+		ws_walk_load_walker_series(S8_SHADOW_DIRS1, S8_SHADOW_NAMES1, false);
+		ws_walk_load_walker_series(S8_SHADOW_DIRS2, S8_SHADOW_NAMES2, false);
+	}
+
+	series_plain_play("844fire1", -1, 0, 100, 32767, 7, -1, false);
+	series_plain_play("844fire2", -1, 0, 100, 32767, 7, -1, false);
+
+	_var1 = 3;
+	_var2 = 1;
+	_var3 = 3;
+	_var4 = 6;
+	_var5 = -1;
+
+	getSeriesName(1, false);
+	_machArr[0] = series_play(_currentSeriesName.c_str(), 767, 16, -1, 0, 0, 100, 0, 0, 0, -1);
+	getSeriesName(3, false);
+	_machArr[1] = series_play(_currentSeriesName.c_str(), 767, 16, -1, 0, 0, 100, 0, 0, 0, -1);
+	getSeriesName(6, false);
+	_machArr[2] = series_play(_currentSeriesName.c_str(), 767, 16, -1, 0, 0, 100, 0, 0, 0, -1);
+	_machArr[3] = nullptr;
+
+	if (inv_object_in_scene("wooden beam", 844)) {
+		_unkMach3 = series_show("844post", 4095, 0, -1, -1, 0, 100, 0, 0);
+	} else {
+		hotspot_set_active("wooden beam", false);
+	}
+	
+	hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN", false);
+	hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN ", false);
+	hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN  ", false);
+	hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN   ", false);
+	hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN    ", false);
+
+	switch (_G(game).previous_room) {
+	case KERNEL_RESTORING_GAME:
+		player_set_commands_allowed(true);
+		digi_preload("950_s29", -1);
+		if (_G(flags)[V276] == 0) {
+			_mcTrekMach = triggerMachineByHash_3000(8, 4, *S8_SHADOW_DIRS2, *S8_SHADOW_DIRS1, _guessX, 400, _guessIndex, Walker::player_walker_callback, "mc_trek");
+			kernel_timing_trigger(1, 1, nullptr);
+		}
+		break;
+
+	case 803:
+		player_set_commands_allowed(false);
+		ws_demand_facing(_G(my_walker), 3);
+		ws_demand_location(_G(my_walker), -10, 325);
+		if (_G(flags)[V276] == 0) {
+			_mcTrekMach = triggerMachineByHash_3000(8, 4, *S8_SHADOW_DIRS2, *S8_SHADOW_DIRS1, -60, 325, 2, Walker::player_walker_callback, "mc_trek");
+			_field70 = 0;
+			_guessX = 100;
+			_guessIndex = 1;
+			ws_walk(_G(my_walker), 150, 355, nullptr, -1, 3, true);
+			ws_walk(_mcTrekMach, 80, 400, nullptr, 1, 1, true);
+		} else {
+			ws_walk(_G(my_walker), 150, 355, nullptr, 1, 3, true);
+		}
+		break;
+	default:
+		player_set_commands_allowed(false);
+		moveScreen(1280, 0);
+		ws_demand_facing(_G(my_walker), 9);
+		ws_demand_location(_G(my_walker), 1925, 325);
+		if (_G(flags)[V276] == 0) {
+			_mcTrekMach = triggerMachineByHash_3000(8, 4, *S8_SHADOW_DIRS2, *S8_SHADOW_DIRS1, 2000, 325, 9, Walker::player_walker_callback, "mc_trek");
+			_field70 = 4;
+			_guessX = 1815;
+			_guessIndex = 11;
+			ws_walk(_G(my_walker), 1765, 348, nullptr, -1, 9, true);
+			DisposePath(_mcTrekMach->walkPath);
+			_mcTrekMach->walkPath = CreateCustomPath(1832, 325, 1815, 400, 0xffff);
+			ws_custom_walk(_mcTrekMach, 11, 1, true);
+		} else {
+			ws_walk(_G(my_walker), 1765, 348, nullptr, 1, 9, true);
+		}
+
+		break;
+	}
 
-void Room844::daemon() {
+	digi_play_loop("950_s29", 3, 96, -1, -1);
 }
 
 } // namespace Rooms
diff --git a/engines/m4/riddle/rooms/section8/room844.h b/engines/m4/riddle/rooms/section8/room844.h
index df9133f20ad..28c3ee6225c 100644
--- a/engines/m4/riddle/rooms/section8/room844.h
+++ b/engines/m4/riddle/rooms/section8/room844.h
@@ -22,19 +22,18 @@
 #ifndef M4_RIDDLE_ROOMS_SECTION8_ROOM844_H
 #define M4_RIDDLE_ROOMS_SECTION8_ROOM844_H
 
-#include "m4/riddle/rooms/room.h"
+#include "m4/riddle/rooms/section8/section8_room.h"
 
 namespace M4 {
 namespace Riddle {
 namespace Rooms {
 
-class Room844 : public Room {
+class Room844 : public Section8Room {
 public:
-	Room844() : Room() {}
+	Room844() : Section8Room() {}
 	~Room844() override {}
 
 	void init() override;
-	void daemon() override;
 };
 
 } // namespace Rooms




More information about the Scummvm-git-logs mailing list