[Scummvm-cvs-logs] SF.net SVN: scummvm:[55218] scummvm/trunk/engines/sci/engine/workarounds. cpp
thebluegr at users.sourceforge.net
thebluegr at users.sourceforge.net
Thu Jan 13 00:53:14 CET 2011
Revision: 55218
http://scummvm.svn.sourceforge.net/scummvm/?rev=55218&view=rev
Author: thebluegr
Date: 2011-01-12 23:53:14 +0000 (Wed, 12 Jan 2011)
Log Message:
-----------
SCI: Fixed bug #3155550 - "SQ4 Russian: Script error in Scate-o-rama"
Modified Paths:
--------------
scummvm/trunk/engines/sci/engine/workarounds.cpp
Modified: scummvm/trunk/engines/sci/engine/workarounds.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/workarounds.cpp 2011-01-12 23:33:30 UTC (rev 55217)
+++ scummvm/trunk/engines/sci/engine/workarounds.cpp 2011-01-12 23:53:14 UTC (rev 55218)
@@ -505,11 +505,20 @@
do {
workaround = workaroundList;
while (workaround->methodName) {
+ bool objectNameMatches = (workaround->objectName == NULL) ||
+ (workaround->objectName == g_sci->getSciLanguageString(searchObjectName.c_str(), K_LANG_ENGLISH));
+
+ // Special case: in the fanmade Russian translation of SQ4, all
+ // of the object names have been deleted or renamed to Russian,
+ // thus we disable checking of the object name. Fixes bug #3155550.
+ if (g_sci->getLanguage() == Common::RU_RUS && g_sci->getGameId() == GID_SQ4)
+ objectNameMatches = true;
+
if (workaround->gameId == gameId
&& ((workaround->scriptNr == -1) || (workaround->scriptNr == curScriptNr))
&& ((workaround->roomNr == -1) || (workaround->roomNr == curRoomNumber))
&& ((workaround->inheritanceLevel == -1) || (workaround->inheritanceLevel == inheritanceLevel))
- && ((workaround->objectName == NULL) || (workaround->objectName == g_sci->getSciLanguageString(searchObjectName.c_str(), K_LANG_ENGLISH)))
+ && objectNameMatches
&& workaround->methodName == g_sci->getSciLanguageString(curMethodName.c_str(), K_LANG_ENGLISH)
&& workaround->localCallOffset == lastCall->debugLocalCallOffset
&& ((workaround->index == -1) || (workaround->index == index))) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list