[Scummvm-git-logs] scummvm master -> 538822157e377a741ba41d78820b6a13572507a7
dreammaster
noreply at scummvm.org
Thu Oct 3 05:04:09 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:
538822157e M4: RIDDLE: Implementing maze rooms
Commit: 538822157e377a741ba41d78820b6a13572507a7
https://github.com/scummvm/scummvm/commit/538822157e377a741ba41d78820b6a13572507a7
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-10-02T22:04:05-07:00
Commit Message:
M4: RIDDLE: Implementing maze rooms
Changed paths:
engines/m4/riddle/rooms/section6/room622.cpp
engines/m4/riddle/rooms/section6/room623.cpp
engines/m4/riddle/rooms/section6/room624.cpp
engines/m4/riddle/rooms/section6/room625.cpp
engines/m4/riddle/rooms/section6/room626.cpp
engines/m4/riddle/rooms/section6/room627.cpp
engines/m4/riddle/rooms/section6/room628.cpp
engines/m4/riddle/rooms/section6/room629.cpp
engines/m4/riddle/rooms/section6/room630.cpp
engines/m4/riddle/rooms/section6/room631.cpp
engines/m4/riddle/rooms/section6/room632.cpp
engines/m4/riddle/rooms/section6/room633.cpp
engines/m4/riddle/rooms/section6/room634.cpp
engines/m4/riddle/rooms/section6/room635.cpp
engines/m4/riddle/rooms/section6/room636.cpp
diff --git a/engines/m4/riddle/rooms/section6/room622.cpp b/engines/m4/riddle/rooms/section6/room622.cpp
index 9a29492262f..5618c904884 100644
--- a/engines/m4/riddle/rooms/section6/room622.cpp
+++ b/engines/m4/riddle/rooms/section6/room622.cpp
@@ -54,6 +54,8 @@ void Room622::init() {
ws_demand_location(313, 290, 5);
break;
}
+
+ digi_play_loop("950_s28c", 3);
}
void Room622::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room623.cpp b/engines/m4/riddle/rooms/section6/room623.cpp
index 2cd86c66b46..b746b606e9c 100644
--- a/engines/m4/riddle/rooms/section6/room623.cpp
+++ b/engines/m4/riddle/rooms/section6/room623.cpp
@@ -28,6 +28,41 @@ namespace Riddle {
namespace Rooms {
void Room623::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 605:
+ digi_preload("950_s28c");
+ digi_stop(3);
+ digi_unload("950_s28");
+ ws_demand_location(303, 352, 1);
+ break;
+
+ case 622:
+ ws_demand_location(-30, 362, 3);
+ ws_walk(30, 310, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 624:
+ ws_demand_location(670, 290, 9);
+ ws_walk(605, 290, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 629:
+ ws_demand_location(381, 283, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(313, 283, 5);
+ break;
+ }
+
+ digi_play_loop("950_s28c", 3);
}
void Room623::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room624.cpp b/engines/m4/riddle/rooms/section6/room624.cpp
index 6755f3deb4d..de56b146444 100644
--- a/engines/m4/riddle/rooms/section6/room624.cpp
+++ b/engines/m4/riddle/rooms/section6/room624.cpp
@@ -28,6 +28,34 @@ namespace Riddle {
namespace Rooms {
void Room624::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 623:
+ ws_demand_location(-30, 310, 3);
+ ws_walk(30, 310, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 625:
+ ws_demand_location(670, 290, 9);
+ ws_walk(605, 290, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 630:
+ ws_demand_location(367, 296, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(367, 296, 5);
+ break;
+ }
+
+ digi_play_loop("950_s28c", 3);
}
void Room624::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room625.cpp b/engines/m4/riddle/rooms/section6/room625.cpp
index b92f072c587..e066cc657e3 100644
--- a/engines/m4/riddle/rooms/section6/room625.cpp
+++ b/engines/m4/riddle/rooms/section6/room625.cpp
@@ -28,6 +28,26 @@ namespace Riddle {
namespace Rooms {
void Room625::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 624:
+ ws_demand_location(-30, 310, 3);
+ ws_walk(30, 310, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ default:
+ digi_preload("950_28c");
+ ws_demand_location(-30, 310, 3);
+ ws_walk(30, 310, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+ }
+
+ digi_play_loop("950_s28c", 3);
}
void Room625::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room626.cpp b/engines/m4/riddle/rooms/section6/room626.cpp
index 1f0757e8fb1..b4273050e4a 100644
--- a/engines/m4/riddle/rooms/section6/room626.cpp
+++ b/engines/m4/riddle/rooms/section6/room626.cpp
@@ -28,6 +28,32 @@ namespace Riddle {
namespace Rooms {
void Room626::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 620:
+ ws_demand_location(340, 500, 1);
+ break;
+
+ case 627:
+ ws_demand_location(670, 290, 9);
+ ws_walk(605, 290, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 631:
+ ws_demand_location(341, 290, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(340, 500, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room626::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room627.cpp b/engines/m4/riddle/rooms/section6/room627.cpp
index 013bb1fdcd8..75a585454d7 100644
--- a/engines/m4/riddle/rooms/section6/room627.cpp
+++ b/engines/m4/riddle/rooms/section6/room627.cpp
@@ -28,6 +28,38 @@ namespace Riddle {
namespace Rooms {
void Room627::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 621:
+ ws_demand_location(429, 337, 1);
+ break;
+
+ case 626:
+ ws_demand_location(-30, 328, 3);
+ ws_walk(30, 328, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 628:
+ ws_demand_location(670, 290, 9);
+ ws_walk(605, 290, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 632:
+ ws_demand_location(426, 283, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(429, 337, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room627::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room628.cpp b/engines/m4/riddle/rooms/section6/room628.cpp
index c3edc10a315..13cfc446664 100644
--- a/engines/m4/riddle/rooms/section6/room628.cpp
+++ b/engines/m4/riddle/rooms/section6/room628.cpp
@@ -28,6 +28,38 @@ namespace Riddle {
namespace Rooms {
void Room628::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 622:
+ ws_demand_location(341, 344, 1);
+ break;
+
+ case 627:
+ ws_demand_location(-30, 292, 3);
+ ws_walk(30, 292, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 629:
+ ws_demand_location(670, 330, 9);
+ ws_walk(605, 330, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 633:
+ ws_demand_location(199, 277, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(341, 344, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room628::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room629.cpp b/engines/m4/riddle/rooms/section6/room629.cpp
index f3536dabb22..6b8bba61d5d 100644
--- a/engines/m4/riddle/rooms/section6/room629.cpp
+++ b/engines/m4/riddle/rooms/section6/room629.cpp
@@ -28,6 +28,38 @@ namespace Riddle {
namespace Rooms {
void Room629::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 623:
+ ws_demand_location(299, 339, 1);
+ break;
+
+ case 628:
+ ws_demand_location(-30, 310, 3);
+ ws_walk(30, 310, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 630:
+ ws_demand_location(670, 290, 9);
+ ws_walk(605, 290, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 634:
+ ws_demand_location(404, 273, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(299, 339, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room629::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room630.cpp b/engines/m4/riddle/rooms/section6/room630.cpp
index 8bfca3a44a0..5fb4ea3d765 100644
--- a/engines/m4/riddle/rooms/section6/room630.cpp
+++ b/engines/m4/riddle/rooms/section6/room630.cpp
@@ -28,6 +28,32 @@ namespace Riddle {
namespace Rooms {
void Room630::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 624:
+ ws_demand_location(382, 326, 1);
+ break;
+
+ case 629:
+ ws_demand_location(-30, 333, 3);
+ ws_walk(30, 333, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 635:
+ ws_demand_location(410, 276, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(382, 326, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room630::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room631.cpp b/engines/m4/riddle/rooms/section6/room631.cpp
index 26bbc867ed9..054af5baeab 100644
--- a/engines/m4/riddle/rooms/section6/room631.cpp
+++ b/engines/m4/riddle/rooms/section6/room631.cpp
@@ -28,6 +28,32 @@ namespace Riddle {
namespace Rooms {
void Room631::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 626:
+ ws_demand_location(255, 341, 1);
+ break;
+
+ case 632:
+ ws_demand_location(670, 290, 9);
+ ws_walk(605, 290, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 637:
+ ws_demand_location(403, 271, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(255, 341, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room631::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room632.cpp b/engines/m4/riddle/rooms/section6/room632.cpp
index fa4d0f98f80..5eca730a19f 100644
--- a/engines/m4/riddle/rooms/section6/room632.cpp
+++ b/engines/m4/riddle/rooms/section6/room632.cpp
@@ -28,6 +28,38 @@ namespace Riddle {
namespace Rooms {
void Room632::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 627:
+ ws_demand_location(248, 343, 1);
+ break;
+
+ case 631:
+ ws_demand_location(-30, 310, 3);
+ ws_walk(30, 310, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 633:
+ ws_demand_location(670, 290, 9);
+ ws_walk(605, 290, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 638:
+ ws_demand_location(230, 291, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(248, 343, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room632::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room633.cpp b/engines/m4/riddle/rooms/section6/room633.cpp
index 8875a548430..ee28c2537fd 100644
--- a/engines/m4/riddle/rooms/section6/room633.cpp
+++ b/engines/m4/riddle/rooms/section6/room633.cpp
@@ -28,6 +28,38 @@ namespace Riddle {
namespace Rooms {
void Room633::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 607:
+ ws_demand_location(259, 277, 5);
+ break;
+
+ case 628:
+ ws_demand_location(200, 345, 1);
+ break;
+
+ case 632:
+ ws_demand_location(-30, 310, 3);
+ ws_walk(30, 310, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 634:
+ ws_demand_location(670, 290, 9);
+ ws_walk(605, 290, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(200, 345, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room633::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room634.cpp b/engines/m4/riddle/rooms/section6/room634.cpp
index 5a4748a5fbd..9b589f37a33 100644
--- a/engines/m4/riddle/rooms/section6/room634.cpp
+++ b/engines/m4/riddle/rooms/section6/room634.cpp
@@ -28,6 +28,38 @@ namespace Riddle {
namespace Rooms {
void Room634::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 629:
+ ws_demand_location(372, 342, 1);
+ break;
+
+ case 633:
+ ws_demand_location(-30, 310, 3);
+ ws_walk(30, 310, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 635:
+ ws_demand_location(670, 310, 9);
+ ws_walk(605, 310, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 640:
+ ws_demand_location(365, 267, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(372, 342, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room634::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room635.cpp b/engines/m4/riddle/rooms/section6/room635.cpp
index aeccb5871f6..18718f07d60 100644
--- a/engines/m4/riddle/rooms/section6/room635.cpp
+++ b/engines/m4/riddle/rooms/section6/room635.cpp
@@ -28,6 +28,38 @@ namespace Riddle {
namespace Rooms {
void Room635::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 630:
+ ws_demand_location(308, 340, 1);
+ break;
+
+ case 634:
+ ws_demand_location(-30, 321, 3);
+ ws_walk(30, 321, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 636:
+ ws_demand_location(670, 316, 9);
+ ws_walk(605, 316, nullptr, 1, 9);
+ player_set_commands_allowed(false);
+ break;
+
+ case 641:
+ ws_demand_location(90, 250, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(308, 340, 1);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room635::parser() {
diff --git a/engines/m4/riddle/rooms/section6/room636.cpp b/engines/m4/riddle/rooms/section6/room636.cpp
index e215271245e..3cb748bc9cf 100644
--- a/engines/m4/riddle/rooms/section6/room636.cpp
+++ b/engines/m4/riddle/rooms/section6/room636.cpp
@@ -28,6 +28,28 @@ namespace Riddle {
namespace Rooms {
void Room636::init() {
+ switch (_G(game).previous_room) {
+ case KERNEL_RESTORING_GAME:
+ digi_preload("950_s28c");
+ break;
+
+ case 635:
+ ws_demand_location(-30, 346, 3);
+ ws_walk(30, 346, nullptr, 1, 3);
+ player_set_commands_allowed(false);
+ break;
+
+ case 642:
+ ws_demand_location(268, 234, 5);
+ break;
+
+ default:
+ digi_preload("950_s28c");
+ ws_demand_location(268, 234, 5);
+ break;
+ }
+
+ digi_play_loop("950_28c", 3);
}
void Room636::parser() {
More information about the Scummvm-git-logs
mailing list