aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Schickel2006-05-04 11:19:48 +0000
committerJohannes Schickel2006-05-04 11:19:48 +0000
commit40189ab7e6aa58a24b3c4efa6099c4ef3ebf7047 (patch)
tree88fda8200b8f946c232c142867a125d931a12323
parenta33997a3e9e148ac60d964a24113ccc0618e93c5 (diff)
downloadscummvm-rg350-40189ab7e6aa58a24b3c4efa6099c4ef3ebf7047.tar.gz
scummvm-rg350-40189ab7e6aa58a24b3c4efa6099c4ef3ebf7047.tar.bz2
scummvm-rg350-40189ab7e6aa58a24b3c4efa6099c4ef3ebf7047.zip
Adds (partial) support for italian floppy. (still hardcoded strings are missing) (Bug # 1409244 ("KYRA: GFX problems with ITALIAN floppy")).
svn-id: r22333
-rw-r--r--engines/kyra/kyra.h1
-rw-r--r--engines/kyra/plugin.cpp3
-rw-r--r--engines/kyra/sequences_v1.cpp2
-rw-r--r--engines/kyra/staticres.cpp9
4 files changed, 12 insertions, 3 deletions
diff --git a/engines/kyra/kyra.h b/engines/kyra/kyra.h
index fb90a27fe2..2d8fc7fbba 100644
--- a/engines/kyra/kyra.h
+++ b/engines/kyra/kyra.h
@@ -54,6 +54,7 @@ enum {
GF_FRENCH = 1 << 5,
GF_GERMAN = 1 << 6,
GF_SPANISH = 1 << 7,
+ GF_ITALIAN = 1 << 8,
// other languages here
GF_LNGUNK = 1 << 16,
GF_AMIGA = 1 << 17 // this is no special version flag yet!
diff --git a/engines/kyra/plugin.cpp b/engines/kyra/plugin.cpp
index e906eeb608..2941adfe5a 100644
--- a/engines/kyra/plugin.cpp
+++ b/engines/kyra/plugin.cpp
@@ -71,6 +71,8 @@ const GameSettings kyra1_games[] = {
"8909b41596913b3f5deaf3c9f1017b01", "GEMCUT.EMC"},
{ "kyra1", "The Legend of Kyrandia", GI_KYRA1, GF_SPANISH | GF_FLOPPY, // floppy 1.8 from clemmy
"747861d2a9c643c59fdab570df5b9093", "GEMCUT.EMC"},
+ { "kyra1", "The Legend of Kyrandia", GI_KYRA1, GF_ITALIAN | GF_FLOPPY, // from gourry
+ "ef08c8c237ee1473fd52578303fc36df", "GEMCUT.EMC" },
//{ "kyra1", "The Legend of Kyrandia", GI_KYRA1, GF_AMIGA | GF_FLOPPY | GF_ENGLISH,
// "2bd1da653eaefd691e050e4a9eb68a64", "GEMCUT.PAK" },
{ "kyra1", "The Legend of Kyrandia", GI_KYRA1, GF_ENGLISH | GF_TALKIE,
@@ -110,6 +112,7 @@ const Kyra1LanguageTable kyra1_languages[] = {
{ "MAIN_FRE.CPS", GF_FRENCH, Common::FR_FRA },
{ "MAIN_GER.CPS", GF_GERMAN, Common::DE_DEU },
{ "MAIN_SPA.CPS", GF_SPANISH, Common::ES_ESP },
+ { "MAIN_ITA.CPS", GF_ITALIAN, Common::IT_ITA },
{ 0, 0, Common::UNK_LANG }
};
diff --git a/engines/kyra/sequences_v1.cpp b/engines/kyra/sequences_v1.cpp
index 15425ce2e4..a720820171 100644
--- a/engines/kyra/sequences_v1.cpp
+++ b/engines/kyra/sequences_v1.cpp
@@ -192,6 +192,8 @@ void KyraEngine::seq_introStory() {
loadBitmap("TEXT_FRE.CPS", 3, 3, 0);
} else if (_features & GF_SPANISH) {
loadBitmap("TEXT_SPA.CPS", 3, 3, 0);
+ } else if (_features & GF_ITALIAN) {
+ loadBitmap("TEXT_ITA.CPS", 3, 3, 0);
} else {
warning("no story graphics file found");
}
diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp
index 56cb68e3e3..ffaf97a602 100644
--- a/engines/kyra/staticres.cpp
+++ b/engines/kyra/staticres.cpp
@@ -43,6 +43,7 @@ static LanguageTypes languages[] = {
{ GF_FRENCH, "FRE" },
{ GF_GERMAN, "GER" },
{ GF_SPANISH, "SPA" },
+ { GF_ITALIAN, "ITA" },
{ 0, 0 }
};
@@ -752,16 +753,18 @@ void KyraEngine::loadButtonShapes() {
void KyraEngine::loadMainScreen(int page) {
_screen->clearPage(page);
- if ((_features & GF_ENGLISH) && (_features & GF_TALKIE))
+ if ((_features & GF_ENGLISH) && (_features & GF_FLOPPY))
+ loadBitmap("MAIN15.CPS", page, page, 0);
+ else if ((_features & GF_ENGLISH) && (_features & GF_TALKIE))
loadBitmap("MAIN_ENG.CPS", page, page, 0);
else if(_features & GF_FRENCH)
loadBitmap("MAIN_FRE.CPS", page, page, 0);
else if(_features & GF_GERMAN)
loadBitmap("MAIN_GER.CPS", page, page, 0);
- else if ((_features & GF_ENGLISH) && (_features & GF_FLOPPY))
- loadBitmap("MAIN15.CPS", page, page, 0);
else if (_features & GF_SPANISH)
loadBitmap("MAIN_SPA.CPS", page, page, 0);
+ else if (_features & GF_ITALIAN)
+ loadBitmap("MAIN_ITA.CPS", page, page, 0);
else
warning("no main graphics file found");