diff options
-rw-r--r-- | engines/dreamweb/stubs.cpp | 7 | ||||
-rw-r--r-- | engines/dreamweb/stubs.h | 1 |
2 files changed, 7 insertions, 1 deletions
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index f98e069d3a..c94735f231 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -747,7 +747,12 @@ void DreamGenContext::makebackob(SetObject *objData) { } void DreamGenContext::getroomdata() { - bx = kRoomdata + sizeof(Room) * al; + Room *room = getroomdata(al); + bx = (uint8 *)room - cs.ptr(0, 0); +} + +Room *DreamGenContext::getroomdata(uint8 room) { + return (Room *)cs.ptr(kRoomdata, 0) + room; } void DreamGenContext::startloading() { diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h index 405ae1f55d..e6fe48ef41 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -63,6 +63,7 @@ uint8 getnumber(const Frame *charSet, const uint8 *string, uint16 maxWidth, bool centered, uint16 *offset); uint8 kernchars(uint8 firstChar, uint8 secondChar, uint8 width); void getroomdata(); + Room *getroomdata(uint8 room); void readheader(); void fillspace(); void startloading(); |