[Scummvm-git-logs] scummvm master -> 469a242555d38fde5ac51d54cdb342b0a58020a3
sev-
sev at scummvm.org
Sun Feb 9 19:41:59 UTC 2020
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
e4cbde1e9e DIRECTOR: LINGO: Implemented c_arraypush()
a7a3a6bbe7 DIRECTOR: LINGO: Fix array construction
469a242555 DIRECTOR: LINGO: Correctly process custom cursors code
Commit: e4cbde1e9e68798364a2f84392504151bb305423
https://github.com/scummvm/scummvm/commit/e4cbde1e9e68798364a2f84392504151bb305423
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-02-09T19:57:36+01:00
Commit Message:
DIRECTOR: LINGO: Implemented c_arraypush()
Changed paths:
engines/director/lingo/lingo-code.cpp
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index 3eb1a5d..3ecc3a9 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -295,13 +295,12 @@ void LC::c_arraypush() {
Datum d;
int arraySize = g_lingo->readInt();
- warning("STUB: c_arraypush()");
+ d.type = ARRAY;
+ d.u.farr = new DatumArray;
for (int i = 0; i < arraySize; i++)
- g_lingo->pop();
+ d.u.farr->push_back(g_lingo->pop());
- d.u.i = arraySize;
- d.type = INT;
g_lingo->push(d);
}
Commit: a7a3a6bbe7a2f87bb33f1eee3436ec92ed63a6d0
https://github.com/scummvm/scummvm/commit/a7a3a6bbe7a2f87bb33f1eee3436ec92ed63a6d0
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-02-09T20:09:01+01:00
Commit Message:
DIRECTOR: LINGO: Fix array construction
Changed paths:
engines/director/lingo/lingo-code.cpp
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index 3ecc3a9..e8605db 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -299,7 +299,7 @@ void LC::c_arraypush() {
d.u.farr = new DatumArray;
for (int i = 0; i < arraySize; i++)
- d.u.farr->push_back(g_lingo->pop());
+ d.u.farr->insert_at(0, g_lingo->pop());
g_lingo->push(d);
}
Commit: 469a242555d38fde5ac51d54cdb342b0a58020a3
https://github.com/scummvm/scummvm/commit/469a242555d38fde5ac51d54cdb342b0a58020a3
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-02-09T20:09:39+01:00
Commit Message:
DIRECTOR: LINGO: Correctly process custom cursors code
Changed paths:
engines/director/lingo/lingo-builtins.cpp
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index 9dd64a1..440875c 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -1064,19 +1064,19 @@ void LB::b_clearGlobals(int nargs) {
}
void LB::b_cursor(int nargs) {
- int mask = -1;
-
Datum d = g_lingo->pop();
- d.toInt();
- if (nargs == 2) {
- d = g_lingo->pop();
- d.toInt();
+ if (d.type == ARRAY) {
+ Datum sprite = d.u.farr->operator[](0);
+ Datum mask = d.u.farr->operator[](1);
+ sprite.toInt();
+ mask.toInt();
- mask = d.u.i;
+ g_lingo->func_cursor(sprite.u.i, mask.u.i);
+ } else {
+ d.toInt();
+ g_lingo->func_cursor(d.u.i, -1);
}
-
- g_lingo->func_cursor(d.u.i, mask);
}
void LB::b_showGlobals(int nargs) {
More information about the Scummvm-git-logs
mailing list