[Scummvm-git-logs] scummvm master -> ace5ef53fe3cee31bb6bbd8a35336aa5290f61df
Strangerke
noreply at scummvm.org
Fri Dec 27 09:36:05 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:
ace5ef53fe M4: RIDDLE: Room 710: Some more work on parser
Commit: ace5ef53fe3cee31bb6bbd8a35336aa5290f61df
https://github.com/scummvm/scummvm/commit/ace5ef53fe3cee31bb6bbd8a35336aa5290f61df
Author: Strangerke (arnaud.boutonne at gmail.com)
Date: 2024-12-27T10:33:58+01:00
Commit Message:
M4: RIDDLE: Room 710: Some more work on parser
Changed paths:
engines/m4/riddle/rooms/section7/room710.cpp
engines/m4/riddle/rooms/section7/room710.h
diff --git a/engines/m4/riddle/rooms/section7/room710.cpp b/engines/m4/riddle/rooms/section7/room710.cpp
index 68a73ba17fc..e1aca8121b3 100644
--- a/engines/m4/riddle/rooms/section7/room710.cpp
+++ b/engines/m4/riddle/rooms/section7/room710.cpp
@@ -332,6 +332,88 @@ void Room710::parser() {
}
} // esi && player_said("Rope")
+ else if (ecx && player_said_any("rope ", "rope ", "rope ", "rope "))
+ digi_play("com110", 1, 255, -1, 997);
+ else if (esi && player_said("rope ")) {
+ switch (_G(kernel).trigger) {
+ case -1:
+ player_set_commands_allowed(false);
+ terminateMachine(_710Rprs3Mach);
+ _ripPullMach02 = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, -53, 100, 3840, false, triggerMachineByHashCallback, "rip pull machine");
+ player_update_info(_G(my_walker), &_G(player_info));
+ _safariShadow1Mach = series_place_sprite("SAFARI SHADOW 1", 0, _G(player_info).x, _G(player_info).y, _G(player_info).scale, 3840);
+ ws_hide_walker(_G(my_walker));
+ sendWSMessage_10000(1, _ripPullMach02, _710Rpro3Series, 1, 16, 1, _710Rpro3Series, 16, 16, 0);
+
+ break;
+
+ case 1:
+ digi_play("950_s42", 2, 255, -1, -1);
+ sendWSMessage_10000(1, _ripPullMach02, _710Rpro3Series, 17, 38, 2, _710Rpro3Series, 1, 1, 0);
+
+ break;
+
+ case 2:
+ if (_field4C)
+ kernel_timing_trigger(5, 3, nullptr);
+ else {
+ _ripPullMach = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, 0, 100, 3845, false, triggerMachineByHashCallback, "rip pull machine");
+ sendWSMessage_10000(1, _ripPullMach, _mazeCentreDoorLiteSeries, 1, 10, 3, _mazeCentreDoorLiteSeries, 10, 10, 0);
+ _field4C = 1;
+ }
+
+ break;
+
+ case 3:
+ terminateMachine(_ripPullMach02);
+ _710Rprs3Mach = series_place_sprite("710RPRS3", 0, 0, -53, 100, 2565);
+ terminateMachine(_safariShadow1Mach);
+ ws_unhide_walker(_G(my_walker));
+
+ player_set_commands_allowed(true);
+
+ break;
+
+ default:
+ break;
+ }
+ } // esi && player_said("rope ")
+
+ else if (esi && player_said("rope ")) {
+ switch (_G(kernel).trigger) {
+ case -1:
+ player_set_commands_allowed(false);
+ terminateMachine(_710Rprs1Mach);
+ _ripPullMach02 = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, -53, 100, 512, false, triggerMachineByHashCallback, "rip pull machine");
+ player_update_info(_G(my_walker), &_G(player_info));
+ _safariShadow1Mach = series_place_sprite("SAFARI SHADOW 1", 0, _G(player_info).x, _G(player_info).y, _G(player_info).scale, 3840);
+ ws_hide_walker(_G(my_walker));
+ sendWSMessage_10000(1, _ripPullMach02, _710Rpro1Series, 1, 15, 1, _710Rpro1Series, 15, 15, 0);
+
+ break;
+
+ case 1:
+ digi_play("950_s42", 2, 255, -1, -1);
+ sendWSMessage_10000(1, _ripPullMach02, _710Rpro1Series, 15, 38, 3, _710Rpro1Series, 1, 1, 0);
+
+ break;
+
+ case 3:
+ terminateMachine(_ripPullMach02);
+ _710Rprs1Mach = series_place_sprite("710RPRS1", 0, 0, -53, 100, 517);
+ terminateMachine(_safariShadow1Mach);
+ ws_unhide_walker(_G(my_walker));
+
+ player_set_commands_allowed(true);
+
+ break;
+
+ default:
+ break;
+ }
+ } // esi && player_said("rope ")
+
+
// TODO Not implemented yet
_G(player).command_ready = false;
diff --git a/engines/m4/riddle/rooms/section7/room710.h b/engines/m4/riddle/rooms/section7/room710.h
index 28f3105c6d6..353fbecacc4 100644
--- a/engines/m4/riddle/rooms/section7/room710.h
+++ b/engines/m4/riddle/rooms/section7/room710.h
@@ -62,6 +62,8 @@ private:
machine *_710Rprs4Mach = nullptr;
machine *_ripContraptionMach = nullptr;
machine *_ripContractionMach02 = nullptr;
+ machine *_ripPullMach = nullptr;
+ machine *_ripPullMach02 = nullptr;
machine *_ripPullsKeyropeMach = nullptr;
machine *_ripReacherMach = nullptr;
machine *_safariShadow1Mach = nullptr;
More information about the Scummvm-git-logs
mailing list