[Scummvm-cvs-logs] CVS: scummvm/scumm script_v72he.cpp,2.233,2.234
kirben
kirben at users.sourceforge.net
Wed Apr 6 08:02:11 CEST 2005
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32127/scumm
Modified Files:
script_v72he.cpp
Log Message:
Add missing code for decodeScriptString cases.
Index: script_v72he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v72he.cpp,v
retrieving revision 2.233
retrieving revision 2.234
diff -u -d -r2.233 -r2.234
--- script_v72he.cpp 4 Apr 2005 11:41:15 -0000 2.233
+++ script_v72he.cpp 6 Apr 2005 15:01:46 -0000 2.234
@@ -538,6 +538,7 @@
}
void ScummEngine_v72he::decodeScriptString(byte *dst, bool scriptString) {
+ const byte *src;
int args[31];
int num = 0, len, val;
byte chr, string[256];
@@ -561,21 +562,27 @@
chr = string[num++];
switch(chr) {
case 'b':
- // byte
- error("decodeScriptString: byte unhandled");
+ itoa(args[val--], (char *)dst, 2);
+ while (*dst != 0)
+ *dst++;
break;
case 'c':
*dst++ = args[val--];
break;
case 'd':
- dst += snprintf((char *)dst, 10, "%d", args[val--]);
+ itoa(args[val--], (char *)dst, 10);
+ while (*dst != 0)
+ *dst++;
break;
case 's':
- dst += addStringToStack(dst, 512, args[val--]);
+ src = getStringAddress(args[val--]);
+ while (*src != 0)
+ *dst++ = *src++;
break;
case 'x':
- // hexadecimal
- error("decodeScriptString: hexadecimal unhandled");
+ itoa(args[val--], (char *)dst, 16);
+ while (*dst != 0)
+ *dst++;
break;
default:
error("decodeScriptString: Unknown type %d", chr);
More information about the Scummvm-git-logs
mailing list