aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStrangerke2014-04-12 23:09:05 +0200
committerStrangerke2014-04-12 23:10:54 +0200
commitd41833e8e587c3cf53c3e3263b32169fb6d1e353 (patch)
tree27dc5e3f0887f9e4c2214eb963a17aac3c125c8d
parent9b0f0b6efec3da058157beb25bab7083328df1da (diff)
downloadscummvm-rg350-d41833e8e587c3cf53c3e3263b32169fb6d1e353.tar.gz
scummvm-rg350-d41833e8e587c3cf53c3e3263b32169fb6d1e353.tar.bz2
scummvm-rg350-d41833e8e587c3cf53c3e3263b32169fb6d1e353.zip
MADS: Implement Palette::refreshHighColors()
-rw-r--r--engines/mads/nebular/nebular_scenes1.cpp9
-rw-r--r--engines/mads/palette.cpp9
-rw-r--r--engines/mads/palette.h2
3 files changed, 15 insertions, 5 deletions
diff --git a/engines/mads/nebular/nebular_scenes1.cpp b/engines/mads/nebular/nebular_scenes1.cpp
index d6390ddfc8..b3fbedf574 100644
--- a/engines/mads/nebular/nebular_scenes1.cpp
+++ b/engines/mads/nebular/nebular_scenes1.cpp
@@ -1569,7 +1569,7 @@ void Scene104::step() {
_game._player._stepEnabled = false;
_game._player._visible = false;
_globals._spriteIndexes[2] = _scene->_sprites.addSprites(formAnimName('a', 0), false);
- warning("TODO: sub7C8DE()");
+ _vm->_palette->refreshHighColors();
_globals._sequenceIndexes[2] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[2], mirrorFl, 7, 1, 0, 0);
_scene->_sequences.setMsgPosition(_globals._sequenceIndexes[2], Common::Point(198, 143));
_scene->_sequences.setDepth(_globals._sequenceIndexes[2], 4);
@@ -1599,7 +1599,7 @@ void Scene104::step() {
_game._player._stepEnabled = false;
_game._player._visible = false;
_globals._spriteIndexes[3] = _scene->_sprites.addSprites(formAnimName('a', 1), false);
- warning("TODO: sub7C8DE()");
+ _vm->_palette->refreshHighColors();
_globals._sequenceIndexes[3] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[3], false, 6, 1, 0, 0);
_scene->_sequences.setMsgPosition(_globals._sequenceIndexes[3], Common::Point(198, 143));
_scene->_sequences.setDepth(_globals._sequenceIndexes[3], 4);
@@ -1638,7 +1638,7 @@ void Scene104::step() {
_game._player._stepEnabled = false;
_game._player._visible = false;
_globals._spriteIndexes[4] = _scene->_sprites.addSprites(formAnimName('a', 2), false);
- warning("TODO: sub7C8DE()");
+ _vm->_palette->refreshHighColors();
_globals._sequenceIndexes[4] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[4], false, 8, 1, 0, 0);
_scene->_sequences.setMsgPosition(_globals._sequenceIndexes[4], Common::Point(198, 143));
_scene->_sequences.setDepth(_globals._sequenceIndexes[4], 4);
@@ -1755,8 +1755,7 @@ void Scene105::step() {
_globals._spriteIndexes[3] = _scene->_sprites.addSprites(formAnimName('m', 3), false);
_vm->_sound->command(33);
_scene->clearSequenceList();
-
- warning("TODO: sub7C8DE();");
+ _vm->_palette->refreshHighColors();
_globals._sequenceIndexes[0] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[0], false, 6, 1, 0, 0);
_scene->_sequences.setDepth(_globals._sequenceIndexes[0], 8);
diff --git a/engines/mads/palette.cpp b/engines/mads/palette.cpp
index 0c1819c809..157754f0d4 100644
--- a/engines/mads/palette.cpp
+++ b/engines/mads/palette.cpp
@@ -524,4 +524,13 @@ void Palette::unlock() {
_rgbList[31] = false;
_lockFl = false;
}
+
+void Palette::refreshHighColors() {
+ int val = 18;
+ if (_vm->_game->_scene._animFlag)
+ val += _vm->_game->_scene._animCount;
+
+ setPalette(_mainPalette, val, 256 - val);
+}
+
} // End of namespace MADS
diff --git a/engines/mads/palette.h b/engines/mads/palette.h
index 9751351a95..728fd0969a 100644
--- a/engines/mads/palette.h
+++ b/engines/mads/palette.h
@@ -254,6 +254,8 @@ public:
void lock();
void unlock();
+
+ void refreshHighColors();
};
} // End of namespace MADS