aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTravis Howell2005-04-29 01:08:58 +0000
committerTravis Howell2005-04-29 01:08:58 +0000
commit08e115a5165ff8c3d982ba858b472588c57beae7 (patch)
tree6c086735587c9f60f46da2af27017fc0e84b6692
parentd03b09265902a5a8c915fb515e1fef259c9fb618 (diff)
downloadscummvm-rg350-08e115a5165ff8c3d982ba858b472588c57beae7.tar.gz
scummvm-rg350-08e115a5165ff8c3d982ba858b472588c57beae7.tar.bz2
scummvm-rg350-08e115a5165ff8c3d982ba858b472588c57beae7.zip
pajama3 requires GF_HE_LOCALIZED
Add freddi2 specific filter for (PU1/PU2) prefix in subtitles. svn-id: r17857
-rw-r--r--scumm/scumm.cpp14
-rw-r--r--scumm/scumm.h1
-rw-r--r--scumm/string.cpp8
3 files changed, 14 insertions, 9 deletions
diff --git a/scumm/scumm.cpp b/scumm/scumm.cpp
index c43584d88f..ebc720f800 100644
--- a/scumm/scumm.cpp
+++ b/scumm/scumm.cpp
@@ -262,9 +262,9 @@ static const ScummGameSettings scumm_settings[] = {
GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformUnknown, 0, 0},
// Humongous Entertainment Scumm Version 8.0 ? Scummsrc.80
- {"ff2-demo", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Demo)", GID_HEGAME, 6, 80, 30, MDT_NONE,
+ {"ff2-demo", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Demo)", GID_FREDDI2, 6, 80, 30, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES | GF_MULTIPLE_VERSIONS, Common::kPlatformUnknown, 0, 0},
- {"freddi2", "Freddi Fish 2: The Case of the Haunted Schoolhouse", GID_HEGAME, 6, 80, 30, MDT_NONE,
+ {"freddi2", "Freddi Fish 2: The Case of the Haunted Schoolhouse", GID_FREDDI2, 6, 80, 30, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES | GF_MULTIPLE_VERSIONS, Common::kPlatformUnknown, 0, 0},
{"pjs-demo", "Pajama Sam 1: No Need to Hide When It's Dark Outside (Demo)", GID_HEGAME, 6, 80, 61, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES | GF_MULTIPLE_VERSIONS, Common::kPlatformUnknown, 0, 0},
@@ -357,7 +357,7 @@ static const ScummGameSettings scumm_settings[] = {
{"pj3-demo", "Pajama Sam 3: You Are What You Eat From Your Head to Your Feet (Demo)", GID_HEGAME, 6, 99, 61, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformUnknown, 0, 0},
{"pajama3", "Pajama Sam 3: You Are What You Eat From Your Head to Your Feet", GID_HEGAME, 6, 99, 61, MDT_NONE,
- GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformUnknown, 0, 0},
+ GF_USE_KEY | GF_NEW_COSTUMES | GF_HE_LOCALIZED, Common::kPlatformUnknown, 0, 0},
{"SamsFunShop", "Pajama Sam's One-Stop Fun Shop", GID_HEGAME, 6, 99, 61, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformUnknown, 0, 0},
{"PuttsFunShop", "Putt-Putt's One-Stop Fun Shop", GID_HEGAME, 6, 99, 61, MDT_NONE,
@@ -422,13 +422,13 @@ static const ScummGameSettings multiple_versions_md5_settings[] = {
{"084ed0fa98a6d1e9368d67fe9cfbd417", "Freddi Fish 1: The Case of the Missing Kelp Seeds (Demo) (puttputt cd)", GID_HEGAME, 6, 71, 13, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformUnknown, 0, 0},
- {"8ee63cafb1fe9d62aa0d5a23117e70e7", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Updated)", GID_HEGAME, 6, 100, 61, MDT_NONE,
+ {"8ee63cafb1fe9d62aa0d5a23117e70e7", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Updated)", GID_FREDDI2, 6, 100, 61, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformUnknown, 0, 0}, // FreddiCHSH
- {"51305e929e330e24a75a0351c8f9975e", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Updated)", GID_HEGAME, 6, 99, 30, MDT_NONE,
+ {"51305e929e330e24a75a0351c8f9975e", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Updated)", GID_FREDDI2, 6, 99, 30, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformUnknown, 0, 0},
- {"e41de1c2a15abbcdbf9977e2d7e8a340", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Updated Ru)", GID_HEGAME, 6, 100, 61, MDT_NONE, // FIXME: number of actors
+ {"e41de1c2a15abbcdbf9977e2d7e8a340", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Updated Ru)", GID_FREDDI2, 6, 100, 61, MDT_NONE, // FIXME: number of actors
GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformUnknown, 0, 0}, // FreddiCHSH
- {"d37c55388294b66e53e7ced3af88fa68", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Demo Updated)", GID_HEGAME, 6, 100, 30, MDT_NONE,
+ {"d37c55388294b66e53e7ced3af88fa68", "Freddi Fish 2: The Case of the Haunted Schoolhouse (Demo Updated)", GID_FREDDI2, 6, 100, 30, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformUnknown, 0, 0}, // FFHSDemo
{"75bff95816b84672b877d22a911ab811", "Freddi Fish 3: The Case of the Stolen Conch Shell (Updated Ru)", GID_HEGAME, 6, 98, 30, MDT_NONE,
diff --git a/scumm/scumm.h b/scumm/scumm.h
index b9123b59d5..8addfb9d5b 100644
--- a/scumm/scumm.h
+++ b/scumm/scumm.h
@@ -234,6 +234,7 @@ enum ScummGameId {
GID_HEGAME, // Generic name for all HE games with default behaviour
GID_FBEAR,
GID_FUNPACK,
+ GID_FREDDI2,
GID_FREDDI4,
GID_FREDDICOVE
};
diff --git a/scumm/string.cpp b/scumm/string.cpp
index 74f56709dd..ab261ac90e 100644
--- a/scumm/string.cpp
+++ b/scumm/string.cpp
@@ -601,10 +601,14 @@ int ScummEngine::addMessageToStack(const byte *msg, byte *dst, int dstSize) {
while (1) {
chr = src[num++];
- if ((_features & GF_HE_LOCALIZED) && chr == '[') {
- while (src[num++] != ']');
+ if ((_gameId == GID_FREDDI2) && (src[num - 1] == '(' && src[num] == 'P' && src[num + 1] == 'U')) {
+ while (src[num++] != ')');
continue;
}
+ if ((_features & GF_HE_LOCALIZED) && chr == '[') {
+ while (src[num++] != ']');
+ continue;
+ }
if (chr == 0)
break;