[Scummvm-cvs-logs] SF.net SVN: scummvm: [27794] scummvm/trunk/engines/agos

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Sat Jun 30 19:34:49 CEST 2007


Revision: 27794
          http://scummvm.svn.sourceforge.net/scummvm/?rev=27794&view=rev
Author:   fingolfin
Date:     2007-06-30 10:34:49 -0700 (Sat, 30 Jun 2007)

Log Message:
-----------
AGOS code cleanup

Modified Paths:
--------------
    scummvm/trunk/engines/agos/agos.h
    scummvm/trunk/engines/agos/script.cpp
    scummvm/trunk/engines/agos/script_s2.cpp
    scummvm/trunk/engines/agos/vga.cpp

Modified: scummvm/trunk/engines/agos/agos.h
===================================================================
--- scummvm/trunk/engines/agos/agos.h	2007-06-30 16:29:14 UTC (rev 27793)
+++ scummvm/trunk/engines/agos/agos.h	2007-06-30 17:34:49 UTC (rev 27794)
@@ -875,8 +875,8 @@
 	void vc36_setWindowImage();
 	void vc38_ifVarNotZero();
 	void vc39_setVar();
-	void vc40();
-	void vc41();
+	void vc40_scrollRight();
+	void vc41_scrollLeft();
 	void vc42_delayIfNotEQ();
 
 	// Video Script Opcodes, Elvira 1

