aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTravis Howell2006-07-06 11:17:14 +0000
committerTravis Howell2006-07-06 11:17:14 +0000
commit4bbdf9daae811be8394818aaea7c659592a33a4e (patch)
tree3cc2d3d228e3fb2bcfaaba6bb2d4222352958844
parent31fa4fbad82a0870941c1eac42d796b84b5c9360 (diff)
downloadscummvm-rg350-4bbdf9daae811be8394818aaea7c659592a33a4e.tar.gz
scummvm-rg350-4bbdf9daae811be8394818aaea7c659592a33a4e.tar.bz2
scummvm-rg350-4bbdf9daae811be8394818aaea7c659592a33a4e.zip
Fix 1506002 - PUTTTIME: Weird Mouth Movement
svn-id: r23374
-rw-r--r--engines/scumm/actor.cpp4
-rw-r--r--engines/scumm/plugin.cpp9
-rw-r--r--engines/scumm/scumm-md5.h10
-rw-r--r--tools/scumm-md5.txt8
4 files changed, 17 insertions, 14 deletions
diff --git a/engines/scumm/actor.cpp b/engines/scumm/actor.cpp
index 7964d0b6cc..a69760cb1f 100644
--- a/engines/scumm/actor.cpp
+++ b/engines/scumm/actor.cpp
@@ -2022,7 +2022,7 @@ bool Actor::isPlayer() {
}
void Actor::setUserCondition(int slot, int set) {
- const int condMaskCode = (_vm->_game.heversion >= 90) ? 0x1FFF : 0x3FF;
+ const int condMaskCode = (_vm->_game.heversion >= 85) ? 0x1FFF : 0x3FF;
checkRange(32, 1, slot, "Condition %d out of range");
if (set == 0) {
_heCondMask &= ~(1 << (slot + 0xF));
@@ -2042,7 +2042,7 @@ bool Actor::isUserConditionSet(int slot) const {
}
void Actor::setTalkCondition(int slot) {
- const int condMaskCode = (_vm->_game.heversion >= 90) ? 0x1FFF : 0x3FF;
+ const int condMaskCode = (_vm->_game.heversion >= 85) ? 0x1FFF : 0x3FF;
checkRange(32, 1, slot, "Condition %d out of range");
_heCondMask = (_heCondMask & ~condMaskCode) | 1;
if (slot != 1) {
diff --git a/engines/scumm/plugin.cpp b/engines/scumm/plugin.cpp
index 1cc4f5d8c3..c220599991 100644
--- a/engines/scumm/plugin.cpp
+++ b/engines/scumm/plugin.cpp
@@ -287,17 +287,18 @@ static const GameSettings gameVariantsTable[] = {
// Humongous Entertainment Scumm Version 8.0 ? Scummsrc.80
{"freddi2", "", GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"pajama", "", GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
- {"putttime", "", GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"balloon", "", GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"dog", "", GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"maze", "", GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
- {"socks", "", GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"water", "", GID_WATER, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
- {"water", "HE 80", GID_WATER, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"water", "HE 99", GID_WATER, 6, 99, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
+ // condMaskCode value changed in setUserCondition & setTalkCondition
+ {"putttime", "", GID_HEGAME, 6, 85, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
+ {"socks", "", GID_HEGAME, 6, 85, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
+
// Humongous Entertainment Scumm Version 9.0 ? Scummsys.90
{"baseball", "", GID_HEGAME, 6, 90, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"thinkerk", "", GID_HEGAME, 6, 90, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
@@ -368,6 +369,7 @@ static const GameSettings gameVariantsTable[] = {
{"", "HE 72", GID_HEGAME, 6, 72, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"", "HE 73", GID_HEGAME, 6, 73, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"", "HE 80", GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
+ {"", "HE 85", GID_HEGAME, 6, 85, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"", "HE 90", GID_HEGAME, 6, 90, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"", "HE 95", GID_HEGAME, 6, 95, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
{"", "HE 98", GID_HEGAME, 6, 98, MDT_NONE, GF_USE_KEY | GF_NEW_COSTUMES, UNK},
@@ -1462,6 +1464,7 @@ PluginError Engine_SCUMM_create(OSystem *syst, Engine **engine) {
case 90:
*engine = new ScummEngine_v90he(syst, res);
break;
+ case 85:
case 80:
*engine = new ScummEngine_v80he(syst, res);
break;
diff --git a/engines/scumm/scumm-md5.h b/engines/scumm/scumm-md5.h
index 33b110fa20..285db69fcf 100644
--- a/engines/scumm/scumm-md5.h
+++ b/engines/scumm/scumm-md5.h
@@ -1,5 +1,5 @@
/*
- This file was generated by the md5table tool on Wed Jun 28 03:21:41 2006
+ This file was generated by the md5table tool on Thu Jul 06 11:05:16 2006
DO NOT EDIT MANUALLY!
*/
@@ -70,7 +70,7 @@ static const MD5Table md5table[] = {
{ "1875b90fade138c9253a8e967007031a", "indy3", "VGA", "VGA", Common::EN_ANY, Common::kPlatformPC },
{ "187d315f6b5168f68680dfe8c3d76a3e", "loom", "EGA", "EGA", Common::HB_ISR, Common::kPlatformPC },
{ "1900e501a52fbf55bde6e4196f6d2aa6", "zak", "V2", "V2", Common::IT_ITA, Common::kPlatformPC },
- { "19263586f749a560c1adf8b3393a9593", "socks", "HE 80", "", Common::RU_RUS, Common::kPlatformWindows },
+ { "19263586f749a560c1adf8b3393a9593", "socks", "HE 85", "", Common::RU_RUS, Common::kPlatformWindows },
{ "19bf6938a94698296bcb0c99c31c91a7", "spyfox2", "", "Demo", Common::EN_GRB, Common::kPlatformWindows },
{ "1a6e5ae2777a6a33f06ffc0226210934", "atlantis", "", "CD", Common::EN_ANY, Common::kPlatformMacintosh },
{ "1c792d28376d45e145cb916bca0400a2", "spyfox2", "", "Demo", Common::NL_NLD, Common::kPlatformUnknown },
@@ -199,7 +199,7 @@ static const MD5Table md5table[] = {
{ "5bd335265a61caa3d78956ad9f88ba23", "football", "", "Demo", Common::EN_ANY, Common::kPlatformUnknown },
{ "5c21fc49aee8f46e58fef21579e614a1", "thinker1", "", "", Common::EN_USA, Common::kPlatformUnknown },
{ "5d88b9d6a88e6f8e90cded9d01b7f082", "loom", "VGA", "VGA", Common::EN_ANY, Common::kPlatformPC },
- { "5e8fb66971a60e523e5afbc4c129c0e8", "socks", "HE 80", "", Common::EN_USA, Common::kPlatformUnknown },
+ { "5e8fb66971a60e523e5afbc4c129c0e8", "socks", "HE 85", "", Common::EN_USA, Common::kPlatformUnknown },
{ "5fbe557049892eb4b709d90916ec97ca", "indy3", "EGA", "EGA", Common::EN_ANY, Common::kPlatformPC },
{ "600abd3e9f47e63e670188b7e4e86ac7", "spyozon", "", "", Common::EN_USA, Common::kPlatformUnknown },
{ "6027e9ca9c35746d95dee2068cec17e5", "zak", "V2", "V2", Common::DE_DEU, Common::kPlatformAmiga },
@@ -209,7 +209,7 @@ static const MD5Table md5table[] = {
{ "624cdb93654667c869d204a64af7e57f", "maniac", "V2", "V2", Common::EN_ANY, Common::kPlatformPC },
{ "6271130f440066830eca9056c1d7926f", "water", "HE 80", "", Common::RU_RUS, Common::kPlatformWindows },
{ "62b8c16b6db226ba95aaa8be73f9885c", "indy3", "EGA", "EGA", Common::ES_ESP, Common::kPlatformAmiga },
- { "63fdcdc95cdeea00060883aed38e5504", "PuttTime", "HE 80", "", Common::EN_ANY, Common::kPlatformWindows },
+ { "63fdcdc95cdeea00060883aed38e5504", "PuttTime", "HE 85", "", Common::EN_ANY, Common::kPlatformUnknown },
{ "6508fd55530e6915507e1cc37f7f045d", "indy3", "EGA", "EGA", Common::EN_ANY, Common::kPlatformPC },
{ "659942b9a6b519f123a13cca3c333a13", "jungle", "", "", Common::EN_ANY, Common::kPlatformMacintosh },
{ "66236cd1aec24e1d4aff4c4cc93b7e18", "indy3", "EGA", "EGA", Common::FR_FRA, Common::kPlatformPC },
@@ -275,7 +275,7 @@ static const MD5Table md5table[] = {
{ "8299d9b8a1b0e7b881bae7a9971dc5e2", "zak", "V2", "Demo", Common::EN_ANY, Common::kPlatformAtariST },
{ "8368f552b1e3eba559f8d559bcc4cadb", "freddi3", "", "", Common::UNK_LANG, Common::kPlatformUnknown },
{ "83cedbe26aa8b58988e984e3d34cac8e", "freddi3", "HE 99", "", Common::DE_DEU, Common::kPlatformUnknown },
- { "84e3c23a49ded8a6f9197735c8eb3de7", "PuttTime", "HE 80", "", Common::DE_DEU, Common::kPlatformWindows },
+ { "84e3c23a49ded8a6f9197735c8eb3de7", "PuttTime", "HE 85", "", Common::DE_DEU, Common::kPlatformWindows },
{ "861e59ed72a1cd0e6d454f7ee7e2bf3d", "comi", "", "", Common::RU_RUS, Common::kPlatformWindows },
{ "86be8ada36371d4fdc35659d0e912a26", "indy3", "EGA", "EGA", Common::ES_ESP, Common::kPlatformPC },
{ "86c9902b7bec1a17926d4dae85beaa45", "airport", "HE 71", "Demo", Common::EN_ANY, Common::kPlatformWindows },
diff --git a/tools/scumm-md5.txt b/tools/scumm-md5.txt
index 6681cdaaec..2363783bf6 100644
--- a/tools/scumm-md5.txt
+++ b/tools/scumm-md5.txt
@@ -537,8 +537,8 @@ SamsFunShop Pajama Sam's One-Stop Fun Shop
68155a6bf082221525f431c2cbdac8ab us All - - - Kirben
socks Pajama Sam's Sock Works
- 5e8fb66971a60e523e5afbc4c129c0e8 us All HE 80 - - Kirben
- 19263586f749a560c1adf8b3393a9593 ru Windows HE 80 - - sev
+ 5e8fb66971a60e523e5afbc4c129c0e8 us All HE 85 - - Kirben
+ 19263586f749a560c1adf8b3393a9593 ru Windows HE 85 - - sev
8de13897f0121c79d29a2377159f9ad0 en Windows HE 99 Updated - Aziraphale Jasra
puttrace Putt-Putt Enters the Race
@@ -594,8 +594,8 @@ puttzoo Putt-Putt Saves the Zoo
2a446817ffcabfef8716e0c456ecaf81 de Windows - Demo - Joachim Eberhard
PuttTime Putt-Putt Travels Through Time
- 63fdcdc95cdeea00060883aed38e5504 en Windows HE 80 - - iziku
- 84e3c23a49ded8a6f9197735c8eb3de7 de Windows HE 80 - - oncer
+ 63fdcdc95cdeea00060883aed38e5504 en All HE 85 - - iziku
+ 84e3c23a49ded8a6f9197735c8eb3de7 de Windows HE 85 - - oncer
2108d83dcf09f8adb4bc524669c8cf51 us All HE 99 Updated - Kirben
7c980a1b1596a93f26917318884f48f7 de All HE 99 Updated - Joachim Eberhard
d4aac997e2f4e15341f0bfbf905419bd gb Windows HE 99 - - eriktorbjorn