[Scummvm-cvs-logs] SF.net SVN: scummvm: [25873] scummvm/trunk/tools/create_lure

dreammaster at users.sourceforge.net dreammaster at users.sourceforge.net
Mon Feb 26 03:46:33 CET 2007


Revision: 25873
          http://scummvm.svn.sourceforge.net/scummvm/?rev=25873&view=rev
Author:   dreammaster
Date:     2007-02-25 18:46:32 -0800 (Sun, 25 Feb 2007)

Log Message:
-----------
Added extra talk records needed by NPC opcode 29, which lets the script engine override an NPC's current talk record

Modified Paths:
--------------
    scummvm/trunk/tools/create_lure/create_lure_dat.cpp
    scummvm/trunk/tools/create_lure/create_lure_dat.h
    scummvm/trunk/tools/create_lure/process_actions.cpp

Modified: scummvm/trunk/tools/create_lure/create_lure_dat.cpp
===================================================================
--- scummvm/trunk/tools/create_lure/create_lure_dat.cpp	2007-02-26 00:19:14 UTC (rev 25872)
+++ scummvm/trunk/tools/create_lure/create_lure_dat.cpp	2007-02-26 02:46:32 UTC (rev 25873)
@@ -910,12 +910,6 @@
 	totalSize += sizeof(uint16);
 }
 
-void read_ratpouch_schedules(byte *&data, uint16 &totalSize) {
-	// TODO: Parse out the schedules Ratpouch has for each room
-	data = (byte *) malloc(1);
-	totalSize = 1;
-}
-
 #define NUM_TEXT_ENTRIES 40
 const char *text_strings[NUM_TEXT_ENTRIES] = {
 	"Get", NULL, "Push", "Pull", "Operate", "Open", "Close", "Lock", "Unlock", "Use", 
@@ -1063,11 +1057,6 @@
 		break;
 
 	case 21:
-		// Read in Ratpouch's room specific schedules
-		read_ratpouch_schedules(data, size);
-		break;
-
-	case 22:
 		// Set up the list of text strings used by the game
 		save_text_strings(data, size);
 		break;

Modified: scummvm/trunk/tools/create_lure/create_lure_dat.h
===================================================================
--- scummvm/trunk/tools/create_lure/create_lure_dat.h	2007-02-26 00:19:14 UTC (rev 25872)
+++ scummvm/trunk/tools/create_lure/create_lure_dat.h	2007-02-26 02:46:32 UTC (rev 25873)
@@ -27,7 +27,7 @@
 #include "common/endian.h"
 
 #define VERSION_MAJOR 1
-#define VERSION_MINOR 14
+#define VERSION_MINOR 15
 #define ENGLISH_LURE 
 
 #define DATA_SEGMENT 0xac50
@@ -404,5 +404,6 @@
 };
 
 extern File lure_exe;
+extern void add_talk_offset(uint16 offset);
 
 #endif

Modified: scummvm/trunk/tools/create_lure/process_actions.cpp
===================================================================
--- scummvm/trunk/tools/create_lure/process_actions.cpp	2007-02-26 00:19:14 UTC (rev 25872)
+++ scummvm/trunk/tools/create_lure/process_actions.cpp	2007-02-26 02:46:32 UTC (rev 25873)
@@ -29,7 +29,7 @@
 	UNLOCK = 9,	USE = 10, GIVE = 11, TALK_TO = 12, TELL = 13, BUY = 14,
 	LOOK = 15, LOOK_AT = 16, LOOK_THROUGH = 17,	ASK = 18, DRINK = 20,
 	STATUS = 21, GO_TO = 22, RETURN = 23, BRIBE = 24, EXAMINE = 25,
-	NPC_SET_ROOM_AND_BLOCKED_OFFSET = 28, NPC_UNKNOWN1 = 29, NPC_EXEC_SCRIPT = 30, 
+	NPC_SET_ROOM_AND_BLOCKED_OFFSET = 28, NPC_HEY_SIR = 29, NPC_EXEC_SCRIPT = 30, 
 	NPC_UNKNOWN2 = 31, NPC_SET_RAND_DEST = 32, NPC_WALKING_CHECK = 33, 
 	NPC_SET_SUPPORT_OFFSET = 34, NPC_SUPPORT_OFFSET_COND = 35, 
 	NPC_DISPATCH_ACTION = 36, NPC_UNKNOWN3 = 37, NPC_UNKNOWN4 = 38, 
@@ -70,7 +70,6 @@
 
 #define FORWARD_JUMP_ALLOWANCE 0x30
 
-
 uint16 get_sequence_index(uint16 offset, int supportIndex) {
 	int index;
 
@@ -207,6 +206,13 @@
 			}
 			break;
 
+		case NPC_HEY_SIR:
+			// The 'Hey Sir' opcode causes the NPC to request your attention, and sets the active talk 
+			// record to a designated offset. So any offset occurances need to be saved so that it can
+			// be included in the resource for talk records
+			add_talk_offset(params[0]);
+			break;
+
 		default:
 			break;
 		}


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