[Scummvm-git-logs] scummvm master -> 9e7be1127b65ae59943204a3aaa39926fa97e632
dreammaster
noreply at scummvm.org
Fri Nov 15 06:43:04 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:
9e7be1127b M4: RIDDLE: Walking fixes for room 402
Commit: 9e7be1127b65ae59943204a3aaa39926fa97e632
https://github.com/scummvm/scummvm/commit/9e7be1127b65ae59943204a3aaa39926fa97e632
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-11-14T22:42:51-08:00
Commit Message:
M4: RIDDLE: Walking fixes for room 402
Changed paths:
engines/m4/riddle/rooms/section4/room402.cpp
diff --git a/engines/m4/riddle/rooms/section4/room402.cpp b/engines/m4/riddle/rooms/section4/room402.cpp
index 29d6896ac47..50c6b27366d 100644
--- a/engines/m4/riddle/rooms/section4/room402.cpp
+++ b/engines/m4/riddle/rooms/section4/room402.cpp
@@ -377,10 +377,11 @@ void Room402::daemon() {
case 55:
terminateMachineAndNull(_ripEnterLeave);
series_unload(_ripDownStairs);
+ ws_unhide_walker();
ws_demand_location(345, 275, 3);
ws_walk(375, 279, nullptr,
(_G(flags)[V131] == 402) ? 56 : 50,
- 1);
+ 4);
break;
case 56:
@@ -1401,23 +1402,14 @@ void Room402::pre_parser() {
bool takeFlag = player_said("take");
bool lookFlag = player_said_any("look", "look at");
- if (lookFlag && player_said(" ")) {
- _G(player).need_to_walk = false;
- _G(player).ready_to_walk = true;
- _G(player).waiting_for_walk = false;
- }
+ if (lookFlag && player_said(" "))
+ _G(player).resetWalk();
- if (player_said("journal") && !takeFlag && !lookFlag && _G(kernel).trigger == -1) {
- _G(player).need_to_walk = false;
- _G(player).ready_to_walk = true;
- _G(player).waiting_for_walk = false;
- }
+ if (player_said("journal") && !takeFlag && !lookFlag && _G(kernel).trigger == -1)
+ _G(player).resetWalk();
- if (player_said("DANZIG") && !player_said("ENTER", "DANZIG")) {
- _G(player).need_to_walk = false;
- _G(player).ready_to_walk = true;
- _G(player).waiting_for_walk = false;
- }
+ if (player_said("DANZIG") && !player_said("ENTER", "DANZIG"))
+ _G(player).resetWalk();
if (!_G(flags)[V112] && !player_said("WALK TO") &&
(!talkFlag || !player_said("WOLF")) &&
@@ -1433,32 +1425,25 @@ void Room402::pre_parser() {
_val12 = 2000;
_val13 = 2240;
- _G(kernel).trigger_mode = KT_DAEMON;
_G(flags)[V111]++;
- kernel_timing_trigger(1, 110);
- } else if (_G(flags)[V116] || !player_said("WOLF") || (
- (!player_said("US DOLLARS") || !inv_player_has("US DOLLARS")) &&
- (!player_said("CHINESE YUAN") || !inv_player_has("CHINESE YUAN")) &&
- (!player_said("PERUVIAN INTI") || !inv_player_has("PERUVIAN INTI")) &&
- (!player_said("SIKKIMESE RUPEE") || !inv_player_has("SIKKIMESE RUPEE"))
- )) {
+ kernel_timing_trigger(1, 110, KT_DAEMON, KT_PREPARSE);
+
+ } else if (!_G(flags)[V116] && player_said("WOLF") && (
+ HAS("US DOLLARS") || HAS("CHINESE YUAN") ||
+ HAS("PERUVIAN INTI") || HAS("SIKKIMESE RUPEE"))) {
+ player_set_commands_allowed(false);
+ _G(flags)[V116] = 1;
+ intr_cancel_sentence();
+ kernel_timing_trigger(1, 230, KT_DAEMON, KT_PREPARSE);
+ } else {
if (talkFlag && player_said("WOLF"))
intr_cancel_sentence();
player_set_commands_allowed(false);
_val12 = 2000;
_val13 = 2250;
- _G(kernel).trigger_mode = KT_DAEMON;
- kernel_timing_trigger(1, 110);
- } else {
- player_set_commands_allowed(false);
- _G(flags)[V116] = 1;
- intr_cancel_sentence();
- _G(kernel).trigger_mode = KT_DAEMON;
- kernel_timing_trigger(1, 230);
+ kernel_timing_trigger(1, 110, KT_DAEMON, KT_PREPARSE);
}
-
- _G(kernel).trigger_mode = KT_PREPARSE;
}
void Room402::parser() {
More information about the Scummvm-git-logs
mailing list