aboutsummaryrefslogtreecommitdiff
path: root/engines/dreamweb/stubs.cpp
diff options
context:
space:
mode:
authorFilippos Karapetis2011-12-06 03:49:32 +0200
committerFilippos Karapetis2011-12-06 03:49:32 +0200
commit823ff7549681a430b3c73d6925fc3f72bae09024 (patch)
tree5624740f6af1ce7cca4a145d63365e320f86f49d /engines/dreamweb/stubs.cpp
parentbdfd481a68f6a4830f1b18adcf8fe2fa171498b5 (diff)
downloadscummvm-rg350-823ff7549681a430b3c73d6925fc3f72bae09024.tar.gz
scummvm-rg350-823ff7549681a430b3c73d6925fc3f72bae09024.tar.bz2
scummvm-rg350-823ff7549681a430b3c73d6925fc3f72bae09024.zip
DREAMWEB: 'getbackfromops', 'getbacktoops', 'newgame' ported to C++
Diffstat (limited to 'engines/dreamweb/stubs.cpp')
-rw-r--r--engines/dreamweb/stubs.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index ca1f3c1d38..44f4d82394 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -3444,5 +3444,36 @@ void DreamGenContext::setBotRight() {
data.byte(kSymbolbotdir) = 1;
}
+void DreamGenContext::newGame() {
+ if (data.byte(kCommandtype) != 251) {
+ data.byte(kCommandtype) = 251;
+ commandOnly(47);
+ }
+
+ if (data.word(kMousebutton) == 1)
+ data.byte(kGetback) = 3;
+}
+
+void DreamGenContext::getBackFromOps() {
+ if (data.byte(kMandead) == 2)
+ blank();
+ else
+ getBack1();
+}
+
+void DreamGenContext::getBackToOps() {
+ if (data.byte(kCommandtype) != 201) {
+ data.byte(kCommandtype) = 201;
+ commandOnly(42);
+ }
+
+ if (data.word(kMousebutton) != data.word(kOldbutton)) {
+ if (!(data.word(kMousebutton) & 1)) {
+ oldToNames();
+ data.byte(kGetback) = 2;
+ }
+ }
+}
+
} /*namespace dreamgen */