aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorTravis Howell2005-02-14 13:44:19 +0000
committerTravis Howell2005-02-14 13:44:19 +0000
commit39b83ba8cf95c3c42c3c4ca03a4b3fbde481de47 (patch)
tree28e8db1dc2e5fd229d4d73154fc9b8ac1b8a8fb8 /scumm
parent94f76a8f05223a2fa6b89aec61f422a101472d27 (diff)
downloadscummvm-rg350-39b83ba8cf95c3c42c3c4ca03a4b3fbde481de47.tar.gz
scummvm-rg350-39b83ba8cf95c3c42c3c4ca03a4b3fbde481de47.tar.bz2
scummvm-rg350-39b83ba8cf95c3c42c3c4ca03a4b3fbde481de47.zip
Add addiotnal decode type in later HE games.
svn-id: r16791
Diffstat (limited to 'scumm')
-rw-r--r--scumm/script_v72he.cpp21
1 files changed, 17 insertions, 4 deletions
diff --git a/scumm/script_v72he.cpp b/scumm/script_v72he.cpp
index fcb7c8cf41..77138e9f39 100644
--- a/scumm/script_v72he.cpp
+++ b/scumm/script_v72he.cpp
@@ -558,13 +558,26 @@ void ScummEngine_v72he::decodeScriptString(byte *dst, bool scriptString) {
chr = string[num++];
if (chr == '%') {
chr = string[num++];
- if (chr == 'd') {
+ switch(chr) {
+ case 'b':
+ // byte
+ break;
+ case 'c':
+ *dst++ = args[val--];
+ break;
+ case 'd':
dst += snprintf((char *)dst, 10, "%d", args[val--]);
- continue;
- } else if (chr == 's') {
+ break;
+ case 's':
dst += addStringToStack(dst, 512, args[val--]);
- continue;
+ break;
+ case 'x':
+ // hexadecimal
+ break;
+ default:
+ error("decodeScriptString: Unknown type %d", chr);
}
+ continue;
}
*dst++ = chr;
}