[Scummvm-git-logs] scummvm master -> e6dff3d276662b81800bd5db653e3bcc2c3587a6
dreammaster
noreply at scummvm.org
Sat Aug 8 06:22:34 UTC 2026
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
e6dff3d276 M4: RIDDLE: Make Marshall Matt show up again
Commit: e6dff3d276662b81800bd5db653e3bcc2c3587a6
https://github.com/scummvm/scummvm/commit/e6dff3d276662b81800bd5db653e3bcc2c3587a6
Author: sloanext (46776957+sloanext at users.noreply.github.com)
Date: 2026-08-08T16:22:30+10:00
Commit Message:
M4: RIDDLE: Make Marshall Matt show up again
V007 gates the arrest cutscene on exiting room 301, but it was only ever
cleared, never set, in setItemsPlacedFlags().
Set it whenever the player reaches the final warning from Feng Li (V005).
Changed paths:
engines/m4/riddle/flags.h
engines/m4/riddle/rooms/room.cpp
engines/m4/riddle/rooms/section3/room301.cpp
diff --git a/engines/m4/riddle/flags.h b/engines/m4/riddle/flags.h
index a656fd856d7..c6c03bae0e5 100644
--- a/engines/m4/riddle/flags.h
+++ b/engines/m4/riddle/flags.h
@@ -37,9 +37,9 @@ enum Flag {
V002 = 2,
V003 = 3,
V004 = 4,
- V005 = 5,
- V006 = 6,
- V007 = 7,
+ V005 = 5, // Warning level from Feng Li
+ V006 = 6, // Number of trips Ripley has taken (technically: Times foreign Posh Express offices entered)
+ V007 = 7, // Marshall Matt is waiting at the exit of room 301
V008 = 8,
V009 = 9,
V010 = 10,
diff --git a/engines/m4/riddle/rooms/room.cpp b/engines/m4/riddle/rooms/room.cpp
index 288ca8442e4..bee6ac5562b 100644
--- a/engines/m4/riddle/rooms/room.cpp
+++ b/engines/m4/riddle/rooms/room.cpp
@@ -159,6 +159,12 @@ bool Room::setItemsPlacedFlags() {
(_G(flags)[V006] >= 5 && count < 3)) {
if (_G(flags)[V005] == 4)
_G(flags)[V005]++;
+
+ // Final warning level reached while Ripley is running out of
+ // money: Marshall Matt will be waiting at the travel agency.
+ // This is cleared again below as soon as enough items have been
+ // mailed home, so the arrest remains avoidable.
+ _G(flags)[V007] = 1;
return true;
}
break;
diff --git a/engines/m4/riddle/rooms/section3/room301.cpp b/engines/m4/riddle/rooms/section3/room301.cpp
index 9a6515a844b..9148dd7bcfd 100644
--- a/engines/m4/riddle/rooms/section3/room301.cpp
+++ b/engines/m4/riddle/rooms/section3/room301.cpp
@@ -696,7 +696,7 @@ void Room301::daemon() {
if (_marshallMode <= 0) {
if (_marshallShould <= 0) {
kernel_timing_trigger(30, 201);
- } if (_marshallShould == 1) {
+ } else if (_marshallShould == 1) {
sendWSMessage_10000(1, _marshallMach, _marshalMatt, 17, 51, 201,
_marshalMatt, 51, 51, 0);
_marshallMode = 1;
More information about the Scummvm-git-logs
mailing list