[Scummvm-git-logs] scummvm master -> 066de1522ecf72818c25731f3ebe29cb6126d93f

dreammaster noreply at scummvm.org
Fri Jan 31 04:36:51 UTC 2025


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:
c28d2a814a M4: RIDDLE: Fix closing Danzig desk drawer
066de1522e M4: RIDDLE: Games cabinet fixes


Commit: c28d2a814a568312ee889d6be78f0901c3e71c9d
    https://github.com/scummvm/scummvm/commit/c28d2a814a568312ee889d6be78f0901c3e71c9d
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2025-01-30T19:25:18-08:00

Commit Message:
M4: RIDDLE: Fix closing Danzig desk drawer

Changed paths:
    engines/m4/riddle/rooms/section4/room406.cpp
    engines/m4/riddle/rooms/section4/room406.h


diff --git a/engines/m4/riddle/rooms/section4/room406.cpp b/engines/m4/riddle/rooms/section4/room406.cpp
index 78cd49a78f8..612e429acad 100644
--- a/engines/m4/riddle/rooms/section4/room406.cpp
+++ b/engines/m4/riddle/rooms/section4/room406.cpp
@@ -134,14 +134,14 @@ void Room406::init() {
 	}
 
 	if (_G(game).previous_room != KERNEL_RESTORING_GAME) {
-		_val1 = 1001;
-		_val2 = 1001;
+		_drawerState1 = 1001;
+		_drawerState2 = 1001;
 		hotspot_set_active("CABINET DRAWER OPEN", false);
 		hotspot_set_active("DESK DRAWER OPEN", false);
 		hotspot_set_active("MESSAGES", false);
 		hotspot_set_active("ENVELOPE", false);
 		hotspot_set_active("KEYS", false);
-	} else if (_val2 == 1000) {
+	} else if (_drawerState2 == 1000) {
 		ws_demand_facing(1);
 		_rptmhr = series_load("RPTMHR11");
 		setGlobals1(_rptmhr, 1, 5, 5, 5, 0, 5, 1, 1, 1);
@@ -165,7 +165,7 @@ void Room406::init() {
 				0, 0, 0, 100, 0x200);
 			hotspot_set_active("KEYS", true);
 		}
