[Scummvm-git-logs] scummvm master -> 60077e3ca1b8b359a3a14b77a2f812acec4dc459

Strangerke noreply at scummvm.org
Sun Feb 9 20:35:17 UTC 2025


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:
60077e3ca1 M4: RIDDLE: Start implementing Room811 (preload, init, pre-parser, parser)


Commit: 60077e3ca1b8b359a3a14b77a2f812acec4dc459
    https://github.com/scummvm/scummvm/commit/60077e3ca1b8b359a3a14b77a2f812acec4dc459
Author: Strangerke (arnaud.boutonne at gmail.com)
Date: 2025-02-09T21:35:00+01:00

Commit Message:
M4: RIDDLE: Start implementing Room811 (preload, init, pre-parser, parser)

Changed paths:
    engines/m4/riddle/rooms/section8/room811.cpp
    engines/m4/riddle/rooms/section8/room811.h


diff --git a/engines/m4/riddle/rooms/section8/room811.cpp b/engines/m4/riddle/rooms/section8/room811.cpp
index 6ecb76e83c9..1d4e9536948 100644
--- a/engines/m4/riddle/rooms/section8/room811.cpp
+++ b/engines/m4/riddle/rooms/section8/room811.cpp
@@ -27,7 +27,56 @@ namespace M4 {
 namespace Riddle {
 namespace Rooms {
 
+void Room811::preload() {
+	LoadWSAssets("OTHER SCRIPT", _G(master_palette));
+
+	_G(player).walker_type = WALKER_ALT;
+	_G(player).shadow_type = SHADOW_ALT;
+	_G(player).walker_in_this_scene = false;
+}
+
 void Room811::init() {
+	interface_hide();
+	player_set_commands_allowed(false);
+	_field0 = 80;
+	digi_stop(1);
+	digi_preload("950_s45", 950);
+	digi_play_loop("950_s45", 3, 80, -1, 950);
+
+	digi_preload("811_s01", -1);
+	digi_preload("811_s01a", -1);
+	digi_preload("811_s01b", -1);
+	digi_preload("950_s55", -1);
+	digi_preload("811R02", -1);
+	digi_preload("811B03", -1);
+	digi_preload("811R03", -1);
+	digi_preload("811B04", -1);
+	digi_preload("811B06", -1);
+	digi_preload("811R05", -1);
+
+	_811RP01Series = series_load("811RP01", -1, nullptr);
+	_811MC01Series = series_load("811MC01", -1, nullptr);
+	_811BA01Series = series_load("811BA01", -1, nullptr);
+	_811BA02Series = series_load("811BA02", -1, nullptr);
+	_811BA03Series = series_load("811BA03", -1, nullptr);
+	_811BA04Series = series_load("811BA04", -1, nullptr);
+	_811BA05Series = series_load("811BA05", -1, nullptr);
+
+	_811RipleyMach = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, 0, 100, 1024, false, triggerMachineByHashCallback, "811 ripley");
+	sendWSMessage_10000(1, _811RipleyMach, 1, _811RP01Series, 1, -1, _811RP01Series, 1, 1, 0);
+	_811McMach = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, 0, 100, 1280, false, triggerMachineByHashCallback, "811 mc");
+	sendWSMessage_10000(1, _811McMach, 1, _811MC01Series, 1, -1, _811MC01Series, 1, 1, 0);
+	_811BaronMach = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, 0, 100, 768, false, triggerMachineByHashCallback, "811 baron");
+	sendWSMessage_10000(1, _811BaronMach, 12, _811BA01Series, 12, 1, _811BA01Series, 12, 17, 4);
+
+	sendWSMessage_110000(_811BaronMach, 11);
+}
+
+void Room811::pre_parser() {
+	// Nothing
+}
+
+void Room811::parser() {
 }
 
 void Room811::daemon() {
diff --git a/engines/m4/riddle/rooms/section8/room811.h b/engines/m4/riddle/rooms/section8/room811.h
index 7d962f5ed8e..38deb2ec5f2 100644
--- a/engines/m4/riddle/rooms/section8/room811.h
+++ b/engines/m4/riddle/rooms/section8/room811.h
@@ -33,8 +33,26 @@ public:
 	Room811() : Room() {}
 	~Room811() override {}
 
+	void preload() override;
 	void init() override;
+	void pre_parser() override;
+	void parser() override;
 	void daemon() override;
+
+private:
+	int32 _field0 = 0;
+	
+	int32 _811BA01Series = 0;
+	int32 _811BA02Series = 0;
+	int32 _811BA03Series = 0;
+	int32 _811BA04Series = 0;
+	int32 _811BA05Series = 0;
+	int32 _811MC01Series = 0;
+	int32 _811RP01Series = 0;
+	
+	machine *_811BaronMach = nullptr;
+	machine *_811McMach = nullptr;
+	machine *_811RipleyMach = nullptr;
 };
 
 } // namespace Rooms




More information about the Scummvm-git-logs mailing list