[Scummvm-git-logs] scummvm master -> 68c1476d3a24d8a2458fdccceb68b8d98e30fe94
Strangerke
noreply at scummvm.org
Thu Nov 21 22:57:08 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:
68c1476d3a M4: RIDDLE: Room 701: Start implementing Daemon (up to trigger 102)
Commit: 68c1476d3a24d8a2458fdccceb68b8d98e30fe94
https://github.com/scummvm/scummvm/commit/68c1476d3a24d8a2458fdccceb68b8d98e30fe94
Author: Strangerke (arnaud.boutonne at gmail.com)
Date: 2024-11-21T23:56:42+01:00
Commit Message:
M4: RIDDLE: Room 701: Start implementing Daemon (up to trigger 102)
Changed paths:
engines/m4/riddle/rooms/section7/room701.cpp
engines/m4/riddle/rooms/section7/room701.h
diff --git a/engines/m4/riddle/rooms/section7/room701.cpp b/engines/m4/riddle/rooms/section7/room701.cpp
index 9f9f1855b3f..5ec1915af85 100644
--- a/engines/m4/riddle/rooms/section7/room701.cpp
+++ b/engines/m4/riddle/rooms/section7/room701.cpp
@@ -40,7 +40,7 @@ void Room701::init() {
_itemDigiName = nullptr;
_field8C = 0;
_field50 = 0;
- _field9E = -1;
+ _field9E_triggerNum = -1;
_field130 = 0;
if (_G(game).previous_room == KERNEL_RESTORING_GAME) {
@@ -535,31 +535,174 @@ void Room701::daemon() {
break;
case 71:
+ sendWSMessage_10000(1, _agentPoshExpressMach, _agentTalkLoopTjSeries, 13, 13, 42, _agentTalkLoopTjSeries, 13, 13, 0);
+ break;
+
case 72:
+
+ sendWSMessage_150000(_G(my_walker), 54);
+ break;
+
case 73:
+ _agentPoshExpressMach02 = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, 0, 100, 768, 0, triggerMachineByHashCallback, "agent posh express");
+ sendWSMessage_10000(1, _agentPoshExpressMach, _agentTalkLoopTjSeries, 11, 11, -1, _agentTalkLoopTjSeries, 11, 11, 0);
+ sendWSMessage_10000(1, _agentPoshExpressMach02, _701rp01Series, 11, 11, 74, _701rp01Series, 11, 11, 0);
+
+ break;
+
case 74:
+ sendWSMessage_10000(1, _agentPoshExpressMach02, _701rp01Series, 11, 19, -1, _701rp01Series, 10, 19, 4);
+ sendWSMessage_1a0000(_agentPoshExpressMach02, 9);
+ digi_play("701R07", 1, 255, 57, -1);
+
+ break;
+
case 75:
case 76:
+ setGlobals1(_ripTrekTalkerPos3Series, 1, 1, 1, 5, 1, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+ sendWSMessage_110000(_G(my_walker), 43);
+
+ break;
+
case 80:
+ player_set_commands_allowed(false);
+ player_update_info(_G(my_walker), &_G(player_info));
+ _safariShadow3Mach = series_place_sprite("SAFARI SHADOW 3", 0, _G(player_info).x, _G(player_info).y, _G(player_info).scale, 3840);
+ setGlobals1(_ripTrekHandTalkPos3Series, 1, 4, 4, 4, 0, 5, 16, 16, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+ sendWSMessage_110000(_G(my_walker), 1080);
+ digi_play("701R37", 1, 255, -1, -1);
+
+ break;
+
case 81:
+ sendWSMessage_150000(_G(my_walker), -1);
+ sendWSMessage_10000(1, _agentPoshExpressMach, _agentTalkLoopTjSeries, 11, 13, -1, _agentTalkLoopTjSeries, 11, 13, 1);
+ sendWSMessage_1a0000(_agentPoshExpressMach, 11);
+ digi_play("701X11", 1, 255, 96, -1);
+
+ break;
+
case 82:
+ if (_G(flags[V286]) != 1 || _G(flags[V362]) || _G(flags[V372]) || _G(flags[V225])) {
+ kernel_timing_trigger(1, 75, nullptr);
+ } else {
+ _G(flags[V225]) = 1;
+ kernel_timing_trigger(1, 83, nullptr);
+ }
+
+ break;
+
case 83:
+ digi_play("701r42", 1, 255, 1083, -1);
+
+ break;
+
case 84:
+ sendWSMessage_120000(_G(my_walker), -1);
+ sendWSMessage_10000(1, _agentPoshExpressMach, _agentTalkLoopTjSeries, 12, 12, 85, _agentTalkLoopTjSeries, 12, 12, 0);
+
+ break;
+
case 85:
+ sendWSMessage_10000(1, _agentPoshExpressMach, _agentTalkLoopTjSeries, 11, 13, -1, _agentTalkLoopTjSeries, 11, 13, 1);
+ sendWSMessage_1a0000(_agentPoshExpressMach, 11);
+ digi_play("701X07", 1, 255, 86, -1);
+
+ break;
+
case 86:
+ sendWSMessage_10000(1, _agentPoshExpressMach02, _agentTalkLoopTjSeries, 12, 12, -1, _agentTalkLoopTjSeries, 12, 12, 0);
+ _ripSketchingInNotebookPos3Series = series_load("RIP SKETCHING IN NOTEBOOK POS 3", -1, nullptr);
+ sendWSMessage_150000(_G(my_walker), -1);
+ kernel_timing_trigger(1, 88, nullptr);
+
+ break;
+
case 88:
+ setGlobals1(_ripSketchingInNotebookPos3Series, 1, 32, 32, 34, 1, 32, 32, 32, 32, 0, 32, 1, 1, 1, 0, 0, 0, 0, 0, 0);
+ sendWSMessage_110000(_G(my_walker), 89);
+
+ break;
+
case 89:
+ sendWSMessage_190000(_G(my_walker), 9);
+ digi_play("950_S34", 2, 255, 97, 950);
+
+ break;
+
case 90:
+ sendWSMessage_150000(_G(my_walker), 91);
+ break;
+
case 91:
+ series_unload(_ripSketchingInNotebookPos3Series);
+ ws_hide_walker(_G(my_walker));
+ _agentPoshExpressMach02 = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, 0, 100, 768, 0, triggerMachineByHashCallback, "agent posh express");
+ sendWSMessage_10000(1, _agentPoshExpressMach02, _701rp01Series, 1, 11, 92, _701rp01Series, 11, 11, 0);
+
+ break;
+
case 92:
+ terminateMachine(_agentPoshExpressMach02);
+ sendWSMessage_10000(1, _agentPoshExpressMach, _agentGetTelegramSeries, 86, 1, 93, _agentGetTelegramSeries, 1, 1, 0);
+
+ break;
+
case 93:
+ sendWSMessage_10000(1, _agentPoshExpressMach, _agentTalkLoopTjSeries, 11, 11, -1, _agentTalkLoopTjSeries, 11, 11, 0);
+ _agentPoshExpressMach02 = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, 0, 100, 768, 0, triggerMachineByHashCallback, "agent posh express");
+ sendWSMessage_10000(1, _agentPoshExpressMach02, _701rp01Series, 11, 1, 94, _701rp01Series, 1, 1, 0);
+
+ break;
+
case 94:
+ terminateMachine(_agentPoshExpressMach02);
+ sendWSMessage_10000(1, _agentPoshExpressMach, _agentTalkLoopTjSeries, 11, 11, -1, _agentTalkLoopTjSeries, 11, 11, 0);
+ ws_unhide_walker(_G(my_walker));
+ setGlobals1(_ripTrekTalkerPos3Series, 1, 1, 1, 5, 1, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+ kernel_timing_trigger(1, 76, nullptr);
+
+ break;
+
case 95:
+ if (_G(flags[V286]) == 1 && !_G(flags[V362]))
+ _G(flags[V372]) = 1;
+
+ terminateMachine(_safariShadow3Mach);
+ player_set_commands_allowed(true);
+
+ break;
+
case 96:
+ sendWSMessage_10000(1, _agentPoshExpressMach, _agentTalkLoopTjSeries, 13, 13, 82, _agentTalkLoopTjSeries, 13, 13, 0);
+
+ break;
+
case 97:
+ sendWSMessage_120000(_G(my_walker), 1089);
+
+ break;
+
case 100:
+ kernel_timing_trigger(1, 102, nullptr);
+
+ break;
+
case 101:
+ _field94 = 1000;
+ _field98 = 1105;
+
+ break;
+
case 102:
+ if (_field9E_triggerNum != -1) {
+ kernel_timing_trigger(1, _field9E_triggerNum, nullptr);
+ _field9E_triggerNum = -1;
+ } else
+ kernel_timing_trigger(1, 103, nullptr);
+
+ break;
+
case 103:
case 110:
case 111:
diff --git a/engines/m4/riddle/rooms/section7/room701.h b/engines/m4/riddle/rooms/section7/room701.h
index 66b52dcd86a..74dc0d1ea0c 100644
--- a/engines/m4/riddle/rooms/section7/room701.h
+++ b/engines/m4/riddle/rooms/section7/room701.h
@@ -55,7 +55,7 @@ private:
int32 _field90 = 0;
int32 _field94 = 0;
int32 _field98 = 0;
- int32 _field9E = 0;
+ int32 _field9E_triggerNum = -1;
int32 _fieldB4 = 0;
int32 _field130 = 0;
int32 _field134 = 0;
@@ -66,6 +66,7 @@ private:
int32 _agentGiveParcelSeries = 0;
int32 _agentShowMapSeries = 0;
int32 _agentTalkLoopTjSeries = 0;
+ int32 _ripSketchingInNotebookPos3Series = 0;
int32 _ripTrekHandTalkPos3Series = 0;
int32 _ripTrekMedReachPos3Series = 0;
int32 _ripTrekTalkerPos3Series = 0;
More information about the Scummvm-git-logs
mailing list