aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2017-06-16 20:38:10 -0400
committerPaul Gilbert2017-06-16 20:38:10 -0400
commit8cedc7af0cf099a0ec8c539471399bb0f92904e6 (patch)
tree684221d4b773fe67a9b107040189c209cfb3028a
parenteedbb7df4e256e752c861b1828cd4b1ac55d59bc (diff)
downloadscummvm-rg350-8cedc7af0cf099a0ec8c539471399bb0f92904e6.tar.gz
scummvm-rg350-8cedc7af0cf099a0ec8c539471399bb0f92904e6.tar.bz2
scummvm-rg350-8cedc7af0cf099a0ec8c539471399bb0f92904e6.zip
DEVTOOLS: Add German parser strings to create_titanic
-rw-r--r--devtools/create_titanic/create_titanic_dat.cpp79
1 files changed, 72 insertions, 7 deletions
diff --git a/devtools/create_titanic/create_titanic_dat.cpp b/devtools/create_titanic/create_titanic_dat.cpp
index cbcc25476b..0beec78290 100644
--- a/devtools/create_titanic/create_titanic_dat.cpp
+++ b/devtools/create_titanic/create_titanic_dat.cpp
@@ -55,7 +55,7 @@
*/
#define VERSION_NUMBER 1
-#define HEADER_SIZE 0xF00
+#define HEADER_SIZE 0xF80
Common::File inputFile, outputFile;
Common::PEResources resEng, resGer;
@@ -70,17 +70,20 @@ uint dataOffset = HEADER_SIZE;
enum {
ENGLISH_10042C_DIFF = 0x401C00,
ENGLISH_10042B_DIFF = 0x401400,
- ENGLISH_10042_DIFF = 0x402000
+ ENGLISH_10042_DIFF = 0x402000,
+ GERMAN_DIFF = 0x3DE500
};
enum Version {
ENGLISH_10042C = 0,
ENGLISH_10042B = 1,
- ENGLISH_10042 = 2
+ ENGLISH_10042 = 2,
+ GERMAN = 3
};
Version _version;
-const int FILE_DIFF[3] = {
- ENGLISH_10042C_DIFF, ENGLISH_10042B_DIFF, ENGLISH_10042_DIFF
+const int FILE_DIFF[4] = {
+ ENGLISH_10042C_DIFF, ENGLISH_10042B_DIFF, ENGLISH_10042_DIFF,
+ GERMAN_DIFF
};
static const char *const ITEM_NAMES[46] = {
@@ -113,6 +116,54 @@ static const char *const ITEM_DESCRIPTIONS[46] = {
"A phonograph cylinder", "A phonograph cylinder", "A phonograph cylinder",
"A photograph"
};
+static const char *const ITEM_DESCRIPTIONS_DE[46] = {
+ "Der linke Arm des OberkellnerBots im Besitz eines Schl\xFC""nssel\x73 ",
+ "Der linke Arm des OberkellnerBots",
+ "Der rechte Arm des OberkellnerBots, im Besitz von Titanias Geh\xF6""rmodul",
+ "Der rechte Arm des OberkellnerBots",
+ "Rote Sicherung",
+ "Gelbe Sicherung",
+ "Blaue Sicherung",
+ "Gr\xFC""ne Sicherung",
+ "Der Papagei",
+ "Titanias Gro\xDF""hirn",
+ "Titanias Geh\xF6""rmodul",
+ "Titanias Geruchsmodul",
+ "Titanias Sprachmodul",
+ "Titanias Gesichtsmodul",
+ "ziemlich fettiges H\xFC""hnchen",
+ "H\xFC""hnchen ohne alles",
+ "mit Starenp",
+ "mit Tomatensauce garniertes H\xFC""hnchen",
+ "mit Senfso\xDF""e \xFC""berzogenes H\xFC""hnchen",
+ "Ein zerschmetterter Fernsehapparat",
+ "Titanias Ohr",
+ "Titanias Ohr",
+ "Titanias Auge",
+ "Titanias Auge",
+ "Eine Papageienfeder",
+ "Eine sch\xF6""ne fette saftige Zitrone",
+ "Ein leeres Bierglas",
+ "Ein Starenp",
+ "Ein Tomatenso\xDF""e enthaltendes Bierglas",
+ "Ein Senfso\xDF""e enthaltendes Bierglas",
+ "Ein Hammer",
+ "Ein Schlauch",
+ "Das andere Ende eines Schlauchs",
+ "Der Kopf eines LiftBots",
+ "Ein ziemlich langer Stab",
+ "Ein Magazin",
+ "Titanias Mund",
+ "Ein Schl\xFCssel",
+ "Eine supersaugfShige Serviette",
+ "Titanias Nase",
+ "Eine Vogelstange",
+ "Ein Grammophonzylinder",
+ "Ein Grammophonzylinder",
+ "Ein Grammophonzylinder",
+ "Ein Grammophonzylinder",
+ "Ein Foto"
+};
static const char *const ITEM_IDS[40] = {
"MaitreD Left Arm", "MaitreD Right Arm", "OlfactoryCentre", "AuditoryCentre",
@@ -147,7 +198,7 @@ const NumberEntry NUMBERS[76] = {
{ "and", 0, 1 },
{ "negative", 0, 10 },
{ "minus", 0, 10 },
- { "below zeor", 0, 8 },
+ { "below zero", 0, 8 },
{ "degrees below zero", 0, 8 },
{ "nil", 0, 2 },
{ "zero", 0, 2 },
@@ -1286,6 +1337,7 @@ void writeData() {
writeResource("TEXT", 155);
writeStringArray("TEXT/ITEM_DESCRIPTIONS", ITEM_DESCRIPTIONS, 46);
+ writeStringArray("TEXT/ITEM_DESCRIPTIONS/DE", ITEM_DESCRIPTIONS_DE, 46);
writeStringArray("TEXT/ITEM_NAMES", ITEM_NAMES, 46);
writeStringArray("TEXT/ITEM_IDS", ITEM_IDS, 40);
writeStringArray("TEXT/ROOM_NAMES", ROOM_NAMES, 34);
@@ -1426,6 +1478,14 @@ void writeData() {
writeParrotLobbyLinkUpdaterEntries();
}
+void writeGermanData() {
+ writeStringArray("TEXT/PHRASES/DE", 0x23EEC8 + GERMAN_DIFF, 178);
+ writeStringArray("TEXT/REPLACEMENTS1/DE", 0x23F198 + GERMAN_DIFF, 1362);
+ writeStringArray("TEXT/REPLACEMENTS2/DE", 0x2406E8 + GERMAN_DIFF, 816);
+ writeStringArray("TEXT/REPLACEMENTS3/DE", 0x2413B0 + GERMAN_DIFF, 608);
+ writeStringArray("TEXT/REPLACEMENTS4/DE", 0x241D38 + GERMAN_DIFF, 195);
+}
+
void createScriptMap() {
Common::File inFile;
char line[80];
@@ -1503,8 +1563,13 @@ int main(int argc, char *argv[]) {
writeHeader();
writeData();
- writeFinalEntryHeader();
+ if (argc >= 3) {
+ inputFile.open(argv[2]);
+ _version = GERMAN;
+ writeGermanData();
+ }
+ writeFinalEntryHeader();
inputFile.close();
outputFile.close();
return 0;