diff options
author | johndoe123 | 2011-09-16 20:02:07 +0000 |
---|---|---|
committer | Willem Jan Palenstijn | 2013-05-08 20:39:39 +0200 |
commit | c30e16628e01b5be671330b24ed73d1294205f6b (patch) | |
tree | fa959f5c2ed76fbb7d74f7e79880af98b9156656 /engines/neverhood/module1000.cpp | |
parent | 5d63bef6a25a990603444026a8cb033108410019 (diff) | |
download | scummvm-rg350-c30e16628e01b5be671330b24ed73d1294205f6b.tar.gz scummvm-rg350-c30e16628e01b5be671330b24ed73d1294205f6b.tar.bz2 scummvm-rg350-c30e16628e01b5be671330b24ed73d1294205f6b.zip |
NEVERHOOD: Add Module::updateChild and use it (in most places)
Diffstat (limited to 'engines/neverhood/module1000.cpp')
-rw-r--r-- | engines/neverhood/module1000.cpp | 30 |
1 files changed, 5 insertions, 25 deletions
diff --git a/engines/neverhood/module1000.cpp b/engines/neverhood/module1000.cpp index 1e5b0765ea..51e1d1959d 100644 --- a/engines/neverhood/module1000.cpp +++ b/engines/neverhood/module1000.cpp @@ -101,11 +101,7 @@ void Module1000::createScene1005(int which) { } void Module1000::updateScene1001() { - _childObject->handleUpdate(); - if (_done) { - _done = false; - delete _childObject; - _childObject = NULL; + if (!updateChild()) { if (_field20 == 2) { createScene1003(0); _childObject->handleUpdate(); @@ -117,11 +113,7 @@ void Module1000::updateScene1001() { } void Module1000::updateScene1002() { - _childObject->handleUpdate(); - if (_done) { - _done = false; - delete _childObject; - _childObject = NULL; + if (!updateChild()) { if (_field20 == 1) { sendMessage(_parentModule, 0x1009, 0); } else if (_field20 == 2) { @@ -135,22 +127,14 @@ void Module1000::updateScene1002() { } void Module1000::updateScene1003() { - _childObject->handleUpdate(); - if (_done) { - _done = false; - delete _childObject; - _childObject = NULL; + if (!updateChild()) { createScene1001(2); _childObject->handleUpdate(); } } void Module1000::updateScene1004() { - _childObject->handleUpdate(); - if (_done) { - _done = false; - delete _childObject; - _childObject = NULL; + if (!updateChild()) { if (_field20 == 1) { createScene1005(0); _childObject->handleUpdate(); @@ -162,12 +146,8 @@ void Module1000::updateScene1004() { } void Module1000::updateScene1005() { - _childObject->handleUpdate(); - if (_done) { + if (!updateChild()) { // TODO Music18hList_stop(_musicFileHash, 0, 1); - _done = false; - delete _childObject; - _childObject = NULL; createScene1004(1); _childObject->handleUpdate(); } |