[Scummvm-git-logs] scummvm master -> b981f828eebb633acceb876a0ad1f5de355b7e16

dreammaster noreply at scummvm.org
Sat Oct 12 17:28:22 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:
0aca09c7df M4: RIDDLE: Cleanup of Mei fields/setup in room 303
b981f828ee M4: RIDDLE: Fix panning in large rooms


Commit: 0aca09c7df03f252ac5307fd2476ea7aaf2296c0
    https://github.com/scummvm/scummvm/commit/0aca09c7df03f252ac5307fd2476ea7aaf2296c0
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-10-12T10:28:12-07:00

Commit Message:
M4: RIDDLE: Cleanup of Mei fields/setup in room 303

Changed paths:
    engines/m4/riddle/rooms/section3/room303.cpp
    engines/m4/riddle/rooms/section3/room303.h


diff --git a/engines/m4/riddle/rooms/section3/room303.cpp b/engines/m4/riddle/rooms/section3/room303.cpp
index 5593e3d48dc..ae96d8f068f 100644
--- a/engines/m4/riddle/rooms/section3/room303.cpp
+++ b/engines/m4/riddle/rooms/section3/room303.cpp
@@ -99,7 +99,7 @@ void Room303::init() {
 		if (!player_been_here(301)) {
 			kernel_load_variant(_val13 ? "303lock1" : "303lock2");
 			setFengActive(_val13);
-			loadHands();
+			setupMei();
 			setShadow4(true);
 
 			ws_walk_load_walker_series(S3_NORMAL_DIRS, S3_NORMAL_NAMES);
@@ -159,7 +159,7 @@ void Room303::init() {
 			ws_walk_load_walker_series(S3_NORMAL_DIRS2, S3_NORMAL_NAMES2);
 			ws_walk_load_shadow_series(S3_SHADOW_DIRS2, S3_SHADOW_NAMES2);
 
-			_hands4 = triggerMachineByHash_3000(8, 3, *S3_NORMAL_DIRS2, *S3_SHADOW_DIRS2,
+			_mei = triggerMachineByHash_3000(8, 3, *S3_NORMAL_DIRS2, *S3_SHADOW_DIRS2,
 				445, 215, 7, triggerMachineByHashCallback3000, "mc");
 			_gestTalk4 = series_load("mei ny lft hand gest talk pos4");
 			kernel_timing_trigger(1, 107);
@@ -172,7 +172,7 @@ void Room303::init() {
 			if (!player_been_here(301)) {
 				kernel_load_variant("303lock1");
 				setFengActive(true);
-				loadHands();
+				setupMei();
 				setShadow4(true);
 
 				ws_walk_load_walker_series(S3_NORMAL_DIRS, S3_NORMAL_NAMES);
@@ -199,7 +199,7 @@ void Room303::init() {
 
 		if (!player_been_here(301)) {
 			kernel_timing_trigger(1, 6);
-			loadHands();
+			setupMei();
 			setShadow4(true);
 
 			ws_walk_load_walker_series(S3_NORMAL_DIRS, S3_NORMAL_NAMES);
@@ -227,7 +227,7 @@ void Room303::init() {
 		player_set_commands_allowed(false);
 
 		if (!player_been_here(301)) {
-			loadHands();
+			setupMei();
 			setShadow4(true);
 			ws_walk_load_walker_series(S3_NORMAL_DIRS, S3_NORMAL_NAMES);
 			ws_walk_load_shadow_series(S3_SHADOW_DIRS, S3_SHADOW_NAMES);
@@ -283,7 +283,7 @@ void Room303::init() {
 		kernel_load_variant("303lock1");
 		setFengActive(true);
 		ws_demand_location(145, 289, 3);
-		loadHands();
+		setupMei();
 		setShadow4(true);
 
 		ws_walk_load_walker_series(S3_NORMAL_DIRS, S3_NORMAL_NAMES);
@@ -456,16 +456,16 @@ void Room303::daemon() {
 
 	case 107:
 		ws_walk(700, 305, 0, -1, 3);
-		sendWSMessage_10000(_hands4, 393, 260, 9, 109, 0);
+		sendWSMessage_10000(_mei, 393, 260, 9, 109, 0);
 		break;
 
 	case 109:
-		sendWSMessage_10000(_hands4, 393, 260, 5, 110, 1);
+		sendWSMessage_10000(_mei, 393, 260, 5, 110, 1);
 		break;
 
 	case 110:
 		setGlobals3(_gestTalk4, 1, 21);
-		sendWSMessage_F0000(_hands4, 157);
+		sendWSMessage_F0000(_mei, 157);
 		digi_play("303m03", 1, 255, 143);
 		break;
 
@@ -479,7 +479,7 @@ void Room303::daemon() {
 
 	case 116:
 		_gestTalk4 = series_load("mc ny hand out talk pos4");
-		sendWSMessage_10000(_hands4, 357, 255, 4, 117, 1);
+		sendWSMessage_10000(_mei, 357, 255, 4, 117, 1);
 		kernel_timing_trigger(60, 103);
 		series_unload(_suitTalk1);
 		series_unload(_chinTalk4);
@@ -488,7 +488,7 @@ void Room303::daemon() {
 
 	case 117:
 		setGlobals1(_gestTalk4, 1, 9, 9, 9);
-		sendWSMessage_110000(_hands4, 120);
+		sendWSMessage_110000(_mei, 120);
 		kernel_timing_trigger(70, 118);
 		digi_play("303m04", 1, 255);
 		break;
@@ -507,7 +507,7 @@ void Room303::daemon() {
 		break;
 
 	case 120:
-		sendWSMessage_140000(_hands4, 159);
+		sendWSMessage_140000(_mei, 159);
 		break;
 
 	case 121:
@@ -590,8 +590,8 @@ void Room303::daemon() {
 		break;
 
 	case 137:
-		sendWSMessage_60000(_hands4);
-		loadHands();
+		sendWSMessage_60000(_mei);
+		setupMei();
 		setShadow4(true);
 		_val11 = 7;
 		kernel_timing_trigger(1, 160);
@@ -716,14 +716,14 @@ void Room303::daemon() {
 
 					switch (imath_ranged_rand(1, 3)) {
 					case 1:
-						sendWSMessage_10000(1, _hands4, _hands2, 1, 14, 200,
-							_hands2, 14, 14, 0);
+						sendWSMessage_10000(1, _mei, _mei2, 1, 14, 200,
+							_mei2, 14, 14, 0);
 						_val10 = _val11 = 1;
 						break;
 
 					case 2:
-						sendWSMessage_10000(1, _hands4, _hands1, 2, 9, 200,
-							_hands1, 9, 9, 0);
+						sendWSMessage_10000(1, _mei, _mei1, 2, 9, 200,
+							_mei1, 9, 9, 0);
 						_val10 = _val11 = 1;
 						break;
 
@@ -740,27 +740,27 @@ void Room303::daemon() {
 				break;
 
 			case 3:
-				sendWSMessage_10000(1, _hands4, _hands3, 1, 12, 200,
-					_hands3, 12, 12, 0);
+				sendWSMessage_10000(1, _mei, _mei3, 1, 12, 200,
+					_mei3, 12, 12, 0);
 				_val10 = 3;
 				break;
 
 			case 4:
 			case 5:
-				sendWSMessage_10000(1, _hands4, _hands3, 17, 17, 200,
-					_hands3, 17, 17, 0);
+				sendWSMessage_10000(1, _mei, _mei3, 17, 17, 200,
+					_mei3, 17, 17, 0);
 				_val10 = 4;
 				break;
 
 			case 6:
-				sendWSMessage_10000(1, _hands4, _meiLips, 1, 13, 200,
+				sendWSMessage_10000(1, _mei, _meiLips, 1, 13, 200,
 					_meiLips, 13, 13, 0);
 				_val10 = 6;
 				break;
 
 			case 7:
-				sendWSMessage_10000(1, _hands4, _hands2, 1, 14, 200,
-					_hands2, 14, 14, 0);
+				sendWSMessage_10000(1, _mei, _mei2, 1, 14, 200,
+					_mei2, 14, 14, 0);
 				_val10 = _val11 = 1;
 				break;
 
@@ -777,8 +777,8 @@ void Room303::daemon() {
 
 					switch (imath_ranged_rand(1, 2)) {
 					case 1:
-						sendWSMessage_10000(1, _hands4, _hands2, 14, 1, 200,
-							_hands1, 1, 1, 0);
+						sendWSMessage_10000(1, _mei, _mei2, 14, 1, 200,
+							_mei1, 1, 1, 0);
 						_val10 = _val11 = 0;
 						break;
 
@@ -793,8 +793,8 @@ void Room303::daemon() {
 					kernel_timing_trigger(60, 201);
 				}
 			} else {
-				sendWSMessage_10000(1, _hands4, _hands2, 14, 1, 200,
-					_hands1, 1, 1, 0);
+				sendWSMessage_10000(1, _mei, _mei2, 14, 1, 200,
+					_mei1, 1, 1, 0);
 				_val10 = 0;
 			}
 			break;
@@ -807,8 +807,8 @@ void Room303::daemon() {
 
 					switch (imath_ranged_rand(1, 2)) {
 					case 1:
-						sendWSMessage_10000(1, _hands4, _hands1, 9, 2, 200,
-							_hands1, 1, 1, 0);
+						sendWSMessage_10000(1, _mei, _mei1, 9, 2, 200,
+							_mei1, 1, 1, 0);
 						break;
 
 					case 2:
@@ -823,19 +823,19 @@ void Room303::daemon() {
 				}
 				break;
 			} else {
-				sendWSMessage_10000(1, _hands4, _hands1, 9, 2, 200,
-					_hands1, 1, 1, 0);
+				sendWSMessage_10000(1, _mei, _mei1, 9, 2, 200,
+					_mei1, 1, 1, 0);
 				_val10 = 0;
 			}
 			break;
 
 		case 3:
 			if (_val11 == 3) {
-				sendWSMessage_10000(1, _hands4, _hands3, 13, 13, 200,
-					_hands3, 13, 16, 0);
+				sendWSMessage_10000(1, _mei, _mei3, 13, 13, 200,
+					_mei3, 13, 16, 0);
 			} else {
-				sendWSMessage_10000(1, _hands4, _hands3, 12, 1, 200,
-					_hands1, 1, 1, 0);
+				sendWSMessage_10000(1, _mei, _mei3, 12, 1, 200,
+					_mei1, 1, 1, 0);
 				_val10 = 0;
 			}
 			break;
@@ -843,19 +843,19 @@ void Room303::daemon() {
 		case 4:
 			switch (_val11) {
 			case 4:
-				sendWSMessage_10000(1, _hands4, _hands3, 17, 17, 200,
-					_hands3, 17, 17, 0);
+				sendWSMessage_10000(1, _mei, _mei3, 17, 17, 200,
+					_mei3, 17, 17, 0);
 				break;
 
 			case 5:
 				frame = imath_ranged_rand(17, 20);
-				sendWSMessage_10000(1, _hands4, _hands3, frame, frame, 200,
-					_hands3, frame, frame, 0);
+				sendWSMessage_10000(1, _mei, _mei3, frame, frame, 200,
+					_mei3, frame, frame, 0);
 				break;
 
 			default:
-				sendWSMessage_10000(1, _hands4, _hands1, 1, 1, 200,
-					_hands1, 1, 1, 0);
+				sendWSMessage_10000(1, _mei, _mei1, 1, 1, 200,
+					_mei1, 1, 1, 0);
 				_val10 = 0;
 				break;
 			}
@@ -864,11 +864,11 @@ void Room303::daemon() {
 		case 6:
 			if (_val11 == 6) {
 				frame = imath_ranged_rand(14, 16);
-				sendWSMessage_10000(1, _hands4, _meiLips, frame, frame, 200,
+				sendWSMessage_10000(1, _mei, _meiLips, frame, frame, 200,
 					_meiLips, frame, frame, 0);
 			} else {
-				sendWSMessage_10000(1, _hands4, _meiLips, 17, 24, 200,
-					_hands1, 1, 1, 0);
+				sendWSMessage_10000(1, _mei, _meiLips, 17, 24, 200,
+					_mei1, 1, 1, 0);
 				_val10 = 0;
 			}
 			break;
@@ -1731,16 +1731,16 @@ void Room303::parser() {
 	_G(player).command_ready = false;
 }
 
-void Room303::loadHands() {
-	_hands1 = series_load("MC NY hands behind back pos4");
-	_hands2 = series_load("MC NY hand on hip pos4");
-	_hands3 = series_load("MC NY hand out talk pos4");
-	_hands4 = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 357, 255, 86, 0xf00, 0,
+void Room303::setupMei() {
+	_mei1 = series_load("MC NY hands behind back pos4");
+	_mei2 = series_load("MC NY hand on hip pos4");
+	_mei3 = series_load("MC NY hand out talk pos4");
+	_mei = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 357, 255, 86, 0xf00, 0,
 		triggerMachineByHashCallbackNegative, "mc");
 
 	_G(kernel).trigger_mode = KT_DAEMON;
-	sendWSMessage_10000(1, _hands4, _hands1, 1, 1, 200,
-		_hands1, 1, 1, 0);
+	sendWSMessage_10000(1, _mei, _mei1, 1, 1, 200,
+		_mei1, 1, 1, 0);
 	_val10 = _val11 = 0;
 }
 
diff --git a/engines/m4/riddle/rooms/section3/room303.h b/engines/m4/riddle/rooms/section3/room303.h
index 18870934bd2..2cba7f94d1b 100644
--- a/engines/m4/riddle/rooms/section3/room303.h
+++ b/engines/m4/riddle/rooms/section3/room303.h
@@ -51,10 +51,10 @@ private:
 	KernelTriggerType _triggerMode1 = KT_DAEMON;
 	KernelTriggerType _triggerMode2 = KT_DAEMON;
 	machine *_door = nullptr;
-	int _hands1 = 0;
-	int _hands2 = 0;
-	int _hands3 = 0;
-	machine *_hands4 = nullptr;
+	int _mei1 = 0;
+	int _mei2 = 0;
+	int _mei3 = 0;
+	machine *_mei = nullptr;
 	int _clasped1 = 0;
 	int _clasped2 = 0;
 	int _clasped3 = 0;
@@ -83,7 +83,7 @@ private:
 
 	static void escapePressed(void *, void *);
 
-	void loadHands();
+	void setupMei();
 	void loadClasped();
 	void setFengActive(bool flag);
 	void setShadow4(bool active);


Commit: b981f828eebb633acceb876a0ad1f5de355b7e16
    https://github.com/scummvm/scummvm/commit/b981f828eebb633acceb876a0ad1f5de355b7e16
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-10-12T10:28:12-07:00

Commit Message:
M4: RIDDLE: Fix panning in large rooms

Changed paths:
    engines/m4/core/rooms.cpp


diff --git a/engines/m4/core/rooms.cpp b/engines/m4/core/rooms.cpp
index b3d3f3976e3..f8cf8b1b720 100644
--- a/engines/m4/core/rooms.cpp
+++ b/engines/m4/core/rooms.cpp
@@ -396,10 +396,14 @@ void Sections::pal_game_task() {
 			if (_G(kernel).camera_pan_instant) {
 				delta = _cameraShiftAmount;
 				_cameraShiftAmount = 0;
-			} else if (_cameraShiftAmount > 0) {
-				delta = imath_min(_cameraShiftAmount, camera_pan_step);
 			} else {
-				delta = imath_max(_cameraShiftAmount, camera_pan_step);
+				if (_cameraShiftAmount > 0) {
+					delta = imath_min(_cameraShiftAmount, camera_pan_step);
+				} else {
+					delta = imath_max(_cameraShiftAmount, -camera_pan_step);
+				}
+
+				_cameraShiftAmount -= delta;
 			}
 
 			MoveScreenDelta(game_buff_ptr, delta, 0);
@@ -409,10 +413,14 @@ void Sections::pal_game_task() {
 			if (_G(kernel).camera_pan_instant) {
 				delta = _cameraShift_vert_Amount;
 				_cameraShift_vert_Amount = 0;
-			} else if (_cameraShift_vert_Amount > 0) {
-				delta = imath_min(_cameraShift_vert_Amount, camera_pan_step);
 			} else {
-				delta = imath_max(_cameraShift_vert_Amount, camera_pan_step);
+				if (_cameraShift_vert_Amount > 0) {
+					delta = imath_min(_cameraShift_vert_Amount, camera_pan_step);
+				} else {
+					delta = imath_max(_cameraShift_vert_Amount, camera_pan_step);
+				}
+
+				_cameraShift_vert_Amount -= delta;
 			}
 		}
 	}




More information about the Scummvm-git-logs mailing list