[Scummvm-cvs-logs] SF.net SVN: scummvm: [31454] scummvm/trunk/engines/kyra

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Tue Apr 8 20:52:27 CEST 2008


Revision: 31454
          http://scummvm.svn.sourceforge.net/scummvm/?rev=31454&view=rev
Author:   lordhoto
Date:     2008-04-08 11:52:27 -0700 (Tue, 08 Apr 2008)

Log Message:
-----------
- Set language to Common::UNK_LANG for multilanguage games (kyra2cd and kyra3) in detection code
- Save language changes done in menu in HoF to the config file

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/detection.cpp
    scummvm/trunk/engines/kyra/kyra.h
    scummvm/trunk/engines/kyra/kyra_v2.cpp

Modified: scummvm/trunk/engines/kyra/detection.cpp
===================================================================
--- scummvm/trunk/engines/kyra/detection.cpp	2008-04-08 18:12:32 UTC (rev 31453)
+++ scummvm/trunk/engines/kyra/detection.cpp	2008-04-08 18:52:27 UTC (rev 31454)
@@ -301,34 +301,12 @@
 			"kyra2",
 			"CD",
 			AD_ENTRY1("FATE.PAK", "28cbad1c5bf06b2d3825ae57d760d032"),
-			Common::EN_ANY,
+			Common::UNK_LANG,
 			Common::kPlatformPC,
 			Common::ADGF_NO_FLAGS
 		},
 		KYRA2_CD_FLAGS
 	},
-	{
-		{
-			"kyra2",
-			"CD",
-			AD_ENTRY1("FATE.PAK", "28cbad1c5bf06b2d3825ae57d760d032"),
-			Common::DE_DEU,
-			Common::kPlatformPC,
-			Common::ADGF_NO_FLAGS
-		},
-		KYRA2_CD_FLAGS
-	},
-	{
-		{
-			"kyra2",
-			"CD",
-			AD_ENTRY1("FATE.PAK", "28cbad1c5bf06b2d3825ae57d760d032"),
-			Common::FR_FRA,
-			Common::kPlatformPC,
-			Common::ADGF_NO_FLAGS
-		},
-		KYRA2_CD_FLAGS
-	},
 
 	{ // Interactive Demo
 		{
@@ -382,34 +360,12 @@
 			"kyra3",
 			0,
 			AD_ENTRY1("ONETIME.PAK", "3833ff312757b8e6147f464cca0a6587"),
-			Common::EN_ANY,
+			Common::UNK_LANG,
 			Common::kPlatformPC,
 			Common::ADGF_NO_FLAGS
 		},
 		KYRA3_CD_FLAGS
 	},
-	{
-		{
-			"kyra3",
-			0,
-			AD_ENTRY1("ONETIME.PAK", "3833ff312757b8e6147f464cca0a6587"),
-			Common::DE_DEU,
-			Common::kPlatformPC,
-			Common::ADGF_NO_FLAGS
-		},
-		KYRA3_CD_FLAGS
-	},
-	{
-		{
-			"kyra3",
-			0,
-			AD_ENTRY1("ONETIME.PAK", "3833ff312757b8e6147f464cca0a6587"),
-			Common::FR_FRA,
-			Common::kPlatformPC,
-			Common::ADGF_NO_FLAGS
-		},
-		KYRA3_CD_FLAGS
-	},
 
 	{ AD_TABLE_END_MARKER, FLAGS(0, 0, 0, 0, 0) }
 };
@@ -480,6 +436,9 @@
 			flags.lang = Common::EN_ANY;
 	}
 
+	if (flags.lang == Common::EN_USA || flags.lang == Common::EN_GRB)
+		flags.lang = Common::EN_ANY;
+
 	switch (flags.gameID) {
 	case Kyra::GI_KYRA1:
 		*engine = new Kyra::KyraEngine_v1(syst, flags);

Modified: scummvm/trunk/engines/kyra/kyra.h
===================================================================
--- scummvm/trunk/engines/kyra/kyra.h	2008-04-08 18:12:32 UTC (rev 31453)
+++ scummvm/trunk/engines/kyra/kyra.h	2008-04-08 18:52:27 UTC (rev 31454)
@@ -205,6 +205,8 @@
 	GameFlags _flags;
 	int _lang;
 
+	void updateLanguage();
+
 	// opcode
 	virtual void setupOpcodeTable() = 0;
 	Common::Array<const Opcode*> _opcodes;

Modified: scummvm/trunk/engines/kyra/kyra_v2.cpp
===================================================================
--- scummvm/trunk/engines/kyra/kyra_v2.cpp	2008-04-08 18:12:32 UTC (rev 31453)
+++ scummvm/trunk/engines/kyra/kyra_v2.cpp	2008-04-08 18:52:27 UTC (rev 31454)
@@ -2261,6 +2261,28 @@
 
 void KyraEngine_v2::writeSettings() {
 	ConfMan.setInt("talkspeed", ((_configTextspeed-2) * 255) / 95);
+
+	switch (_lang) {
+	case 1:
+		_flags.lang = Common::FR_FRA;
+		break;
+
+	case 2:
+		_flags.lang = Common::DE_DEU;
+		break;
+
+	case 3:
+		_flags.lang = Common::JA_JPN;
+		break;
+	
+	case 0:
+	default:
+		_flags.lang = Common::EN_ANY;
+		break;
+	}
+
+	ConfMan.set("language", Common::getLanguageCode(_flags.lang));
+
 	KyraEngine::writeSettings();
 }
 


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