[Scummvm-cvs-logs] CVS: scummvm/kyra debugger.cpp,1.5,1.6 screen.cpp,1.35,1.36 screen.h,1.22,1.23 sprites.cpp,1.20,1.21

Oystein Eftevaag vinterstum at users.sourceforge.net
Mon Jan 9 18:44:17 CET 2006


Update of /cvsroot/scummvm/scummvm/kyra
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19722

Modified Files:
	debugger.cpp screen.cpp screen.h sprites.cpp 
Log Message:
Fixed regression bug #1400707, and reenabled mouselocking with a fix,
to remove the mouse flickering under cutscenes and such.


Index: debugger.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/debugger.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- debugger.cpp	2 Jan 2006 22:58:59 -0000	1.5
+++ debugger.cpp	10 Jan 2006 02:43:29 -0000	1.6
@@ -85,6 +85,8 @@
 		
 		_vm->enterNewScene(room, _vm->_currentCharacter->facing, 0, 0, 1);
 		_vm->_system->showOverlay();
+		_vm->_screen->_mouseLockCount = 0;
+
 		_detach_now = true;
 		return false;
 	}

Index: screen.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/screen.cpp,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -d -r1.35 -r1.36
--- screen.cpp	7 Jan 2006 23:55:49 -0000	1.35
+++ screen.cpp	10 Jan 2006 02:43:30 -0000	1.36
@@ -1650,15 +1650,18 @@
 
 void Screen::hideMouse() {
 	debug(9, "Screen::hideMouse()");
-	//++_mouseLockCount;
+	++_mouseLockCount;
 	_system->showMouse(false);
 }
 
 void Screen::showMouse() {
 	debug(9, "Screen::showMouse()");
-	//if (--_mouseLockCount == 0) { 
+
+	if (_mouseLockCount > 0)
+		_mouseLockCount--;
+
+	if (_mouseLockCount == 0)
 		_system->showMouse(true);
-	//}
 }
 
 void Screen::setShapePages(int page1, int page2) {

Index: screen.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/screen.h,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- screen.h	7 Jan 2006 23:55:49 -0000	1.22
+++ screen.h	10 Jan 2006 02:43:30 -0000	1.23
@@ -30,6 +30,7 @@
 namespace Kyra {
 
 class KyraEngine;
+class Debugger;
 struct Rect;
 
 struct ScreenDim {
@@ -53,6 +54,7 @@
 };
 
 class Screen {
+	friend class Debugger;
 public:
 
 	enum {

Index: sprites.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/sprites.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- sprites.cpp	8 Jan 2006 21:05:16 -0000	1.20
+++ sprites.cpp	10 Jan 2006 02:43:30 -0000	1.21
@@ -88,7 +88,7 @@
 			data += 4;
 			_anims[i].y = READ_LE_UINT16(data);
 			data += 4;
-			_anims[i].width = *(data)/8 + 1;
+			_anims[i].width = *(data) - 1;
 			data += 4;
 			_anims[i].height = *(data);
 			data += 4;
@@ -111,14 +111,14 @@
 			int bkgdHeight = _anims[i].height;
 
 			if (_anims[i].width2)
-				bkgdWidth += (_anims[i].width2 >> 3) + 1;
+				bkgdWidth += _anims[i].width2 << 3;
 
 			if (_anims[i].height2)
 				bkgdHeight += _anims[i].height2;
 
 			_anims[i].background = (uint8 *)malloc(_screen->getRectSize(bkgdWidth + 1, bkgdHeight));
 			memset(_anims[i].background, 0, _screen->getRectSize(bkgdWidth + 1, bkgdHeight));
-			//_anims[i].background = (uint8 *)malloc(100*100);
+
 			assert(_anims[i].background);
 		}
 	}





More information about the Scummvm-git-logs mailing list