aboutsummaryrefslogtreecommitdiff
path: root/engines/dreamweb/object.cpp
diff options
context:
space:
mode:
authorWillem Jan Palenstijn2011-12-27 22:21:43 +0100
committerWillem Jan Palenstijn2011-12-27 23:03:40 +0100
commitd9aed2e00bbb2dc54eb741affc1d978068175c04 (patch)
treeafc3639743a2bf3e10b6459fefc4fa2ef2adbe90 /engines/dreamweb/object.cpp
parenta7cdc342b36bce68e5cdabf6a682e38ea1b21e7b (diff)
downloadscummvm-rg350-d9aed2e00bbb2dc54eb741affc1d978068175c04.tar.gz
scummvm-rg350-d9aed2e00bbb2dc54eb741affc1d978068175c04.tar.bz2
scummvm-rg350-d9aed2e00bbb2dc54eb741affc1d978068175c04.zip
DREAMWEB: Convert room text into TextFiles
Diffstat (limited to 'engines/dreamweb/object.cpp')
-rw-r--r--engines/dreamweb/object.cpp17
1 files changed, 5 insertions, 12 deletions
diff --git a/engines/dreamweb/object.cpp b/engines/dreamweb/object.cpp
index c78ec71561..6e5ae8a813 100644
--- a/engines/dreamweb/object.cpp
+++ b/engines/dreamweb/object.cpp
@@ -252,10 +252,7 @@ void DreamBase::inventory() {
void DreamBase::transferText(uint8 from, uint8 to) {
_exText.setOffset(to, data.word(kExtextpos));
- uint16 freeTextOffset = 2*from;
- uint16 srcOffset = getSegment(data.word(kFreedesc)).word(kFreetextdat + freeTextOffset);
-
- const char *src = (const char *)getSegment(data.word(kFreedesc)).ptr(kFreetext + srcOffset, 0);
+ const char *src = _freeDesc.getString(from);
char *dst = _exText._text + data.word(kExtextpos);
size_t len = strlen(src);
@@ -592,17 +589,13 @@ const uint8 *DreamBase::getObTextStart() {
const uint8 *text;
uint16 textOff;
if (data.byte(kObjecttype) == kFreeObjectType) {
- uint16 textSeg = data.word(kFreedesc);
- uint16 textDatOff = kFreetextdat;
+ textBase = (const uint8 *)_freeDesc._text;
textOff = kFreetext;
- textBase = getSegment(textSeg).ptr(textOff, 0);
- text = textBase + getSegment(textSeg).word(textDatOff + 2*data.byte(kCommand));
+ text = (const uint8 *)_freeDesc.getString(data.byte(kCommand));
} else if (data.byte(kObjecttype) == kSetObjectType1) {
- uint16 textSeg = data.word(kSetdesc);
- uint16 textDatOff = kSettextdat;
+ textBase = (const uint8 *)_setDesc._text;
textOff = kSettext;
- textBase = getSegment(textSeg).ptr(textOff, 0);
- text = textBase + getSegment(textSeg).word(textDatOff + 2*data.byte(kCommand));
+ text = (const uint8 *)_setDesc.getString(data.byte(kCommand));
} else {
textBase = (const uint8 *)_exText._text;
textOff = kExtext;