mirror of
https://github.com/libretro/scummvm.git
synced 2025-01-21 01:05:59 +00:00
SHERLOCK: RT: Create pullNPCPaths to call each NPC's pullNPCPath method
This commit is contained in:
parent
6238acff3c
commit
f6c710e5b3
@ -202,7 +202,9 @@ void Talk::talkTo(const Common::String &filename) {
|
||||
if (IS_SERRATED_SCALPEL) {
|
||||
// Restore any pressed button
|
||||
if (!ui._windowOpen && savedMode != STD_MODE)
|
||||
((Scalpel::ScalpelUserInterface *)_vm->_ui)->restoreButton((int)(savedMode - 1));
|
||||
static_cast<Scalpel::ScalpelUserInterface *>(_vm->_ui)->restoreButton((int)(savedMode - 1));
|
||||
} else {
|
||||
static_cast<Tattoo::TattooPeople *>(_vm->_people)->pullNPCPaths();
|
||||
}
|
||||
|
||||
// Clear the ui counter so that anything displayed on the info line
|
||||
@ -1118,6 +1120,9 @@ void Talk::doScript(const Common::String &script) {
|
||||
pullSequence();
|
||||
if (_speaker >= 0 && _speaker < SPEAKER_REMOVE)
|
||||
people.clearTalking();
|
||||
|
||||
if (IS_ROSE_TATTOO)
|
||||
static_cast<Tattoo::TattooPeople *>(_vm->_people)->pullNPCPaths();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1239,6 +1239,17 @@ bool TattooPeople::loadWalk() {
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
void TattooPeople::pullNPCPaths() {
|
||||
for (int idx = 1; idx < MAX_CHARACTERS; ++idx) {
|
||||
TattooPerson &p = (*this)[idx];
|
||||
if (p._npcMoved) {
|
||||
while (!p._pathStack.empty())
|
||||
p.pullNPCPath();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} // End of namespace Tattoo
|
||||
|
||||
} // End of namespace Sherlock
|
||||
|
@ -222,6 +222,10 @@ public:
|
||||
*/
|
||||
void setListenSequence(int speaker, int sequenceNum);
|
||||
|
||||
/**
|
||||
* Restore any saved NPC walk path data from any of the NPCs
|
||||
*/
|
||||
void pullNPCPaths();
|
||||
|
||||
/**
|
||||
* Finds the scene background object corresponding to a specified speaker
|
||||
|
Loading…
x
Reference in New Issue
Block a user