[Scummvm-cvs-logs] CVS: scummvm/kyra script_v1.cpp,1.57,1.58

Johannes Schickel lordhoto at users.sourceforge.net
Tue Jan 3 16:25:01 CET 2006


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

Modified Files:
	script_v1.cpp 
Log Message:
Implemented cmd_shrinkBrandonDown and cmd_shrinkBrandonDown.


Index: script_v1.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/script_v1.cpp,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -d -r1.57 -r1.58
--- script_v1.cpp	3 Jan 2006 19:03:09 -0000	1.57
+++ script_v1.cpp	4 Jan 2006 00:23:57 -0000	1.58
@@ -1518,12 +1518,48 @@
 }
 
 int KyraEngine::cmd_shrinkBrandonDown(ScriptState *script) {
-	warning("STUB: cmd_shrinkBrandonDown");
+	debug(3, "cmd_shrinkBrandonDown(0x%X) (%d)", script, stackPos(0));
+	int delayTime = stackPos(0);
+	checkAmuletAnimFlags();
+	int scaleValue = _scaleTable[_currentCharacter->y1];
+	int scale = 0;
+	if (_scaleMode) {
+		scale = scaleValue;
+	} else {
+		scale = 256;
+	}
+	int scaleModeBackUp = _scaleMode;
+	_scaleMode = 1;
+	int scaleEnd = scale >> 1;
+	for (; scaleEnd <= scale; --scale) {
+		_scaleTable[_currentCharacter->y1] = scale;
+		animRefreshNPC(0);
+		delayWithTicks(1);
+	}
+	delayWithTicks(delayTime); // XXX
+	_scaleTable[_currentCharacter->y1] = scaleValue;
+	_scaleMode = scaleModeBackUp;
 	return 0;
 }
 
 int KyraEngine::cmd_growBrandonUp(ScriptState *script) {
-	warning("STUB: cmd_growBrandonUp");
+	debug(3, "cmd_growBrandonUp(0x%X) ()", script);
+	int scaleValue = _scaleTable[_currentCharacter->y1];
+	int scale = 0;
+	if (_scaleMode) {
+		scale = scaleValue;
+	} else {
+		scale = 256;
+	}
+	int scaleModeBackUp = _scaleMode;
+	_scaleMode = 1;
+	for (int curScale = scale >> 1; curScale <= scale; ++curScale) {
+		_scaleTable[_currentCharacter->y1] = curScale;
+		animRefreshNPC(0);
+		delayWithTicks(1);
+	}
+	_scaleTable[_currentCharacter->y1] = scaleValue;
+	_scaleMode = scaleModeBackUp;
 	return 0;
 }
 





More information about the Scummvm-git-logs mailing list