aboutsummaryrefslogtreecommitdiff
path: root/queen/talk.cpp
diff options
context:
space:
mode:
authorGregory Montoir2003-12-03 20:53:59 +0000
committerGregory Montoir2003-12-03 20:53:59 +0000
commitb6c01b8c739575f80a45b843bf9292326c52e502 (patch)
treed3823bb622234c687421c9ae0431c10dd22dd111 /queen/talk.cpp
parent77770ea7fe2f94527060d264d4950e5d05e1247f (diff)
downloadscummvm-rg350-b6c01b8c739575f80a45b843bf9292326c52e502.tar.gz
scummvm-rg350-b6c01b8c739575f80a45b843bf9292326c52e502.tar.bz2
scummvm-rg350-b6c01b8c739575f80a45b843bf9292326c52e502.zip
- hard coded cutaway stuff for boat room
- hard coded cutaway and talk oracle stuff - scale Joe during cutaway when changing rooms - special moves 20 & 24 (temple room 100) - special move 15 (valley room 67) - special move 26 (c69g.CUT) - (game is now completable up to final fight scene) svn-id: r11491
Diffstat (limited to 'queen/talk.cpp')
-rw-r--r--queen/talk.cpp19
1 files changed, 10 insertions, 9 deletions
diff --git a/queen/talk.cpp b/queen/talk.cpp
index a641f193ba..53f9430c54 100644
--- a/queen/talk.cpp
+++ b/queen/talk.cpp
@@ -961,14 +961,12 @@ void Talk::speakSegment(
// It's the oracle!
// Dont turn AMAL animation off, and dont manually anim person
command = SPEAK_ORACLE;
-
- warning("Oracle not yet handled!");
oracle = true;
- // XXX k=PERSON_FRAMES[BNUM];
- // XXX for(i=5;i<=8;i++) {
- // XXX unpack(i,k,BANK);
- // XXX k=k+1;
- // XXX }
+ uint16 frameNum = _logic->personFrames(bobNum);
+ for (i = 5; i <= 8; ++i) {
+ _graphics->bankUnpack(i, frameNum, bankNum);
+ ++frameNum;
+ }
}
else {
bob->animating = false;
@@ -1092,8 +1090,11 @@ void Talk::speakSegment(
_graphics->textClear(0,198);
if (oracle) {
- // lines 1831-1339 in talk.c
- warning("Oracle not yet handled!");
+ uint16 frameNum = _logic->personFrames(bobNum);
+ for (i = 1; i <= 4; ++i) {
+ _graphics->bankUnpack(i, frameNum, bankNum);
+ ++frameNum;
+ }
}
// Ensure that the correct buffer frame is selected