aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Sandulenko2016-08-20 11:49:42 +0200
committerEugene Sandulenko2016-08-20 11:49:42 +0200
commit223b7f16134e2a15416658e1567b593b4e60485c (patch)
tree6cb62f153e2c04154ee5d95472bcd7800f47efd6
parent80b8fcf693da1069f432d016f3d90311772395b1 (diff)
downloadscummvm-rg350-223b7f16134e2a15416658e1567b593b4e60485c.tar.gz
scummvm-rg350-223b7f16134e2a15416658e1567b593b4e60485c.tar.bz2
scummvm-rg350-223b7f16134e2a15416658e1567b593b4e60485c.zip
DIRECTOR: Lingo: Stub for 'menu' command. This completes all D2 commands
-rw-r--r--engines/director/lingo/lingo.cpp11
-rw-r--r--engines/director/lingo/lingo.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/engines/director/lingo/lingo.cpp b/engines/director/lingo/lingo.cpp
index d3e84a0d7c..21a5b5347a 100644
--- a/engines/director/lingo/lingo.cpp
+++ b/engines/director/lingo/lingo.cpp
@@ -160,6 +160,13 @@ void Lingo::addCode(const char *code, ScriptType type, uint16 id) {
const char *begin, *end;
+ if (!strncmp(code, "menu:", 5)) {
+ debugC(2, kDebugLingoCompile, "Parsing menu");
+ parseMenu(code);
+
+ return;
+ }
+
// macros and factories have conflicting grammar. Thus we ease life for the parser.
if ((begin = findNextDefinition(code))) {
bool first = true;
@@ -392,6 +399,10 @@ Common::String *Lingo::toLowercaseMac(Common::String *s) {
return res;
}
+void Lingo::parseMenu(const char *code) {
+ warning("STUB: parseMenu");
+}
+
void Lingo::runTests() {
Common::File inFile;
Common::ArchiveMemberList fsList;
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index ab6759d0b2..e04de92b8b 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -431,6 +431,8 @@ public:
private:
int parse(const char *code);
+ void parseMenu(const char *code);
+
void push(Datum d);
Datum pop(void);