aboutsummaryrefslogtreecommitdiff
path: root/engines/neverhood/scene.cpp
diff options
context:
space:
mode:
authorjohndoe1232013-01-18 19:00:28 +0000
committerWillem Jan Palenstijn2013-05-08 20:47:40 +0200
commite51bea9b4e4d2857b1225cdd7c0ebbe137b530ee (patch)
tree7fee197ac216e111ec2378d73b71b337fba634f7 /engines/neverhood/scene.cpp
parenteea9dbe2da9c6195431f234e89671fffd1e1ac29 (diff)
downloadscummvm-rg350-e51bea9b4e4d2857b1225cdd7c0ebbe137b530ee.tar.gz
scummvm-rg350-e51bea9b4e4d2857b1225cdd7c0ebbe137b530ee.tar.bz2
scummvm-rg350-e51bea9b4e4d2857b1225cdd7c0ebbe137b530ee.zip
NEVERHOOD: Don't load a DataResource if the same data is already loaded; this fixes a nasty bug in several scenes which use message lists from a DataResource
Diffstat (limited to 'engines/neverhood/scene.cpp')
-rw-r--r--engines/neverhood/scene.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/engines/neverhood/scene.cpp b/engines/neverhood/scene.cpp
index 30b93bdada..866b75d399 100644
--- a/engines/neverhood/scene.cpp
+++ b/engines/neverhood/scene.cpp
@@ -397,7 +397,16 @@ void Scene::processMessageList() {
_messageListStatus = 0;
}
- if (_messageList && _klayman) {
+ if (_messageList && _klayman) {
+
+#if 0
+ debug("MessageList: %p, %d", (void*)_messageList, _messageList->size());
+ for (uint i = 0; i < _messageList->size(); ++i) {
+ if (i == _messageListIndex) debugN("**"); else debugN(" ");
+ debug("(%08X, %08X)", (*_messageList)[i].messageNum, (*_messageList)[i].messageValue);
+ }
+ debug("--------------------------------");
+#endif
while (_messageList && _messageListIndex < _messageListCount && !_isKlaymanBusy) {
uint32 messageNum = (*_messageList)[_messageListIndex].messageNum;