KYRA: add support for kyra2 fan translation

This commit is contained in:
BLooperZ 2021-08-16 23:23:05 +03:00 committed by athrxx
parent ce3bf9909d
commit bacd737ea3
6 changed files with 147 additions and 2 deletions

View File

@ -39,7 +39,7 @@
enum {
kKyraDatVersion = 109
kKyraDatVersion = 110
};
const ExtractFilename extractFilenames[] = {

View File

@ -81,6 +81,7 @@ const Game kyra2Games[] = {
{ kKyra2, kPlatformDOS, kTalkieVersion, IT_ITA },
//{ kKyra2, kPlatformDOS, kTalkieVersion, RU_RUS },
{ kKyra2, kPlatformDOS, kTalkieVersion, ES_ESP },
{ kKyra2, kPlatformDOS, kTalkieVersion, HE_ISR },
{ kKyra2, kPlatformFMTowns, kNoSpecial, EN_ANY },
{ kKyra2, kPlatformFMTowns, kNoSpecial, JA_JPN },

View File

@ -81,6 +81,7 @@
#include "resources/hof_dos_cd_italian.h"
#include "resources/hof_dos_cd_russian.h"
#include "resources/hof_dos_cd_spanish.h"
#include "resources/hof_dos_cd_hebrew.h"
#include "resources/hof_fmtowns.h"
#include "resources/hof_fmtowns_english.h"
@ -981,6 +982,8 @@ static const ResourceProvider resourceProviders[] = {
{ k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieVersion, DE_DEU, &k2SeqplayTlkFilesDOSCDGermanProvider },
{ k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieVersion, IT_ITA, &k2SeqplayStringsDOSCDItalianProvider },
{ k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieVersion, IT_ITA, &k2SeqplayTlkFilesDOSCDItalianProvider },
{ k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieVersion, HE_ISR, &k2SeqplayStringsDOSCDHebrewProvider },
{ k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieVersion, HE_ISR, &k2SeqplayTlkFilesDOSCDHebrewProvider },
/*{ k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieVersion, RU_RUS, &k2SeqplayStringsDOSCDRussianProvider },
{ k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieVersion, RU_RUS, &k2SeqplayTlkFilesDOSCDRussianProvider },*/

View File

@ -0,0 +1,127 @@
static const char *const k2SeqplayStringsDOSCDHebrew[104] = {
"\xF7\xE9\xF8\xF0\xE3\xE9\xE4 \xF0\xF2\xEC\xEE\xFA!",
"\xF1\xEC\xF2 \xE0\xE7\xF8 \xF1\xEC\xF2...",
"...\xE5\xF2\xF5 \xE0\xE7\xF8 \xF2\xF5.",
"\xF7\xE9\xF8\xF0\xE3\xE9\xE4 \xE7\xE3\xEC\xE4 \xEE\xEC\xE4\xFA\xF7\xE9\xE9\xED!",
"\xE4\xEE\xE9\xF1\xE8\xE9\xF7\xF0\xE9\xE9\xED \xE4\xEE\xEC\xEB\xE5\xFA\xE9\xE9\xED \xE0\xE5\xE1\xE3\xE9 \xF2\xF6\xE5\xFA.",
"\xEB\xEC \xE1\xF8-\xF1\xEE\xEB\xE0 \xEB\xE1\xF8 \xE4\xF9\xFA\xFA\xF3 \xE1\xE3\xE9\xE5\xF0\xE9\xED.",
"\xE0\xF4\xE9\xEC\xE5 \xEE\xF8\xF7\xE5 \xE5\xF9\xE5\xEC\xE9\xE9\xFA\xE5 \xE4\xE7\xE3\xF9\xE4 \xE4\xE5\xF8\xF9\xE5 \xEC\xE4\xF6\xE8\xF8\xF3 \xEC\xE5\xF2\xE9\xE3\xE4.",
"\xEC\xEE\xF8\xE1\xE4 \xE4\xEE\xE6\xEC, \xEC\xE9\xE3 \xE4\xE9\xE4 \xF0\xE9\xF1\xE9\xE5\xEF \xF8\xE1 \xE1\xF2\xF0\xE9\xE9\xF0\xE9\xED \xE4\xE0\xEC\xE4.",
"\xE1\xF1\xE5\xF4\xE5 \xF9\xEC \xE3\xE1\xF8 \xF0\xE1\xE7\xF8\xE4 \xFA\xEB\xF0\xE9\xFA...",
"...\xF9\xEB\xEC\xEC\xE4 \xE0\xE1\xEF \xF2\xE5\xE2\xEF \xF7\xF1\xE5\xEE\xE4...",
"...\xE0\xE5\xFA\xE4 \xE4\xE9\xE4 \xF6\xF8\xE9\xEA \xEC\xE4\xE1\xE9\xE0 \xEE\xEE\xF8\xEB\xE6 \xE4\xF2\xE5\xEC\xED.",
"\xE6\xE0\xF0\xFA\xE9\xE4, \xF6\xF2\xE9\xF8\xFA \xEE\xE9\xF1\xE8\xE9\xF7\xF0\xE9 \xF7\xE9\xF8\xF0\xE3\xE9\xE4, \xF0\xE1\xE7\xF8\xE4 \xEC\xE4\xE1\xE9\xE0 \xE0\xFA \xE4\xE0\xE1\xEF.",
"\xFA\xE5\xE3\xE4 \xF9\xF9\xE9\xE7\xF7\xFA\xED \xE1\xE9\xE3 \xE4\xE2\xE5\xF8\xEC.",
"\xE9\xF9 \xEC\xE9 \xEE\xF1\xF4\xE9\xF7 \xE0\xE5\xEB\xEE\xF0\xE9\xE5\xFA \xEC\xF4\xFA\xE9\xE7\xFA \xF4\xE5\xF8\xE8\xEC \xEC\xEE\xF8\xEB\xE6 \xE4\xF2\xE5\xEC\xED.",
" DUMMY STRING... ",
" DUMMY STRING... ",
"\xE4\xE9\xE9! \xEB\xEC \xE4\xF6\xE9\xE5\xE3 \xF9\xEC\xE9 \xF0\xE2\xF0\xE1!",
" DUMMY STRING... ",
"\xE0\xED \xE4\xED \xE7\xE5\xF9\xE1\xE9\xED \xF9\xE0\xF0\xE9 \xE0\xF6\xF2\xE3 \xE0\xFA \xEB\xEC \xE4\xE3\xF8\xEA \xF2\xE3 \xEC\xEE\xE8\xE4, \xE4\xED \xE7\xE9\xE9\xED \xE1\xF1\xF8\xE8!",
" DUMMY STRING... ",
" DUMMY STRING... ",
"\xFA\xE6\xE3\xF8\xE6 \xF4\xE0\xE5\xEF!",
"\xE9\xE5, \xE6\xE4 \xE4\xE9\xE4 \xF7\xF8\xE5\xE1!",
"\xE0\xFA\xE4 \xE0\xEE\xF8\xFA \xE0\xFA \xE6\xE4 \xE7\xE1\xE9\xE1\xE9. \xE0\xF0\xE9, \xEC\xF2\xE5\xEE\xFA \xE6\xE0\xFA, \xEC\xE0 \xE9\xE5\xF6\xE0 \xEC\xF6\xE5\xE3 \xF2\xE5\xE3 \xEC\xF2\xE5\xEC\xED!",
"\xF7\xE5\xE5\xE4 \xF7\xE5\xE5\xE4.",
"\xEB\xEE\xE4 \xF4\xF2\xEE\xE9\xED \xE0\xF0\xE9 \xF6\xF8\xE9\xEA \xEC\xE4\xE2\xE9\xE3 \xEC\xEA? \xE0\xFA\xE4 \xF7\xF8\xF4\xE3\xE4.",
"\xE4\xE5\xE9 \xEC\xE0! \xE4\xFA\xE7\xF1\xEC\xE4 \xEC\xF0\xE5 \xE4\xE2\xE1\xE9\xF0\xE4!",
"\xE1\xE5\xE0 \xF0\xF0\xF1\xE4 \xE0\xFA \xF9\xF2\xE5\xE5\xFA \xE4\xE0\xE5\xE6\xF0\xE9\xE9\xED \xE4\xE6\xE0\xFA. \xE4\xE9\xE0 \xEB\xFA\xE5\xEE\xE4.",
"\xE0\xEE\xE0, \xEE\xFA\xE9 \xE0\xF0\xE9 \xEE\xF7\xE1\xEC \xE0\xFA \xE4\xF7\xE9\xF1\xE5\xF1?",
"\xE4\xF1\xFA\xEC\xF7 \xEE\xEB\xE0\xEF, \xF7\xE9\xF9\xE8\xE4!",
"\xE0\xFA\xE4 \xE7\xE5\xFA\xEA, \xE5\xE0\xF0\xE9 \xE1\xE5\xE7\xF8.",
"\xEC\xE0. \xE0\xFA\xE4 \xE7\xE5\xFA\xEA \xE5\xE0\xF0\xE9 \xE1\xE5\xE7\xF8.",
"\xE0\xF0\xE9 \xF2\xE3\xE9\xE9\xEF \xE8\xE5\xF2\xEF \xF9\xE6\xE4 \xE4\xE9\xE4 \xF7\xF9\xF7\xE5\xF9 \xEC\xE0 \xEE\xF7\xE5\xF8\xE9.",
"\xF4\xE7\xE7, \xF2\xE3\xE9\xE9\xEF \xEC\xE0 \xE4\xE9\xE9\xFA \xEE\xE6\xE4\xE4 \xF4\xF0\xE8\xEE\xE8\xF8 \xE9\xE0\xEE\xE1\xE9 \xE2\xED \xE4\xE5\xE0 \xE4\xE9\xE4 \xF2\xE5\xF7\xF5 \xE0\xE5\xFA\xEA \xE1\xFA\xE7\xFA!",
"\xEE\xF4\xE9\xF7 \xF8\xE0\xF9\xE9",
"Brett W. Sperry",
"\xE1\xE9\xEE\xE5\xE9 \xE5\xFA\xEB\xF0\xE5\xEF",
"Rick Gush",
"\xFA\xE5\xEB\xF0\xE9\xFA\xEF \xF8\xE0\xF9\xE9",
"Michael Legg",
"\xF0\xE9\xE4\xE5\xEC \xE0\xE5\xEE\xF0\xE5\xFA\xE9",
"Louis Castle",
"Joseph B. Hewitt IV",
"\xEE\xF2\xF6\xE1 \xF8\xE0\xF9\xE9",
"Rick Parks",
"\xEB\xFA\xE9\xE1\xFA \xF7\xE5\xE3 \xF0\xE5\xF1\xF4\xFA",
"Philip W. Gorrow",
"Mike Grayford",
"Mark McCubbin",
"\xE0\xEE\xF0\xE9\xED",
"Cameron Chun",
"Cary Averett",
"Cindy Chinn",
"Elie Arabian",
"Fei Cheng",
"Ferby Miguel",
"Frank Mendeola",
"Jack Martin",
"Jerry Moore",
"DUMMY STRING... ",
"Judith Peterson",
"Larry Miller",
"Lenny Lee",
"Louise Sandoval",
"Ren Olsen",
"Music & Sounds by",
"Paul Mudra",
"Frank Klepacki",
"Dwight Okahara",
"Pat Collins",
"\xE4\xE1\xE8\xE7\xFA \xE0\xE9\xEB\xE5\xFA",
"Glenn Sperry",
"Michael Lightner",
"William Foster",
"Jesse Clemit",
"Jeff Fillhaber",
"\xF2\xE9\xF6\xE5\xE1 \xE0\xF8\xE9\xE6\xE4 \xE5\xE7\xE5\xE1\xF8\xFA",
"\xE5\xE4\xE2\xF9\xEE\xFA \xEE\xF9\xE0\xEC\xE5\xFA",
"Eydie Laramore",
"Lisa Marcinko",
"Lauren Rifkin",
"\xE1\xF8\xEB\xE5\xFA!",
"\xFA\xE5\xE3\xE4 \xF9\xF9\xE9\xE7\xF7\xFA\xED \xE1\xE9\xE3 \xE4\xE2\xE5\xF8\xEC!",
"\xEE\xFA\xEB\xF0\xFA \xE0\xE5\xF8\xE7",
"\xE9\xE5\xF2\xF5 \xE4\xF4\xF7\xE4",
"Scott Duckett",
"\xE1\xE5\xE3\xF7\xE9 \xE0\xE9\xF8\xE5\xE5\xE9\xEF",
"Chris McFarland",
"Paul Moore",
"Chad Soares",
"Jared Brinkley",
"Jon Willliams",
"Chris Toft",
"\xE4\xF9\xE9\xF2\xF8 \xF9\xEC \xE2'\xE5 \xF7\xE5\xF7\xE0\xEF \xEE\xE0\xFA",
"Theodore A. Morris",
"\xE8\xF2\xE9\xF0\xFA \xEE\xF9\xE7\xF7",
"\xE4\xF7\xE3\xEE\xE4",
"\xE4\xFA\xE7\xEC\xFA \xEE\xF9\xE7\xF7 \xE7\xE3\xF9",
"\xE9\xF6\xE9\xE0\xE4 \xEE\xE4\xEE\xF9\xE7\xF7",
"\xFA\xE5\xE3\xE5\xFA \xEE\xE9\xE5\xE7\xE3\xE5\xFA",
"Sake Joe Bostic-san",
"Tim Fritz",
"Kenny Dunne",
"\xFA\xE5\xE3\xE4 \xF9\xF9\xE9\xE7\xF7\xFA\xED \"\xE1\xE9\xE3 \xE4\xE2\xE5\xF8\xEC.\"\n"
};
static const StringListProvider k2SeqplayStringsDOSCDHebrewProvider = { ARRAYSIZE(k2SeqplayStringsDOSCDHebrew), k2SeqplayStringsDOSCDHebrew };
static const char *const k2SeqplayTlkFilesDOSCDHebrew[14] = {
"EINTRO1",
"EINTRO2",
"EINTRO3",
"EINTRO4",
"EINTRO5",
"EINTRO6",
"EINTRO7",
"EINTRO8",
"EINTRO9",
"EINTRO10",
"EINTRO11",
"EINTRO12",
"EGLOW",
""
};
static const StringListProvider k2SeqplayTlkFilesDOSCDHebrewProvider = { ARRAYSIZE(k2SeqplayTlkFilesDOSCDHebrew), k2SeqplayTlkFilesDOSCDHebrew };

View File

@ -829,6 +829,20 @@ const KYRAGameDescription adGameDescs[] = {
KYRA2_CD_FAN_FLAGS(Common::ES_ESP, Common::EN_ANY)
},
{ // Hebrew Fan Translation
{
"kyra2",
"CD",
AD_ENTRY2s("FATE.PAK", "28cbad1c5bf06b2d3825ae57d760d032", -1,
"8FAT.FNT", "12424362a537e1335b10323c4013bb1d", -1),
Common::HE_ISR,
Common::kPlatformDOS,
ADGF_DROPLANGUAGE | ADGF_CD,
GUIO5(GUIO_MIDIADLIB, GUIO_MIDIMT32, GUIO_MIDIGM, GUIO_MIDIPCSPK, GUIO_RENDERVGA)
},
KYRA2_CD_FLAGS
},
{ // Interactive Demo
{
"kyra2",

View File

@ -39,7 +39,7 @@
namespace Kyra {
#define RESFILE_VERSION 109
#define RESFILE_VERSION 110
namespace {
bool checkKyraDat(Common::SeekableReadStream *file) {