diff options
Diffstat (limited to 'engines/sherlock/talk.cpp')
-rw-r--r-- | engines/sherlock/talk.cpp | 34 |
1 files changed, 2 insertions, 32 deletions
diff --git a/engines/sherlock/talk.cpp b/engines/sherlock/talk.cpp index 5213445cc7..a2d6d8a353 100644 --- a/engines/sherlock/talk.cpp +++ b/engines/sherlock/talk.cpp @@ -500,7 +500,7 @@ void Talk::talk(int objNum) { Object &obj = scene._bgShapes[objNum]; clearSequences(); pushSequence(_talkTo); - setStillSeq(_talkTo); + people.setListenSequence(_talkTo, 129); events.setCursor(WAIT); if (obj._lookPosition.y != 0) @@ -521,7 +521,7 @@ void Talk::talk(int objNum) { Object &obj = scene._bgShapes[objNum]; clearSequences(); pushSequence(_talkTo); - setStillSeq(_talkTo); + people.setListenSequence(_talkTo, 129); events.setCursor(WAIT); if (obj._lookPosition.y != 0) @@ -694,36 +694,6 @@ void Talk::pushTalkSequence(Object *obj) { error("Ran out of talk sequence stack space"); } -void Talk::setStillSeq(int speaker) { - People &people = *_vm->_people; - Scene &scene = *_vm->_scene; - - // Don't bother doing anything if no specific speaker is specified - if (speaker == -1) - return; - - if (speaker) { - int objNum = people.findSpeaker(speaker); - if (objNum != -1) { - Object &obj = scene._bgShapes[objNum]; - - if (obj._seqSize < MAX_TALK_SEQUENCES) { - warning("Tried to copy too few still frames"); - } else { - for (uint idx = 0; idx < MAX_TALK_SEQUENCES; ++idx) { - obj._sequences[idx] = people._characters[speaker]._stillSequences[idx]; - if (idx > 0 && !people._characters[speaker]._talkSequences[idx] && - !people._characters[speaker]._talkSequences[idx - 1]) - break; - } - - obj._frameNumber = 0; - obj._seqTo = 0; - } - } - } -} - void Talk::doScript(const Common::String &script) { People &people = *_vm->_people; Scene &scene = *_vm->_scene; |