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

kirben at users.sourceforge.net kirben at users.sourceforge.net
Mon Apr 17 15:36:03 CEST 2006


Revision: 21990
Author:   kirben
Date:     2006-04-17 15:35:33 -0700 (Mon, 17 Apr 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=21990&view=rev

Log Message:
-----------
Add FF difference in addBox script opcode, fixes x position of some boxes

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-17 19:52:31 UTC (rev 21989)
+++ scummvm/trunk/engines/simon/items.cpp	2006-04-17 22:35:33 UTC (rev 21990)
@@ -318,6 +318,7 @@
 		opcode_table[83] = &SimonEngine::o2_rescan;
 		opcode_table[98] = &SimonEngine::o2_animate;
 		opcode_table[99] = &SimonEngine::o2_stopAnimate;
+		opcode_table[107] = &SimonEngine::o3_addBox;
 		opcode_table[122] = &SimonEngine::o3_oracleTextDown;
 		opcode_table[123] = &SimonEngine::o3_oracleTextUp;
 		opcode_table[124] = &SimonEngine::o3_ifTime;
@@ -1791,6 +1792,36 @@
 	printInteractText(num, str);
 }
 
+void SimonEngine::o3_addBox() {
+	// 107: add item hitarea
+	uint flags = 0;
+	uint id = getVarOrWord();
+	uint params = id / 1000;
+	uint x, y, w, h, verb;
+	Item *item;
+
+	id = id % 1000;
+
+	if (params & 1)
+		flags |= kBFInvertTouch;
+	if (params & 2)
+		flags |= kBFNoTouchName;
+	if (params & 4)
+		flags |= kBFBoxItem;
+	if (params & 8)
+		flags |= kBFTextBox;
+	if (params & 16)
+		flags |= 0x10;
+
+	x = getVarOrWord();
+	y = getVarOrWord();
+	w = getVarOrWord();
+	h = getVarOrWord();
+	item = getNextItemPtrStrange();
+	verb = getVarOrWord();
+	defineBox(id, x, y, w, h, flags, verb, item);
+}
+
 void SimonEngine::o3_oracleTextDown() {
 	// 122: oracle text down
 	oracleTextDown();

Modified: scummvm/trunk/engines/simon/simon.h
===================================================================
--- scummvm/trunk/engines/simon/simon.h	2006-04-17 19:52:31 UTC (rev 21989)
+++ scummvm/trunk/engines/simon/simon.h	2006-04-17 22:35:33 UTC (rev 21990)
@@ -966,6 +966,7 @@
 	void o3_jumpOut();
 	void o3_addTextBox();
 	void o3_printLongText();
+	void o3_addBox();
 	void o3_oracleTextDown();
 	void o3_oracleTextUp();
 	void o3_ifTime();


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