[Scummvm-cvs-logs] CVS: scummvm/scumm string.cpp,1.75,1.76

James Brown ender at users.sourceforge.net
Sun Dec 29 09:47:03 CET 2002


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv14464/scumm

Modified Files:
	string.cpp 
Log Message:
Translate/say verbs added to converstion text.
N.B: We might be able to cut back on all these translateText calls if we just do it in addMessageToStack() period... thoughts?


Index: string.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/string.cpp,v
retrieving revision 1.75
retrieving revision 1.76
diff -u -d -r1.75 -r1.76
--- string.cpp	29 Dec 2002 01:21:58 -0000	1.75
+++ string.cpp	29 Dec 2002 17:46:12 -0000	1.76
@@ -718,7 +718,23 @@
 	if (num) {
 		for (i = 1; i < _maxVerbs; i++) {
 			if (num == _verbs[i].verbid && !_verbs[i].type && !_verbs[i].saveid) {
-				addMessageToStack(getResourceAddress(rtVerb, i));
+				byte *ptr = getResourceAddress(rtVerb, i);
+                        	if ((_features & GF_AFTER_V8) && (ptr[0] == '/')) {
+                                	char pointer[20];
+                                	int i, j;
+
+                                	translateText(ptr, _transText);
+
+                                	for (i = 0, j = 0; (ptr[i] != '/' || j == 0) && j < 19; i++) {
+                                        	if (ptr[i] != '/')
+                                        	pointer[j++] = ptr[i];
+                                	}
+                                	pointer[j] = 0;
+                                	_sound->_talkChannel = _sound->playBundleSound(pointer);
+                                	addMessageToStack(_transText);
+                        	} else {
+                                	addMessageToStack(ptr);
+                        	}
 				break;
 			}
 		}
@@ -749,7 +765,22 @@
 	if (var) {
 		ptr = getStringAddress(var);
 		if (ptr) {
-			addMessageToStack(ptr);
+	                if ((_features & GF_AFTER_V8) && (ptr[0] == '/')) {
+                        	char pointer[20];
+                        	int i, j;
+
+                        	translateText(ptr, _transText);
+
+                        	for (i = 0, j = 0; (ptr[i] != '/' || j == 0) && j < 19; i++) {
+                                	if (ptr[i] != '/')
+                                        	pointer[j++] = ptr[i];
+                        	}
+                        	pointer[j] = 0;
+				_sound->_talkChannel = _sound->playBundleSound(pointer);
+				addMessageToStack(_transText);
+                	} else {
+				addMessageToStack(ptr);
+			}
 			return;
 		}
 	}





More information about the Scummvm-git-logs mailing list