diff options
| -rw-r--r-- | engines/mads/nebular/dialogs_nebular.cpp | 4 | ||||
| -rw-r--r-- | engines/mads/nebular/menu_nebular.cpp | 7 | ||||
| -rw-r--r-- | engines/mads/scene_data.cpp | 8 | 
3 files changed, 15 insertions, 4 deletions
| diff --git a/engines/mads/nebular/dialogs_nebular.cpp b/engines/mads/nebular/dialogs_nebular.cpp index f5702ccb31..1792dabb15 100644 --- a/engines/mads/nebular/dialogs_nebular.cpp +++ b/engines/mads/nebular/dialogs_nebular.cpp @@ -607,6 +607,9 @@ void FullScreenDialog::display() {  	_vm->_screen.setClipBounds(Common::Rect(0, DIALOG_TOP, MADS_SCREEN_WIDTH,  		DIALOG_TOP + MADS_SCENE_HEIGHT));  	_vm->_game->_scene.restrictScene(); + +	if (_screenId > 0) +		scene._spriteSlots.fullRefresh();  }  /*------------------------------------------------------------------------*/ @@ -966,6 +969,7 @@ void GameDialog::refreshText() {  DifficultyDialog::DifficultyDialog(MADSEngine *vm) : GameDialog(vm) {  	setLines(); +	_vm->_palette->resetGamePalette(4, 8);  }  void DifficultyDialog::setLines() { diff --git a/engines/mads/nebular/menu_nebular.cpp b/engines/mads/nebular/menu_nebular.cpp index 6e55b9c18f..85d9adf974 100644 --- a/engines/mads/nebular/menu_nebular.cpp +++ b/engines/mads/nebular/menu_nebular.cpp @@ -102,6 +102,13 @@ MainMenu::MainMenu(MADSEngine *vm): MenuView(vm) {  }  MainMenu::~MainMenu() { +	Scene &scene = _vm->_game->_scene; +	for (int i = 0; i < 7; ++i) { +		if (_menuItemIndexes[i] != -1) +			scene._sprites.remove(_menuItemIndexes[i]); +	} + +	scene._spriteSlots.reset();  }  void MainMenu::display() { diff --git a/engines/mads/scene_data.cpp b/engines/mads/scene_data.cpp index 66848ca939..174579a624 100644 --- a/engines/mads/scene_data.cpp +++ b/engines/mads/scene_data.cpp @@ -232,11 +232,11 @@ void SceneInfo::load(int sceneId, int variant, const Common::String &resName,  	infoFile.close();  	if (_vm->getGameID() == GType_RexNebular) { -		loadMadsV1Background(sceneId, resName, flags, bgSurface); -		loadPalette(sceneId, _artFileNum, resName, flags, bgSurface); +		loadMadsV1Background(_sceneId, resName, flags, bgSurface); +		loadPalette(_sceneId, _artFileNum, resName, flags, bgSurface);  	} else { -		loadMadsV2Background(sceneId, resName, flags, bgSurface); -		loadPalette(sceneId, sceneId, resName, flags, bgSurface); +		loadMadsV2Background(_sceneId, resName, flags, bgSurface); +		loadPalette(_sceneId, _sceneId, resName, flags, bgSurface);  	}  	Common::Array<SpriteAsset *> spriteSets; | 
