[Scummvm-git-logs] scummvm master -> c9ac028d4ec21c508b039a55e399f4ed0f46862e
dreammaster
noreply at scummvm.org
Sat Nov 9 19:26:41 UTC 2024
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:
a163770f59 M4: RIDDLE: New items are added to end of inventory, not the beginning
c9ac028d4e M4: RIDDLE: Change sendWSMessage_multi to sketchInJournal
Commit: a163770f59a0483ef1ddde13b181355487650ae5
https://github.com/scummvm/scummvm/commit/a163770f59a0483ef1ddde13b181355487650ae5
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-11-09T11:26:35-08:00
Commit Message:
M4: RIDDLE: New items are added to end of inventory, not the beginning
Changed paths:
engines/m4/riddle/gui/inventory.cpp
diff --git a/engines/m4/riddle/gui/inventory.cpp b/engines/m4/riddle/gui/inventory.cpp
index 92f3c21774b..d370cdb8bbc 100644
--- a/engines/m4/riddle/gui/inventory.cpp
+++ b/engines/m4/riddle/gui/inventory.cpp
@@ -89,16 +89,11 @@ bool Inventory::add(const Common::String &name, const Common::String &verb, int3
return false;
}
- // Shift existing items up by one
- for (int i = _num_cells; i > 0; --i)
- _items[i] = _items[i - 1];
-
- auto &item = _items[0];
+ auto &item = _items[_num_cells++];
item._name = name;
item._verb = verb;
item._cell = invSprite;
item._cursor = cursor;
- ++_num_cells;
_must_redraw_all = true;
Commit: c9ac028d4ec21c508b039a55e399f4ed0f46862e
https://github.com/scummvm/scummvm/commit/c9ac028d4ec21c508b039a55e399f4ed0f46862e
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-11-09T11:26:35-08:00
Commit Message:
M4: RIDDLE: Change sendWSMessage_multi to sketchInJournal
Changed paths:
engines/m4/riddle/riddle.cpp
engines/m4/riddle/riddle.h
engines/m4/riddle/rooms/section2/room203.cpp
engines/m4/riddle/rooms/section4/room402.cpp
engines/m4/riddle/rooms/section4/room403.cpp
engines/m4/riddle/rooms/section4/room404.cpp
engines/m4/riddle/rooms/section4/room405.cpp
engines/m4/riddle/rooms/section4/room406.cpp
engines/m4/riddle/rooms/section4/room408.cpp
engines/m4/riddle/rooms/section5/room510.cpp
engines/m4/riddle/rooms/section6/room605.cpp
engines/m4/riddle/rooms/section6/room625.cpp
engines/m4/riddle/rooms/section6/room626.cpp
engines/m4/riddle/rooms/section6/room644.cpp
engines/m4/riddle/rooms/section6/room651.cpp
engines/m4/riddle/triggers.cpp
engines/m4/riddle/triggers.h
diff --git a/engines/m4/riddle/riddle.cpp b/engines/m4/riddle/riddle.cpp
index 0b25bbed229..031d8b19a16 100644
--- a/engines/m4/riddle/riddle.cpp
+++ b/engines/m4/riddle/riddle.cpp
@@ -177,7 +177,7 @@ void RiddleEngine::global_parser() {
_G(flags)[kMocaMocheCartoon] = 1;
}
- sendWSMessage_multi("COM028");
+ sketchInJournal("COM028");
}
} else if ((player_said("journal", " ") || player_said("journal", "temple")) &&
!takeFlag && !lookFlag && !inv_player_has(_G(player).noun) &&
@@ -190,7 +190,7 @@ void RiddleEngine::global_parser() {
_G(flags)[V089] = 1;
}
- sendWSMessage_multi("com032");
+ sketchInJournal("com032");
}
} else if (player_said("journal") && player_said_any(" ", "lava") &&
!takeFlag && !lookFlag && !inv_player_has(_G(player).noun) &&
@@ -203,7 +203,7 @@ void RiddleEngine::global_parser() {
_G(flags)[V089] = 1;
}
- sendWSMessage_multi("605r13");
+ sketchInJournal("605r13");
}
} else if ((player_said("journal", "romanov emerald") ||
player_said("journal", "emerald/cork")) &&
@@ -216,7 +216,7 @@ void RiddleEngine::global_parser() {
_G(flags)[V089] = 1;
}
- sendWSMessage_multi(nullptr);
+ sketchInJournal(nullptr);
}
} else if (player_said("journal", "rongorongo tablet") &&
!takeFlag && !lookFlag) {
@@ -227,7 +227,7 @@ void RiddleEngine::global_parser() {
_G(flags)[V288] = 1;
}
- sendWSMessage_multi(nullptr);
+ sketchInJournal(nullptr);
}
} else if (lookFlag && player_said("JOURNAL")) {
@@ -628,5 +628,116 @@ void RiddleEngine::lookAtInventoryItem() {
kernel_examine_inventory_object(str.c_str(), 5, 1, 270, 150, kINVENTORY_CLOSEUP_END, digi);
}
+void sketchInJournal(const char *digiName) {
+ int start = 0, finish = 0;
+
+ switch (_G(kernel).trigger) {
+ case -1:
+ case 8:
+ player_update_info();
+
+ switch (_G(player_info).facing) {
+ case 1:
+ case 2:
+ ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 2);
+ break;
+
+ case 3:
+ ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 3);
+ break;
+
+ case 4:
+ case 5:
+ ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 4);
+ break;
+
+ case 7:
+ case 8:
+ ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 8);
+ break;
+
+ case 9:
+ ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 9);
+ break;
+
+ case 10:
+ case 11:
+ ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 10);
+ break;
+
+ default:
+ break;
+ }
+
+ player_set_commands_allowed(false);
+ break;
+
+ case 1:
+ player_update_info();
+ digi_preload("950_s34");
+
+ switch (_G(player_info).facing) {
+ case 2:
+ case 10:
+ finish = 39;
+ start = 17;
+ _G(ripSketching) = series_load("RIP SKETCHING IN NOTEBOOK POS 2");
+ break;
+
+ case 3:
+ case 9:
+ finish = 36;
+ start = 22;
+ _G(ripSketching) = series_load("RIP SKETCHING IN NOTEBOOK POS 3");
+ break;
+
+ case 4:
+ case 8:
+ finish = 45;
+ start = 19;
+ _G(ripSketching) = series_load("RIP SKETCHING IN NOTEBOOK POS 4");
+ break;
+
+ default:
+ break;
+ }
+
+ setGlobals1(_G(ripSketching), 1, start, start, start, 0, start + 1, finish, finish, finish);
+ sendWSMessage_110000(3);
+ digi_play(digiName, 1);
+ break;
+
+ case 3:
+ if (_G(player_info).facing == 0 || _G(player_info).facing == 9)
+ sendWSMessage_190000(9);
+
+ sendWSMessage_120000(4);
+ digi_play("950_s34", 2, 200, 7);
+ break;
+
+ case 4:
+ sendWSMessage_110000(5);
+ break;
+
+ case 5:
+ sendWSMessage_140000(6);
+ break;
+
+ case 6:
+ series_unload(_G(ripSketching));
+ digi_unload("950_s34");
+ player_set_commands_allowed(true);
+ return;
+
+ case 7:
+ if (_G(player_info).facing == 3 || _G(player_info).facing == 9)
+ sendWSMessage_190000(5);
+ break;
+
+ default:
+ break;
+ }
+}
+
} // namespace Riddle
} // namespace M4
diff --git a/engines/m4/riddle/riddle.h b/engines/m4/riddle/riddle.h
index 24afc947d5e..7d39d8b7a4b 100644
--- a/engines/m4/riddle/riddle.h
+++ b/engines/m4/riddle/riddle.h
@@ -93,6 +93,8 @@ public:
void global_parser() override;
};
+extern void sketchInJournal(const char *digiName);
+
} // namespace Riddle
} // namespace M4
diff --git a/engines/m4/riddle/rooms/section2/room203.cpp b/engines/m4/riddle/rooms/section2/room203.cpp
index 5baf36e2cd7..10b633aeb05 100644
--- a/engines/m4/riddle/rooms/section2/room203.cpp
+++ b/engines/m4/riddle/rooms/section2/room203.cpp
@@ -25,7 +25,7 @@
#include "m4/adv_r/other.h"
#include "m4/graphics/gr_series.h"
#include "m4/gui/gui_vmng_screen.h"
-#include "m4/m4.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -3134,7 +3134,7 @@ void Room203::parser() {
_G(flags)[kChinshiCartoon] = 1;
}
- sendWSMessage_multi("203r53");
+ sketchInJournal("203r53");
}
} else if (lookFlag && inv_player_has(_G(player).noun)) {
switch (_G(kernel).trigger) {
diff --git a/engines/m4/riddle/rooms/section4/room402.cpp b/engines/m4/riddle/rooms/section4/room402.cpp
index eacb177e42a..ccb783b65b4 100644
--- a/engines/m4/riddle/rooms/section4/room402.cpp
+++ b/engines/m4/riddle/rooms/section4/room402.cpp
@@ -23,6 +23,7 @@
#include "m4/riddle/rooms/section4/section4.h"
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -1568,7 +1569,7 @@ void Room402::parser() {
_G(flags)[kCastleCartoon] = 1;
_G(flags)[V089] = 1;
}
- sendWSMessage_multi("com015");
+ sketchInJournal("com015");
}
} else if (lookFlag && player_said(" ")) {
digi_play("402r08", 1);
diff --git a/engines/m4/riddle/rooms/section4/room403.cpp b/engines/m4/riddle/rooms/section4/room403.cpp
index c5e4e6425ed..e512f36faee 100644
--- a/engines/m4/riddle/rooms/section4/room403.cpp
+++ b/engines/m4/riddle/rooms/section4/room403.cpp
@@ -24,6 +24,7 @@
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
#include "m4/gui/gui_vmng.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -2258,11 +2259,11 @@ void Room403::useJournal() {
} else if (_G(flags)[kEpitaphCartoon]) {
if (_G(kernel).trigger == 6)
_G(flags)[kGraveyardCartoon] = 1;
- sendWSMessage_multi(nullptr);
+ sketchInJournal(nullptr);
} else {
if (_G(kernel).trigger == 6)
_G(flags)[kGraveyardCartoon] = 1;
- sendWSMessage_multi("403r41");
+ sketchInJournal("403r41");
}
}
diff --git a/engines/m4/riddle/rooms/section4/room404.cpp b/engines/m4/riddle/rooms/section4/room404.cpp
index 4c39439887c..71b82106747 100644
--- a/engines/m4/riddle/rooms/section4/room404.cpp
+++ b/engines/m4/riddle/rooms/section4/room404.cpp
@@ -22,6 +22,7 @@
#include "m4/riddle/rooms/section4/room404.h"
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -552,9 +553,9 @@ void Room404::parser() {
digi_play("com016", 1);
} else if (_G(kernel).trigger == 6) {
_G(flags)[kCastleCartoon] = 1;
- sendWSMessage_multi("com015");
+ sketchInJournal("com015");
} else {
- sendWSMessage_multi("");
+ sketchInJournal("");
}
} else {
return;
diff --git a/engines/m4/riddle/rooms/section4/room405.cpp b/engines/m4/riddle/rooms/section4/room405.cpp
index 927f2ce6f69..b6219ab4223 100644
--- a/engines/m4/riddle/rooms/section4/room405.cpp
+++ b/engines/m4/riddle/rooms/section4/room405.cpp
@@ -22,6 +22,7 @@
#include "m4/riddle/rooms/section4/room405.h"
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -699,7 +700,7 @@ void Room405::parser() {
} else {
if (_G(kernel).trigger == 6)
_G(flags)[kCastleCartoon] = 1;
- sendWSMessage_multi("com015");
+ sketchInJournal("com015");
}
} else {
return;
diff --git a/engines/m4/riddle/rooms/section4/room406.cpp b/engines/m4/riddle/rooms/section4/room406.cpp
index 91884595c0d..78cd49a78f8 100644
--- a/engines/m4/riddle/rooms/section4/room406.cpp
+++ b/engines/m4/riddle/rooms/section4/room406.cpp
@@ -22,6 +22,7 @@
#include "m4/riddle/rooms/section4/room406.h"
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -991,10 +992,10 @@ void Room406::parser() {
if (_G(flags)[kCastleCartoon])
digi_play("com016", 1);
else if (_G(kernel).trigger != 6)
- sendWSMessage_multi("com015");
+ sketchInJournal("com015");
else {
_G(flags)[kCastleCartoon] = 1;
- sendWSMessage_multi("com015");
+ sketchInJournal("com015");
}
} else {
return;
diff --git a/engines/m4/riddle/rooms/section4/room408.cpp b/engines/m4/riddle/rooms/section4/room408.cpp
index 1b3e6bb60d4..0adba13e3ec 100644
--- a/engines/m4/riddle/rooms/section4/room408.cpp
+++ b/engines/m4/riddle/rooms/section4/room408.cpp
@@ -23,6 +23,7 @@
#include "m4/riddle/rooms/section4/section4.h"
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -735,9 +736,9 @@ void Room408::parser() {
digi_play("com016", 1);
} else if (_G(kernel).trigger == 6) {
_G(flags)[kCastleCartoon] = 1;
- sendWSMessage_multi("com015");
+ sketchInJournal("com015");
} else {
- sendWSMessage_multi("com015");
+ sketchInJournal("com015");
}
} else if (lookFlag && player_said(" ")) {
digi_play("408r01", 1);
diff --git a/engines/m4/riddle/rooms/section5/room510.cpp b/engines/m4/riddle/rooms/section5/room510.cpp
index 17ab5f2d4af..44073eb4422 100644
--- a/engines/m4/riddle/rooms/section5/room510.cpp
+++ b/engines/m4/riddle/rooms/section5/room510.cpp
@@ -24,6 +24,7 @@
#include "m4/riddle/vars.h"
#include "m4/adv_r/adv_file.h"
#include "m4/adv_r/other.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -765,7 +766,7 @@ void Room510::parser() {
player_set_commands_allowed(false);
if (_flag1) {
- sendWSMessage_multi(0);
+ sketchInJournal(0);
} else {
digi_play("com028", 1, 255, 100);
_flag1 = true;
@@ -777,10 +778,10 @@ void Room510::parser() {
break;
case 100:
_G(kernel).trigger = -1;
- sendWSMessage_multi(0);
+ sketchInJournal(0);
break;
default:
- sendWSMessage_multi(0);
+ sketchInJournal(0);
break;
}
}
diff --git a/engines/m4/riddle/rooms/section6/room605.cpp b/engines/m4/riddle/rooms/section6/room605.cpp
index 6aca82b44b0..814348c5ce2 100644
--- a/engines/m4/riddle/rooms/section6/room605.cpp
+++ b/engines/m4/riddle/rooms/section6/room605.cpp
@@ -24,6 +24,7 @@
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
#include "m4/adv_r/adv_file.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -473,7 +474,7 @@ void Room605::parser() {
} else {
if (_G(kernel).trigger == 6)
_G(flags)[V196] = 1;
- sendWSMessage_multi(0);
+ sketchInJournal(0);
}
} else if (lookFlag && player_said("head")) {
digi_play("605r03", 1);
diff --git a/engines/m4/riddle/rooms/section6/room625.cpp b/engines/m4/riddle/rooms/section6/room625.cpp
index e066cc657e3..65641944b66 100644
--- a/engines/m4/riddle/rooms/section6/room625.cpp
+++ b/engines/m4/riddle/rooms/section6/room625.cpp
@@ -22,6 +22,7 @@
#include "m4/riddle/rooms/section6/room625.h"
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -59,7 +60,7 @@ void Room625::parser() {
} else {
if (_G(kernel).trigger == 6)
_G(flags)[V208] = 1;
- sendWSMessage_multi(0);
+ sketchInJournal(0);
}
_G(player).command_ready = false;
diff --git a/engines/m4/riddle/rooms/section6/room626.cpp b/engines/m4/riddle/rooms/section6/room626.cpp
index b4273050e4a..4b3c991d5f4 100644
--- a/engines/m4/riddle/rooms/section6/room626.cpp
+++ b/engines/m4/riddle/rooms/section6/room626.cpp
@@ -22,6 +22,7 @@
#include "m4/riddle/rooms/section6/room626.h"
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -65,7 +66,7 @@ void Room626::parser() {
} else {
if (_G(kernel).trigger == 6)
_G(flags)[V209] = 1;
- sendWSMessage_multi(0);
+ sketchInJournal(0);
}
_G(player).command_ready = false;
diff --git a/engines/m4/riddle/rooms/section6/room644.cpp b/engines/m4/riddle/rooms/section6/room644.cpp
index 5cb31e1984b..9946fda2e22 100644
--- a/engines/m4/riddle/rooms/section6/room644.cpp
+++ b/engines/m4/riddle/rooms/section6/room644.cpp
@@ -22,6 +22,7 @@
#include "m4/riddle/rooms/section6/room644.h"
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -67,7 +68,7 @@ void Room644::parser() {
} else {
if (_G(kernel).trigger == 6)
_G(flags)[V207] = 1;
- sendWSMessage_multi(0);
+ sketchInJournal(0);
}
_G(player).command_ready = false;
diff --git a/engines/m4/riddle/rooms/section6/room651.cpp b/engines/m4/riddle/rooms/section6/room651.cpp
index e71d2e290cb..f8a99504571 100644
--- a/engines/m4/riddle/rooms/section6/room651.cpp
+++ b/engines/m4/riddle/rooms/section6/room651.cpp
@@ -22,6 +22,7 @@
#include "m4/riddle/rooms/section6/room651.h"
#include "m4/graphics/gr_series.h"
#include "m4/riddle/vars.h"
+#include "m4/riddle/riddle.h"
namespace M4 {
namespace Riddle {
@@ -64,7 +65,7 @@ void Room651::parser() {
} else {
if (_G(kernel).trigger == 6)
_G(flags)[V201] = 1;
- sendWSMessage_multi(0);
+ sketchInJournal(0);
}
_G(player).command_ready = false;
diff --git a/engines/m4/riddle/triggers.cpp b/engines/m4/riddle/triggers.cpp
index 0a4206882ba..331760758cd 100644
--- a/engines/m4/riddle/triggers.cpp
+++ b/engines/m4/riddle/triggers.cpp
@@ -320,117 +320,6 @@ void sendWSMessage_29a0000(int val1) {
sendWSMessage_29a0000(_G(my_walker), val1);
}
-void sendWSMessage_multi(const char *name) {
- int vSI = 0, vCX = 0;
-
- switch (_G(kernel).trigger) {
- case -1:
- case 8:
- player_update_info();
-
- switch (_G(player_info).facing) {
- case 1:
- case 2:
- ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 2);
- break;
-
- case 3:
- ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 3);
- break;
-
- case 4:
- case 5:
- ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 4);
- break;
-
- case 7:
- case 8:
- ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 8);
- break;
-
- case 9:
- ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 9);
- break;
-
- case 10:
- case 11:
- ws_walk(_G(player_info).x, _G(player_info).y, nullptr, 1, 10);
- break;
-
- default:
- break;
- }
-
- player_set_commands_allowed(false);
- break;
-
- case 1:
- player_update_info();
- digi_preload("950_s34");
-
- switch (_G(player_info).facing) {
- case 2:
- case 10:
- vCX = 39;
- vSI = 17;
- _G(ripSketching) = series_load("RIP SKETCHING IN NOTEBOOK POS 2");
- break;
-
- case 3:
- case 9:
- vCX = 36;
- vSI = 22;
- _G(ripSketching) = series_load("RIP SKETCHING IN NOTEBOOK POS 3");
- break;
-
- case 4:
- case 8:
- vCX = 45;
- vSI = 19;
- _G(ripSketching) = series_load("RIP SKETCHING IN NOTEBOOK POS 4");
- break;
-
- default:
- break;
- }
-
- setGlobals1(_G(ripSketching), 1, vSI, vSI, vSI, 0, vCX + 1, vCX, vCX, vCX);
- sendWSMessage_110000(3);
- digi_play(name, 1);
- break;
-
- case 3:
- if (_G(player_info).facing == 0 || _G(player_info).facing == 9)
- sendWSMessage_190000(9);
-
- sendWSMessage_120000(4);
- digi_play("950_s34", 2, 200, 7);
- break;
-
- case 4:
- sendWSMessage_110000(5);
- break;
-
- case 5:
- sendWSMessage_140000(6);
- break;
-
- case 6:
- series_unload(_G(ripSketching));
- digi_unload("950_s34");
- player_set_commands_allowed(true);
- return;
-
- case 7:
- if (_G(player_info).facing == 3 || _G(player_info).facing == 9)
- sendWSMessage_190000(5);
- break;
-
- default:
- break;
- }
-}
-
void intrMsgNull(frac16 myMessage, machine *sender) {
}
diff --git a/engines/m4/riddle/triggers.h b/engines/m4/riddle/triggers.h
index bb9d57dcc57..740e3ef3a3b 100644
--- a/engines/m4/riddle/triggers.h
+++ b/engines/m4/riddle/triggers.h
@@ -27,8 +27,6 @@
namespace M4 {
namespace Riddle {
-extern void sendWSMessage_multi(const char *name);
-
/**
* Sets a bunch of globals. Sooooo many globals.
*/
More information about the Scummvm-git-logs
mailing list