[Scummvm-git-logs] scummvm master -> dc3216dab8df37290a812264f0e62f3646c57bb5
djsrv
dservilla at gmail.com
Fri Jul 24 04:14:43 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:
b014a78df1 DIRECTOR: LINGO: Fix setting window props
73c25028b8 DIRECTOR: LINGO: Add custom asString for window
dc3216dab8 DIRECTOR: LINGO: Fix cb_objectfieldassign
Commit: b014a78df1f66ed17d61e99b2c8330d143a2cfbd
https://github.com/scummvm/scummvm/commit/b014a78df1f66ed17d61e99b2c8330d143a2cfbd
Author: djsrv (dservilla at gmail.com)
Date: 2020-07-24T00:08:37-04:00
Commit Message:
DIRECTOR: LINGO: Fix setting window props
Changed paths:
engines/director/lingo/lingo-object.cpp
diff --git a/engines/director/lingo/lingo-object.cpp b/engines/director/lingo/lingo-object.cpp
index ae398fe525..d97296c6d7 100644
--- a/engines/director/lingo/lingo-object.cpp
+++ b/engines/director/lingo/lingo-object.cpp
@@ -320,12 +320,14 @@ void LM::m_respondsTo(int nargs) {
// Window
bool Stage::hasProp(const Common::String &propName) {
- return g_lingo->_theEntityFields.contains(propName) && g_lingo->_theEntityFields[propName]->entity == kTheWindow;
+ Common::String fieldName = Common::String::format("%d%s", kTheWindow, propName.c_str());
+ return g_lingo->_theEntityFields.contains(fieldName);
}
Datum Stage::getProp(const Common::String &propName) {
- if (g_lingo->_theEntityFields.contains(propName) && g_lingo->_theEntityFields[propName]->entity == kTheWindow) {
- return getField(g_lingo->_theEntityFields[propName]->field);
+ Common::String fieldName = Common::String::format("%d%s", kTheWindow, propName.c_str());
+ if (g_lingo->_theEntityFields.contains(fieldName)) {
+ return getField(g_lingo->_theEntityFields[fieldName]->field);
}
warning("Stage::getProp: unknown property '%s'", propName.c_str());
@@ -333,8 +335,9 @@ Datum Stage::getProp(const Common::String &propName) {
}
bool Stage::setProp(const Common::String &propName, const Datum &value) {
- if (g_lingo->_theEntityFields.contains(propName) && g_lingo->_theEntityFields[propName]->entity == kTheWindow) {
- return setField(g_lingo->_theEntityFields[propName]->field, value);
+ Common::String fieldName = Common::String::format("%d%s", kTheWindow, propName.c_str());
+ if (g_lingo->_theEntityFields.contains(fieldName)) {
+ return setField(g_lingo->_theEntityFields[fieldName]->field, value);
}
warning("Stage::setProp: unknown property '%s'", propName.c_str());
Commit: 73c25028b8dc33112ac058bd5177b66b7c692520
https://github.com/scummvm/scummvm/commit/73c25028b8dc33112ac058bd5177b66b7c692520
Author: djsrv (dservilla at gmail.com)
Date: 2020-07-24T00:10:03-04:00
Commit Message:
DIRECTOR: LINGO: Add custom asString for window
Changed paths:
engines/director/lingo/lingo-object.cpp
engines/director/stage.h
diff --git a/engines/director/lingo/lingo-object.cpp b/engines/director/lingo/lingo-object.cpp
index d97296c6d7..64fa5dd0fd 100644
--- a/engines/director/lingo/lingo-object.cpp
+++ b/engines/director/lingo/lingo-object.cpp
@@ -319,6 +319,10 @@ void LM::m_respondsTo(int nargs) {
// Window
+Common::String Stage::asString() {
+ return "window \"" + getName() + "\"";
+}
+
bool Stage::hasProp(const Common::String &propName) {
Common::String fieldName = Common::String::format("%d%s", kTheWindow, propName.c_str());
return g_lingo->_theEntityFields.contains(fieldName);
diff --git a/engines/director/stage.h b/engines/director/stage.h
index 5791c8fe0a..1b8be74c8e 100644
--- a/engines/director/stage.h
+++ b/engines/director/stage.h
@@ -144,6 +144,7 @@ class Stage : public Graphics::MacWindow, public Object<Stage> {
void loadMac(const Common::String movie);
// lingo/lingo-object.cpp
+ virtual Common::String asString();
virtual bool hasProp(const Common::String &propName);
virtual Datum getProp(const Common::String &propName);
virtual bool setProp(const Common::String &propName, const Datum &value);
Commit: dc3216dab8df37290a812264f0e62f3646c57bb5
https://github.com/scummvm/scummvm/commit/dc3216dab8df37290a812264f0e62f3646c57bb5
Author: djsrv (dservilla at gmail.com)
Date: 2020-07-24T00:13:51-04:00
Commit Message:
DIRECTOR: LINGO: Fix cb_objectfieldassign
Changed paths:
engines/director/lingo/lingo-bytecode.cpp
diff --git a/engines/director/lingo/lingo-bytecode.cpp b/engines/director/lingo/lingo-bytecode.cpp
index 0813482eb7..6ab8734604 100644
--- a/engines/director/lingo/lingo-bytecode.cpp
+++ b/engines/director/lingo/lingo-bytecode.cpp
@@ -575,8 +575,8 @@ void LC::cb_globalassign() {
void LC::cb_objectfieldassign() {
int fieldNameId = g_lingo->readInt();
Common::String fieldName = g_lingo->_currentArchive->getName(fieldNameId);
- Datum object = g_lingo->pop();
Datum value = g_lingo->pop();
+ Datum object = g_lingo->pop();
g_lingo->setObjectProp(object, fieldName, value);
}
More information about the Scummvm-git-logs
mailing list