diff options
author | Eugene Sandulenko | 2005-01-07 22:18:53 +0000 |
---|---|---|
committer | Eugene Sandulenko | 2005-01-07 22:18:53 +0000 |
commit | c316ab62cfb86ff5155d03bff53926a8e68c285a (patch) | |
tree | a7e9ae4fe2937c0b9ddce93fb47e6d4f4d2ccae0 /saga/scene.cpp | |
parent | f74fce354f4aece89b45a301d0519fc67f876f5d (diff) | |
download | scummvm-rg350-c316ab62cfb86ff5155d03bff53926a8e68c285a.tar.gz scummvm-rg350-c316ab62cfb86ff5155d03bff53926a8e68c285a.tar.bz2 scummvm-rg350-c316ab62cfb86ff5155d03bff53926a8e68c285a.zip |
Eliminate _scene->getMode() and use scene flags instead
svn-id: r16482
Diffstat (limited to 'saga/scene.cpp')
-rw-r--r-- | saga/scene.cpp | 36 |
1 files changed, 6 insertions, 30 deletions
diff --git a/saga/scene.cpp b/saga/scene.cpp index d11f953952..5a9d6d0247 100644 --- a/saga/scene.cpp +++ b/saga/scene.cpp @@ -112,7 +112,6 @@ Scene::Scene(SagaEngine *vm) : _vm(vm), _initialized(false) { } _sceneLoaded = false; - _sceneMode = 0; _sceneNumber = 0; _sceneResNum = 0; _inGame = false; @@ -315,12 +314,6 @@ int Scene::changeScene(int scene_num) { return SUCCESS; } -int Scene::getMode() { - assert(_initialized); - - return _sceneMode; -} - void Scene::getSlopes(int &beginSlope, int &endSlope) { beginSlope = _vm->getStatusYOffset() - _desc.beginSlope; endSlope = _vm->getStatusYOffset() - _desc.endSlope; @@ -532,7 +525,6 @@ int Scene::loadScene(int scene_num, int load_flag, SCENE_PROC scene_proc, SCENE_ return FAILURE; } - _sceneMode = 0; _loadDesc = true; _sceneNumber = -1; @@ -796,7 +788,6 @@ int Scene::processSceneResources() { pal_p = _vm->getImagePal(_bg.res_buf, _bg.res_len); memcpy(_bg.pal, pal_p, sizeof(_bg.pal)); - _sceneMode = SCENE_MODE_NORMAL; break; case SAGA_BG_MASK: // Scene background mask resource if (_bgMask.loaded) { @@ -827,7 +818,7 @@ int Scene::processSceneResources() { _actionMap->load(res_data, res_data_len); break; case SAGA_ISO_TILESET: - if (_sceneMode == SCENE_MODE_NORMAL) { + if (!(_vm->_scene->getFlags() & kSceneFlagISO)) { warning("Scene::ProcessSceneResources(): Isometric tileset incompatible with normal scene mode"); return FAILURE; } @@ -838,11 +829,9 @@ int Scene::processSceneResources() { warning("Scene::ProcessSceneResources(): Error loading isometric tileset resource"); return FAILURE; } - - _sceneMode = SCENE_MODE_ISO; break; case SAGA_ISO_METAMAP: - if (_sceneMode == SCENE_MODE_NORMAL) { + if (!(_vm->_scene->getFlags() & kSceneFlagISO)) { warning("Scene::ProcessSceneResources(): Isometric metamap incompatible with normal scene mode"); return FAILURE; } @@ -853,11 +842,9 @@ int Scene::processSceneResources() { warning("Scene::ProcessSceneResources(): Error loading isometric metamap resource"); return FAILURE; } - - _sceneMode = SCENE_MODE_ISO; break; case SAGA_ISO_METATILESET: - if (_sceneMode == SCENE_MODE_NORMAL) { + if (!(_vm->_scene->getFlags() & kSceneFlagISO)) { warning("Scene::ProcessSceneResources(): Isometric metatileset incompatible with normal scene mode"); return FAILURE; } @@ -868,8 +855,6 @@ int Scene::processSceneResources() { warning("Scene::ProcessSceneResources(): Error loading isometric tileset resource"); return FAILURE; } - - _sceneMode = SCENE_MODE_ISO; break; case SAGA_ANIM_1: case SAGA_ANIM_2: @@ -929,20 +914,11 @@ int Scene::draw(SURFACE *dst_s) { bg_pt.x = 0; bg_pt.y = 0; - switch (_sceneMode) { - - case SCENE_MODE_NORMAL: + if (_vm->_scene->getFlags() & kSceneFlagISO) + _vm->_isoMap->draw(dst_s); + else bufToSurface(dst_s, buf_info.bg_buf, disp_info.logical_w, MAX(disp_info.scene_h, _bg.h), NULL, &bg_pt); - break; - case SCENE_MODE_ISO: - _vm->_isoMap->draw(dst_s); - break; - default: - // Unknown scene mode - return FAILURE; - break; - }; return SUCCESS; } |