aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorBertrand Augereau2011-12-01 10:16:45 +0100
committerBertrand Augereau2011-12-01 10:34:14 +0100
commite73e300e412818d3eb48c2c8c5c3c5c176306af2 (patch)
tree804d00331550d7486e3647d2cf4a0c2852a462e2 /engines
parentf539d8f80f7f1b9dc62d6d68ac4aa1e32b2e3164 (diff)
downloadscummvm-rg350-e73e300e412818d3eb48c2c8c5c3c5c176306af2.tar.gz
scummvm-rg350-e73e300e412818d3eb48c2c8c5c3c5c176306af2.tar.bz2
scummvm-rg350-e73e300e412818d3eb48c2c8c5c3c5c176306af2.zip
DREAMWEB: A bit of cleaning in 'madman'
Diffstat (limited to 'engines')
-rw-r--r--engines/dreamweb/sprite.cpp20
1 files changed, 7 insertions, 13 deletions
diff --git a/engines/dreamweb/sprite.cpp b/engines/dreamweb/sprite.cpp
index 72248378ad..01defc554a 100644
--- a/engines/dreamweb/sprite.cpp
+++ b/engines/dreamweb/sprite.cpp
@@ -679,24 +679,18 @@ void DreamGenContext::madmantext() {
}
void DreamGenContext::madman() {
+ ReelRoutine *routine = (ReelRoutine *)es.ptr(bx, 0);
data.word(kWatchingtime) = 2;
checkspeed();
if (flags.z()) {
- ax = es.word(bx+3);
+ ax = routine->reelPointer();
if (ax >= 364) {
data.byte(kMandead) = 2;
- showgamereel();
+ showgamereel(routine);
return;
}
if (ax == 10) {
- push(es);
- push(bx);
- push(ax);
- dx = kIntrotextname;
- loadtemptext();
- ax = pop();
- bx = pop();
- es = pop();
+ loadtemptext("DREAMWEB.T82");
data.byte(kCombatcount) = (uint8)-1;
data.byte(kSpeechcount) = 0;
}
@@ -733,10 +727,10 @@ void DreamGenContext::madman() {
}
}
}
- es.word(bx+3) = ax;
+ routine->setReelPointer(ax);
}
- showgamereel();
- es.byte(bx+1) = data.byte(kMapx);
+ showgamereel(routine);
+ routine->mapX = data.byte(kMapx);
madmode();
}