[Scummvm-git-logs] scummvm master -> 78b152b68a3a1feed0119473283c78a456818f5a
Strangerke
noreply at scummvm.org
Fri Nov 29 06:48:54 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:
78b152b68a M4: RIDDLE: room 703 - Implement playCheckBrochureAnim
Commit: 78b152b68a3a1feed0119473283c78a456818f5a
https://github.com/scummvm/scummvm/commit/78b152b68a3a1feed0119473283c78a456818f5a
Author: Strangerke (arnaud.boutonne at gmail.com)
Date: 2024-11-29T07:48:43+01:00
Commit Message:
M4: RIDDLE: room 703 - Implement playCheckBrochureAnim
Changed paths:
engines/m4/riddle/rooms/section7/room703.cpp
engines/m4/riddle/rooms/section7/room703.h
diff --git a/engines/m4/riddle/rooms/section7/room703.cpp b/engines/m4/riddle/rooms/section7/room703.cpp
index c05b23c4b58..715aefe98a4 100644
--- a/engines/m4/riddle/rooms/section7/room703.cpp
+++ b/engines/m4/riddle/rooms/section7/room703.cpp
@@ -152,31 +152,31 @@ void Room703::parser() {
} else if (player_said("PRAYER WHEEL BROCHURE", "EMPTY NICHE") && inv_player_has("PRAYER WHEEL BROCHURE")) {
digi_play("com123", 1, 255, -1, 997);
} else if (player_said("PRAYER WHEEL BROCHURE", "PRAYER WHEEL #1") && inv_player_has("PRAYER WHEEL BROCHURE")) {
- sub9EA78("703r04", _G(kernel).trigger);
+ playCheckBrochureAnim("703r04", _G(kernel).trigger);
} else if (player_said("PRAYER WHEEL BROCHURE", "PRAYER WHEEL #2") && inv_player_has("PRAYER WHEEL BROCHURE")) {
- sub9EA78("703r09", _G(kernel).trigger);
+ playCheckBrochureAnim("703r09", _G(kernel).trigger);
} else if (player_said("PRAYER WHEEL BROCHURE", "PRAYER WHEEL #3") && inv_player_has("PRAYER WHEEL BROCHURE")) {
- sub9EA78("703r10", _G(kernel).trigger);
+ playCheckBrochureAnim("703r10", _G(kernel).trigger);
} else if (player_said("PRAYER WHEEL BROCHURE", "PRAYER WHEEL #4") && inv_player_has("PRAYER WHEEL BROCHURE")) {
switch (_G(flags[V217])) {
case 1:
- sub9EA78("704r09", _G(kernel).trigger);
+ playCheckBrochureAnim("704r09", _G(kernel).trigger);
break;
case 2:
- sub9EA78("705r04", _G(kernel).trigger);
+ playCheckBrochureAnim("705r04", _G(kernel).trigger);
break;
case 3:
- sub9EA78("703r11", _G(kernel).trigger);
+ playCheckBrochureAnim("703r11", _G(kernel).trigger);
break;
case 4:
- sub9EA78("705r14a", _G(kernel).trigger);
+ playCheckBrochureAnim("705r14a", _G(kernel).trigger);
break;
case 5:
- sub9EA78("706r10", _G(kernel).trigger);
+ playCheckBrochureAnim("706r10", _G(kernel).trigger);
break;
default:
@@ -975,7 +975,7 @@ void Room703::callback(frac16 myMessage, machine *sender) {
}
void Room703::conv703a() {
- int32 who = conv_whos_talking();
+ const int32 who = conv_whos_talking();
if (conv_sound_to_play() == nullptr) {
conv_resume(conv_get_handle());
@@ -989,9 +989,47 @@ void Room703::conv703a() {
}
}
-void Room703::sub9EA78(const char *digiName, int32 trigger) {
- //TODO not implemented
- warning("STUB sub9EA78");
+void Room703::playCheckBrochureAnim(const char *digiName, int32 trigger) {
+ switch (trigger) {
+ case -1:
+ player_set_commands_allowed(false);
+ _ripChecksBrochureSeries = series_load("RIP CHECKS BROCHURE", -1, nullptr);
+ setGlobals1(_ripChecksBrochureSeries, 1, 25, 25, 25, 0, 25, 31, 31, 31, 0, 31, 1, 1, 1, 0, 0, 0, 0, 0, 0);
+ sendWSMessage_110000(_G(my_walker), 41);
+
+ break;
+
+ case 41:
+ kernel_timing_trigger(60, 43, nullptr);
+ break;
+
+ case 43:
+ sendWSMessage_120000(_G(my_walker), -1);
+ digi_play(digiName, 1, 255, 44, -1);
+
+ break;
+
+ case 44:
+ kernel_timing_trigger(10, 45, nullptr);
+ break;
+
+ case 45:
+ sendWSMessage_130000(_G(my_walker), 48);
+ break;
+
+ case 48:
+ sendWSMessage_150000(_G(my_walker), 49);
+ break;
+
+ case 49:
+ series_unload(_ripChecksBrochureSeries);
+ player_set_commands_allowed(true);
+
+ break;
+
+ default:
+ break;
+ }
}
void Room703::sub9E50F(int32 trigger, int i) {
diff --git a/engines/m4/riddle/rooms/section7/room703.h b/engines/m4/riddle/rooms/section7/room703.h
index 87f4ebad6b7..49007ca8a08 100644
--- a/engines/m4/riddle/rooms/section7/room703.h
+++ b/engines/m4/riddle/rooms/section7/room703.h
@@ -42,7 +42,7 @@ public:
private:
static void callback(frac16 myMessage, machine *sender);
void conv703a();
- void sub9EA78(const char *digiName, int32 trigger);
+ void playCheckBrochureAnim(const char *digiName, int32 trigger);
void sub9E50F(int32 trigger, int i);
machine *_monkMach = nullptr;
@@ -58,6 +58,7 @@ private:
int32 _monk2Series = 0;
int32 _monk3Series = 0;
int32 _monk4Series = 0;
+ int32 _ripChecksBrochureSeries = 0;
int32 _ripGoesUpStairsSeries = 0;
int32 _ripLooksDownSeries = 0;
int32 _ripTrekMedReachHandPos1Series = 0;
More information about the Scummvm-git-logs
mailing list