[Scummvm-cvs-logs] CVS: scummvm/scumm actor.cpp,1.345,1.346 cursor.cpp,2.37,2.38 script_v7he.cpp,2.148,2.149

kirben kirben at users.sourceforge.net
Wed Apr 27 06:59:31 CEST 2005


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

Modified Files:
	actor.cpp cursor.cpp script_v7he.cpp 
Log Message:

Fix glitch when skipping AUX sequence in freddi.
Add missing bits of AUX code.


Index: actor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/actor.cpp,v
retrieving revision 1.345
retrieving revision 1.346
diff -u -d -r1.345 -r1.346
--- actor.cpp	21 Apr 2005 03:29:16 -0000	1.345
+++ actor.cpp	27 Apr 2005 13:55:53 -0000	1.346
@@ -147,6 +147,10 @@
 	_clipOverride = _vm->_actorClipOverride;
 
 	_auxBlock.visible = false;
+	_auxBlock.r.left = 0;
+	_auxBlock.r.top = 0;
+	_auxBlock.r.right = -1;
+	_auxBlock.r.bottom = -1;
 	_hePaletteNum = 0;
 
 	_vm->_classData[_number] = (_vm->_version >= 7) ? _vm->_classData[0] : 0;
@@ -502,6 +506,10 @@
 			if (_vm->_version >= 3 && f == _initFrame) {
 				_cost.reset();
 				_auxBlock.visible = false;
+				_auxBlock.r.left = 0;
+				_auxBlock.r.top = 0;
+				_auxBlock.r.right = -1;
+				_auxBlock.r.bottom = -1;
 			}
 			_vm->_costumeLoader->costumeDecodeData(this, f, (uint) - 1);
 			_frame = f;
@@ -793,6 +801,10 @@
 	_needRedraw = false;
 	_needBgReset = true;
 	_auxBlock.visible = false;
+	_auxBlock.r.left = 0;
+	_auxBlock.r.top = 0;
+	_auxBlock.r.right = -1;
+	_auxBlock.r.bottom = -1;
 }
 
 void Actor::showActor() {
@@ -1397,14 +1409,19 @@
 	_costumeNeedsInit = true;
 	
 	if (_vm->_features & GF_NEW_COSTUMES) {
-		_cost.reset();
-		_auxBlock.visible = false;
 		memset(_animVariable, 0, sizeof(_animVariable));
-		_costume = c;
 		
 		if (_vm->_heversion >= 71)
 			_vm->queueAuxBlock(this);
 		
+		_costume = c;
+		_cost.reset();
+		_auxBlock.visible = false;
+		_auxBlock.r.left = 0;
+		_auxBlock.r.top = 0;
+		_auxBlock.r.right = -1;
+		_auxBlock.r.bottom = -1;
+
 		if (_visible) {
 			if (_costume) {
 				_vm->ensureResourceLoaded(rtCostume, _costume);
@@ -1989,7 +2006,7 @@
 						int y1 = (int16)READ_LE_UINT16(axur + 2) + dy;
 						int x2 = (int16)READ_LE_UINT16(axur + 4) + dx;
 						int y2 = (int16)READ_LE_UINT16(axur + 6) + dy;					
-						markRectAsDirty(kMainVirtScreen, x1, x2, y1, y2 + 1, a->_number);
+						markRectAsDirty(kMainVirtScreen, x1, x2, y1, y2 + 1);
 						axur += 8;
 					}
 				}

Index: cursor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/cursor.cpp,v
retrieving revision 2.37
retrieving revision 2.38
diff -u -d -r2.37 -r2.38
--- cursor.cpp	26 Apr 2005 13:33:09 -0000	2.37
+++ cursor.cpp	27 Apr 2005 13:55:54 -0000	2.38
@@ -65,7 +65,7 @@
 	8, 7, //zak256
 };
 
-static const uint16 default_he_cursor[] = {
+static const uint16 default_he_cursor[64] = {
 	0x0000, 0x0000, 0x3800, 0x0000, 0x7e00, 0x0000, 0x5f80, 0x0000,
 	0x5fe0, 0x0000, 0x2ff8, 0x0000, 0x27fe, 0x0000, 0x17ff, 0x8000,
 	0x13ff, 0xe000, 0x09ff, 0xf000, 0x09ff, 0xf800, 0x04ff, 0xf800,

Index: script_v7he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v7he.cpp,v
retrieving revision 2.148
retrieving revision 2.149
diff -u -d -r2.148 -r2.149
--- script_v7he.cpp	17 Apr 2005 14:27:17 -0000	2.148
+++ script_v7he.cpp	27 Apr 2005 13:55:55 -0000	2.149
@@ -796,6 +796,13 @@
 		_skipProcessActors = 0;
 		redrawAllActors();
 		break;
+	case 26:
+		a = derefActor(args[1], "o70_kernelSetFunctions: 26");
+		a->_auxBlock.r.left = 0;
+		a->_auxBlock.r.top = 0;
+		a->_auxBlock.r.right = -1;
+		a->_auxBlock.r.bottom = -1;
+		break;
 	case 30:
 		a = derefActor(args[1], "o70_kernelSetFunctions: 30");
 		a->_clipOverride.bottom = args[2];





More information about the Scummvm-git-logs mailing list