From 51e66acc6b96e38f9567ff08ebac4c1f8df65e78 Mon Sep 17 00:00:00 2001 From: Randy Heit Date: Sun, 11 Mar 2012 03:47:45 +0000 Subject: [PATCH] - Fixed: UnescapeStringTable() used the wrong position in the script file for Hexen-style ACS. SVN r3424 (trunk) --- src/p_acs.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/p_acs.cpp b/src/p_acs.cpp index 92d40bcb2..ad11c9fd2 100644 --- a/src/p_acs.cpp +++ b/src/p_acs.cpp @@ -1178,7 +1178,7 @@ FBehavior::FBehavior (int lumpnum, FileReader * fr, int len) if (strings != NULL) { StringTable = DWORD(strings - Data + 8); - UnescapeStringTable(strings, true); + UnescapeStringTable(strings + 8, true); } else { @@ -1621,7 +1621,7 @@ void FBehavior::LoadScriptsDirectory () scripts.b = FindChunk(MAKE_ID('S','N','A','M')); if (scripts.dw != NULL) { - UnescapeStringTable(scripts.b, false); + UnescapeStringTable(scripts.b + 8, false); for (i = 0; i < NumScripts; ++i) { // ACC stores script names as an index into the SNAM chunk, with the first index as @@ -1696,7 +1696,6 @@ void FBehavior::UnescapeStringTable(BYTE *chunkstart, bool has_padding) assert(chunkstart != NULL); DWORD *chunk = (DWORD *)chunkstart; - chunk += 2; if (!has_padding) {