[Scummvm-git-logs] scummvm master -> d42bc49568f6c0ace541d53985232507a45facde
dreammaster
noreply at scummvm.org
Sun Feb 9 04:04:32 UTC 2025
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
b8a1353583 M4: RIDDLE: Fix getting charcoal
d42bc49568 M4: RIDDLE: Fix looking at pottery
Commit: b8a135358330944b528611a4d3de6f9f29aa7c19
https://github.com/scummvm/scummvm/commit/b8a135358330944b528611a4d3de6f9f29aa7c19
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2025-02-08T19:58:06-08:00
Commit Message:
M4: RIDDLE: Fix getting charcoal
Changed paths:
engines/m4/riddle/rooms/section2/room205.cpp
diff --git a/engines/m4/riddle/rooms/section2/room205.cpp b/engines/m4/riddle/rooms/section2/room205.cpp
index 17490fd6a27..e1bf4250489 100644
--- a/engines/m4/riddle/rooms/section2/room205.cpp
+++ b/engines/m4/riddle/rooms/section2/room205.cpp
@@ -537,7 +537,7 @@ void Room205::parser() {
break;
case 3:
- kernel_examine_inventory_object("PING CHARCOAL", nullptr, 5, 1, 144, 271, 4, nullptr, -1);
+ kernel_examine_inventory_object("PING CHARCOAL", 5, 1, 144, 271, 4, nullptr, -1);
break;
case 4:
Commit: d42bc49568f6c0ace541d53985232507a45facde
https://github.com/scummvm/scummvm/commit/d42bc49568f6c0ace541d53985232507a45facde
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2025-02-08T20:04:21-08:00
Commit Message:
M4: RIDDLE: Fix looking at pottery
Changed paths:
engines/m4/platform/sound/digi.cpp
engines/m4/riddle/flags.h
engines/m4/riddle/rooms/section8/room801.cpp
engines/m4/riddle/rooms/section8/room802.cpp
diff --git a/engines/m4/platform/sound/digi.cpp b/engines/m4/platform/sound/digi.cpp
index 38be5b66f31..673ac994286 100644
--- a/engines/m4/platform/sound/digi.cpp
+++ b/engines/m4/platform/sound/digi.cpp
@@ -241,6 +241,7 @@ void digi_unload(const Common::String &name) {
}
int32 digi_play(const char *name, uint channel, int32 vol, int32 trigger, int32 room_num) {
+ warning("digi_play: %s", name);
return _G(digi).play(name, channel, vol, trigger, room_num);
}
diff --git a/engines/m4/riddle/flags.h b/engines/m4/riddle/flags.h
index 4290e32dee5..71c91030903 100644
--- a/engines/m4/riddle/flags.h
+++ b/engines/m4/riddle/flags.h
@@ -286,7 +286,7 @@ enum Flag {
V249 = 249,
V250 = 250,
V251 = 251,
- V252 = 252,
+ kTerracottaSoldiers = 252,
V253 = 253,
V254 = 254,
V255 = 255,
diff --git a/engines/m4/riddle/rooms/section8/room801.cpp b/engines/m4/riddle/rooms/section8/room801.cpp
index ebf7d753204..384affb1224 100644
--- a/engines/m4/riddle/rooms/section8/room801.cpp
+++ b/engines/m4/riddle/rooms/section8/room801.cpp
@@ -86,7 +86,7 @@ void Room801::init() {
if (_G(game).previous_room == 850) {
_G(flags)[V250] = 0;
_G(flags)[V251] = 0;
- _G(flags)[V252] = 0;
+ _G(flags)[kTerracottaSoldiers] = 0;
_G(flags)[V273] = 0;
_cellarDoorOpened = 0;
@@ -274,38 +274,56 @@ void Room801::parser() {
else if (lookFl && player_said("pottery")) {
switch (_G(kernel).trigger) {
case -1:
+ if (_G(flags)[kTerracottaSoldiers]) {
+ digi_play("801r22", 1);
+ } else {
+ player_set_commands_allowed(false);
+ ws_hide_walker();
+ _ripAnimationMach = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, -53, 100, 0x100,
+ false, triggerMachineByHashCallback, "rip kneel to pottery");
+ sendWSMessage_10000(1, _ripAnimationMach, _ripKneelPotterySeries, 1, 3, 1,
+ _ripKneelPotterySeries, 3, 3, 0);
+ digi_play("801r19", 1, 255, 1);
+ }
break;
case 1:
if (_counter == 0)
++_counter;
else
- sendWSMessage_10000(1, _ripAnimationMach, _ripEntersRootCellarSeries, 3, 42, 2, _ripEntersRootCellarSeries, 42, 42, 0);
+ sendWSMessage_10000(1, _ripAnimationMach, _ripKneelPotterySeries, 3, 42, 2,
+ _ripKneelPotterySeries, 42, 42, 0);
break;
case 2:
+ _counter = 0;
digi_play("801r20", 1, 255, 3, -1);
- sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 31, 40, 3, _meiPrattleLoopSeries, 40, 40, 0);
+ sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 31, 40, 3,
+ _meiPrattleLoopSeries, 40, 40, 0);
break;
case 3:
if (_counter == 0)
++_counter;
else {
_counter = 0;
- sendWSMessage_10000(1, _ripAnimationMach, _ripEntersRootCellarSeries, 42, 26, 4, _ripEntersRootCellarSeries, 26, 26, 0);
- sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 37, 40, 4, _meiPrattleLoopSeries, 37, 40, 1);
+ sendWSMessage_10000(1, _ripAnimationMach, _ripKneelPotterySeries, 42, 26, 4,
+ _ripKneelPotterySeries, 26, 26, 0);
+ sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 37, 40, 4,
+ _meiPrattleLoopSeries, 37, 40, 1);
digi_play("801m10", 1, 255, 4, -1);
}
break;
case 4:
- if (_counter == 2)
+ if (_counter < 2)
++_counter;
else {
_counter = 0;
- sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 40, 40, 5, _meiPrattleLoopSeries, 40, 40, 0);
- sendWSMessage_10000(1, _ripAnimationMach, _ripKneelPotterySeries, 26, 42, 5, _ripKneelPotterySeries, 42, 42, 0);
+ sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 40, 40, 5,
+ _meiPrattleLoopSeries, 40, 40, 0);
+ sendWSMessage_10000(1, _ripAnimationMach, _ripKneelPotterySeries, 26, 42, 5,
+ _ripKneelPotterySeries, 42, 42, 0);
}
break;
case 5:
- if (_counter == 1)
+ if (_counter < 1)
++_counter;
else {
_counter = 0;
@@ -313,11 +331,14 @@ void Room801::parser() {
}
break;
case 6:
- sendWSMessage_10000(1, _ripAnimationMach, _ripKneelPotterySeries, 42, 26, 7, _ripKneelPotterySeries, 26, 26, 0);
+ sendWSMessage_10000(1, _ripAnimationMach, _ripKneelPotterySeries, 42, 26, 7,
+ _ripKneelPotterySeries, 26, 26, 0);
break;
case 7:
- sendWSMessage_10000(1, _ripAnimationMach, _ripKneelPotterySeries, 26, 1, 8, _ripKneelPotterySeries, 1, 1, 0);
- sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 37, 40, 9, _meiPrattleLoopSeries, 37, 40, 1);
+ sendWSMessage_10000(1, _ripAnimationMach, _ripKneelPotterySeries, 26, 1, 8,
+ _ripKneelPotterySeries, 1, 1, 0);
+ sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 37, 40, 9,
+ _meiPrattleLoopSeries, 37, 40, 1);
digi_play("801m11", 1, 255, 9, -1);
break;
case 8:
@@ -330,11 +351,12 @@ void Room801::parser() {
++_counter;
else {
_counter = 0;
- sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 40, 31, 10, _meiPrattleLoopSeries, 31, 31, 0);
+ sendWSMessage_10000(1, _mcTrekMach, _meiPrattleLoopSeries, 40, 31, 10,
+ _meiPrattleLoopSeries, 31, 31, 0);
}
break;
case 10:
- _G(flags)[V252] = 1;
+ _G(flags)[kTerracottaSoldiers] = 1;
player_set_commands_allowed(true);
break;
default:
@@ -518,7 +540,7 @@ void Room801::parser() {
}
else if (talkFl && player_said("farmer")) {
- if (_G(flags)[V252] || _G(flags)[V253] || _G(flags)[V255]) {
+ if (_G(flags)[kTerracottaSoldiers] || _G(flags)[V253] || _G(flags)[V255]) {
ws_hide_walker(_G(my_walker));
player_set_commands_allowed(false);
_ripAnimationMach = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 167, 303, 49, 1280, true, triggerMachineByHashCallback, "rip talking to farmer");
@@ -539,7 +561,7 @@ void Room801::parser() {
_G(kernel).trigger_mode = KT_PARSE;
conv_load("conv801a", 10, 10, 747);
conv_set_shading(65);
- conv_export_value(conv_get_handle(), _G(flags)[V252], 0);
+ conv_export_value(conv_get_handle(), _G(flags)[kTerracottaSoldiers], 0);
conv_export_value(conv_get_handle(), _G(flags)[V255], 1);
conv_export_value(conv_get_handle(), _G(flags)[V253], 2);
diff --git a/engines/m4/riddle/rooms/section8/room802.cpp b/engines/m4/riddle/rooms/section8/room802.cpp
index b957e8a6387..9b146a85244 100644
--- a/engines/m4/riddle/rooms/section8/room802.cpp
+++ b/engines/m4/riddle/rooms/section8/room802.cpp
@@ -180,7 +180,7 @@ void Room802::parser() {
}
else if (lookFl && player_said("wall") && _G(flags)[V255] == 0) {
- if (_G(flags)[V252]) {
+ if (_G(flags)[kTerracottaSoldiers]) {
_G(kernel).trigger_mode = KT_DAEMON;
kernel_trigger_dispatchx(kernel_trigger_create(14));
_G(kernel).trigger_mode = KT_PARSE;
@@ -238,7 +238,7 @@ void Room802::parser() {
digi_play("802r09", 1, 255, 2, -1);
} else if (_G(flags)[V254]){
digi_play("802r15", 1, 255, 2, -1);
- } else if (_G(flags)[V252]) {
+ } else if (_G(flags)[kTerracottaSoldiers]) {
digi_play("802r02", 1, 255, 2, -1);
} else {
digi_play("802r03", 1, 255, 2, -1);
More information about the Scummvm-git-logs
mailing list