Modified: scummvm/trunk/engines/agos/script.cpp
===================================================================
--- scummvm/trunk/engines/agos/script.cpp	2007-06-30 16:29:14 UTC (rev 27793)
+++ scummvm/trunk/engines/agos/script.cpp	2007-06-30 17:34:49 UTC (rev 27794)
@@ -753,7 +753,7 @@
 void AGOSEngine::o_saveUserGame() {
 	// 132: save user game
 	if (getGameId() == GID_SIMON1CD32) {
-		// The Amiga CD32 version of Simon the Sorcerer 1uses a single slot
+		// The Amiga CD32 version of Simon the Sorcerer 1 uses a single slot
 		if (!saveGame(0, "Default Saved Game")) {
 			vc33_setMouseOn();
 			fileError(_windowArray[5], true);
@@ -799,7 +799,7 @@
 	freezeBottom();
 
 	if (!_copyProtection && !(getFeatures() & GF_TALKIE)) {
-		if ((getGameType() == GType_SIMON1 &&  _subroutine == 2924) ||
+		if ((getGameType() == GType_SIMON1 && _subroutine == 2924) ||
 			(getGameType() == GType_SIMON2 && _subroutine == 1322)) {
 			_variableArray[134] = 3;
 			_variableArray[135] = 3;

Modified: scummvm/trunk/engines/agos/script_s2.cpp
===================================================================
--- scummvm/trunk/engines/agos/script_s2.cpp	2007-06-30 16:29:14 UTC (rev 27793)
+++ scummvm/trunk/engines/agos/script_s2.cpp	2007-06-30 17:34:49 UTC (rev 27794)
@@ -355,7 +355,7 @@
 	uint vgaSpriteId = getVarOrByte();
 	uint color = getVarOrByte();
 
-	SubObject *subObject = (SubObject *)findChildOfType(getNextItemPtr(), 2);
+	SubObject *subObject = (SubObject *)findChildOfType(getNextItemPtr(), kObjectType);
 	if (getFeatures() & GF_TALKIE) {
 		if (subObject != NULL && subObject->objectFlags & kOFVoice) {
 			uint speechId = subObject->objectFlagValue[getOffsetOfChild2Param(subObject, kOFVoice)];

Modified: scummvm/trunk/engines/agos/vga.cpp
===================================================================
--- scummvm/trunk/engines/agos/vga.cpp	2007-06-30 16:29:14 UTC (rev 27793)
+++ scummvm/trunk/engines/agos/vga.cpp	2007-06-30 17:34:49 UTC (rev 27794)
@@ -70,8 +70,8 @@
 	op[36] = &AGOSEngine::vc36_setWindowImage;
 	op[38] = &AGOSEngine::vc38_ifVarNotZero;
 	op[39] = &AGOSEngine::vc39_setVar;
-	op[40] = &AGOSEngine::vc40;
-	op[41] = &AGOSEngine::vc41;
+	op[40] = &AGOSEngine::vc40_scrollRight;
+	op[41] = &AGOSEngine::vc41_scrollLeft;
 	op[42] = &AGOSEngine::vc42_delayIfNotEQ;
 	op[43] = &AGOSEngine::vc43_ifBitSet;
 	op[44] = &AGOSEngine::vc44_ifBitClear;
@@ -124,8 +124,8 @@
 	op[41] = &AGOSEngine::vc37_pokePalette;
 	op[51] = &AGOSEngine::vc38_ifVarNotZero;
 	op[52] = &AGOSEngine::vc39_setVar;
-	op[53] = &AGOSEngine::vc40;
-	op[54] = &AGOSEngine::vc41;
+	op[53] = &AGOSEngine::vc40_scrollRight;
+	op[54] = &AGOSEngine::vc41_scrollLeft;
 	op[56] = &AGOSEngine::vc42_delayIfNotEQ;
 }
 
@@ -1257,57 +1257,38 @@
 	vcWriteVar(var, value);
 }
 
-void AGOSEngine::vc40() {
+void AGOSEngine::vc40_scrollRight() {
 	uint16 var = vcReadNextWord();
 	int16 value = vcReadVar(var) + vcReadNextWord();
 
 	if (getGameType() == GType_SIMON2 && var == 15 && !getBitFlag(80)) {
-		int16 tmp;
 
-		if (_scrollCount != 0) {
-			if (_scrollCount >= 0)
-				goto no_scroll;
+		if ((_scrollCount < 0) || (_scrollCount == 0 && _scrollFlag == 0)) {
 			_scrollCount = 0;
-		} else {
-			if (_scrollFlag != 0)
-				goto no_scroll;
+			if (value - _scrollX >= 30) {
+				_scrollCount = MIN(20, _scrollXMax - _scrollX);
+				addVgaEvent(6, SCROLL_EVENT, NULL, 0, 0);
+			}
 		}
-
-		if (value - _scrollX >= 30) {
-			_scrollCount = 20;
-			tmp = _scrollXMax - _scrollX;
-			if (tmp < 20)
-				_scrollCount = tmp;
-			addVgaEvent(6, SCROLL_EVENT, NULL, 0, 0);
-		}
 	}
-no_scroll:;
 
 	vcWriteVar(var, value);
 }
 
-void AGOSEngine::vc41() {
+void AGOSEngine::vc41_scrollLeft() {
 	uint16 var = vcReadNextWord();
 	int16 value = vcReadVar(var) - vcReadNextWord();
 
 	if (getGameType() == GType_SIMON2 && var == 15 && !getBitFlag(80)) {
-		if (_scrollCount != 0) {
-			if (_scrollCount < 0)
-				goto no_scroll;
+
+		if ((_scrollCount > 0) || (_scrollCount == 0 && _scrollFlag == 0)) {
 			_scrollCount = 0;
-		} else {
-			if (_scrollFlag != 0)
-				goto no_scroll;
+			if ((uint16)(value - _scrollX) < 11) {
+				_scrollCount = -MIN(20, (int)_scrollX);
+				addVgaEvent(6, SCROLL_EVENT, NULL, 0, 0);
+			}
 		}
-
-		if ((uint16)(value - _scrollX) < 11) {
-			_scrollCount = -20;
-			if (_scrollX < 20)
-				_scrollCount = -_scrollX;
-			addVgaEvent(6, SCROLL_EVENT, NULL, 0, 0);
-		}
 	}
-no_scroll:;
 
 	vcWriteVar(var, value);
 }


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