diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/mohawk/livingbooks.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/engines/mohawk/livingbooks.cpp b/engines/mohawk/livingbooks.cpp index 6d93ec4151..2c75b8bf6e 100644 --- a/engines/mohawk/livingbooks.cpp +++ b/engines/mohawk/livingbooks.cpp @@ -115,7 +115,7 @@ Common::Error MohawkEngine_LivingBooks::run() { _cursor->setDefaultCursor(); _cursor->showCursor(); - if (!loadPage(kLBIntroMode, 1, 0)) + if (!tryLoadPageStart(kLBIntroMode, 1)) error("Could not load intro page"); Common::Event event; @@ -1062,9 +1062,11 @@ void MohawkEngine_LivingBooks::handleNotify(NotifyEvent &event) { // TODO: what is entry.newUnknown? if (!event.newMode) event.newMode = _curMode; - if (!loadPage((LBMode)event.newMode, event.newPage, event.newSubpage)) - error("kLBNotifyChangeMode failed to move to mode %d, page %d.%d", - event.newMode, event.newPage, event.newSubpage); + if (!loadPage((LBMode)event.newMode, event.newPage, event.newSubpage)) { + if (event.newSubpage != 0 || !loadPage((LBMode)event.newMode, event.newPage, 1)) + error("kLBNotifyChangeMode failed to move to mode %d, page %d.%d", + event.newMode, event.newPage, event.newSubpage); + } } break; |