[Scummvm-git-logs] scummvm master -> 0025f9ad29d0e11f7888e23ad7b48430350b4ace
Strangerke
noreply at scummvm.org
Wed Jan 8 07:02:52 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:
0025f9ad29 M4: RIDDLE: Room 808: Start working on daemon
Commit: 0025f9ad29d0e11f7888e23ad7b48430350b4ace
https://github.com/scummvm/scummvm/commit/0025f9ad29d0e11f7888e23ad7b48430350b4ace
Author: Strangerke (arnaud.boutonne at gmail.com)
Date: 2025-01-08T08:02:38+01:00
Commit Message:
M4: RIDDLE: Room 808: Start working on daemon
Changed paths:
engines/m4/riddle/rooms/section8/room808.cpp
engines/m4/riddle/rooms/section8/room808.h
diff --git a/engines/m4/riddle/rooms/section8/room808.cpp b/engines/m4/riddle/rooms/section8/room808.cpp
index 647126e5f11..76379c18d52 100644
--- a/engines/m4/riddle/rooms/section8/room808.cpp
+++ b/engines/m4/riddle/rooms/section8/room808.cpp
@@ -274,6 +274,57 @@ void Room808::parser() {
}
void Room808::daemon() {
+ switch (_G(kernel).trigger) {
+ case 1:
+ player_set_commands_allowed(true);
+ room808_sub1(0, 0);
+ room808_sub1(1, 0);
+ room808_sub1(2, 0);
+ room808_sub1(3, 0);
+ room808_sub1(4, 0);
+ room808_sub1(_G(flags[V094]), 1);
+ addMcHotspot(_G(flags[V097]));
+
+ if (_G(flags[V097]) == 0) {
+ _meiChienHandsBehindBackSeries = series_load("MEI CHIEN HANDS BEHIND BACK", -1, nullptr);
+ setGlobals3(_meiChienHandsBehindBackSeries, 1, 17);
+ subD7916(_mcTrekMach, -1);
+ }
+
+ kernel_timing_trigger(imath_ranged_rand(1200, 1800), 18);
+
+ break;
+
+ case 2:
+ case 3:
+ case 4:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ case 15:
+ case 16:
+ case 17:
+ case 18:
+ case 19:
+ case 20:
+ case 21:
+ case 22:
+ case 23:
+ case 24:
+ case 25:
+ case 26:
+ case 966:
+ case 967:
+
+ default:
+ break;
+ }
// TODO Not implemented yet
}
@@ -310,6 +361,51 @@ bool Room808::getWalkPath(machine *machine, int32 walk_x, int32 walk_y) {
return retVal;
}
+void Room808::room808_sub1(int i, int i1) {
+ //TODO Not implemented yet
+}
+
+void Room808::addMcHotspot(int32 val1) {
+ for (HotSpotRec* curr = _G(currentSceneDef).hotspots; curr != nullptr; curr = curr->next) {
+ if (scumm_stricmp(curr->vocab, "MEI CHEN")) {
+ hotspot_delete_record(_G(currentSceneDef).hotspots, curr);
+ break;
+ }
+ }
+
+ HotSpotRec *newHotspot;
+ switch (val1) {
+ case 0:
+ newHotspot = hotspot_new(100, 170, 124, 241);
+ hotspot_newVerb(newHotspot, "TALK TO");
+ hotspot_newVocab(newHotspot, "MEI CHEN");
+
+ newHotspot->cursor_number = 7;
+ newHotspot->feet_x = 128;
+ newHotspot->feet_y = 221;
+ newHotspot->facing = 7;
+
+ break;
+
+ case 1:
+ newHotspot = hotspot_new(336, 74, 352, 117);
+ hotspot_newVerb(newHotspot, "TALK TO");
+ hotspot_newVocab(newHotspot, "MEI CHEN");
+
+ newHotspot->cursor_number = 7;
+ newHotspot->feet_x = 32767;
+ newHotspot->feet_y = 32767;
+ newHotspot->facing = 0;
+
+ break;
+
+ default:
+ error("addMcHotspot - unexpected value");
+ }
+
+ _G(currentSceneDef).hotspots = hotspot_add(_G(currentSceneDef).hotspots, newHotspot, true);
+}
+
} // namespace Rooms
} // namespace Riddle
} // namespace M4
diff --git a/engines/m4/riddle/rooms/section8/room808.h b/engines/m4/riddle/rooms/section8/room808.h
index e30b92ac123..50db81a2e89 100644
--- a/engines/m4/riddle/rooms/section8/room808.h
+++ b/engines/m4/riddle/rooms/section8/room808.h
@@ -22,15 +22,15 @@
#ifndef M4_RIDDLE_ROOMS_SECTION8_ROOM808_H
#define M4_RIDDLE_ROOMS_SECTION8_ROOM808_H
-#include "m4/riddle/rooms/room.h"
+#include "m4/riddle/rooms/section8/section8_room.h"
namespace M4 {
namespace Riddle {
namespace Rooms {
-class Room808 : public Room {
+class Room808 : public Section8Room {
public:
- Room808() : Room() {}
+ Room808() : Section8Room() {}
~Room808() override {}
void preload() override;
@@ -42,6 +42,8 @@ public:
private:
bool getWalkPath(machine *machine, int32 walk_x, int32 walk_y);
+ void room808_sub1(int i, int i1);
+ void addMcHotspot(int32 val1);
int32 _807Rp04Series = 0;
int32 _808McupSeries = 0;
@@ -50,6 +52,7 @@ private:
int32 _808RpupSeries = 0;
int32 _mctd61Series = 0;
int32 _mctd82aSeries = 0;
+ int32 _meiChienHandsBehindBackSeries = 0;
int32 _ripLooksAroundInAweSeries = 0;
int32 _ripMedReach1HandPos2Series = 0;
int32 _ripPos3LookAroundSeries = 0;
More information about the Scummvm-git-logs
mailing list