aboutsummaryrefslogtreecommitdiff
path: root/engines/director/lingo
diff options
context:
space:
mode:
authorEugene Sandulenko2017-02-24 19:31:58 +0100
committerEugene Sandulenko2017-02-24 19:32:40 +0100
commit4b364787863b62f7a141f38646a8772e921fb1e7 (patch)
tree0d3ede61cba71fc70d32af5f6a6b0ea954331078 /engines/director/lingo
parent69335424fc225dacdf8f854afef79007b2764ec5 (diff)
downloadscummvm-rg350-4b364787863b62f7a141f38646a8772e921fb1e7.tar.gz
scummvm-rg350-4b364787863b62f7a141f38646a8772e921fb1e7.tar.bz2
scummvm-rg350-4b364787863b62f7a141f38646a8772e921fb1e7.zip
DIRECTOR: Lingo: Clarified 'play' and 'play done' implementations
Diffstat (limited to 'engines/director/lingo')
-rw-r--r--engines/director/lingo/lingo-funcs.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/engines/director/lingo/lingo-funcs.cpp b/engines/director/lingo/lingo-funcs.cpp
index 58800f226d..f21f01a967 100644
--- a/engines/director/lingo/lingo-funcs.cpp
+++ b/engines/director/lingo/lingo-funcs.cpp
@@ -279,6 +279,12 @@ void Lingo::func_gotoprevious() {
void Lingo::func_play(Datum &frame, Datum &movie) {
MovieReference ref;
+ if (movie.type != VOID) {
+ warning("STUB: func_play()");
+
+ return;
+ }
+
ref.frameI = _vm->getCurrentScore()->getCurrentFrame();
_vm->_movieStack.push_back(ref);
@@ -293,8 +299,13 @@ void Lingo::func_playdone() {
Datum m, f;
- warning("STUB: func_playdone()");
- m.type = VOID;
+ if (ref.movie.empty()) {
+ m.type = VOID;
+ } else {
+ m.type = STRING;
+ m.u.s = new Common::String(ref.movie);
+ }
+
f.type = INT;
f.u.i = ref.frameI;