-	} else if (_val1 == 1000) {
+	} else if (_drawerState1 == 1000) {
 		ws_demand_facing(11);
 		_ripReachHand = series_load("RIP TREK MED REACH HAND POS1");
 		setGlobals1(_ripReachHand, 1, 10, 10, 10, 0, 10, 1, 1, 1);
@@ -246,6 +246,7 @@ void Room406::daemon() {
 		return;
 
 	case 22:
+		setHotspots();
 		sendWSMessage_150000(23);
 		return;
 
@@ -307,20 +308,16 @@ void Room406::pre_parser() {
 
 	if (useFlag && player_said_any("BILLIARD TABLE", "BILLIARD TABLE ")) {
 		_G(player).resetWalk();
-		_G(kernel).trigger_mode = KT_PARSE;
-		kernel_timing_trigger(1, 69);
-		_G(kernel).trigger_mode = KT_PREPARSE;
+		kernel_timing_trigger(1, 69, KT_PARSE, KT_PREPARSE);
 	}
 
 	if (player_said("BILLIARD BALL", "BILLIARD TABLE") &&
 			_G(kernel).trigger == -1) {
 		_G(player).resetWalk();
-		_G(kernel).trigger_mode = KT_PARSE;
-		kernel_timing_trigger(1, 69);
-		_G(kernel).trigger_mode = KT_PREPARSE;
+		kernel_timing_trigger(1, 69, KT_PARSE, KT_PREPARSE);
 	}
 
-	if (_val1 == 1000) {
+	if (_drawerState1 == 1000) {
 		_G(player).resetWalk();
 
 		if (!player_said(" ") &&
@@ -331,12 +328,10 @@ void Room406::pre_parser() {
 		}
 
 		intr_cancel_sentence();
-		_val1 = 1001;
-		_G(kernel).trigger_mode = KT_DAEMON;
-		kernel_timing_trigger(1, 10);
-		_G(kernel).trigger_mode = KT_PARSE;
+		_drawerState1 = 1001;
+		kernel_timing_trigger(1, 10, KT_DAEMON, KT_PARSE);
 
-	} else if (_val2 == 1000) {
+	} else if (_drawerState2 == 1000) {
 		_G(player).resetWalk();
 
 		if (!player_said(" ") &&
@@ -347,10 +342,8 @@ void Room406::pre_parser() {
 		}
 
 		intr_cancel_sentence();
-		_val1 = 1001;
-		_G(kernel).trigger_mode = KT_DAEMON;
-		kernel_timing_trigger(1, 20);
-		_G(kernel).trigger_mode = KT_PARSE;
+		_drawerState2 = 1001;
+		kernel_timing_trigger(1, 20, KT_DAEMON, KT_PARSE);
 
 	} else if (player_said("journal") && !takeFlag && !lookFlag &&
 			_G(kernel).trigger == -1) {
@@ -626,7 +619,7 @@ void Room406::parser() {
 			sendWSMessage_110000(1);
 			break;
 		case 1:
-			_val2 = 1000;
+			_drawerState2 = 1000;
 			_emptyDrawer = series_place_sprite("406 DESK DRAWER EMPTY", 0, 0, 0, 100, 0x200);
 			digi_play("406_s02", 2);
 			hotspot_set_active(" ", true);
@@ -659,7 +652,7 @@ void Room406::parser() {
 				break;
 			case 1:
 				if (_G(flags)[V308]) {
-					_val1 = 1000;
+					_drawerState1 = 1000;
 					_cards = series_place_sprite("406 GAMES DRAWER WITH CARDS", 0, 0, 0, 100, 0x100);
 					digi_play("406_s02", 2);
 					hotspot_set_active(" ", true);
diff --git a/engines/m4/riddle/rooms/section4/room406.h b/engines/m4/riddle/rooms/section4/room406.h
index 8cf53797fa0..049ec6237df 100644
--- a/engines/m4/riddle/rooms/section4/room406.h
+++ b/engines/m4/riddle/rooms/section4/room406.h
@@ -43,8 +43,8 @@ private:
 	machine *_cards = nullptr;
 	int _rptmhr = 0;
 	int _rptmr15 = 0;
-	int _val1 = 0;
-	int _val2 = 0;
+	int _drawerState1 = 0;
+	int _drawerState2 = 0;
 	int _ripReachHand = 0;
 	int _ripHiHand = 0;
 	int _pickupBall = 0;


Commit: 066de1522ecf72818c25731f3ebe29cb6126d93f
    https://github.com/scummvm/scummvm/commit/066de1522ecf72818c25731f3ebe29cb6126d93f
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2025-01-30T20:36:31-08:00

Commit Message:
M4: RIDDLE: Games cabinet fixes

Changed paths:
    engines/m4/riddle/rooms/section4/room406.cpp
    engines/m4/riddle/rooms/section4/room406.h


diff --git a/engines/m4/riddle/rooms/section4/room406.cpp b/engines/m4/riddle/rooms/section4/room406.cpp
index 612e429acad..6f64a096503 100644
--- a/engines/m4/riddle/rooms/section4/room406.cpp
+++ b/engines/m4/riddle/rooms/section4/room406.cpp
@@ -134,14 +134,14 @@ void Room406::init() {
 	}
 
 	if (_G(game).previous_room != KERNEL_RESTORING_GAME) {
-		_drawerState1 = 1001;
-		_drawerState2 = 1001;
+		_gamesDrawerState = 1001;
+		deskDrawerState = 1001;
 		hotspot_set_active("CABINET DRAWER OPEN", false);
 		hotspot_set_active("DESK DRAWER OPEN", false);
 		hotspot_set_active("MESSAGES", false);
 		hotspot_set_active("ENVELOPE", false);
 		hotspot_set_active("KEYS", false);
-	} else if (_drawerState2 == 1000) {
+	} else if (deskDrawerState == 1000) {
 		ws_demand_facing(1);
 		_rptmhr = series_load("RPTMHR11");
 		setGlobals1(_rptmhr, 1, 5, 5, 5, 0, 5, 1, 1, 1);
@@ -165,7 +165,7 @@ void Room406::init() {
 				0, 0, 0, 100, 0x200);
 			hotspot_set_active("KEYS", true);
 		}
-	} else if (_drawerState1 == 1000) {
+	} else if (_gamesDrawerState == 1000) {
 		ws_demand_facing(11);
 		_ripReachHand = series_load("RIP TREK MED REACH HAND POS1");
 		setGlobals1(_ripReachHand, 1, 10, 10, 10, 0, 10, 1, 1, 1);
@@ -317,7 +317,7 @@ void Room406::pre_parser() {
 		kernel_timing_trigger(1, 69, KT_PARSE, KT_PREPARSE);
 	}
 
-	if (_drawerState1 == 1000) {
+	if (_gamesDrawerState == 1000) {
 		_G(player).resetWalk();
 
 		if (!player_said(" ") &&
@@ -328,10 +328,10 @@ void Room406::pre_parser() {
 		}
 
 		intr_cancel_sentence();
-		_drawerState1 = 1001;
+		_gamesDrawerState = 1001;
 		kernel_timing_trigger(1, 10, KT_DAEMON, KT_PARSE);
 
-	} else if (_drawerState2 == 1000) {
+	} else if (deskDrawerState == 1000) {
 		_G(player).resetWalk();
 
 		if (!player_said(" ") &&
@@ -342,7 +342,7 @@ void Room406::pre_parser() {
 		}
 
 		intr_cancel_sentence();
-		_drawerState2 = 1001;
+		deskDrawerState = 1001;
 		kernel_timing_trigger(1, 20, KT_DAEMON, KT_PARSE);
 
 	} else if (player_said("journal") && !takeFlag && !lookFlag &&
@@ -619,7 +619,7 @@ void Room406::parser() {
 			sendWSMessage_110000(1);
 			break;
 		case 1:
-			_drawerState2 = 1000;
+			deskDrawerState = 1000;
 			_emptyDrawer = series_place_sprite("406 DESK DRAWER EMPTY", 0, 0, 0, 100, 0x200);
 			digi_play("406_s02", 2);
 			hotspot_set_active(" ", true);
@@ -652,11 +652,12 @@ void Room406::parser() {
 				break;
 			case 1:
 				if (_G(flags)[V308]) {
-					_drawerState1 = 1000;
+					_gamesDrawerState = 1000;
 					_cards = series_place_sprite("406 GAMES DRAWER WITH CARDS", 0, 0, 0, 100, 0x100);
 					digi_play("406_s02", 2);
+					disableHotspots();
 					hotspot_set_active(" ", true);
-					hotspot_set_active("CABINET DRAW OPEN", true);
+					hotspot_set_active("CABINET DRAWER OPEN", true);
 					player_set_commands_allowed(true);
 				} else {
 					digi_play("406r20", 1);
@@ -692,6 +693,8 @@ void Room406::parser() {
 				digi_play("406_s05", 2);
 				_G(flags)[V308] = 1;
 			}
+
+			sendWSMessage_120000(4);
 			break;
 		case 4:
 			sendWSMessage_150000(5);
@@ -719,6 +722,8 @@ void Room406::parser() {
 				digi_play("406_s05", 2);
 				_G(flags)[V307] = 1;
 			}
+
+			sendWSMessage_120000(4);
 			break;
 		case 4:
 			sendWSMessage_150000(5);
@@ -923,7 +928,7 @@ void Room406::parser() {
 			sendWSMessage_120000(3);
 			break;
 		case 3:
-			sendWSMessage_150000(5);
+			sendWSMessage_150000(4);
 			break;
 		case 4:
 			series_unload(_cabinetOpens);
diff --git a/engines/m4/riddle/rooms/section4/room406.h b/engines/m4/riddle/rooms/section4/room406.h
index 049ec6237df..baa52736517 100644
--- a/engines/m4/riddle/rooms/section4/room406.h
+++ b/engines/m4/riddle/rooms/section4/room406.h
@@ -43,8 +43,8 @@ private:
 	machine *_cards = nullptr;
 	int _rptmhr = 0;
 	int _rptmr15 = 0;
-	int _drawerState1 = 0;
-	int _drawerState2 = 0;
+	int _gamesDrawerState = 0;
+	int deskDrawerState = 0;
 	int _ripReachHand = 0;
 	int _ripHiHand = 0;
 	int _pickupBall = 0;




More information about the Scummvm-git-logs mailing list