[Scummvm-cvs-logs] SF.net SVN: scummvm:[51246] scummvm/trunk/engines/sci/graphics/frameout.cpp

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Sat Jul 24 17:25:29 CEST 2010


Revision: 51246
          http://scummvm.svn.sourceforge.net/scummvm/?rev=51246&view=rev
Author:   m_kiewitz
Date:     2010-07-24 15:25:29 +0000 (Sat, 24 Jul 2010)

Log Message:
-----------
SCI: delete hidden planes in kFrameout

Modified Paths:
--------------
    scummvm/trunk/engines/sci/graphics/frameout.cpp

Modified: scummvm/trunk/engines/sci/graphics/frameout.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/frameout.cpp	2010-07-24 15:15:38 UTC (rev 51245)
+++ scummvm/trunk/engines/sci/graphics/frameout.cpp	2010-07-24 15:25:29 UTC (rev 51246)
@@ -132,9 +132,6 @@
 		reg_t planeObject = *it;
 		uint16 planePriority = readSelectorValue(_segMan, planeObject, SELECTOR(priority));
 
-		if (planePriority == 0xffff) // Plane currently not meant to be shown
-			continue;
-
 		Common::Rect planeRect;
 		planeRect.top = readSelectorValue(_segMan, planeObject, SELECTOR(top));
 		planeRect.left = readSelectorValue(_segMan, planeObject, SELECTOR(left));
@@ -148,6 +145,12 @@
 		planeRect.bottom = (planeRect.bottom * _screen->getHeight()) / planeResY;
 		planeRect.right = (planeRect.right * _screen->getWidth()) / planeResX;
 
+		if (planePriority == 0xffff) { // Plane currently not meant to be shown
+			// TODO: better remember previous state and only delete if it got hidden now
+			_paint32->fillRect(planeRect, 0);
+			continue;
+		}
+
 		Common::Rect planeClipRect(planeRect.width(), planeRect.height());
 
 		Common::Rect upscaledPlaneRect = planeRect;


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