[Scummvm-cvs-logs] CVS: scummvm/kyra script_v1.cpp,1.44,1.45 sprites.cpp,1.13,1.14 sprites.h,1.6,1.7

Johannes Schickel lordhoto at users.sourceforge.net
Wed Dec 21 17:51:08 CET 2005


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

Modified Files:
	script_v1.cpp sprites.cpp sprites.h 
Log Message:
Fixed bug with an endless loop while clicking on herman after giving him the saw.


Index: script_v1.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/script_v1.cpp,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -d -r1.44 -r1.45
--- script_v1.cpp	20 Dec 2005 14:06:47 -0000	1.44
+++ script_v1.cpp	22 Dec 2005 01:49:59 -0000	1.45
@@ -1003,17 +1003,20 @@
 }
 
 int KyraEngine::cmd_clearSceneAnimatorBeacon(ScriptState *script) {
-	warning("STUB: cmd_clearSceneAnimatorBeacon");
+	debug(3, "cmd_clearSceneAnimatorBeacon(0x%X) ()");
+	_sprites->_sceneAnimatorBeaconFlag = 0;
 	return 0;
 }
 
 int KyraEngine::cmd_querySceneAnimatorBeacon(ScriptState *script) {
-	warning("STUB: cmd_querySceneAnimatorBeacon");
-	return 0;
+	debug(3, "cmd_querySceneAnimatorBeacon(0x%X) ()");
+	return _sprites->_sceneAnimatorBeaconFlag;
 }
 
 int KyraEngine::cmd_refreshSceneAnimator(ScriptState *script) {
-	warning("STUB: cmd_refreshSceneAnimator");
+	debug(3, "cmd_refreshSceneAnimator(0x%X) ()");
+	_sprites->updateSceneAnims();
+	updateAllObjectShapes();
 	return 0;
 }
 

Index: sprites.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/sprites.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- sprites.cpp	20 Dec 2005 14:06:47 -0000	1.13
+++ sprites.cpp	22 Dec 2005 01:49:59 -0000	1.14
@@ -41,6 +41,7 @@
 	_animDelay = 16;
 	_spriteDefStart = 0;
 	memset(_drawLayerTable, 0, sizeof(_drawLayerTable));
+	_sceneAnimatorBeaconFlag = 0;
 }
 
 Sprites::~Sprites() {
@@ -350,11 +351,11 @@
 				break;
 			case 0xFFB1:
 				data += 2;
-				debug(1, "TODO func: Set animator beacon flag");
+				_sceneAnimatorBeaconFlag = 1;
 				break;
 			case 0xFFB2:
 				data += 2;
-				debug(1, "TODO func: Reset animator beacon flag");
+				_sceneAnimatorBeaconFlag = 0;
 				break;
 			case 0xFFB4:
 				data += 2;
@@ -370,8 +371,7 @@
 				break;
 			case 0xFFA7:
 				data += 2;
-				debug(1, "TODO func: Unknown FFA7");
-				debug(1, " %i", READ_LE_UINT16(data));
+				_anims[READ_LE_UINT16(data)].play = 1;
 				data += 2;
 				break;
 			default:

Index: sprites.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/sprites.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- sprites.h	18 Nov 2005 23:55:31 -0000	1.6
+++ sprites.h	22 Dec 2005 01:49:59 -0000	1.7
@@ -74,6 +74,7 @@
 	
 	int getDrawLayer(int y);
 
+	int _sceneAnimatorBeaconFlag;
 protected:
 	void freeSceneShapes();
 





More information about the Scummvm-git-logs mailing list