[Scummvm-cvs-logs] SF.net SVN: scummvm:[42766] scummvm/trunk/engines/gob/inter_v1.cpp
drmccoy at users.sourceforge.net
drmccoy at users.sourceforge.net
Sat Jul 25 18:07:29 CEST 2009
Revision: 42766
http://scummvm.svn.sourceforge.net/scummvm/?rev=42766&view=rev
Author: drmccoy
Date: 2009-07-25 16:07:29 +0000 (Sat, 25 Jul 2009)
Log Message:
-----------
Added a workaround to fix the Last Dynasty video greenness for now
Modified Paths:
--------------
scummvm/trunk/engines/gob/inter_v1.cpp
Modified: scummvm/trunk/engines/gob/inter_v1.cpp
===================================================================
--- scummvm/trunk/engines/gob/inter_v1.cpp 2009-07-25 15:31:11 UTC (rev 42765)
+++ scummvm/trunk/engines/gob/inter_v1.cpp 2009-07-25 16:07:29 UTC (rev 42766)
@@ -972,6 +972,7 @@
bool Inter_v1::o1_palLoad(OpFuncParams ¶ms) {
int index1, index2;
+ int16 id;
byte cmd;
Resource *resource;
@@ -1116,7 +1117,8 @@
case 61:
index1 = _vm->_game->_script->readByte();
index2 = (_vm->_game->_script->readByte() - index1 + 1) * 3;
- resource = _vm->_game->_resources->getResource(_vm->_game->_script->readInt16());
+ id = _vm->_game->_script->readInt16();
+ resource = _vm->_game->_resources->getResource(id);
if (!resource)
break;
@@ -1124,6 +1126,13 @@
resource->getData() + index1 * 3, index2);
delete resource;
+ // WORKAROUND: The Last Dynasty overwrites the 0. palette entry but depends on it staying black.
+ if ((_vm->getGameType() == kGameTypeDynasty) && (index1 == 0)) {
+ _vm->_draw->_vgaPalette[0].red = 0;
+ _vm->_draw->_vgaPalette[0].green = 0;
+ _vm->_draw->_vgaPalette[0].blue = 0;
+ }
+
if (_vm->_draw->_applyPal) {
_vm->_draw->_applyPal = false;
_vm->_video->setFullPalette(_vm->_global->_pPaletteDesc);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list