aboutsummaryrefslogtreecommitdiff
path: root/engines/simon/items.cpp
diff options
context:
space:
mode:
authorTravis Howell2006-04-29 12:25:15 +0000
committerTravis Howell2006-04-29 12:25:15 +0000
commitd9ed515f90952635cf3195131ce86905dbd29a08 (patch)
treedf4b3e000af57a69df45dc86e037b1f9af5014d9 /engines/simon/items.cpp
parent7e02709e7d6c5c31141cef50bce13ddb64845a34 (diff)
downloadscummvm-rg350-d9ed515f90952635cf3195131ce86905dbd29a08.tar.gz
scummvm-rg350-d9ed515f90952635cf3195131ce86905dbd29a08.tar.bz2
scummvm-rg350-d9ed515f90952635cf3195131ce86905dbd29a08.zip
Merge fadeToBlack() into o1_specialFade() and cleanup
svn-id: r22214
Diffstat (limited to 'engines/simon/items.cpp')
-rw-r--r--engines/simon/items.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/engines/simon/items.cpp b/engines/simon/items.cpp
index 8aa4b74e4a..e2ad70f774 100644
--- a/engines/simon/items.cpp
+++ b/engines/simon/items.cpp
@@ -1618,7 +1618,24 @@ void SimonEngine::o1_loadStrings() {
void SimonEngine::o1_specialFade() {
// 187: fade to black
- fadeToBlack();
+ uint i;
+
+ memcpy(_videoBuf1, _paletteBackup, 1024);
+
+ i = NUM_PALETTE_FADEOUT;
+ do {
+ palette_fadeout((uint32 *)_videoBuf1, 32);
+ palette_fadeout((uint32 *)_videoBuf1 + 32 + 16, 144);
+ palette_fadeout((uint32 *)_videoBuf1 + 32 + 16 + 144 + 16, 48);
+
+ _system->setPalette(_videoBuf1, 0, 256);
+ if (_fade)
+ _system->updateScreen();
+ delay(5);
+ } while (--i);
+
+ memcpy(_paletteBackup, _videoBuf1, 1024);
+ memcpy(_palette, _videoBuf1, 1024);
}
// -----------------------------------------------------------------------