diff options
Diffstat (limited to 'engines/neverhood/module1700.cpp')
-rw-r--r-- | engines/neverhood/module1700.cpp | 24 |
1 files changed, 4 insertions, 20 deletions
diff --git a/engines/neverhood/module1700.cpp b/engines/neverhood/module1700.cpp index a36d35816e..528161ea2b 100644 --- a/engines/neverhood/module1700.cpp +++ b/engines/neverhood/module1700.cpp @@ -100,11 +100,7 @@ void Module1700::createScene1705(int which) { } void Module1700::updateScene1701() { - _childObject->handleUpdate(); - if (_done) { - _done = false; - delete _childObject; - _childObject = NULL; + if (!updateChild()) { if (_vm->gameState().sceneNum == 3) { createScene1705(0); _childObject->handleUpdate(); @@ -117,11 +113,7 @@ void Module1700::updateScene1701() { } void Module1700::updateScene1702() { - _childObject->handleUpdate(); - if (_done) { - _done = false; - delete _childObject; - _childObject = NULL; + if (!updateChild()) { if (_field20 == 0) { createScene1703(0); _childObject->handleUpdate(); @@ -133,11 +125,7 @@ void Module1700::updateScene1702() { } void Module1700::updateScene1703() { - _childObject->handleUpdate(); - if (_done) { - _done = false; - delete _childObject; - _childObject = NULL; + if (!updateChild()) { if (_field20 == 0) { createScene1704(-1); _childObject->handleUpdate(); @@ -156,11 +144,7 @@ void Module1700::updateScene1703() { } void Module1700::updateScene1705() { - _childObject->handleUpdate(); - if (_done) { - _done = false; - delete _childObject; - _childObject = NULL; + if (!updateChild()) { sendMessage(_parentModule, 0x1009, 1); } } |