[Scummvm-cvs-logs] SF.net SVN: scummvm: [22186] scummvm/trunk/engines/simon

eriktorbjorn at users.sourceforge.net eriktorbjorn at users.sourceforge.net
Wed Apr 26 12:50:10 CEST 2006


Revision: 22186
Author:   eriktorbjorn
Date:     2006-04-26 12:49:13 -0700 (Wed, 26 Apr 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=22186&view=rev

Log Message:
-----------
Add FF difference in isAdjNoun opcode. This makes it possible to get past the
SAM / PEG puzzle, but do not ask me what, exactly, was wrong. I haven't a clue.

Modified Paths:
--------------
    scummvm/trunk/engines/simon/items.cpp
    scummvm/trunk/engines/simon/simon.h
Modified: scummvm/trunk/engines/simon/items.cpp
===================================================================
--- scummvm/trunk/engines/simon/items.cpp	2006-04-26 17:15:29 UTC (rev 22185)
+++ scummvm/trunk/engines/simon/items.cpp	2006-04-26 19:49:13 UTC (rev 22186)
@@ -332,6 +332,7 @@
 		opcode_table[134] = &SimonEngine::o3_listSaveGames;
 		opcode_table[135] = &SimonEngine::o3_checkCD;
 		opcode_table[161] = &SimonEngine::o3_screenTextBox;
+		opcode_table[165] = &SimonEngine::o3_isAdjNoun;
 		opcode_table[171] = &SimonEngine::o3_hyperLinkOn;
 		opcode_table[172] = &SimonEngine::o3_hyperLinkOff;
 		opcode_table[173] = &SimonEngine::o3_checkPaths;
@@ -1956,6 +1957,18 @@
 	tl->width = getVarOrWord();
 }
 
+void SimonEngine::o3_isAdjNoun() {
+	// 165: item unk1 unk2 is
+	Item *item = getNextItemPtr();
+	int16 a = getNextWord(), b = getNextWord();
+	if (item->adjective == a && item->noun == b)
+		setScriptCondition(true);
+	else if (a == -1 && item->noun == b)
+		setScriptCondition(true);
+	else
+		setScriptCondition(false);
+}
+
 void SimonEngine::o3_hyperLinkOn() {
 	// 171: oracle hyperlink on
 	hyperLinkOn(getVarOrWord());

Modified: scummvm/trunk/engines/simon/simon.h
===================================================================
--- scummvm/trunk/engines/simon/simon.h	2006-04-26 17:15:29 UTC (rev 22185)
+++ scummvm/trunk/engines/simon/simon.h	2006-04-26 19:49:13 UTC (rev 22186)
@@ -994,6 +994,7 @@
 	void o3_listSaveGames();
 	void o3_checkCD();
 	void o3_screenTextBox();
+	void o3_isAdjNoun();
 	void o3_hyperLinkOn();
 	void o3_hyperLinkOff();
 	void o3_checkPaths();


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