aboutsummaryrefslogtreecommitdiff
path: root/engines/mutationofjb/mutationofjb.cpp
diff options
context:
space:
mode:
authorĽubomír Remák2018-02-22 23:47:16 +0100
committerEugene Sandulenko2018-08-25 23:12:01 +0200
commitf7d5a825a053199ddbf4d7c564e84e9f9709d958 (patch)
treeceb20f74e8a40ae8553f5d06a24139aa21813714 /engines/mutationofjb/mutationofjb.cpp
parent356a6809c31224f4ed2bfcc5e6bacd131f144026 (diff)
downloadscummvm-rg350-f7d5a825a053199ddbf4d7c564e84e9f9709d958.tar.gz
scummvm-rg350-f7d5a825a053199ddbf4d7c564e84e9f9709d958.tar.bz2
scummvm-rg350-f7d5a825a053199ddbf4d7c564e84e9f9709d958.zip
MUTATIONOFJB: Start implementation of ATN scripts (IF command).
Diffstat (limited to 'engines/mutationofjb/mutationofjb.cpp')
-rw-r--r--engines/mutationofjb/mutationofjb.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/engines/mutationofjb/mutationofjb.cpp b/engines/mutationofjb/mutationofjb.cpp
index dc7f51869c..cdefbb9833 100644
--- a/engines/mutationofjb/mutationofjb.cpp
+++ b/engines/mutationofjb/mutationofjb.cpp
@@ -102,12 +102,14 @@ Common::Error MutationOfJBEngine::run() {
switch (event.type) {
case Common::EVENT_LBUTTONDOWN:
{
- const SceneInfo &sceneInfo = _gameData->_scenes[_gameData->_currentScene - 1];
- for (int i = 0; i < MIN(ARRAYSIZE(sceneInfo._doors), (int) sceneInfo._noDoors); ++i) {
- const Door &door = sceneInfo._doors[i];
- if ((event.mouse.x >= door._x) && (event.mouse.x < door._x + door._width) && (event.mouse.y >= door._y) && (event.mouse.y < door._y + door._height)) {
- _gameData->_currentScene = door._destSceneId;
- _room->load(_gameData->_currentScene, false);
+ const Scene* const scene = _gameData->getScene(_gameData->_currentScene);
+ if (scene) {
+ for (int i = 0; i < MIN(ARRAYSIZE(scene->_doors), (int) scene->_noDoors); ++i) {
+ const Door &door = scene->_doors[i];
+ if ((event.mouse.x >= door._x) && (event.mouse.x < door._x + door._width) && (event.mouse.y >= door._y) && (event.mouse.y < door._y + door._height)) {
+ _gameData->_currentScene = door._destSceneId;
+ _room->load(_gameData->_currentScene, false);
+ }
}
}
break;