aboutsummaryrefslogtreecommitdiff
path: root/engines/dreamweb
diff options
context:
space:
mode:
authorBertrand Augereau2011-09-01 00:11:07 +0200
committerBertrand Augereau2011-09-01 00:14:48 +0200
commit0534b70b6d73b6d5afbf107021d52f46a13fcbe9 (patch)
treea5f248071585d9ad183e0d6f91f9b1a16a4efc25 /engines/dreamweb
parent1f531c6f7fc90d78a4d14cda377e5aed7c7f4eb0 (diff)
downloadscummvm-rg350-0534b70b6d73b6d5afbf107021d52f46a13fcbe9.tar.gz
scummvm-rg350-0534b70b6d73b6d5afbf107021d52f46a13fcbe9.tar.bz2
scummvm-rg350-0534b70b6d73b6d5afbf107021d52f46a13fcbe9.zip
DREAMWEB: 'getaddir' ported to C++
Diffstat (limited to 'engines/dreamweb')
-rw-r--r--engines/dreamweb/stubs.cpp9
-rw-r--r--engines/dreamweb/stubs.h1
2 files changed, 10 insertions, 0 deletions
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index e400a5bbf3..923c63602a 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -1207,6 +1207,15 @@ void *DreamGenContext::getanyad(uint8 *value1, uint8 *value2) {
}
}
+void *DreamGenContext::getanyaddir(uint8 index, uint8 flag) {
+ if (flag == 4)
+ return getexad(index);
+ else if (flag == 2)
+ return getfreead(index);
+ else
+ return getsetad(index);
+}
+
SetObject *DreamGenContext::getsetad(uint8 index) {
return (SetObject *)segRef(data.word(kSetdat)).ptr(0, 0) + index;
}
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index 7bba6a9d52..6d431a856f 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -163,6 +163,7 @@
DynObject *geteitheradCPP();
SetObject *getsetad(uint8 index);
void *getanyad(uint8 *value1, uint8 *value2);
+ void *getanyaddir(uint8 index, uint8 flag);
void setallchanges();
void dochange();
void dochange(uint8 index, uint8 value, uint8 type);