[Scummvm-cvs-logs] SF.net SVN: scummvm: [21989] scummvm/trunk/engines/kyra

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Mon Apr 17 12:53:02 CEST 2006


Revision: 21989
Author:   lordhoto
Date:     2006-04-17 12:52:31 -0700 (Mon, 17 Apr 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=21989&view=rev

Log Message:
-----------
- Implements copyRegion without transparency checking
- Uses copyRegion without transparency checking to fix credits drawing bugs

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/screen.cpp
    scummvm/trunk/engines/kyra/screen.h
    scummvm/trunk/engines/kyra/sequences_v1.cpp
Modified: scummvm/trunk/engines/kyra/screen.cpp
===================================================================
--- scummvm/trunk/engines/kyra/screen.cpp	2006-04-17 19:39:31 UTC (rev 21988)
+++ scummvm/trunk/engines/kyra/screen.cpp	2006-04-17 19:52:31 UTC (rev 21989)
@@ -312,7 +312,7 @@
 	if (flags & CR_X_FLIPPED) {
 		while (h--) {
 			for (int i = 0; i < w; ++i) {
-				if (src[i]) {
+				if (src[i] || (flags & CR_NO_P_CHECK)) {
 					dst[w-i] = src[i];
 				}
 			}
@@ -322,7 +322,7 @@
 	} else {
 		while (h--) {
 			for (int i = 0; i < w; ++i) {
-				if (src[i]) {
+				if (src[i] || (flags & CR_NO_P_CHECK)) {
 					dst[i] = src[i];
 				}
 			}

Modified: scummvm/trunk/engines/kyra/screen.h
===================================================================
--- scummvm/trunk/engines/kyra/screen.h	2006-04-17 19:39:31 UTC (rev 21988)
+++ scummvm/trunk/engines/kyra/screen.h	2006-04-17 19:52:31 UTC (rev 21989)
@@ -66,7 +66,8 @@
 
 	enum CopyRegionFlags {
 		CR_X_FLIPPED  = 0x01,
-		CR_CLIPPED    = 0x02
+		CR_CLIPPED    = 0x02,
+		CR_NO_P_CHECK = 0x04
 	};
 
 	enum DrawShapeFlags {

Modified: scummvm/trunk/engines/kyra/sequences_v1.cpp
===================================================================
--- scummvm/trunk/engines/kyra/sequences_v1.cpp	2006-04-17 19:39:31 UTC (rev 21988)
+++ scummvm/trunk/engines/kyra/sequences_v1.cpp	2006-04-17 19:52:31 UTC (rev 21989)
@@ -1093,7 +1093,7 @@
 	while (!finished) {
 		uint32 startLoop = _system->getMillis();
 		if (bottom > 175) {
-			_screen->copyRegion(8, 32, 8, 32, 312, 128, 4, 2);
+			_screen->copyRegion(8, 32, 8, 32, 312, 128, 4, 2, Screen::CR_NO_P_CHECK);
 			bottom = 0;
 			
 			for (int i = 0; i < numStrings; i++) {
@@ -1106,7 +1106,7 @@
 				if (strings[i].y > bottom)
 					bottom = strings[i].y;
 			}
-			_screen->copyRegion(8, 32, 8, 32, 312, 128, 2, 0);
+			_screen->copyRegion(8, 32, 8, 32, 312, 128, 2, 0, Screen::CR_NO_P_CHECK);
 			_screen->updateScreen();
 		}
 


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