[Scummvm-git-logs] scummvm master -> 6d472f9e4d6a923efb7843ddb69543ef86e35ecb
dreammaster
noreply at scummvm.org
Tue Oct 22 02:15:44 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:
a0328b337f M4: RIDDLE: Name room 303 feng Should/mode vars, some trigger machine params
6d472f9e4d M4: RIDDLE: Fix message param in triggerMachineByHashCallback
Commit: a0328b337f75c2c574a004de7ddbceffa1d0e684
https://github.com/scummvm/scummvm/commit/a0328b337f75c2c574a004de7ddbceffa1d0e684
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-10-21T19:14:58-07:00
Commit Message:
M4: RIDDLE: Name room 303 feng Should/mode vars, some trigger machine params
Changed paths:
engines/m4/riddle/rooms/section3/room303.cpp
engines/m4/riddle/rooms/section3/room303.h
engines/m4/wscript/ws_machine.cpp
engines/m4/wscript/ws_machine.h
diff --git a/engines/m4/riddle/rooms/section3/room303.cpp b/engines/m4/riddle/rooms/section3/room303.cpp
index c2b10fe5364..501136dcf45 100644
--- a/engines/m4/riddle/rooms/section3/room303.cpp
+++ b/engines/m4/riddle/rooms/section3/room303.cpp
@@ -72,7 +72,7 @@ void Room303::init() {
if (_G(game).previous_room != KERNEL_RESTORING_GAME) {
_digiName1 = nullptr;
- _val4 = -1;
+ _destTrigger = -1;
_triggerMode1 = _triggerMode2 = KT_DAEMON;
_val5 = 0;
_val6 = 0;
@@ -117,7 +117,7 @@ void Room303::init() {
}
sendWSMessage_10000(1, _fengLi, _feng4, 1, 1, 400, _feng4, 1, 6, 0);
- _val14 = _val15 = 1;
+ _fengShould = _fengMode = 1;
}
playSeries();
@@ -183,7 +183,7 @@ void Room303::init() {
sendWSMessage_10000(1, _fengLi, _feng4, 1, 1, 400,
_feng4, 1, 6, 0);
- _val14 = _val15 = 1;
+ _fengShould = _fengMode = 1;
_fengFlag = true;
setShadow5(true);
}
@@ -209,7 +209,7 @@ void Room303::init() {
_fengLi = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 480, 256, 86, 0xc00, 1,
triggerMachineByHashCallback, "fl");
sendWSMessage_10000(1, _fengLi, _feng1, 1, 16, 400, _feng1, 1, 6, 0);
- _val14 = _val15 = 1;
+ _fengShould = _fengMode = 1;
setShadow5(true);
_fengFlag = true;
@@ -238,7 +238,7 @@ void Room303::init() {
sendWSMessage_10000(1, _fengLi, _feng4, 1, 16, 400,
_feng4, 1, 6, 0);
- _val14 = _val15 = 1;
+ _fengShould = _fengMode = 1;
setShadow5(true);
kernel_load_variant("303lock1");
setFengActive(true);
@@ -293,7 +293,7 @@ void Room303::init() {
_fengLi = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 480, 256, 86, 0xc00, 1,
triggerMachineByHashCallback, "fl");
sendWSMessage_10000(1, _fengLi, _feng4, 1, 1, 400, _feng4, 1, 6, 0);
- _val14 = _val15 = 1;
+ _fengShould = _fengMode = 1;
setShadow5(true);
playSeries();
@@ -388,7 +388,7 @@ void Room303::daemon() {
triggerMachineByHashCallback, "fl");
sendWSMessage_10000(1, _fengLi, _feng1, 1, 16, 400,
_feng4, 1, 6, 0);
- _val14 = _val15 = 1;
+ _fengShould = _fengMode = 1;
setShadow5(true);
player_set_commands_allowed(true);
break;
@@ -656,7 +656,7 @@ void Room303::daemon() {
triggerMachineByHashCallback, "fl");
sendWSMessage_10000(1, _fengLi, _feng4, 1, 1, 400,
_feng4, 1, 6, 0);
- _val14 = _val15 = 1;
+ _fengShould = _fengMode = 1;
player_set_commands_allowed(true);
break;
@@ -678,9 +678,9 @@ void Room303::daemon() {
break;
case 200:
- if (_val10 == 0 && _val11 == 0 && _val4 != -1) {
- kernel_trigger_dispatchx(_val4);
- _val4 = -1;
+ if (_val10 == 0 && _val11 == 0 && _destTrigger != -1) {
+ kernel_trigger_dispatchx(_destTrigger);
+ _destTrigger = -1;
if (_val5) {
ws_unhide_walker();
@@ -877,9 +877,9 @@ void Room303::daemon() {
break;
case 300:
- if (_val17 == 0 && _val16 == 0 && _val4 != -1) {
- kernel_trigger_dispatchx(_val4);
- _val4 = -1;
+ if (_val17 == 0 && _val16 == 0 && _destTrigger != -1) {
+ kernel_trigger_dispatchx(_destTrigger);
+ _destTrigger = -1;
if (_val5) {
ws_unhide_walker();
@@ -992,9 +992,9 @@ void Room303::daemon() {
break;
case 400:
- if (_val14 == 0 && _val15 == 0 && _val4 != -1) {
- kernel_trigger_dispatchx(_val4);
- _val4 = -1;
+ if (_fengShould == 0 && _fengMode == 0 && _destTrigger != -1) {
+ kernel_trigger_dispatchx(_destTrigger);
+ _destTrigger = -1;
if (_val5) {
ws_unhide_walker();
@@ -1006,9 +1006,9 @@ void Room303::daemon() {
break;
case 401:
- switch (_val14) {
+ switch (_fengShould) {
case 0:
- switch (_val15) {
+ switch (_fengMode) {
case 0:
sendWSMessage_10000(1, _fengLi, _feng1, 1, 1, 400,
_feng1, 1, 1, 0);
@@ -1019,13 +1019,13 @@ void Room303::daemon() {
case 4:
sendWSMessage_10000(1, _fengLi, _feng1, 1, 18, 400,
_feng4, 1, 6, 1);
- _val14 = 1;
+ _fengShould = 1;
break;
case 3:
sendWSMessage_10000(1, _fengLi, _feng2, 1, 13, 400,
_feng2, 14, 19, 1);
- _val14 = 3;
+ _fengShould = 3;
break;
case 5:
@@ -1048,11 +1048,11 @@ void Room303::daemon() {
break;
case 1:
- switch (_val15) {
+ switch (_fengMode) {
case 0:
sendWSMessage_10000(1, _fengLi, _feng1, 16, 1, 400,
_feng1, 1, 1, 0);
- _val14 = 0;
+ _fengShould = 0;
break;
case 1:
@@ -1065,7 +1065,7 @@ void Room303::daemon() {
case 5:
sendWSMessage_10000(1, _fengLi, _feng1, 16, 1, 400,
_feng2, 1, 1, 0);
- _val14 = 0;
+ _fengShould = 0;
break;
case 4:
@@ -1073,38 +1073,38 @@ void Room303::daemon() {
sendWSMessage_10000(1, _fengLi, _feng4, frame, frame, 400,
_feng4, frame, frame, 0);
player_set_commands_allowed(true);
- _val15 = 1;
+ _fengMode = 1;
break;
default:
sendWSMessage_10000(1, _fengLi, _feng3, 1, 18, 400,
_feng3, 19, 21, 1);
- _val14 = 2;
+ _fengShould = 2;
break;
}
break;
case 2:
- if (_val15 == 2) {
+ if (_fengMode == 2) {
frame = imath_ranged_rand(19, 21);
sendWSMessage_10000(1, _fengLi, _feng3, frame, frame, 400,
_feng3, frame, frame, 0);
} else {
sendWSMessage_10000(1, _fengLi, _feng3, 18, 1, 400,
_feng4, 1, 6, 0);
- _val14 = 1;
+ _fengShould = 1;
}
break;
case 3:
- if (_val15 == 3) {
+ if (_fengMode == 3) {
frame = imath_ranged_rand(14, 19);
sendWSMessage_10000(1, _fengLi, _feng2, frame, frame, 400,
_feng2, frame, frame, 0);
} else {
sendWSMessage_10000(1, _fengLi, _feng2, 20, 31, 400,
_feng2, 1, 1, 0);
- _val14 = 0;
+ _fengShould = 0;
}
break;
@@ -1158,7 +1158,7 @@ void Room303::parser() {
player_said_any("cow", "giant matchstick")) {
switch (_G(kernel).trigger) {
case -1:
- _val15 = 5;
+ _fengMode = 5;
player_set_commands_allowed(false);
break;
@@ -1178,7 +1178,7 @@ void Room303::parser() {
_G(kernel).trigger_mode = KT_DAEMON;
sendWSMessage_10000(1, _fengLi, _feng1, 1, 16, 400,
_feng4, 1, 6, 0);
- _val14 = _val15 = 1;
+ _fengShould = _fengMode = 1;
setFengActive(false);
_fengFlag = false;
@@ -1207,7 +1207,7 @@ void Room303::parser() {
_G(kernel).trigger_mode = KT_DAEMON;
sendWSMessage_10000(1, _fengLi, _feng1, 1, 16, 400,
_feng4, 1, 6, 0);
- _val14 = _val15 = 1;
+ _fengShould = _fengMode = 1;
setFengActive(true);
_fengFlag = true;
@@ -1254,11 +1254,11 @@ void Room303::parser() {
setGlobals4(_chinTalk4, 15, 16, 19);
sendWSMessage_C0000(0);
digi_play("303F13", 1, 255, 1);
- _val15 = 2;
+ _fengMode = 2;
break;
case 1:
- _val15 = 1;
+ _fengMode = 1;
kernel_timing_trigger(30, 2);
break;
@@ -1275,11 +1275,11 @@ void Room303::parser() {
case 4:
digi_play("303F14", 1, 255, 5);
- _val15 = 2;
+ _fengMode = 2;
break;
case 5:
- _val15 = 1;
+ _fengMode = 1;
kernel_timing_trigger(30, 6);
break;
@@ -1364,7 +1364,7 @@ void Room303::parser() {
setGlobals4(_chinTalk4, 1, 1, 5);
sendWSMessage_C0000(-1);
digi_play("303F15", 1, 255, 1);
- _val15 = 2;
+ _fengMode = 2;
break;
case 2:
@@ -1401,11 +1401,11 @@ void Room303::parser() {
case 666:
player_set_commands_allowed(false);
digi_play("303F09", 1, 255, 1);
- _val15 = 2;
+ _fengMode = 2;
break;
case 1:
- _val15 = 1;
+ _fengMode = 1;
player_set_commands_allowed(true);
break;
@@ -1421,13 +1421,13 @@ void Room303::parser() {
setGlobals4(_chinTalk4, 15, 16, 19);
sendWSMessage_C0000(0);
digi_play("303F10", 1, 255, 6);
- _val15 = 2;
+ _fengMode = 2;
break;
case 1:
digi_play("303r24", 1, 255, 3);
sendWSMessage_D0000();
- _val15 = 0;
+ _fengMode = 0;
break;
case 3:
@@ -1436,18 +1436,18 @@ void Room303::parser() {
case 4:
sendWSMessage_B0000(7);
- _val15 = 3;
+ _fengMode = 3;
digi_play("303f11", 1, 255, 5);
break;
case 5:
- _val15 = 1;
+ _fengMode = 1;
player_set_commands_allowed(true);
_G(flags)[V082] = 1;
break;
case 6:
- _val15 = 1;
+ _fengMode = 1;
kernel_timing_trigger(30, 1);
break;
@@ -1479,12 +1479,12 @@ void Room303::parser() {
case 3:
digi_play("303F12", 1, 255, 4);
- _val15 = 2;
+ _fengMode = 2;
sendWSMessage_B0000(0);
break;
case 4:
- _val15 = 1;
+ _fengMode = 1;
series_unload(_chinTalk4);
break;
@@ -1679,7 +1679,7 @@ void Room303::parser() {
conv_export_value(conv_get_handle(), _G(flags)[V086], 0);
conv_play();
- _val15 = 1;
+ _fengMode = 1;
_val16 = 0;
} else if (_G(kernel).trigger == 748) {
@@ -1688,7 +1688,7 @@ void Room303::parser() {
midi_fade_volume(0, 120);
kernel_timing_trigger(120, 749);
_lonelyFlag = false;
- _val15 = 4;
+ _fengMode = 4;
_val16 = 5;
} else if (player_said("exit left")) {
@@ -1796,6 +1796,7 @@ void Room303::playSeries(bool cow) {
series_plain_play("SPINNING TOMATO MAN", -1, 0, 100, 0, 7);
series_plain_play("PUFFBALL", -1, 0, 100, 0, 8);
series_plain_play("CREATURE FEATURE LONG VIEW", 1, 0, 100, 0xf05, 7, 70);
+ series_plain_play("303cow1", -1, 0, 100, 0, 9);
}
void Room303::conv303a() {
@@ -1806,7 +1807,7 @@ void Room303::conv303a() {
if (_G(kernel).trigger == 1) {
if (who <= 0) {
- _val15 = node != 3 || entry ? 1 : 0;
+ _fengMode = node != 3 || entry ? 1 : 0;
} else if (who == 1) {
if ((node == 0 && entry != 0) || (node == 0 && entry == 1)) {
@@ -1833,9 +1834,9 @@ void Room303::conv303a() {
if (node == 3 && !entry)
_val16 = 2;
if ((node != 3 || entry != 1) && (node != 3 || entry))
- _val15 = 2;
+ _fengMode = 2;
else
- _val15 = 3;
+ _fengMode = 3;
} else if (who == 1) {
if (node != 1 || entry != 1) {
diff --git a/engines/m4/riddle/rooms/section3/room303.h b/engines/m4/riddle/rooms/section3/room303.h
index 89b6935a954..e5dadc79863 100644
--- a/engines/m4/riddle/rooms/section3/room303.h
+++ b/engines/m4/riddle/rooms/section3/room303.h
@@ -33,7 +33,7 @@ private:
bool _newExhibitsFlag = false;
bool _lonelyFlag = 0;
const char *_digiName1 = nullptr;
- int _val4 = 0;
+ int _destTrigger = 0;
int _val5 = 0;
int _val6 = 0;
int _val7 = 0;
@@ -43,8 +43,8 @@ private:
int _val11 = 0;
KernelTriggerType _val12 = KT_DAEMON;
bool _fengFlag = false;
- int _val14 = 0;
- int _val15 = 0;
+ int _fengShould = 0;
+ int _fengMode = 0;
int _val16 = 0;
int _val17 = 0;
int _val18 = 0;
diff --git a/engines/m4/wscript/ws_machine.cpp b/engines/m4/wscript/ws_machine.cpp
index 35a66c4ca72..eef1f9f60ef 100644
--- a/engines/m4/wscript/ws_machine.cpp
+++ b/engines/m4/wscript/ws_machine.cpp
@@ -1055,7 +1055,7 @@ machine *TriggerMachineByHash(MessageCB intrMsg, const char *machName) {
}
machine *TriggerMachineByHash(int32 val1, int32 val2, int32 val3, int32 val4, int32 val5, int32 val6,
- int32 val7, int32 val8, int32 val9, int32 val10, bool flag,
+ int32 x, int32 y, int32 scale, int32 layer, bool flag,
MessageCB intrMsg, const char *machName) {
_G(globals)[GLB_TEMP_1] = val1 << 24;
_G(globals)[GLB_TEMP_2] = val2 << 16;
@@ -1064,10 +1064,10 @@ machine *TriggerMachineByHash(int32 val1, int32 val2, int32 val3, int32 val4, in
_G(globals)[GLB_TEMP_5] = (val5 << 16) / 100;
_G(globals)[GLB_TEMP_6] = val6 << 16;
- _G(globals)[GLB_TEMP_7] = val7 << 16;
- _G(globals)[GLB_TEMP_8] = val8 << 16;
- _G(globals)[GLB_TEMP_9] = (val9 << 16) / 100;
- _G(globals)[GLB_TEMP_10] = val10 << 16;
+ _G(globals)[GLB_TEMP_7] = x << 16;
+ _G(globals)[GLB_TEMP_8] = y << 16;
+ _G(globals)[GLB_TEMP_9] = (scale << 16) / 100;
+ _G(globals)[GLB_TEMP_10] = layer << 16;
_G(globals)[GLB_TEMP_11] = flag ? 0xffff0000 : 0x10000;
return TriggerMachineByHash(40, nullptr, -1, -1, intrMsg, false, machName);
diff --git a/engines/m4/wscript/ws_machine.h b/engines/m4/wscript/ws_machine.h
index 985a034cdc0..30f1b930514 100644
--- a/engines/m4/wscript/ws_machine.h
+++ b/engines/m4/wscript/ws_machine.h
@@ -223,7 +223,7 @@ void ws_StepWhile(machine *m, int32 pcOffset, int32 pcCount);
void IntoTheState(machine *m);
machine *TriggerMachineByHash(int32 myHash, Anim8 *parentAnim8, int32 dataHash, int32 dataRow, MessageCB CintrMsg, bool debug, const char *machName);
machine *TriggerMachineByHash(int32 val1, int32 val2, int32 val3, int32 val4, int32 val5, int32 val6,
- int32 val7, int32 val8, int32 val9, int32 val10, bool flag,
+ int32 x, int32 y, int32 scale, int32 layer, bool flag,
MessageCB intrMsg, const char *machName);
machine *TriggerMachineByHash(MessageCB intrMsg, const char *machName);
Commit: 6d472f9e4d6a923efb7843ddb69543ef86e35ecb
https://github.com/scummvm/scummvm/commit/6d472f9e4d6a923efb7843ddb69543ef86e35ecb
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-10-21T19:15:32-07:00
Commit Message:
M4: RIDDLE: Fix message param in triggerMachineByHashCallback
Changed paths:
engines/m4/riddle/triggers.cpp
diff --git a/engines/m4/riddle/triggers.cpp b/engines/m4/riddle/triggers.cpp
index e6405d39c6e..d77878d2466 100644
--- a/engines/m4/riddle/triggers.cpp
+++ b/engines/m4/riddle/triggers.cpp
@@ -432,10 +432,8 @@ void intrMsgNull(frac16 myMessage, machine *sender) {
}
void triggerMachineByHashCallback(frac16 myMessage, machine *) {
- int32 hi = myMessage >> 16;
-
- if (hi >= 0)
- kernel_trigger_dispatch_now(hi);
+ if ((myMessage >> 16) >= 0)
+ kernel_trigger_dispatch_now(myMessage);
}
void triggerMachineByHashCallbackAlways(frac16 myMessage, machine *sender) {
More information about the Scummvm-git-logs
mailing list