From 0ed3dbf21f5dc2eb6bb90324d77937e68189a43a Mon Sep 17 00:00:00 2001 From: Jaromir Wysoglad Date: Mon, 27 May 2019 18:49:01 +0200 Subject: SUPERNOVA2: add tool to generate engine data file Most of the tool is copied from create supernova Add correct gametext.h and strings_en.po for supernova2 Doesn't handle images yet --- devtools/create_supernova2/create_supernova2.cpp | 197 ++ devtools/create_supernova2/create_supernova2.h | 33 + devtools/create_supernova2/file.cpp | 72 + devtools/create_supernova2/file.h | 59 + devtools/create_supernova2/gametext.h | 778 ++++++ devtools/create_supernova2/module.mk | 12 + devtools/create_supernova2/po_parser.cpp | 221 ++ devtools/create_supernova2/po_parser.h | 78 + devtools/create_supernova2/strings-en.po | 2780 ++++++++++++++++++++++ 9 files changed, 4230 insertions(+) create mode 100644 devtools/create_supernova2/create_supernova2.cpp create mode 100644 devtools/create_supernova2/create_supernova2.h create mode 100644 devtools/create_supernova2/file.cpp create mode 100644 devtools/create_supernova2/file.h create mode 100644 devtools/create_supernova2/gametext.h create mode 100644 devtools/create_supernova2/module.mk create mode 100644 devtools/create_supernova2/po_parser.cpp create mode 100644 devtools/create_supernova2/po_parser.h create mode 100644 devtools/create_supernova2/strings-en.po (limited to 'devtools') diff --git a/devtools/create_supernova2/create_supernova2.cpp b/devtools/create_supernova2/create_supernova2.cpp new file mode 100644 index 0000000000..ff19728c59 --- /dev/null +++ b/devtools/create_supernova2/create_supernova2.cpp @@ -0,0 +1,197 @@ +#include "create_supernova2.h" +#include "gametext.h" +#include "file.h" +#include "po_parser.h" + +// HACK to allow building with the SDL backend on MinGW +// see bug #1800764 "TOOLS: MinGW tools building broken" +#ifdef main +#undef main +#endif // main + +// List of languages to look for. To add new languages you only need to change the array below +// and add the supporting files: +// - 640x480 bitmap picture for the newpaper named 'img1-##.pbm' and 'img2-##.pbm' +// in pbm binary format (you can use gimp to generate those) +// - strings in a po file named 'strings-##.po' that uses CP850 encoding + +const char *lang[] = { + "en", + NULL +}; + +void writeImage(File& outputFile, const char *name, const char* language) { + File imgFile; + char fileName[16]; + sprintf(fileName, "%s-%s.pbm", name, language); + if (!imgFile.open(fileName, kFileReadMode)) { + printf("Cannot find image '%s' for language '%s'. This image will be skipped.\n", name, language); + return; + } + + char str[256]; + + // Read header (and check we have a binary PBM file) + imgFile.readString(str, 256); + if (strcmp(str, "P4") != 0) { + imgFile.close(); + printf("File '%s' doesn't seem to be a binary pbm file! This image will be skipped.\n", fileName); + return; + } + + // Skip comments and then read and check size + do { + imgFile.readString(str, 256); + } while (str[0] == '#'); + int w = 0, h = 0; + if (sscanf(str, "%d %d", &w, &h) != 2 || w != 640 || h != 480) { + imgFile.close(); + printf("Binary pbm file '%s' doesn't have the expected size (expected: 640x480, read: %dx%d). This image will be skipped.\n", fileName, w, h); + return; + } + + // Write block header in output file (4 bytes). + // We convert the image name to upper case. + for (int i = 0 ; i < 4 ; ++i) { + if (name[i] >= 97 && name[i] <= 122) + outputFile.writeByte(name[i] - 32); + else + outputFile.writeByte(name[i]); + } + // And write the language code on 4 bytes as well (padded with 0 if needed). + int languageLength = strlen(language); + for (int i = 0 ; i < 4 ; ++i) { + if (i < languageLength) + outputFile.writeByte(language[i]); + else + outputFile.writeByte(0); + } + + // Write block size (640*480 / 8) + outputFile.writeLong(38400); + + // Write all the bytes. We should have 38400 bytes (640 * 480 / 8) + // However we need to invert the bits has the engine expects 1 for the background and 0 for the text (black) + // but pbm uses 0 for white and 1 for black. + for (int i = 0 ; i < 38400 ; ++i) { + byte b = imgFile.readByte(); + outputFile.writeByte(~b); + } + + imgFile.close(); +} + +void writeGermanStrings(File& outputFile) { + // Write header and language + outputFile.write("TEXT", 4); + outputFile.write("de\0\0", 4); + + // Reserve the size for the block size, but we will write it at the end once we know what it is. + uint32 blockSizePos = outputFile.pos(); + uint32 blockSize = 0; + outputFile.writeLong(blockSize); + + // Write all the strings + const char **s = &gameText[0]; + while (*s) { + outputFile.writeString(*s); + blockSize += strlen(*s) + 1; + ++s; + } + + // Now write the block size and then go back to the end of the file. + outputFile.seek(blockSizePos, SEEK_SET); + outputFile.writeLong(blockSize); + outputFile.seek(0, SEEK_END); +} + +void writeStrings(File& outputFile, const char* language) { + char fileName[16]; + sprintf(fileName, "strings-%s.po", language); + PoMessageList* poList = parsePoFile(fileName); + if (!poList) { + printf("Cannot find strings file for language '%s'.\n", language); + return; + } + + // Write block header + outputFile.write("TEXT", 4); + + // And write the language code on 4 bytes as well (padded with 0 if needed). + int languageLength = strlen(language); + for (int i = 0 ; i < 4 ; ++i) { + if (i < languageLength) + outputFile.writeByte(language[i]); + else + outputFile.writeByte(0); + } + + // Reserve the size for the block size, but we will write it at the end once we know what it is. + uint32 blockSizePos = outputFile.pos(); + uint32 blockSize = 0; + outputFile.writeLong(blockSize); + + // Write all the strings. + // If a string is not translated we use the German one. + const char **s = &gameText[0]; + while (*s) { + const char* translation = poList->findTranslation(*s); + if (translation) { + outputFile.writeString(translation); + blockSize += strlen(translation) + 1; + } else { + outputFile.writeString(*s); + blockSize += strlen(*s) + 1; + } + ++s; + } + delete poList; + + // Now write the block size and then go back to the end of the file. + outputFile.seek(blockSizePos, SEEK_SET); + outputFile.writeLong(blockSize); + outputFile.seek(0, SEEK_END); +} + + +/** + * Main method + */ +int main(int argc, char *argv[]) { + File outputFile; + if (!outputFile.open("supernova2.dat", kFileWriteMode)) { + printf("Cannot create file 'supernova2.dat' in current directory.\n"); + exit(0); + } + + // The generated file is of the form: + // 3 bytes: 'MSN' + // 1 byte: version + // -- data blocks + // 4 bytes: header 'IMG1' and 'IMG2' for newspaper images (for file 1 and file 2 respectively), + // 'TEXT' for strings + // 4 bytes: language code ('en\0', 'de\0'- see common/language.cpp) + // 4 bytes: block size n (uint32) + // n bytes: data + // --- + + // Header + outputFile.write("MS2", 3); + outputFile.writeByte(VERSION); + + // German strings + writeGermanStrings(outputFile); + + // TODO make the needed images and reenable writing them to the .dat file + // Other languages + const char **l = &lang[0]; + while(*l) { + // writeImage(outputFile, "img1", *l); + // writeImage(outputFile, "img2", *l); + writeStrings(outputFile, *l); + ++l; + } + + outputFile.close(); + return 0; +} diff --git a/devtools/create_supernova2/create_supernova2.h b/devtools/create_supernova2/create_supernova2.h new file mode 100644 index 0000000000..7447a7ece6 --- /dev/null +++ b/devtools/create_supernova2/create_supernova2.h @@ -0,0 +1,33 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * This is a utility for generating a data file for the supernova engine. + * It contains strings extracted from the original executable as well + * as translations and is required for the engine to work properly. + */ + +#ifndef CREATE_SUPERNOVA_H +#define CREATE_SUPERNOVA_H + +#define VERSION 1 + + + +#endif // CREATE_SUPERNOVA_H diff --git a/devtools/create_supernova2/file.cpp b/devtools/create_supernova2/file.cpp new file mode 100644 index 0000000000..5fb842aff6 --- /dev/null +++ b/devtools/create_supernova2/file.cpp @@ -0,0 +1,72 @@ +#include "file.h" + +bool File::open(const char *filename, AccessMode mode) { + f = fopen(filename, (mode == kFileReadMode) ? "rb" : "wb"); + return (f != NULL); +} + +void File::close() { + fclose(f); + f = NULL; +} + +int File::seek(int32 offset, int whence) { + return fseek(f, offset, whence); +} + +long File::read(void *buffer, int len) { + return fread(buffer, 1, len, f); +} +void File::write(const void *buffer, int len) { + fwrite(buffer, 1, len, f); +} + +byte File::readByte() { + byte v; + read(&v, sizeof(byte)); + return v; +} + +uint16 File::readWord() { + uint16 v; + read(&v, sizeof(uint16)); + return FROM_LE_16(v); +} + +uint32 File::readLong() { + uint32 v; + read(&v, sizeof(uint32)); + return FROM_LE_32(v); +} + +void File::readString(char* string, int bufferLength) { + int i = 0; + while (i < bufferLength - 1 && fread(string + i, 1, 1, f) == 1) { + if (string[i] == '\n' || string[i] == 0) + break; + ++ i; + } + string[i] = 0; +} + +void File::writeByte(byte v) { + write(&v, sizeof(byte)); +} + +void File::writeWord(uint16 v) { + uint16 vTemp = TO_LE_16(v); + write(&vTemp, sizeof(uint16)); +} + +void File::writeLong(uint32 v) { + uint32 vTemp = TO_LE_32(v); + write(&vTemp, sizeof(uint32)); +} + +void File::writeString(const char *s) { + write(s, strlen(s) + 1); +} + +uint32 File::pos() { + return ftell(f); +} diff --git a/devtools/create_supernova2/file.h b/devtools/create_supernova2/file.h new file mode 100644 index 0000000000..dd33e410f9 --- /dev/null +++ b/devtools/create_supernova2/file.h @@ -0,0 +1,59 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * This is a utility for generating a data file for the supernova engine. + * It contains strings extracted from the original executable as well + * as translations and is required for the engine to work properly. + */ + +#ifndef FILE_H +#define FILE_H + +// Disable symbol overrides so that we can use system headers. +#define FORBIDDEN_SYMBOL_ALLOW_ALL +#include "common/endian.h" + +enum AccessMode { + kFileReadMode = 1, + kFileWriteMode = 2 +}; + +class File { +private: + FILE *f; +public: + bool open(const char *filename, AccessMode mode = kFileReadMode); + void close(); + int seek(int32 offset, int whence = SEEK_SET); + uint32 pos(); + long read(void *buffer, int len); + void write(const void *buffer, int len); + + byte readByte(); + uint16 readWord(); + uint32 readLong(); + void readString(char*, int bufferLength); + void writeByte(byte v); + void writeWord(uint16 v); + void writeLong(uint32 v); + void writeString(const char *s); +}; + +#endif // FILE_H diff --git a/devtools/create_supernova2/gametext.h b/devtools/create_supernova2/gametext.h new file mode 100644 index 0000000000..6b4cf1ea03 --- /dev/null +++ b/devtools/create_supernova2/gametext.h @@ -0,0 +1,778 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * This is a utility for generating a data file for the supernova engine. + * It contains strings extracted from the original executable as well + * as translations and is required for the engine to work properly. + */ + +#ifndef GAMETEXT_H +#define GAMETEXT_H + +#include + +// This file contains the strings in German and is encoded using CP850 encoding. +// Other language should be provided as po files also using the CP850 encoding. + +// TODO: add the strings from the engine here, add an Id string in comment. +// And in the engine add a StringId enum with all the Ids = index in this array. + +const char *gameText[] = { +// 0 +"Gehe", //Go +"Schau", //Look +"Nimm", //Take +"\231ffne", //Open +"Schlie\341e", //Close +// 5 +"Dr\201cke", //Push +"Ziehe", //Pull +"Benutze", //Use +"Rede", //Talk +"Gib", //Give +// 10 +"Gespr\204ch beenden", //End of conversation +"Gehe zu ", //Go to +"Schau ", //Look at +"Nimm ", //Take +"\231ffne ", //Open +// 15 +"Schlie\341e ", //Close +"Dr\201cke ", //Push +"Ziehe ", //Pull +"Benutze ", //Use +"Rede mit ", //Talk to +// 20 +"Gib ", //Give +" an ", // to +" mit ", // with +"Laden", //Load +"Speichern", //Save +// 25 +"Zur\201ck", //Back +"Neustart", //Restart +"Schreibfehler", //write error +"Textgeschwindigkeit:", //Text speed: +"Spiel abbrechen?", //Leave game? +// 30 +"Ja", //Yes +"Nein", //No +"Das tr\204gst du doch bei dir.", //You already carry this. +"Du bist doch schon da.", //You are already there. +"Das ist geschlossen.", //This is closed. +// 35 +"Das hast du doch schon.", //You already have that. +"Das brauchst du nicht.", //You don't need that. +"Das kannst du nicht nehmen.", //You can't take that. +"Das l\204\341t sich nicht \224ffnen.", //This cannot be opened. +"Das ist schon offen.", //This is already opened. +// 40 +"Das ist verschlossen.", //This is locked. +"Das l\204\341t sich nicht schlie\341en.", //This cannot be closed. +"Das ist schon geschlossen.", //This is already closed. +"Behalt es lieber!", //Better keep it! +"Das geht nicht.", //You can't do that. +// 45 +"^(C) 1994 Thomas und Steffen Dingel#", //^(C) 1994 Thomas and Steffen Dingel# +"Story und Grafik:^ Thomas Dingel#", //Story and Graphics:^ Thomas Dingel# +"Programmierung:^ Steffen Dingel#", //Programming:^ Steffen Dingel# +"Musik:^ Bernd Hoffmann#", //Music:^ Bernd Hoffmann# +"Getestet von ...#", //Tested by ...# +// 50 +"^Das war's.#", //^That's it.# +"^Schlu\341!#", //^Over!# +"^Ende!#", //^End!# +"^Aus!#", //^Done!# +"^Tsch\201\341!#", //^Bye!# +// 55 +"Oh!", //Oh! +"Nicht schlecht!", //Not bad! +"Supersound!", //Supersound! +"Klasse!", //Great! +"Nicht zu fassen!", //I can't believe it! +// 60 +"Super, ey!", //Dope, yo! +"Fantastisch!", //Fantastic! +"Umwerfend!", //Stunning! +"Genial!", //Brilliant! +"Spitze!", //Awesome! +// 65 +"Jawoll!", //Alright! +"Hervorragend!", //Outstanding! +"Ultragut!", //Ultra-good! +"Megacool!", //Mega cool! +"Yeah!", //Yeah! +// 70 +"Ein W\204chter betritt den Raum.|Du wirst verhaftet.", //A guard enters the room.|You are getting arrested. +"Die n\204chsten paar Jahre|verbringst du im Knast.", //You will spend the next|few years in jail. +"Es wird Alarm ausgel\224st.", //The alarm is about to be set off. +"Du h\224rst Schritte.", //You are hearing footsteps. +"Um das Schloss zu \224ffnen,|brauchst du einige Zeit.", //You will take some time,|to pick that lock. +// 75 +"Du ger\204tst in Panik|und ziehst die Keycard|aus der T\201r.", //You are panicking|and remove the keycard|from the door. +"Du hast deinen Auftrag|noch nicht ausgef\201hrt.", //You have not completed|your task yet. +"Obwohl du die Alarmanlage noch|nicht ausgeschaltet hast,|entscheidest du dich, zu fliehen.", //Although you haven't|disabled the alarm yet,|you decide to escape. +"Du entledigst dich der Einbruchswerkzeuge|und nimmst ein Taxi zum Kulturpalast.", //You get rid of your burglar tools|and take a cab to the Palace of Culture. +"Diese T\201r brauchst|du nicht zu \224ffnen.", //You don't need|to open this door. +// 80 +"Uff, es hat geklappt!", //Phew, it worked! +"Zur\201ck im Quartier der Gangster ...", //Back in the gangsters' hideout ... +"Das lief ja wie am Schn\201rchen!", //Everything went like clockwork! +"Hier, dein Anteil von 30000 Xa.", //Here, your share of 30000 Xa. +"Wo ist denn der Saurierkopf?", //Where's the dinosaur skull? +// 85 +"Dazu hatte ich keine Zeit mehr.", //I didn't have enough time for that. +"Was? Du spinnst wohl!|Dann kriegst du auch deinen|Anteil nicht. Raus!", //What? You're nuts!|Then you won't get your|share. Beat it! +"Der Sauger ist schon dort.", //The suction cup is already there. +"Du heftest den Sauger an die Wand|und h\204lst dich daran fest.", //You attach the suction cup to the wall|and hold on to it. +"Du stellst dich auf den|Boden nimmst den Sauger|wieder von der Wand", //You stand on the floor|then remove the suction cup from the wall +// 90 +"Die Alarmanlage ist|schon ausgeschaltet.", //The alarm system is|already switched off. +"Um die Anlage abzuschalten,|brauchst du einige Zeit.", //To turn off the system,|you need some time. +"Die Alarmanlage ist jetzt ausgeschaltet.", //The alarm system is now switched off. +"Saurier", //Dinosaur +"Du hast jetzt besseres zu tun,|als das Ding anzuschauen.", //You have better things to do now|than look at that thing. +// 95 +"Eingang", //Entrance +"T\201r", //Door +"Strasse zum Stadtzentrum", //Road to the city center +"Kamera", //Security camera +"Hoffentlich bemerkt dich niemand.", //Hopefully nobody will notice you. +// 100 +"Haupteingang", //Main entrance +"Gang", //Corridor +"Ziemlich gro\341.", //Quite large. +"Saurierkopf", //Dinosaur head +"Dies ist der Kopf,|den du suchst.", //This is the head|you're looking for. +// 105 +"Alarmanlage", //Alarm system +"Sauger", //Suction cup +"Wand", //Wall +"Loch", //Opening +"Buchstabe", //Letter +// 110 +"Sie ist sehr massiv.", //It is very massive. +"Hmm, X und Y, irgendwo|habe ich die Buchstaben|schon gesehen.", //Hmm, X and Y|I have seen these letters|somewhere before. +"Deine Zeit ist um, Fremder!", //Your Time is up, Stranger! +"Du hast das Seil|doch schon festgebunden.", //You already tied the rope. +"Das w\201rde wenig bringen.", //That would have little effect. +// 115 +"Sonnenstich, oder was?", //Sunstroke, or what? +"Du merkst, da\341 der Boden|unter dir nachgibt, und|springst zur Seite.", //You notice that the ground|is giving way under you,|and you leap aside. +"Puzzleteil", //Puzzle piece +"Neben diesem Stein|ist kein freies Feld.", //There's no free square|next to this stone. +"Du spielst gerade ein|Adventure, kein Rollenspiel!", //You are currently playing an|Adventure, not a Role-Playing Game! +// 120 +"Du kannst das Seil|nirgends befestigen.", //There's nowhere|to attach the rope. +"Es pa\341t nicht|zwischen die Steine.", //It does not fit|between the stones. +"Das ist doch|oben festgebunden!", //That is already|tied up above! +"Hey, das ist|mindestens 10 Meter tief!", //Hey, that is|at least 10 meters deep! +"In dem Schlitz|ist nichts mehr.", //There is nothing|left in the slot. +// 125 +"Das ist mindestens 5 Meter tief!", //That is at least 5 meters deep! +"Du versuchst, den Sarg zu|\224ffnen, aber der Deckel bewegt|sich keinen Millimeter.", //You try to open the coffin,|but the lid does not|move a millimeter. +"Du hast die Kugel schon gedr\201ckt.", //You have already|pushed the ball. +"Die Kugel bewegt sich ein St\201ck.", //The ball moves a bit. +"Herzlichen Gl\201ckwunsch!", //Congratulations! +// 130 +"Sie haben das Spiel gel\224st|und gewinnen 400 Xa!", //You solved the game|and won 400 Xa! +"Vielen Dank f\201r die Benutzung eines|VIRTUAL-REALITY-SYSTEMS-Produkts!", //Thank you for using a|VIRTUAL-REALITY-SYSTEMS product! +"N", //N +"O", //E +"S", //S +// 135 +"W", //W +"Seil", //Rope +"Schild", //Sign +"Darauf steht:|\"Willst du finden das|richtige Loch, so wage|dich in die Pyramide!\".", //It reads:|"Want to find|the right hole? Then dare|to enter the pyramid!". +"Es ist eine kleine \231ffnung.", //It is a small opening. +// 140 +"Pyramide", //Pyramid +"Komisch! Was soll eine Pyramide|bei den Axacussanern? Deine|eigenen Gedanken scheinen|den Spielverlauf zu beeinflussen.", //Weird! What is a pyramid doing|at the Axacussians? Your own thoughts seem to influence|the course of the game. +"Sonne", //Sun +"Sch\224n!", //Nice! +"\"Hallo Fremder, wenn du diesen|Raum betreten hast, bleibt|dir nur noch eine Stunde Zeit,|um deine Aufgabe zu erf\201llen!\"", //"Hello, Stranger, when you enter|this room, you have only an hour|to accomplish your task!" +// 145 +"rechte Seite", //right side +"linke Seite", //left side +"Knopf", //Button +"Schrift", //Inscription +"Tomate", //Tomato +// 150 +"Komisch!", //Funny! +"Messer", //Knife +"Es ist ein relativ stabiles Messer.", //It is a relatively sturdy knife. +"Monster", //Monster +"Es ist dick und|ungef\204hr 15 Meter lang.", //It is thick and|about 15 meters long. +// 155 +"Augen", //Eyes +"Mund", //Mouth +"Es ist nur eine Statue.", //It's just a statue. +"Zettel", //Note +"Darauf steht:|\"Wenn du fast am Ziel|bist, tu folgendes:|Sauf!\"", //It reads:|"When you're almost there,|do the following:|Drink!" +// 160 +"Es ist ca. 10 Meter tief.", //It is about 10 meters deep. +"Oben siehst du helles Licht.", //Above you is a bright light. +"Darauf steht:|\"Ruhe eine Minute im Raum|zwischen den Monstern,|und du wirst belohnt!\"", //It reads:|"Rest a minute in the room|between the monsters,|and you'll be rewarded!" +"Schlitz", //Slot +"Du kommst mit den|H\204nden nicht rein.", //You cannot get in|with your hands. +// 165 +"Es ist ca. 5 Meter tief.", //It is about 5 meters deep. +"Steine", //Stones +"Platte", //Plate +"Sarg", //Coffin +"Ausgang", //Exit +// 170 +"Unheimlich!", //Creepy! +"Zahnb\201rste", //Toothbrush +"Die Sache mit der|Artus GmbH scheint dir zu|Kopf gestiegen zu sein.", //The thing with the|Artus GmbH seems to have|gotten to your head. +"Zahnpastatube", //Toothpaste +"Kugel", //Ball +// 175 +"Hmm, die Kugel sieht lose aus.", //Hmm, the ball looks loose. +"Auge", //Eye +"Irgendwas stimmt damit nicht.", //Something is wrong with that. +"Es ist nichts Besonderes daran.", //There's nothing special about it. +"Sieht nach Metall aus.", //It looks like metal. +// 180 +"Ein Taxi kommt angerauscht,|du steigst ein.", //A taxi arrives, and you get in. +"Du dr\201ckst auf den Knopf, aber nichts passiert", //You press the button, but nothing happens +"Es ist leer.", //It is empty. +"Du findest ein kleines Ger\204t,|einen Ausweis und einen Xa.", //You find a small device,|an ID card and a Xa. +"Du heftest den|Magnet an die Stange.", //You attach the|magnet to the pole. +// 185 +"Stange mit Magnet", //Pole with magnet +"Raffiniert!", //Cunning! +"Du mu\341t das|Ger\204t erst kaufen.", //You must buy|this device first. +"Du legst den Chip|in das Ger\204t ein.", //You insert the chip|into the device. +"Du \201berspielst die CD|auf den Musikchip.", //You transfer the CD|to the Music chip. +// 190 +"Ohne einen eingelegten|Musikchip kannst du auf dem|Ger\204t nichts aufnehmen.", //Without an inserted|music chip, you can not|record on the device. +"Du nimmst den Chip|aus dem Ger\204t.", //You remove the chip|from the device. +"Es ist kein Chip eingelegt.", //There is no chip inserted. +"Wozu? Du hast sowieso nur die eine CD.", //What for? You only have one CD anyway. +"Die \"Mad Monkeys\"-CD. Du hast|sie schon tausendmal geh\224rt.", //The "Mad Monkeys" CD.|You've heard them a thousand times. +// 195 +"Du h\224rst nichts.|Der Chip ist unbespielt.", //All you hear is silence.|The chip is empty. +"Du h\224rst dir den Anfang|der \201berspielten CD an.", //You are listening to the beginning|of the copied CD. +"Es ist kein Chip einglegt.", //There is no chip inserted. +"Du trinkst etwas von den Zeug, danach|f\201hlst du dich leicht beschwipst.", //You drink some of the stuff,|then begin to feel slightly tipsy. +"%d Xa", //%d Xa +// 200 +"Als du ebenfalls aussteigst haben|die anderen Passagiere das|Fluggel\204nde bereits verlassen.", //When you get off the plane|the other passengers|have already left the airport. +"Flughafen", //Airport +"Stadtzentrum", //Downtown +"Kulturpalast", //Palace of Culture +"Erde", //Earth +// 205 +"Privatwohnung", //Private apartment +"(Taxi verlassen)", //(Leave the taxi) +"(Bezahlen)", //(Pay) +"Adresse:| ", //Address:| +"Fuddeln gilt nicht!|Zu diesem Zeitpunkt kannst du diese|Adresse noch gar nicht kennen!", //Fiddling with the system doesn't work!|At this time you can not|even know this address! +// 210 +"Du hast nicht|mehr genug Geld.", //You do not|have enough money left. +"Du merkst, da\341 das Taxi stark beschleunigt.", //You notice the taxi is accelerating rapidly. +"F\201nf Minuten sp\204ter ...", //Five minutes later ... +"Du hast doch schon eine Stange", //You already have a pole +"Du s\204gst eine der Stangen ab.", //You saw off one of the poles. +// 215 +"Du betrittst das einzige|offene Gesch\204ft, das|du finden kannst.", //You enter the only|open shop that|you can find. +"Die Kabine ist besetzt.", //The cabin is occupied. +"He, nimm erstmal das Geld|aus dem R\201ckgabeschlitz!", //Hey, take the money|from the return slot! +"Du hast doch schon bezahlt.", //You have already paid. +"Du hast nicht mehr genug Geld.", //You do not have enough money left. +// 220 +"Du wirfst 10 Xa in den Schlitz.", //You put 10 Xa in the slot. +"Dir wird schwarz vor Augen.", //You are about to pass out. +"Du ruhst dich eine Weile aus.", //You rest for a while. +"An der Wand steht:|\"Ich kenne eine tolle Geheimschrift:|A=Z, B=Y, C=X ...|0=0, 1=9, 2=8 ...\"", //On the Wall is:|"I know a great cypher:|A=Z, B=Y, C=X ...|0=0, 1=9, 2=8 ..." +"Ok, ich nehme es.", //OK, I'll take it. +// 225 +"Nein danke, das ist mir zu teuer.", //No thanks, that's too expensive for me. +"Ich w\201rde gern etwas kaufen.", //I would like to buy something. +"Ich bin's, Horst Hummel.", //It's me, Horst Hummel. +"Haben Sie auch einen Musikchip f\201r das Ger\204t?", //Do you have a music chip for the device? +"Eine tolle Maske, nicht wahr?", //It's a great mask, right? +// 230 +"Komisch, da\341 sie schon drei Jahre da steht.", //Strange that it has been there for three years. +"Ein starker Trunk. Zieht ganz sch\224n rein.", //A strong drink. It hits you pretty hard. +"Ein Abspiel- und Aufnahmeger\204t f\201r die neuen Musikchips.", //A playback and recording device for the new music chips. +"Eine ARTUS-Zahnb\201rste. Der letzte Schrei.", //An ARTUS toothbrush. The latest craze. +"Verkaufe ich massenhaft, die Dinger.", //I sell these things in bulk. +// 235 +"Das sind echte Rarit\204ten. B\201cher in gebundener Form.", //These are real rarities. Books in bound form. +"Die Encyclopedia Axacussana.", //The Encyclopedia Axacussana. +"Das gr\224\341te erh\204ltliche Lexikon auf 30 Speicherchips.", //The largest available dictionary on 30 memory chips. +"\232ber 400 Trilliarden Stichw\224rter.", //Over 400 sextillion keywords. +"Die ist nicht zu verkaufen.", //It is not for sale. +// 240 +"So eine habe ich meinem Enkel zum Geburtstag geschenkt.", //I gave one to my grandson for his birthday. +"Er war begeistert von dem Ding.", //He was excited about this thing. +"Der stammt aus einem bekannten Computerspiel.", //It comes from a well-known computer game. +"Robust, handlich und stromsparend.", //Sturdy, handy and energy-saving. +"Irgendein lasches Ges\224ff.", //Some cheap swill. +// 245 +"Das sind Protestaufkleber gegen die hohen Taxigeb\201hren.", //These are stickers protesting the high taxi fees. +"Das ist Geschirr aus der neuen Umbina-Kollektion.", //These are dishes from the new Umbina-Collection. +"H\204\341lich, nicht wahr?", //Ugly, right? +"Aber verkaufen tut sich das Zeug gut.", //But this stuff sells well. +"Das kostet %d Xa.", //That costs %d Xa. +// 250 +"Schauen Sie sich ruhig um!", //Take a look around! +"Unsinn!", //Nonsense! +"Tut mir leid, die sind|schon alle ausverkauft.", //I'm very sorry,|they are already sold out. +"Guten Abend.", //Good evening. +"Hallo.", //Hello. +// 255 +"Huch, Sie haben mich aber erschreckt!", //Yikes, you scared me! +"Wieso?", //How so? +"Ihre Verkleidung ist wirklich t\204uschend echt.", //Your disguise is deceptively real-looking. +"Welche Verkleidung?", //What disguise? +"Na, tun Sie nicht so!", //Stop pretending you don't know! +// 260 +"Sie haben sich verkleidet wie der Au\341erirdische,|dieser Horst Hummel, oder wie er hei\341t.", //You disguised yourself as that extraterrestrial guy,|Horst Hummel, or whatever his name is. +"Ich BIN Horst Hummel!", //I AM Horst Hummel! +"Geben Sie's auf!", //Give it up! +"An Ihrer Gestik merkt man, da\341 Sie|ein verkleideter Axacussaner sind.", //You can tell from your gestures that you are|a disguised Axacussan. +"Der echte Hummel bewegt sich|anders, irgendwie ruckartig.", //The real Hummel moves|differently, kind of jerky. +// 265 +"Weil er ein Roboter ist! ICH bin der Echte!", //Because he is a robot! I am the real one! +"Ach, Sie spinnen ja!", //Oh, you are crazy! +"Sie Trottel!!!", //You Idiot!!! +"Seien Sie still, oder ich werfe Sie raus!", //Shut up or I'll kick you out! +"Taschenmesser", //Pocket knife +// 270 +"Hey, da ist sogar eine S\204ge dran.", //Hey, there's even a saw on it. +"20 Xa", //20 Xa +"Discman", //Discman +"Da ist noch die \"Mad Monkeys\"-CD drin.", //The "Mad Monkeys" CD is still in there. +"Mit dem Ding sollst du dich|an der Wand festhalten.", //You should hold onto the wall|using that thing. +// 275 +"Spezialkeycard", //Special keycard +"Damit sollst du die|T\201ren knacken k\224nnen.", //With that you should be able to crack the doors. +"Alarmknacker", //Alarm cracker +"Ein kleines Ger\204t, um|die Alarmanlage auszuschalten.", //A small device|to turn off the alarm. +"Karte", //Keycard +// 280 +"Raumschiff", //Spaceship +"Damit bist du hierhergekommen.", //You came here with it. +"Fahrzeuge", //Vehicles +"Du kannst von hier aus nicht erkennen,|was das f\201r Fahrzeuge sind.", //You cannot tell from here|what those vehicles are. +"Fahrzeug", //Vehicle +// 285 +"Es scheint ein Taxi zu sein.", //It seems to be a taxi. +"Komisch, er ist verschlossen.", //Funny, it is closed. +"Portemonnaie", //Wallet +"Das mu\341 ein Axacussaner|hier verloren haben.", //This must have been|lost by an Axacussan. +"Ger\204t", //Device +// 290 +"Auf dem Ger\204t steht: \"Taxi-Call\".|Es ist ein kleiner Knopf daran.", //The device says "Taxi Call."|There is a small button on it. +"Ausweis", //ID card +"Auf dem Ausweis steht:| Berta Tschell| Axacuss City| 115AY2,96A,32", //On the card it reads: | Berta Tschell | Axacuss City | 115AY2,96A,32 +"Treppe", //Staircase +"Sie f\201hrt zu den Gesch\204ften.", //It leads to the shops. +// 295 +"Gesch\204ftsstra\341e im Hintergrund", //Business street in the background +"Die Stra\341e scheint kein Ende zu haben.", //The road seems to have no end. +"Stange", //Rod +"Pfosten", //Post +"Gel\204nder", //Railing +// 300 +"Plakat", //Poster +"Musik Pur - Der Musikwettbewerb!|Heute im Kulturpalast|Hauptpreis:|Fernsehauftritt mit Horst Hummel|Sponsored by Artus GmbH", //Pure Music - The Music Competition!|Today at the Palace of Culture|Main Prize:|Television appearance with Horst Hummel|Sponsored by Artus GmbH +"Kabine", //Cabin +"Sie ist frei!", //It is free! +"Sie ist besetzt.", //It is occupied. +// 305 +"F\201\341e", //Feet +"Komisch, die|F\201\341e scheinen|erstarrt zu sein.", //Strange, the|feet seem to be frozen. +"Haube", //Hood +"Sieht aus wie beim Fris\224r.", //Looks like the hairdresser. +"400 Xa", //400 Xa +// 310 +"10 Xa", //10 Xa +"Dar\201ber steht:|\"Geldeinwurf: 10 Xa\".", //It says:|"Coins: 10 Xa". +"Dar\201ber steht:|\"Gewinnausgabe / Geldr\201ckgabe\".", //It says:|"Prize / Money Return". +"Stuhl", //Chair +"Etwas Entspannung k\224nntest du jetzt gebrauchen.", //You could use some relaxation right about now. +// 315 +"Gekritzel", //Scribble +"Gesicht", //Face +"Nicht zu fassen! Die|W\204nde sind genauso beschmutzt|wie auf der Erde.", //Unbelievable! The walls|are just as dirty|as those on Earth. +"B\201cher", //Books +"Lexikon", //Dictionary +// 320 +"Pflanze", //Plant +"Maske", //Mask +"Schlange", //Snake +"Becher", //Cup +"Joystick", //Joystick +// 325 +"Eine normale Zahnb\201rste,|es steht nur \"Artus\" darauf.", //An ordinary toothbrush.|It says "Artus" on it. +"Musikger\204t", //Music device +"Ein Ger\204t zum Abspielen und|Aufnehmen von Musikchips.|Es ist ein Mikrofon daran.", //A device for playing and recording music chips.|There is a microphone on it. +"Flasche", //Bottle +"Auf dem Etikett steht:|\"Enth\204lt 10% Hyperalkohol\".", //The label says: "Contains 10% hyperalcohol". +// 330 +"Kiste", //Box +"Verk\204ufer", //Seller +"Was? Daf\201r wollen Sie die Karte haben?", //What? Do you want the card for that? +"Sie sind wohl nicht ganz \201ber|die aktuellen Preise informiert!", //You are probably not completely|informed about the current prices! +"Ich bin's, Horst Hummel!", //It's me, Horst Hummel! +// 335 +"Sch\224nes Wetter heute!", //Nice weather today! +"K\224nnen Sie mir sagen, von wem ich eine Eintrittskarte f\201r den Musikwettbewerb kriegen kann?", //Can you tell me who can get me a ticket for the music contest? +"Ok, hier haben Sie den Xa.", //OK, here is the Xa. +"Ich biete Ihnen 500 Xa.", //I offer you 500 Xa. +"Ich biete Ihnen 1000 Xa.", //I offer you 1000 Xa. +// 340 +"Ich biete Ihnen 5000 Xa.", //I offer you 5000 Xa. +"Ich biete Ihnen 10000 Xa.", //I offer you 10000 Xa. +"Vielen Dank f\201r Ihren Kauf!", //Thank you for your purchase! +"Was bieten Sie mir|denn nun f\201r die Karte?", //What will you offer me|for the card? +"Hallo, Sie!", //Hello to you! +// 345 +"Was wollen Sie?", //What do you want? +"Wer sind Sie?", //Who are you? +"Horst Hummel!", //Horst Hummel! +"Kenne ich nicht.", //Never heard of him. +"Was, Sie kennen den ber\201hmten Horst Hummel nicht?", //What, you don't know the famous Horst Hummel? +// 350 +"Ich bin doch der, der immer im Fernsehen zu sehen ist.", //I'm the guy who is always on TV. +"Ich kenne Sie wirklich nicht.", //I really do not know you. +"Komisch.", //Funny. +"Aha.", //Aha. +"Ja, kann ich.", //Yes, I can. +// 355 +"Von wem denn?", //From whom? +"Diese Information kostet einen Xa.", //This information costs a Xa. +"Wie Sie meinen.", //As you say. +"Sie k\224nnen die Karte von MIR bekommen!", //You can get the card from ME! +"Aber nur eine Teilnahmekarte,|keine Eintrittskarte.", //But only a participation ticket,|not an entrance ticket. +// 360 +"Was wollen Sie daf\201r haben?", //What do you want for it? +"Machen Sie ein Angebot!", //Make an offer! +"Das ist ein gutes Angebot!", //That's a good offer! +"Daf\201r gebe ich Ihnen meine|letzte Teilnahmekarte!", //For that I give you my|last participation card! +"(Dieser Trottel!)", //(That Idiot!) +// 365 +"Ich w\201rde gern beim Musikwettbewerb zuschauen.", //I would like to watch the music competition. +"Ich w\201rde gern am Musikwettbewerb teilnehmen.", //I would like to participate in the music competition. +"Wieviel Uhr haben wir?", //What time is it? +"Ja.", //Yes. +"Nein.", //No. +// 370 +"Hallo, Leute!", //Hi guys! +"Hi, Fans!", //Hi, fans! +"Gute Nacht!", //Good night! +"\216h, wie geht es euch?", //Uh, how are you? +"Sch\224nes Wetter heute.", //Nice weather today. +// 375 +"Hmm ...", //Hmm ... +"Tja ...", //Well ... +"Also ...", //So ... +"Ok, los gehts!", //OK let's go! +"Ich klimper mal was auf dem Keyboard hier.", //I'll fix something on the keyboard here. +// 380 +"Halt, sie sind doch schon drangewesen!", //Stop, you have already been on it! +"He, Sie! Haben Sie|eine Eintrittskarte?", //Hey, you! Do you have|a ticket? +"Ja nat\201rlich, hier ist meine Teilnahmekarte.", //Yes of course, here is my participation ticket. +"Sie sind Teilnehmer! Fragen|Sie bitte an der Kasse nach,|wann Sie auftreten k\224nnen.", //You are a participant!|Please ask at the checkout|when you can go on stage. +"\216h, nein.", //Uh, no. +// 385 +"He, wo ist Ihr Musikchip?", //Hey, where's your music chip? +"Laber nicht!", //Stop talking! +"Fang an!", //Get started! +"Einen Moment, ich mu\341 erstmal \201berlegen, was ich|euch spiele.", //One moment, I have to think about what I'm playing for you. +"Anfangen!!!", //Begin!!! +// 390 +"Nun denn ...", //Well then ... +"Raus!", //Out! +"Buh!", //Boo! +"Aufh\224ren!", //Stop! +"Hilfe!", //Help! +// 395 +"Ich verziehe mich lieber.", //I'd prefer to get lost. +"Mist, auf dem Chip war|gar keine Musik drauf.", //Damn, there was no music on the chip at all. +"Das ging ja voll daneben!", //That went completely wrong! +"Du n\204herst dich der B\201hne,|aber dir wird mulmig zumute.", //You approach the stage,|but you feel queasy. +"Du traust dich nicht, vor|so vielen Menschen aufzutreten|und kehrst wieder um.", //You do not dare to appear|in front of so many people|and turn around. +// 400 +"Oh, Sie sind Teilnehmer!|Dann sind Sie aber sp\204t dran.", //Oh, you are a participant!|But you are late. +"Spielen Sie die Musik live?", //Do you play the music live? +"Dann geben Sie bitte Ihren Musikchip ab!|Er wird bei Ihrem Auftritt abgespielt.", //Then please submit your music chip!|It will be played during your performance. +"Oh, Sie sind sofort an der Reihe!|Beeilen Sie sich! Der B\201hneneingang|ist hinter dem Haupteingang rechts.", //Oh, it's your turn!|Hurry! The stage entrance|is to the right behind the main entrance. +"Habe ich noch einen zweiten Versuch?", //Can I have another try? +// 405 +"Nein!", //No! +"Haben Sie schon eine Eintrittskarte?", //Do you already have a ticket? +"Tut mir leid, die Karten|sind schon alle ausverkauft.", //I'm sorry, the tickets|are already sold out. +"Mist!", //Crap! +"Haben Sie schon eine Teilnahmekarte?", //Do you already have a participation ticket? +// 410 +"Ja, hier ist sie.", //Yes, here it is. +"Tut mir leid, die Teilnahmekarten|sind schon alle ausverkauft.", //I'm sorry, the participation tickets|are already sold out. +"Schei\341e!", //Crap! +"Das kann ich Ihnen|leider nicht sagen.", //I can not tell you that. +"Wo ist denn nun Ihr Musikchip?", //Where is your music chip? +// 415 +"Jetzt beeilen Sie sich doch!", //Now hurry up! +"Huch, Sie sind hier bei einem Musik-,|nicht bei einem Imitationswettbewerb", //Huh, you're here at a music contest,|not at an imitation contest +"Imitationswettbewerb?|Ich will niemanden imitieren.", //Imitation contest?|I do not want to imitate anyone. +"Guter Witz, wieso sehen Sie|dann aus wie Horst Hummel?", //Good joke. Then why do you look like Horst Hummel? +"Na, nun h\224ren Sie auf! So perfekt ist|ihre Verkleidung auch wieder nicht.", //Oh come on! Your disguise isn't that perfect. +// 420 +"Ich werde Ihnen beweisen, da\341 ich Horst Hummel bin,|indem ich diesen Wettbewerb hier gewinne.", //I will prove to you that I am Horst Hummel|by winning this competition. +"Dann kann ich in dieser verdammten Fernsehshow|auftreten.", //Then I can perform in this|damn TV show. +"Du hampelst ein bi\341chen zu|der Musik vom Chip herum.|Die Leute sind begeistert!", //You're rocking a little bit|to the music from the chip.|The audience is excited! +"Guten Abend. Diesmal haben wir|einen besonderen Gast bei uns.", //Good evening. This time we have|a special guest with us. +"Es ist der Gewinner des gestrigen|Musikwettbewerbs im Kulturpalast,|der dort vor allem durch seine|Verkleidung aufgefallen war.", //He is the winner of yesterday's music competition in the Palace of Culture.|He was particularly noteworthy|because of his disguise. +// 425 +"Sie haben das Wort!", //You have the floor! +"Nun ja, meine erste Frage lautet: ...", //Well, my first question is ... +"Warum haben Sie sich sofort nach|Ihrer Landung entschlossen, f\201r|die Artus-GmbH zu arbeiten?", //Why did you decide immediately|after your arrival to work for|Artus GmbH? +"Es war meine freie Entscheidung.|Die Artus-GmbH hat mir einfach gefallen.", //It was a decision I made on my own.|I just decided I liked Artus-GmbH. +"Wieso betonen Sie, da\341 es|Ihre freie Entscheidung war?|Haben Sie Angst, da\341 man Ihnen|nicht glaubt?", //Why do you stress that|it was your own decision?|Are you afraid that nobody will believe you otherwise? +// 430 +"Also, ich mu\341 doch sehr bitten!|Was soll diese unsinnige Frage?", //How dare you!|What is with this nonsensical question? +"Ich finde die Frage wichtig.|Nun, Herr Hummel, was haben|Sie dazu zu sagen?", //I think the question is important.|Well, Mr. Hummel, what do you have to say? +"Auf solch eine Frage brauche|ich nicht zu antworten!", //I don't feel that I have|to answer such a question! +"Gut, dann etwas anderes ...", //Alright, something else then ... +"Sie sind von Beruf Koch.|Wie hie\341 das Restaurant,|in dem Sie auf der Erde|gearbeitet haben?", //You are a chef by profession.|What was the name of the restaurant|where you worked|on Earth? +// 435 +"Hmm, da\341 wei\341 ich nicht mehr.", //Hmm, I do not remember that. +"Sie wollen mir doch nicht weismachen,|da\341 Sie den Namen vergessen haben!", //Do you really expect me to believe you cannot remember the name? +"Schlie\341lich haben Sie|zehn Jahre dort gearbeitet!", //After all, you worked there for ten years! +"Woher wollen Sie das wissen?", //How do you know that? +"Nun, ich komme von der Erde,|im Gegensatz zu Ihnen!", //Well, I come from Earth,|unlike you! +// 440 +"Langsam gehen Sie zu weit!", //Now you've gone too far! +"Sie sind ein Roboter!|Das merkt man schon an|Ihrer dummen Antwort!|Sie sind nicht optimal|programmiert!", //You are a robot!|It is obvious from|your stupid answer!|You are not even programmed|correctly! +"Wenn Sie jetzt nicht mit Ihren|Beleidigungen aufh\224ren, mu\341 ich|Ihnen das Mikrofon abschalten!", //If you do not stop right now|with your insults, I will have|to turn off the microphone! +"Ich bin der echte Horst Hummel,|und hier ist der Beweis!", //I am the real Horst Hummel,|and here is the proof! +"Am n\204chsten Morgen sind alle|Zeitungen voll mit deiner spektakul\204ren|Enth\201llung des Schwindels.", //The next morning, all the papers|are full of your spectacular|revelation of fraud. +// 445 +"Die Manager der Artus-GmbH und Commander|Sumoti wurden sofort verhaftet.", //The managers of Artus-GmbH and Commander|Sumoti were arrested immediately. +"Nach dem Stre\341 der letzten Tage,|entscheidest du dich, auf die|Erde zur\201ckzukehren.", //After these stressful last few days|you decide to return to Earth. +"W\204hrend du dich vor Interviews|kaum noch retten kannst, ...", //While you can barely save|yourself from interviews, ... +"... arbeiten die Axacussanischen|Techniker an einem Raumschiff,|das dich zur Erde zur\201ckbringen soll.", //... the Axacussan|technicians are working on a spaceship|to bring you back to Earth. +"Eine Woche sp\204ter ist der|Tag des Starts gekommen.", //One week later, the day of the launch has arrived. +// 450 +"Zum dritten Mal in deinem|Leben verbringst du eine lange|Zeit im Tiefschlaf.", //For the third time in your life,|you spend a long time|in deep sleep. +"Zehn Jahre sp\204ter ...", //Ten years later ... +"Du wachst auf und beginnst,|dich schwach an deine|Erlebnisse zu erinnern.", //You wake up and begin|to faintly remember|your experiences. +"Um dich herum ist alles dunkel.", //Everything is dark around you. +"Sie zeigt %d an.", //It displays %d. +// 455 +"Ich interessiere mich f\201r den Job, bei dem man \201ber Nacht", //I'm interested in the job where you can get +"reich werden kann.", //rich overnight. +"Ich verkaufe frische Tomaten.", //I sell fresh tomatoes. +"Ich bin der Klempner. Ich soll hier ein Rohr reparieren.", //I am the plumber. I'm supposed to fix a pipe here. +"Ja, h\224rt sich gut an.", //Yes, it sounds good. +// 460 +"Krumme Gesch\204fte? F\201r wen halten Sie mich? Auf Wiedersehen!", //Crooked business? Who do you think I am? Goodbye! +"\216h - k\224nnten Sie mir das Ganze nochmal erkl\204ren?", //Uh - could you explain that to me again? +"Wie gro\341 ist mein Anteil?", //How big is my share? +"Machen Sie es immer so, da\341 Sie Ihre Komplizen \201ber ein Graffitti anwerben?", //Do you always use graffiti to recruit your accomplices? +"Hmm, Moment mal, ich frage den Boss.", //Hmm wait, I will ask the boss. +// 465 +"Kurze Zeit sp\204ter ...", //A short while later ... +"Ok, der Boss will dich sprechen.", //OK, the boss wants to talk to you. +"Du betrittst die Wohnung und|wirst zu einem Tisch gef\201hrt.", //You enter the apartment and are led to a table. +"Hmm, du willst dir also|etwas Geld verdienen?", //Hmm, so you want to earn some money? +"Nun ja, wir planen|einen n\204chtlichen Besuch|eines bekannten Museums.", //Well, we're planning|a nightly visit|to a well-known museum. +// 470 +"Wie sieht's aus, bist du interessiert?", //So, are you interested? +"Halt, warte!", //Stop, wait! +"\232berleg's dir, es springen|30000 Xa f\201r dich raus!", //Think about it, your share would be|30000 Xa! +"30000?! Ok, ich mache mit.", //30000?! Alright, count me in. +"Gut, dann zu den Einzelheiten.", //Good, now then to the details. +// 475 +"Bei dem Museum handelt es|sich um das Orzeng-Museum.", //The museum in question is|the Orzeng Museum. +"Es enth\204lt die wertvollsten|Dinosaurierfunde von ganz Axacuss.", //It contains the most valuable|dinosaur discoveries of Axacuss. +"Wir haben es auf das Sodo-Skelett|abgesehen. Es ist weltber\201hmt.", //We're aiming to get the Sodo skeleton.|It is world-famous. +"Alle bekannten Pal\204ontologen haben|sich schon damit besch\204ftigt.", //All known paleontologists|have already dealt with it. +"Der Grund daf\201r ist, da\341 es allen|bis jetzt bekannten Erkenntnissen|\232ber die Evolution widerspricht.", //The reason for this is that it contradicts all known|knowledge about evolution. +// 480 +"Irgendein verr\201ckter Forscher|bietet uns 200.000 Xa,|wenn wir ihm das Ding beschaffen.", //Some crazy researcher|will give us 200,000 Xa|if we retrieve that thing for him. +"So, jetzt zu deiner Aufgabe:", //So, now to your task: +"Du dringst durch den Nebeneingang|in das Geb\204ude ein.", //You enter the building through|the side entrance. +"Dort schaltest du die Alarmanlage aus,|durch die das Sodo-Skelett gesichert wird.", //There you switch off the alarm system,|which secures the Sodo skeleton. +"Wir betreten einen anderen Geb\204udeteil|und holen uns das Gerippe.", //We'll enter another part of the building|and fetch the skeleton. +// 485 +"Deine Aufgabe ist nicht leicht.|Schau dir diesen Plan an.", //Your task is not easy.|Look at this plan. +"Unten siehst du die kleine Abstellkammer,|durch die du in die Austellungsr\204ume kommst.", //Below you can see the small storage room,|through which you come to the showrooms. +"Bei der mit Y gekennzeichneten|Stelle ist die Alarmanlage.", //The alarm system is at the location marked Y. +"Bei dem X steht ein gro\341er Dinosaurier|mit einem wertvollen Sch\204del.|Den Sch\204del nimmst du mit.", //The X marks the spot with a big dinosaur|with a valuable skull.|You will take the skull with you. +"Nun zu den Problemen:", //Now for the problems: +// 490 +"Die wei\341 gekennzeichneten|T\201ren sind verschlossen.", //The marked white doors|are locked. +"Sie m\201ssen mit einer Spezialkeycard ge\224ffnet|werden, was jedoch einige Zeit dauert.", //They have to be opened with a special keycard,|which can take a while. +"Au\341erdem gibt es in den auf der Karte|farbigen R\204umen einen Druck-Alarm.", //In addition, there are pressure alarms|in the rooms which are colored on the map. +"Du darfst dich dort nicht l\204nger|als 16 bzw. 8 Sekunden aufhalten,|sonst wird Alarm ausgel\224st.", //You can not stay there longer than|16 or 8 seconds,|or the alarm will go off. +"Im Raum oben rechts ist|eine Kamera installiert.", //In the room at the top right|there is a camera installed. +// 495 +"Diese wird jedoch nur von|der 21. bis zur 40. Sekunde|einer Minute \201berwacht.", //However, it is only monitored|between the 21st and the 40th second|of every minute. +"Das gr\224\341te Problem ist der W\204chter.", //The biggest problem is the guard. +"Er braucht f\201r seine Runde genau|eine Minute, ist also ungef\204hr|zehn Sekunden in einem Raum.", //He needs exactly one minute for his round,|so he is in each room|for about ten seconds. +"Du m\201\341test seine Schritte h\224ren k\224nnen,|wenn du in der Abstellkammer bist|und der W\204chter dort vorbeikommt.", //You should be able to hear his footsteps|if you are in the closet|and the guard passes by. +"Wenn du es bis zur Alarmanlage|geschafft hast, h\204ngst du dich|mit dem Sauger an die Wand,|damit du keinen Druck-Alarm ausl\224st.", //If you make it to the alarm system,|you'll use the sucker to hang on the wall|to avoid triggering the pressure alarm. +// 500 +"Die Alarmanlage schaltest du|mit einem speziellen Ger\204t aus.", //You switch off the alarm system|with a special device. +"Wenn du das geschafft hast, nichts|wie raus! Aber keine Panik,|du darfst keinen Alarm ausl\224sen.", //Once you're done, get out of there!|But do not panic!|You must not set off the alarm. +"So, noch irgendwelche Fragen?", //So, any more questions? +"Also gut.", //All right then. +"Du bekommst 30000 Xa.", //You get 30,000 Xa. +// 505 +"Ja, die Methode hat sich bew\204hrt.", //Yes, that method has proven itself worthy. +"Hast du sonst noch Fragen?", //Do you have any questions? +"Nachdem wir alles gekl\204rt|haben, kann es ja losgehen!", //Now that we are on the same page we can get started! +"Zur vereinbarten Zeit ...", //At the agreed upon time ... +"Du stehst vor dem Orzeng Museum,|w\204hrend die Gangster schon in einen|anderen Geb\204uderteil eingedrungen sind.", //You stand in front of the Orzeng Museum,|while the gangsters have already penetrated|into another part of the building. +// 510 +"Wichtiger Hinweis:|Hier ist die letzte M\224glichkeit,|vor dem Einbruch abzuspeichern.", //Important note:|Here is the last possibility to save|before the break-in. +"Wenn Sie das Museum betreten haben,|k\224nnen Sie nicht mehr speichern!", //Once you enter the museum|you will not be able to save! +"Stecken Sie sich Ihre|Tomaten an den Hut!", //You can keep your tomatoes! +"Das kann ja jeder sagen!", //Anyone can say that! +"Niemand \224ffnet.", //Nobody answers. +// 515 +"Welche Zahl willst du eingeben: ", //What number do you want to enter: +"Falsche Eingabe", //Invalid input +"Der Aufzug bewegt sich.", //The elevator is moving. +"Die Karte wird|nicht angenommen.", //The card|is not accepted. +"Da ist nichts mehr.", //There is nothing left. +// 520 +"Da ist ein Schl\201ssel unter dem Bett!", //There's a key under the bed! +"Hey, da ist etwas unter dem|Bett. Nach dem Ger\204usch zu|urteilen, ist es aus Metall.", //Hey, there is something under the|bed. Judging by the noise,|it is made of metal. +"Mist, es gelingt dir nicht,|den Gegenstand hervorzuholen.", //Damn, you do not succeed in getting the object out. +"Die Klappe ist schon offen.", //The flap is already open. +"Der Schl\201sssel pa\341t nicht.", //The key does not fit. +// 525 +"Du steckst den Chip in die|Anlage, aber es passiert nichts.|Die Anlage scheint kaputt zu sein.", //You put the chip in the stereo,|but nothing happens.|The stereo seems to be broken. +"Es passiert nichts. Das Ding|scheint kaputt zu sein.", //Nothing happens. The thing|seems to be broken. +"Hochspannung ist ungesund, wie du aus|Teil 1 eigentlich wissen m\201\341test!", //High voltage is unhealthy, as you|should already know|from Part 1! +"Es h\204ngt ein Kabel heraus.", //A cable hangs out. +"Irgendetwas hat hier|nicht ganz funktioniert.", //Something did not|quite work out here. +// 530 +"Du ziehst den Raumanzug an.", //You put on your space suit. +"Du ziehst den Raumanzug aus.", //You take off your space suit. +"Das ist schon verbunden.", //That is already connected. +"Die Leitung ist hier|schon ganz richtig.", //The cable is already|at the right place. +"Roger W.! Wie kommen Sie denn hierher?", //Roger W.! How did you get here? +// 535 +"Ach, sieh mal einer an! Sie schon wieder!", //Oh, look at that! It's you again! +"Wo haben Sie denn|Ihr Schiff gelassen?", //Where did you|leave your ship? +"Schauen Sie mal hinter mich auf|den Turm! Da oben h\204ngt es.", //Take a look behind me, up on|the tower! It's up there. +"Ich hatte es scheinbar etwas zu|eilig, aber ich mu\341te unbedingt|zu den Dreharbeiten nach Xenon!", //Apparently I was too much in a hurry,|but I had to be at the film shooting in Xenon! +"Mich wundert, da\341 es die Leute|hier so gelassen nehmen.", //I am surprised that people|here take things so calmly. +// 540 +"Die tun gerade so, als ob der Turm|schon immer so schr\204g gestanden h\204tte!", //They are pretending that the tower|has always been that slanted! +"Hat er auch, schon seit|mehreren Jahrhunderten!", //It has, for|several centuries, actually! +"\216h ... ach so. Und von wo|kommen Sie? Sie hatten's ja|wohl auch ziemlich eilig.", //Uh ... I see. And where are you coming from? It seems you were in quite a hurry as well. +"Ich komme von Axacuss.", //I come from Axacuss. +"Hmm, was mach ich jetzt blo\341?", //Hmm, what am I going to do now? +// 545 +"Ich kenne ein gutes Cafe nicht|weit von hier, da k\224nnen|wir uns erstmal erholen.", //I know a good cafe not far from here,|where we can get some rest. +"Ok, einverstanden.", //OK, I agree. +"Faszinierend!", //Fascinating! +"Taxis", //Taxis +"Hier ist ja richtig was los!", //There seems to be something really going on here! +// 550 +"Axacussaner", //Axacussan +"Teilnahmekarte", //Participation card +"Axacussanerin", //Axacussian +"Darauf steht:|\"115AY2,96A\"", //It reads:|"115AY2,96A" +"Darauf steht:|\"115AY2,96B\"", //It reads:|"115AY2,96B" +// 555 +"Darauf steht:|\"341,105A\"", //It reads:|"341,105A" +"Darauf steht:|\"341,105B\"", //It reads:|"341,105B" +"Klingel", //Bell +"Anzeige", //Display +"Tastenblock", //Keypad +// 560 +"Es sind Tasten von 0 bis 9 darauf.", //There are keys from 0 to 9 on it. +"Chip", //Chip +"Es ist ein Musikchip!", //It's a music chip! +"Klappe", //Hatch +"Sie ist mit einem altmodischen|Schlo\341 verschlossen.", //It is secured with an old-fashioned lock. +// 565 +"Musikanlage", //Music system +"Toll, eine in die Wand|integrierte Stereoanlage.", //Great, a built-in stereo|in the wall. +"Boxen", //Speakers +"Ganz normale Boxen.", //Ordinary speakers. +"Stifte", //Pencils +// 570 +"Ganz normale Stifte.", //Ordinary pencils. +"Metallkl\224tzchen", //Metal blocks +"Es ist magnetisch.", //It is magnetic. +"Bild", //Image +"Ein ungew\224hnliches Bild.", //An unusual picture. +// 575 +"Schrank", //Cabinet +"Er ist verschlossen", //It is closed +"Aufzug", //Elevator +"unter Bett", //under bed +"Unter dem Bett sind bestimmt wichtige|Dinge zu finden, nur kommst du nicht darunter.|Du br\204uchtest einen Stock oder so etwas.", //Under the bed are certainly important|things to find, only you cannot reach underneath.|You need a stick or something. +// 580 +"Schl\201ssel", //Key +"Ein kleiner Metallschl\201ssel.", //A small metal key. +"Schalter", //Switch +"Griff", //Handle +"Luke", //Hatch +// 585 +"Raumanzug", //Space suit +"Ein zusammenfaltbarer Raumanzug.", //A collapsible spacesuit. +"Leitung", //Cable +"Irgendetwas scheint hier|kaputtgegangen zu sein.", //Something seems to|have broken here. +"Sie h\204ngt lose von der Decke runter.", //It hangs loose from the ceiling. +// 590 +"Zur Erinnerung:|Dir ist es gelungen, aus den|Artus-Geheimb\201ros zu fliehen.", //Reminder:|You managed to escape from the|Artus-GmbH secret offices. +"Nun befindest du dich in|einem Passagierraumschiff,|das nach Axacuss City fliegt.", //Now you are in a passenger|spaceship that|flies to Axacuss City. +"W\204hrend des Fluges schaust du dir|das axacussanische Fernsehprogramm an.|Du st\224\341t auf etwas Interessantes ...", //During the flight, you watch the|Axacussan TV program.|You come across something interesting ... +"Herzlich willkommen!", //Welcome! +"Heute zu Gast ist Alga Lorch.|Sie wird Fragen an den Erdling|Horst Hummel stellen.", //Alga Lorch will be present today.|She will ask questions to the Earthling|Horst Hummel. +// 595 +"Horst wird alle Fragen|beantworten, soweit es|ihm m\224glich ist.", //Horst will answer all|questions as fully|as possible. +"Sie haben das Wort, Frau Lorch!", //You have the floor, Mrs Lorch! +"Herr Hummel, hier ist meine erste Frage: ...", //Mr. Hummel, here is my first question: ... +"Sie sind nun ein ber\201hmter Mann auf Axacuss.|Aber sicher vermissen Sie auch Ihren Heimatplaneten.", //You are now a famous man on Axacuss.|But surely you miss your home planet. +"Wenn Sie w\204hlen k\224nnten, w\201rden Sie lieber|ein normales Leben auf der Erde f\201hren,|oder finden Sie das Leben hier gut?", //If you could choose, would you prefer|to lead a normal life on Earth,|or do you find life here good? +// 600 +"Ehrlich gesagt finde ich es sch\224n,|ber\201hmt zu sein. Das Leben ist|aufregender als auf der Erde.", //Honestly, I think it's nice to be|famous. Life is more exciting here|than on Earth. +"Au\341erdem sind die Leute von der|Artus GmbH hervorragende Freunde.", //In addition, the people of|Artus GmbH are excellent friends. +"Nun ja, planen Sie denn trotzdem,|irgendwann auf die Erde zur\201ckzukehren?", //Well, are you still planning|to return to Earth someday? +"Das kann ich Ihnen zum jetzigen|Zeitpunkt noch nicht genau sagen.", //At this point in time,|I haven't made up my mind, yet. +"Aber ich versichere Ihnen, ich|werde noch eine Weile hierbleiben.", //But I assure you,|I will stay here for a while. +// 605 +"Aha, mich interessiert au\341erdem,|ob es hier auf Axacuss etwas gibt,|das Sie besonders m\224gen.", //I see. I'm also interested in|whether there's anything here on Axacuss that you particularly like. +"Oh mir gef\204llt der ganze Planet,|aber das Beste hier sind die|hervorragenden Artus-Zahnb\201rsten!", //Oh I like the whole planet,|but the best thing here are the|extraordinary Artus toothbrushes! +"Zahnb\201rsten von solcher Qualit\204t|gab es auf der Erde nicht.", //Toothbrushes of such quality|do not exist on Earth. +"\216h, ach so.", //Um, I see. +"Pl\224tzlich lenkt dich eine|Lautsprecherstimme vom Fernseher ab.", //Suddenly, a speaker's voice|distracts you from the television. +// 610 +"\"Sehr geehrte Damen und Herren,|wir sind soeben auf dem Flughafen|von Axacuss City gelandet.\"", //"Ladies and Gentlemen,|We just landed at the airport|at Axacuss City." +"\"Ich hoffe, Sie hatten einen angenehmen Flug.|Bitte verlassen Sie das Raumschiff! Auf Wiedersehen!\"", //"I hope you had a nice flight.|Please leave the spaceship! Goodbye!" +"W\204hrend die anderen Passagiere|aussteigen, versuchst du,|den Schock zu verarbeiten.", //While the other passengers|are disembarking, you are trying|to handle the shock. +"\"Ich mu\341 beweisen, da\341 dieser|Roboter der falsche Horst|Hummel ist!\", denkst du.", //"I have to prove that this robot|is the wrong Horst|Hummel!", you think to yourself. +NULL +}; + +#endif // GAMETEXT_H diff --git a/devtools/create_supernova2/module.mk b/devtools/create_supernova2/module.mk new file mode 100644 index 0000000000..f157fdee57 --- /dev/null +++ b/devtools/create_supernova2/module.mk @@ -0,0 +1,12 @@ +MODULE := devtools/create_supernova2 + +MODULE_OBJS := \ + file.o \ + po_parser.o \ + create_supernova2.o + +# Set the name of the executable +TOOL_EXECUTABLE := create_supernova2 + +# Include common rules +include $(srcdir)/rules.mk diff --git a/devtools/create_supernova2/po_parser.cpp b/devtools/create_supernova2/po_parser.cpp new file mode 100644 index 0000000000..05a8ac14a7 --- /dev/null +++ b/devtools/create_supernova2/po_parser.cpp @@ -0,0 +1,221 @@ +#include +#include +#include +#include + +#include "po_parser.h" + +PoMessageList::PoMessageList() : _list(NULL), _size(0), _allocated(0) { +} + +PoMessageList::~PoMessageList() { + for (int i = 0; i < _size; ++i) + delete _list[i]; + delete[] _list; +} + +int PoMessageList::compareString(const char* left, const char* right) { + if (left == NULL && right == NULL) + return 0; + if (left == NULL) + return -1; + if (right == NULL) + return 1; + return strcmp(left, right); +} + +int PoMessageList::compareMessage(const char *msgLeft, const char *contextLeft, const char *msgRight, const char *contextRight) { + int compare = compareString(msgLeft, msgRight); + if (compare != 0) + return compare; + return compareString(contextLeft, contextRight); +} + +void PoMessageList::insert(const char *translation, const char *msg, const char *context) { + if (msg == NULL || *msg == '\0' || translation == NULL || *translation == '\0') + return; + + // binary-search for the insertion index + int leftIndex = 0; + int rightIndex = _size - 1; + while (rightIndex >= leftIndex) { + int midIndex = (leftIndex + rightIndex) / 2; + int compareResult = compareMessage(msg, context, _list[midIndex]->msgid, _list[midIndex]->msgctxt); + if (compareResult == 0) + return; // The message is already in this list + else if (compareResult < 0) + rightIndex = midIndex - 1; + else + leftIndex = midIndex + 1; + } + // We now have rightIndex = leftIndex - 1 and we need to insert the new message + // between the two (i.a. at leftIndex). + if (_size + 1 > _allocated) { + _allocated += 100; + PoMessage **newList = new PoMessage*[_allocated]; + for (int i = 0; i < leftIndex; ++i) + newList[i] = _list[i]; + for (int i = leftIndex; i < _size; ++i) + newList[i + 1] = _list[i]; + delete[] _list; + _list = newList; + } else { + for (int i = _size - 1; i >= leftIndex; --i) + _list[i + 1] = _list[i]; + } + _list[leftIndex] = new PoMessage(translation, msg, context); + ++_size; +} + +const char *PoMessageList::findTranslation(const char *msg, const char *context) { + if (msg == NULL || *msg == '\0') + return NULL; + + // binary-search for the message + int leftIndex = 0; + int rightIndex = _size - 1; + while (rightIndex >= leftIndex) { + int midIndex = (leftIndex + rightIndex) / 2; + int compareResult = compareMessage(msg, context, _list[midIndex]->msgid, _list[midIndex]->msgctxt); + if (compareResult == 0) + return _list[midIndex]->msgstr; + else if (compareResult < 0) + rightIndex = midIndex - 1; + else + leftIndex = midIndex + 1; + } + return NULL; +} + +PoMessageList *parsePoFile(const char *file) { + FILE *inFile = fopen(file, "r"); + if (!inFile) + return NULL; + + char msgidBuf[1024], msgctxtBuf[1024], msgstrBuf[1024]; + char line[1024], *currentBuf = msgstrBuf; + + PoMessageList *list = new PoMessageList(); + + // Initialize the message attributes. + bool fuzzy = false; + bool fuzzy_next = false; + + // Parse the file line by line. + // The msgstr is always the last line of an entry (i.e. msgid and msgctxt always + // precede the corresponding msgstr). + msgidBuf[0] = msgstrBuf[0] = msgctxtBuf[0] = '\0'; + while (!feof(inFile) && fgets(line, 1024, inFile)) { + if (line[0] == '#' && line[1] == ',') { + // Handle message attributes. + if (strstr(line, "fuzzy")) { + fuzzy_next = true; + continue; + } + } + // Skip empty and comment line + if (*line == '\n' || *line == '#') + continue; + if (strncmp(line, "msgid", 5) == 0) { + if (currentBuf == msgstrBuf) { + // add previous entry + if (*msgstrBuf != '\0' && !fuzzy) + list->insert(msgstrBuf, msgidBuf, msgctxtBuf); + msgidBuf[0] = msgstrBuf[0] = msgctxtBuf[0] = '\0'; + + // Reset the attribute flags. + fuzzy = fuzzy_next; + fuzzy_next = false; + } + strcpy(msgidBuf, stripLine(line)); + currentBuf = msgidBuf; + } else if (strncmp(line, "msgctxt", 7) == 0) { + if (currentBuf == msgstrBuf) { + // add previous entry + if (*msgstrBuf != '\0' && !fuzzy) + list->insert(msgstrBuf, msgidBuf, msgctxtBuf); + msgidBuf[0] = msgstrBuf[0] = msgctxtBuf[0] = '\0'; + + // Reset the attribute flags + fuzzy = fuzzy_next; + fuzzy_next = false; + } + strcpy(msgctxtBuf, stripLine(line)); + currentBuf = msgctxtBuf; + } else if (strncmp(line, "msgstr", 6) == 0) { + strcpy(msgstrBuf, stripLine(line)); + currentBuf = msgstrBuf; + } else { + // concatenate the string at the end of the current buffer + if (currentBuf) + strcat(currentBuf, stripLine(line)); + } + } + if (currentBuf == msgstrBuf) { + // add last entry + if (*msgstrBuf != '\0' && !fuzzy) + list->insert(msgstrBuf, msgidBuf, msgctxtBuf); + } + + fclose(inFile); + return list; +} + +char *stripLine(char *const line) { + // This function modifies line in place and return it. + // Keep only the text between the first two unprotected quotes. + // It also look for literal special characters (e.g. preceded by '\n', '\\', '\"', '\'', '\t') + // and replace them by the special character so that strcmp() can match them at run time. + // Look for the first quote + char const *src = line; + while (*src != '\0' && *src++ != '"') {} + // shift characters until we reach the end of the string or an unprotected quote + char *dst = line; + while (*src != '\0' && *src != '"') { + char c = *src++; + if (c == '\\') { + switch (c = *src++) { + case 'n': c = '\n'; break; + case 't': c = '\t'; break; + case '\"': c = '\"'; break; + case '\'': c = '\''; break; + case '\\': c = '\\'; break; + default: + // Just skip + fprintf(stderr, "Unsupported special character \"\\%c\" in string. Please contact ScummVM developers.\n", c); + continue; + } + } + *dst++ = c; + } + *dst = '\0'; + return line; +} + +char *parseLine(const char *line, const char *field) { + // This function allocate and return a new char*. + // It will return a NULL pointer if the field is not found. + // It is used to parse the header of the po files to find the language name + // and the charset. + const char *str = strstr(line, field); + if (str == NULL) + return NULL; + str += strlen(field); + // Skip spaces + while (*str != '\0' && isspace(*str)) { + ++str; + } + // Find string length (stop at the first '\n') + int len = 0; + while (str[len] != '\0' && str[len] != '\n') { + ++len; + } + if (len == 0) + return NULL; + // Create result string + char *result = new char[len + 1]; + strncpy(result, str, len); + result[len] = '\0'; + return result; +} + diff --git a/devtools/create_supernova2/po_parser.h b/devtools/create_supernova2/po_parser.h new file mode 100644 index 0000000000..7c358e32f6 --- /dev/null +++ b/devtools/create_supernova2/po_parser.h @@ -0,0 +1,78 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * This is a utility for generating a data file for the supernova engine. + * It contains strings extracted from the original executable as well + * as translations and is required for the engine to work properly. + */ + +#ifndef PO_PARSER_H +#define PO_PARSER_H + +struct PoMessage { + char *msgstr; + char *msgid; + char *msgctxt; + + PoMessage(const char *translation, const char *message, const char *context = NULL) : + msgstr(NULL), msgid(NULL), msgctxt(NULL) + { + if (translation != NULL && *translation != '\0') { + msgstr = new char[1 + strlen(translation)]; + strcpy(msgstr, translation); + } + if (message != NULL && *message != '\0') { + msgid = new char[1 + strlen(message)]; + strcpy(msgid, message); + } + if (context != NULL && *context != '\0') { + msgctxt = new char[1 + strlen(context)]; + strcpy(msgctxt, context); + } + } + ~PoMessage() { + delete[] msgstr; + delete[] msgid; + delete[] msgctxt; + } +}; + +class PoMessageList { +public: + PoMessageList(); + ~PoMessageList(); + + void insert(const char *translation, const char *msg, const char *context = NULL); + const char *findTranslation(const char *msg, const char *context = NULL); + +private: + int compareString(const char *left, const char *right); + int compareMessage(const char *msgLeft, const char *contextLeft, const char *msgRight, const char *contextRight); + + PoMessage **_list; + int _size; + int _allocated; +}; + +PoMessageList *parsePoFile(const char *file); +char *stripLine(char *); +char *parseLine(const char *line, const char *field); + +#endif /* PO_PARSER_H */ diff --git a/devtools/create_supernova2/strings-en.po b/devtools/create_supernova2/strings-en.po new file mode 100644 index 0000000000..624f975d43 --- /dev/null +++ b/devtools/create_supernova2/strings-en.po @@ -0,0 +1,2780 @@ +# Mission Supernova Translation. +# Copyright (C) YEAR ScummVM Team +# This file is distributed under the same license as the ScummVM package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: Mission Supernova Part 2 1.0\n" +"Report-Msgid-Bugs-To: scummvm-devel@lists.scummvm.org\n" +"POT-Creation-Date: 2017-07-22 19:37+0100\n" +"PO-Revision-Date: 2018-04-15 05:41+0000\n" +"Last-Translator: Adrian Frhwirth \n" +"Language-Team: none\n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 2.9\n" + +#: ../../ms2/ms2.c:1641 +msgid "Gehe" +msgstr "Go" + +#: ../../ms2/ms2.c:1641 +msgid "Schau" +msgstr "Look" + +#: ../../ms2/ms2.c:1641 +msgid "Nimm" +msgstr "Take" + +#: ../../ms2/ms2.c:1641 +msgid "™ffne" +msgstr "Open" + +#: ../../ms2/ms2.c:1641 +msgid "Schlieáe" +msgstr "Close" + +#: ../../ms2/ms2.c:1642 +msgid "Drcke" +msgstr "Push" + +#: ../../ms2/ms2.c:1642 +msgid "Ziehe" +msgstr "Pull" + +#: ../../ms2/ms2.c:1642 +msgid "Benutze" +msgstr "Use" + +#: ../../ms2/ms2.c:1642 +msgid "Rede" +msgstr "Talk" + +#: ../../ms2/ms2.c:1642 +msgid "Gib" +msgstr "Give" + +#: ../../ms2/ms2.c:2199 +msgid "Gespr„ch beenden" +msgstr "End of conversation" + +#: ../../ms2/ms2.c:2333 +msgid "Gehe zu " +msgstr "Go to " + +#: ../../ms2/ms2.c:2333 +msgid "Schau " +msgstr "Look at " + +#: ../../ms2/ms2.c:2333 +msgid "Nimm " +msgstr "Take " + +#: ../../ms2/ms2.c:2333 +msgid "™ffne " +msgstr "Open " + +#: ../../ms2/ms2.c:2333 +msgid "Schlieáe " +msgstr "Close " + +#: ../../ms2/ms2.c:2334 +msgid "Drcke " +msgstr "Push " + +#: ../../ms2/ms2.c:2334 +msgid "Ziehe " +msgstr "Pull " + +#: ../../ms2/ms2.c:2334 +msgid "Benutze " +msgstr "Use " + +#: ../../ms2/ms2.c:2334 +msgid "Rede mit " +msgstr "Talk to " + +#: ../../ms2/ms2.c:2334 +msgid "Gib " +msgstr "Give " + +#: ../../ms2/ms2.c:2344 +msgid " an " +msgstr " to " + +#: ../../ms2/ms2.c:2345 +msgid " mit " +msgstr " with " + +#: ../../ms2/ms2.c:2903 +msgid "Laden" +msgstr "Load" + +#: ../../ms2/ms2.c:2905 +msgid "Speichern" +msgstr "Save" + +#: ../../ms2/ms2.c:2907 +msgid "Zurck" +msgstr "Back" + +#: ../../ms2/ms2.c:2909 +msgid "Neustart" +msgstr "Restart" + +#: ../../ms2/ms2.c:3002 +msgid "Schreibfehler" +msgstr "write error" + +#: ../../ms2/ms2.c:3243 +msgid "Textgeschwindigkeit:" +msgstr "Text speed:" + +#: ../../ms2/ms2.c:3292 +msgid "Spiel abbrechen?" +msgstr "Leave game?" + +#: ../../ms2/ms2.c:3295 +msgid "Ja" +msgstr "Yes" + +#: ../../ms2/ms2.c:3296 +msgid "Nein" +msgstr "No" + +#: ../../ms2/ms2.c:3368 +msgid "Das tr„gst du doch bei dir." +msgstr "You already carry this." + +#: ../../ms2/ms2.c:3370 +msgid "Du bist doch schon da." +msgstr "You are already there." + +#: ../../ms2/ms2.c:3373 +msgid "Das ist geschlossen." +msgstr "This is closed." + +#: ../../ms2/ms2.c:3383 +msgid "Das hast du doch schon." +msgstr "You already have that." + +#: ../../ms2/ms2.c:3385 +msgid "Das brauchst du nicht." +msgstr "You don't need that." + +#: ../../ms2/ms2.c:3387 +msgid "Das kannst du nicht nehmen." +msgstr "You can't take that." + +#: ../../ms2/ms2.c:3393 +msgid "Das l„át sich nicht ”ffnen." +msgstr "This cannot be opened." + +#: ../../ms2/ms2.c:3395 ../../ms2/ms2_pyra.c:646 +msgid "Das ist schon offen." +msgstr "This is already opened." + +#: ../../ms2/ms2.c:3397 +msgid "Das ist verschlossen." +msgstr "This is locked." + +#: ../../ms2/ms2.c:3413 +msgid "Das l„át sich nicht schlieáen." +msgstr "This cannot be closed." + +#: ../../ms2/ms2.c:3415 ../../ms2/ms2_pyra.c:671 +msgid "Das ist schon geschlossen." +msgstr "This is already closed." + +#: ../../ms2/ms2.c:3430 +msgid "Behalt es lieber!" +msgstr "Better keep it!" + +#: ../../ms2/ms2.c:3434 +msgid "Das geht nicht." +msgstr "You can't do that." + +#: ../../ms2/ms2_mod.c:533 +msgid "^(C) 1994 Thomas und Steffen Dingel#" +msgstr "^(C) 1994 Thomas and Steffen Dingel#" + +#: ../../ms2/ms2_mod.c:534 +msgid "Story und Grafik:^ Thomas Dingel#" +msgstr "Story and Graphics:^ Thomas Dingel#" + +#: ../../ms2/ms2_mod.c:535 +msgid "Programmierung:^ Steffen Dingel#" +msgstr "Programming:^ Steffen Dingel#" + +#: ../../ms2/ms2_mod.c:536 +msgid "Musik:^ Bernd Hoffmann#" +msgstr "Music:^ Bernd Hoffmann#" + +#: ../../ms2/ms2_mod.c:537 +msgid "Getestet von ...#" +msgstr "Tested by ...#" + +#: ../../ms2/ms2_mod.c:548 +msgid "^Das war's.#" +msgstr "^That's it.#" + +#: ../../ms2/ms2_mod.c:549 +msgid "^Schluá!#" +msgstr "^Over!#" + +#: ../../ms2/ms2_mod.c:550 +msgid "^Ende!#" +msgstr "^End!#" + +#: ../../ms2/ms2_mod.c:551 +msgid "^Aus!#" +msgstr "^Done!#" + +#: ../../ms2/ms2_mod.c:552 +msgid "^Tschá!#" +msgstr "^Bye!#" + +#: ../../ms2/ms2_mod.c:603 +msgid "Oh!" +msgstr "Oh!" + +#: ../../ms2/ms2_mod.c:605 +msgid "Nicht schlecht!" +msgstr "Not bad!" + +#: ../../ms2/ms2_mod.c:607 +msgid "Supersound!" +msgstr "Supersound!" + +#: ../../ms2/ms2_mod.c:609 +msgid "Klasse!" +msgstr "Great!" + +#: ../../ms2/ms2_mod.c:611 +msgid "Nicht zu fassen!" +msgstr "I can't believe it!" + +#: ../../ms2/ms2_mod.c:613 +msgid "Super, ey!" +msgstr "Dope, yo!" + +#: ../../ms2/ms2_mod.c:615 +msgid "Fantastisch!" +msgstr "Fantastic!" + +#: ../../ms2/ms2_mod.c:617 +msgid "Umwerfend!" +msgstr "Stunning!" + +#: ../../ms2/ms2_mod.c:619 +msgid "Genial!" +msgstr "Brilliant!" + +#: ../../ms2/ms2_mod.c:621 +msgid "Spitze!" +msgstr "Awesome!" + +#: ../../ms2/ms2_mod.c:623 +msgid "Jawoll!" +msgstr "Alright!" + +#: ../../ms2/ms2_mod.c:625 +msgid "Hervorragend!" +msgstr "Outstanding!" + +#: ../../ms2/ms2_mod.c:627 +msgid "Ultragut!" +msgstr "Ultra-good!" + +#: ../../ms2/ms2_mod.c:629 +msgid "Megacool!" +msgstr "Mega cool!" + +#: ../../ms2/ms2_mod.c:631 +msgid "Yeah!" +msgstr "Yeah!" + +#: ../../ms2/ms2_mus.c:60 +msgid "Ein W„chter betritt den Raum.|Du wirst verhaftet." +msgstr "A guard enters the room.|You are getting arrested." + +#: ../../ms2/ms2_mus.c:73 +msgid "Die n„chsten paar Jahre|verbringst du im Knast." +msgstr "You will spend the next|few years in jail." + +#: ../../ms2/ms2_mus.c:145 +msgid "Es wird Alarm ausgel”st." +msgstr "The alarm is about to be set off." + +#: ../../ms2/ms2_mus.c:200 +msgid "Du h”rst Schritte." +msgstr "You are hearing footsteps." + +#: ../../ms2/ms2_mus.c:232 +msgid "Um das Schloss zu ”ffnen,|brauchst du einige Zeit." +msgstr "You will take some time,|to pick that lock." + +#: ../../ms2/ms2_mus.c:238 +msgid "Du ger„tst in Panik|und ziehst die Keycard|aus der Tr." +msgstr "You are panicking|and remove the keycard|from the door." + +#: ../../ms2/ms2_mus.c:316 +msgid "Du hast deinen Auftrag|noch nicht ausgefhrt." +msgstr "You have not completed|your task yet." + +#: ../../ms2/ms2_mus.c:330 +msgid "" +"Obwohl du die Alarmanlage noch|nicht ausgeschaltet hast,|entscheidest du " +"dich, zu fliehen." +msgstr "Although you haven't|disabled the alarm yet,|you decide to escape." + +#: ../../ms2/ms2_mus.c:337 +msgid "" +"Du entledigst dich der Einbruchswerkzeuge|und nimmst ein Taxi zum " +"Kulturpalast." +msgstr "" +"You get rid of your burglar tools|and take a cab to the Palace of Culture." + +#: ../../ms2/ms2_mus.c:376 ../../ms2/ms2_mus.c:532 ../../ms2/ms2_mus.c:631 +msgid "Diese Tr brauchst|du nicht zu ”ffnen." +msgstr "You don't need|to open this door." + +#: ../../ms2/ms2_mus.c:394 +msgid "Uff, es hat geklappt!" +msgstr "Phew, it worked!" + +#: ../../ms2/ms2_mus.c:407 +msgid "Zurck im Quartier der Gangster ..." +msgstr "Back in the gangsters' hideout ..." + +#: ../../ms2/ms2_mus.c:417 +msgid "Das lief ja wie am Schnrchen!" +msgstr "Everything went like clockwork!" + +#: ../../ms2/ms2_mus.c:418 +msgid "Hier, dein Anteil von 30000 Xa." +msgstr "Here, your share of 30000 Xa." + +#: ../../ms2/ms2_mus.c:425 +msgid "Wo ist denn der Saurierkopf?" +msgstr "Where's the dinosaur skull?" + +#: ../../ms2/ms2_mus.c:426 +msgid "Dazu hatte ich keine Zeit mehr." +msgstr "I didn't have enough time for that." + +#: ../../ms2/ms2_mus.c:427 +msgid "Was? Du spinnst wohl!|Dann kriegst du auch deinen|Anteil nicht. Raus!" +msgstr "What? You're nuts!|Then you won't get your|share. Beat it!" + +#: ../../ms2/ms2_mus.c:703 +msgid "Der Sauger ist schon dort." +msgstr "The suction cup is already there." + +#: ../../ms2/ms2_mus.c:707 +msgid "Du heftest den Sauger an die Wand|und h„lst dich daran fest." +msgstr "You attach the suction cup to the wall|and hold on to it." + +#: ../../ms2/ms2_mus.c:718 +msgid "Du stellst dich auf den|Boden nimmst den Sauger|wieder von der Wand" +msgstr "You stand on the floor|then remove the suction cup from the wall" + +#: ../../ms2/ms2_mus.c:722 +msgid "Die Alarmanlage ist|schon ausgeschaltet." +msgstr "The alarm system is|already switched off." + +#: ../../ms2/ms2_mus.c:725 +msgid "Um die Anlage abzuschalten,|brauchst du einige Zeit." +msgstr "To turn off the system,|you need some time." + +#: ../../ms2/ms2_mus.c:729 +msgid "Die Alarmanlage ist jetzt ausgeschaltet." +msgstr "The alarm system is now switched off." + +#: ../../ms2/ms2_mus.c:746 ../../ms2/ms2_mus.c:875 +msgid "Saurier" +msgstr "Dinosaur" + +#: ../../ms2/ms2_mus.c:746 +msgid "Du hast jetzt besseres zu tun,|als das Ding anzuschauen." +msgstr "You have better things to do now|than look at that thing." + +#: ../../ms2/ms2_mus.c:747 ../../ms2/ms2_pyra.c:1010 ../../ms2/ms2_r1.c:805 +#: ../../ms2/ms2_r1.c:816 ../../ms2/ms2_r2.c:1203 ../../ms2/ms2_r2.c:1214 +msgid "Eingang" +msgstr "Entrance" + +#: ../../ms2/ms2_mus.c:748 ../../ms2/ms2_mus.c:756 ../../ms2/ms2_mus.c:757 +#: ../../ms2/ms2_mus.c:765 ../../ms2/ms2_mus.c:766 ../../ms2/ms2_mus.c:774 +#: ../../ms2/ms2_mus.c:775 ../../ms2/ms2_mus.c:783 ../../ms2/ms2_mus.c:784 +#: ../../ms2/ms2_mus.c:792 ../../ms2/ms2_mus.c:801 ../../ms2/ms2_mus.c:802 +#: ../../ms2/ms2_mus.c:804 ../../ms2/ms2_mus.c:812 ../../ms2/ms2_mus.c:814 +#: ../../ms2/ms2_mus.c:815 ../../ms2/ms2_mus.c:823 ../../ms2/ms2_mus.c:824 +#: ../../ms2/ms2_mus.c:832 ../../ms2/ms2_mus.c:833 ../../ms2/ms2_mus.c:842 +#: ../../ms2/ms2_mus.c:844 ../../ms2/ms2_mus.c:845 ../../ms2/ms2_mus.c:854 +#: ../../ms2/ms2_mus.c:855 ../../ms2/ms2_mus.c:864 ../../ms2/ms2_mus.c:865 +#: ../../ms2/ms2_mus.c:866 ../../ms2/ms2_mus.c:872 ../../ms2/ms2_mus.c:894 +#: ../../ms2/ms2_mus.c:895 ../../ms2/ms2_mus.c:903 ../../ms2/ms2_mus.c:911 +#: ../../ms2/ms2_mus.c:912 ../../ms2/ms2_mus.c:920 ../../ms2/ms2_mus.c:921 +#: ../../ms2/ms2_mus.c:929 ../../ms2/ms2_mus.c:930 ../../ms2/ms2_mus.c:931 +#: ../../ms2/ms2_mus.c:932 ../../ms2/ms2_mus.c:940 ../../ms2/ms2_mus.c:941 +#: ../../ms2/ms2_mus.c:949 ../../ms2/ms2_mus.c:957 ../../ms2/ms2_mus.c:965 +#: ../../ms2/ms2_mus.c:966 ../../ms2/ms2_mus.c:974 ../../ms2/ms2_pyra.c:1070 +#: ../../ms2/ms2_pyra.c:1079 ../../ms2/ms2_pyra.c:1103 +#: ../../ms2/ms2_pyra.c:1111 ../../ms2/ms2_pyra.c:1135 +#: ../../ms2/ms2_pyra.c:1309 ../../ms2/ms2_r2.c:1225 ../../ms2/ms2_r2.c:1226 +#: ../../ms2/ms2_r2.c:1235 ../../ms2/ms2_r2.c:1236 ../../ms2/ms2_r2.c:1247 +msgid "Tr" +msgstr "Door" + +#: ../../ms2/ms2_mus.c:749 +msgid "Strasse zum Stadtzentrum" +msgstr "Road to the city center" + +#: ../../ms2/ms2_mus.c:793 +msgid "Kamera" +msgstr "Security camera" + +#: ../../ms2/ms2_mus.c:793 +msgid "Hoffentlich bemerkt dich niemand." +msgstr "Hopefully nobody will notice you." + +#: ../../ms2/ms2_mus.c:856 +msgid "Haupteingang" +msgstr "Main entrance" + +#: ../../ms2/ms2_mus.c:873 ../../ms2/ms2_mus.c:874 ../../ms2/ms2_mus.c:885 +#: ../../ms2/ms2_mus.c:893 ../../ms2/ms2_pyra.c:1046 ../../ms2/ms2_pyra.c:1054 +#: ../../ms2/ms2_pyra.c:1062 ../../ms2/ms2_pyra.c:1087 +#: ../../ms2/ms2_pyra.c:1095 ../../ms2/ms2_pyra.c:1222 +#: ../../ms2/ms2_pyra.c:1230 ../../ms2/ms2_pyra.c:1238 +#: ../../ms2/ms2_pyra.c:1246 +msgid "Gang" +msgstr "Corridor" + +#: ../../ms2/ms2_mus.c:875 +msgid "Ziemlich groá." +msgstr "Quite large." + +#: ../../ms2/ms2_mus.c:876 ../../ms2/ms2_r1.c:787 +msgid "Saurierkopf" +msgstr "Dinosaur head" + +#: ../../ms2/ms2_mus.c:876 +msgid "Dies ist der Kopf,|den du suchst." +msgstr "This is the head|you're looking for." + +#: ../../ms2/ms2_mus.c:975 +msgid "Alarmanlage" +msgstr "Alarm system" + +#: ../../ms2/ms2_mus.c:976 ../../ms2/ms2_r1.c:783 +msgid "Sauger" +msgstr "Suction cup" + +#: ../../ms2/ms2_mus.c:977 +msgid "Wand" +msgstr "Wall" + +#: ../../ms2/ms2_pyra.c:26 ../../ms2/ms2_pyra.c:1255 ../../ms2/ms2_pyra.c:1256 +#: ../../ms2/ms2_pyra.c:1274 ../../ms2/ms2_pyra.c:1284 +msgid "Loch" +msgstr "Opening" + +#: ../../ms2/ms2_pyra.c:27 +msgid "Buchstabe" +msgstr "Letter" + +#: ../../ms2/ms2_pyra.c:28 +msgid "Sie ist sehr massiv." +msgstr "It is very massive." + +#: ../../ms2/ms2_pyra.c:29 +msgid "Hmm, X und Y, irgendwo|habe ich die Buchstaben|schon gesehen." +msgstr "Hmm, X and Y|I have seen these letters|somewhere before." + +#: ../../ms2/ms2_pyra.c:34 +msgid "Deine Zeit ist um, Fremder!" +msgstr "Your Time is up, Stranger!" + +#: ../../ms2/ms2_pyra.c:76 +msgid "Du hast das Seil|doch schon festgebunden." +msgstr "You already tied the rope." + +#: ../../ms2/ms2_pyra.c:80 +msgid "Das wrde wenig bringen." +msgstr "That would have little effect." + +#: ../../ms2/ms2_pyra.c:126 +msgid "Sonnenstich, oder was?" +msgstr "Sunstroke, or what?" + +#: ../../ms2/ms2_pyra.c:385 +msgid "Du merkst, daá der Boden|unter dir nachgibt, und|springst zur Seite." +msgstr "You notice that the ground|is giving way under you,|and you leap aside." + +#: ../../ms2/ms2_pyra.c:537 +msgid "Puzzleteil" +msgstr "Puzzle piece" + +#: ../../ms2/ms2_pyra.c:570 +msgid "Neben diesem Stein|ist kein freies Feld." +msgstr "There's no free square|next to this stone." + +#: ../../ms2/ms2_pyra.c:683 +msgid "Du spielst gerade ein|Adventure, kein Rollenspiel!" +msgstr "You are currently playing an|Adventure, not a Role-Playing Game!" + +#: ../../ms2/ms2_pyra.c:699 ../../ms2/ms2_pyra.c:800 +msgid "Du kannst das Seil|nirgends befestigen." +msgstr "There's nowhere|to attach the rope." + +#: ../../ms2/ms2_pyra.c:705 ../../ms2/ms2_pyra.c:784 +msgid "Es paát nicht|zwischen die Steine." +msgstr "It does not fit|between the stones." + +#: ../../ms2/ms2_pyra.c:710 ../../ms2/ms2_pyra.c:741 ../../ms2/ms2_pyra.c:840 +msgid "Das ist doch|oben festgebunden!" +msgstr "That is already|tied up above!" + +#: ../../ms2/ms2_pyra.c:715 +msgid "Hey, das ist|mindestens 10 Meter tief!" +msgstr "Hey, that is|at least 10 meters deep!" + +#: ../../ms2/ms2_pyra.c:731 +msgid "In dem Schlitz|ist nichts mehr." +msgstr "There is nothing|left in the slot." + +#: ../../ms2/ms2_pyra.c:765 +msgid "Das ist mindestens 5 Meter tief!" +msgstr "That is at least 5 meters deep!" + +#: ../../ms2/ms2_pyra.c:900 +msgid "" +"Du versuchst, den Sarg zu|”ffnen, aber der Deckel bewegt|sich keinen " +"Millimeter." +msgstr "You try to open the coffin,|but the lid does not|move a millimeter." + +#: ../../ms2/ms2_pyra.c:913 ../../ms2/ms2_pyra.c:923 +msgid "Du hast die Kugel schon gedrckt." +msgstr "You have already|pushed the ball." + +#: ../../ms2/ms2_pyra.c:944 +msgid "Die Kugel bewegt sich ein Stck." +msgstr "The ball moves a bit." + +#: ../../ms2/ms2_pyra.c:965 +msgid "Herzlichen Glckwunsch!" +msgstr "Congratulations!" + +#: ../../ms2/ms2_pyra.c:966 +msgid "Sie haben das Spiel gel”st|und gewinnen 400 Xa!" +msgstr "You solved the game|and won 400 Xa!" + +#: ../../ms2/ms2_pyra.c:967 +msgid "Vielen Dank fr die Benutzung eines|VIRTUAL-REALITY-SYSTEMS-Produkts!" +msgstr "Thank you for using a|VIRTUAL-REALITY-SYSTEMS product!" + +#: ../../ms2/ms2_pyra.c:991 +msgid "N" +msgstr "N" + +#: ../../ms2/ms2_pyra.c:991 +msgid "O" +msgstr "E" + +#: ../../ms2/ms2_pyra.c:991 +msgid "S" +msgstr "S" + +#: ../../ms2/ms2_pyra.c:991 +msgid "W" +msgstr "W" + +#: ../../ms2/ms2_pyra.c:1008 ../../ms2/ms2_pyra.c:1200 +#: ../../ms2/ms2_pyra.c:1254 ../../ms2/ms2_pyra.c:1262 +#: ../../ms2/ms2_pyra.c:1273 ../../ms2/ms2_pyra.c:1283 +msgid "Seil" +msgstr "Rope" + +#: ../../ms2/ms2_pyra.c:1009 ../../ms2/ms2_pyra.c:1043 ../../ms2/ms2_r1.c:850 +#: ../../ms2/ms2_r2.c:1223 ../../ms2/ms2_r2.c:1224 ../../ms2/ms2_r2.c:1233 +#: ../../ms2/ms2_r2.c:1234 +msgid "Schild" +msgstr "Sign" + +#: ../../ms2/ms2_pyra.c:1009 +msgid "" +"Darauf steht:|\"Willst du finden das|richtige Loch, so wage|dich in die " +"Pyramide!\"." +msgstr "" +"It reads:|\"Want to find|the right hole? Then dare|to enter the pyramid!\"." + +#: ../../ms2/ms2_pyra.c:1010 +msgid "Es ist eine kleine ™ffnung." +msgstr "It is a small opening." + +#: ../../ms2/ms2_pyra.c:1011 +msgid "Pyramide" +msgstr "Pyramid" + +#: ../../ms2/ms2_pyra.c:1011 +msgid "" +"Komisch! Was soll eine Pyramide|bei den Axacussanern? Deine|eigenen Gedanken " +"scheinen|den Spielverlauf zu beeinflussen." +msgstr "" +"Weird! What is a pyramid doing|at the Axacussians? Your own thoughts seem to " +"influence|the course of the game." + +#: ../../ms2/ms2_pyra.c:1012 +msgid "Sonne" +msgstr "Sun" + +#: ../../ms2/ms2_pyra.c:1012 +msgid "Sch”n!" +msgstr "Nice!" + +#: ../../ms2/ms2_pyra.c:1043 +msgid "" +"\"Hallo Fremder, wenn du diesen|Raum betreten hast, bleibt|dir nur noch eine " +"Stunde Zeit,|um deine Aufgabe zu erfllen!\"" +msgstr "" +"\"Hello, Stranger, when you enter|this room, you have only an hour|to " +"accomplish your task!\"" + +#: ../../ms2/ms2_pyra.c:1044 ../../ms2/ms2_pyra.c:1052 +#: ../../ms2/ms2_pyra.c:1060 ../../ms2/ms2_pyra.c:1068 +#: ../../ms2/ms2_pyra.c:1077 ../../ms2/ms2_pyra.c:1085 +#: ../../ms2/ms2_pyra.c:1093 ../../ms2/ms2_pyra.c:1101 +#: ../../ms2/ms2_pyra.c:1109 ../../ms2/ms2_pyra.c:1133 +#: ../../ms2/ms2_pyra.c:1141 ../../ms2/ms2_pyra.c:1149 +#: ../../ms2/ms2_pyra.c:1157 ../../ms2/ms2_pyra.c:1165 +#: ../../ms2/ms2_pyra.c:1173 ../../ms2/ms2_pyra.c:1181 +#: ../../ms2/ms2_pyra.c:1190 ../../ms2/ms2_pyra.c:1198 +#: ../../ms2/ms2_pyra.c:1209 ../../ms2/ms2_pyra.c:1220 +#: ../../ms2/ms2_pyra.c:1228 ../../ms2/ms2_pyra.c:1236 +#: ../../ms2/ms2_pyra.c:1244 ../../ms2/ms2_pyra.c:1252 +#: ../../ms2/ms2_pyra.c:1270 ../../ms2/ms2_pyra.c:1281 +#: ../../ms2/ms2_pyra.c:1291 +msgid "rechte Seite" +msgstr "right side" + +#: ../../ms2/ms2_pyra.c:1045 ../../ms2/ms2_pyra.c:1053 +#: ../../ms2/ms2_pyra.c:1061 ../../ms2/ms2_pyra.c:1069 +#: ../../ms2/ms2_pyra.c:1078 ../../ms2/ms2_pyra.c:1086 +#: ../../ms2/ms2_pyra.c:1094 ../../ms2/ms2_pyra.c:1102 +#: ../../ms2/ms2_pyra.c:1110 ../../ms2/ms2_pyra.c:1134 +#: ../../ms2/ms2_pyra.c:1142 ../../ms2/ms2_pyra.c:1150 +#: ../../ms2/ms2_pyra.c:1158 ../../ms2/ms2_pyra.c:1166 +#: ../../ms2/ms2_pyra.c:1174 ../../ms2/ms2_pyra.c:1182 +#: ../../ms2/ms2_pyra.c:1191 ../../ms2/ms2_pyra.c:1199 +#: ../../ms2/ms2_pyra.c:1210 ../../ms2/ms2_pyra.c:1221 +#: ../../ms2/ms2_pyra.c:1229 ../../ms2/ms2_pyra.c:1237 +#: ../../ms2/ms2_pyra.c:1245 ../../ms2/ms2_pyra.c:1253 +#: ../../ms2/ms2_pyra.c:1271 ../../ms2/ms2_pyra.c:1282 +#: ../../ms2/ms2_pyra.c:1292 +msgid "linke Seite" +msgstr "left side" + +#: ../../ms2/ms2_pyra.c:1071 +msgid "Knopf" +msgstr "Button" + +#: ../../ms2/ms2_pyra.c:1143 ../../ms2/ms2_pyra.c:1151 +#: ../../ms2/ms2_pyra.c:1159 ../../ms2/ms2_pyra.c:1167 +msgid "Schrift" +msgstr "Inscription" + +#: ../../ms2/ms2_pyra.c:1175 ../../ms2/ms2_pyra.c:1184 +msgid "Tomate" +msgstr "Tomato" + +#: ../../ms2/ms2_pyra.c:1175 ../../ms2/ms2_pyra.c:1184 +msgid "Komisch!" +msgstr "Funny!" + +#: ../../ms2/ms2_pyra.c:1183 ../../ms2/ms2_pyra.c:1272 +msgid "Messer" +msgstr "Knife" + +#: ../../ms2/ms2_pyra.c:1183 +msgid "Es ist ein relativ stabiles Messer." +msgstr "It is a relatively sturdy knife." + +#: ../../ms2/ms2_pyra.c:1192 ../../ms2/ms2_pyra.c:1203 +#: ../../ms2/ms2_pyra.c:1214 +msgid "Monster" +msgstr "Monster" + +#: ../../ms2/ms2_pyra.c:1200 +msgid "Es ist dick und|ungef„hr 15 Meter lang." +msgstr "It is thick and|about 15 meters long." + +#: ../../ms2/ms2_pyra.c:1201 ../../ms2/ms2_pyra.c:1212 +msgid "Augen" +msgstr "Eyes" + +#: ../../ms2/ms2_pyra.c:1202 ../../ms2/ms2_pyra.c:1213 +#: ../../ms2/ms2_pyra.c:1336 +msgid "Mund" +msgstr "Mouth" + +#: ../../ms2/ms2_pyra.c:1203 ../../ms2/ms2_pyra.c:1214 +msgid "Es ist nur eine Statue." +msgstr "It's just a statue." + +#: ../../ms2/ms2_pyra.c:1211 ../../ms2/ms2_pyra.c:1263 +msgid "Zettel" +msgstr "Note" + +#: ../../ms2/ms2_pyra.c:1211 +msgid "Darauf steht:|\"Wenn du fast am Ziel|bist, tu folgendes:|Sauf!\"" +msgstr "It reads:|\"When you're almost there,|do the following:|Drink!\"" + +#: ../../ms2/ms2_pyra.c:1255 +msgid "Es ist ca. 10 Meter tief." +msgstr "It is about 10 meters deep." + +#: ../../ms2/ms2_pyra.c:1256 +msgid "Oben siehst du helles Licht." +msgstr "Above you is a bright light." + +#: ../../ms2/ms2_pyra.c:1263 +msgid "" +"Darauf steht:|\"Ruhe eine Minute im Raum|zwischen den Monstern,|und du wirst " +"belohnt!\"" +msgstr "" +"It reads:|\"Rest a minute in the room|between the monsters,|and you'll be " +"rewarded!\"" + +#: ../../ms2/ms2_pyra.c:1264 ../../ms2/ms2_r1.c:844 ../../ms2/ms2_r1.c:845 +#: ../../ms2/ms2_r2.c:1243 +msgid "Schlitz" +msgstr "Slot" + +#: ../../ms2/ms2_pyra.c:1264 +msgid "Du kommst mit den|H„nden nicht rein." +msgstr "You cannot get in|with your hands." + +#: ../../ms2/ms2_pyra.c:1274 +msgid "Es ist ca. 5 Meter tief." +msgstr "It is about 5 meters deep." + +#: ../../ms2/ms2_pyra.c:1275 +msgid "Steine" +msgstr "Stones" + +#: ../../ms2/ms2_pyra.c:1285 +msgid "Platte" +msgstr "Plate" + +#: ../../ms2/ms2_pyra.c:1315 ../../ms2/ms2_pyra.c:1323 +msgid "Sarg" +msgstr "Coffin" + +#: ../../ms2/ms2_pyra.c:1316 ../../ms2/ms2_pyra.c:1322 +#: ../../ms2/ms2_pyra.c:1333 ../../ms2/ms2_r1.c:833 ../../ms2/ms2_r1.c:840 +#: ../../ms2/ms2_r1.c:857 ../../ms2/ms2_r2.c:1215 ../../ms2/ms2_r2.c:1248 +msgid "Ausgang" +msgstr "Exit" + +#: ../../ms2/ms2_pyra.c:1323 +msgid "Unheimlich!" +msgstr "Creepy!" + +#: ../../ms2/ms2_pyra.c:1324 ../../ms2/ms2_r1.c:865 +msgid "Zahnbrste" +msgstr "Toothbrush" + +#: ../../ms2/ms2_pyra.c:1324 ../../ms2/ms2_pyra.c:1325 +msgid "Die Sache mit der|Artus GmbH scheint dir zu|Kopf gestiegen zu sein." +msgstr "The thing with the|Artus GmbH seems to have|gotten to your head." + +#: ../../ms2/ms2_pyra.c:1325 +msgid "Zahnpastatube" +msgstr "Toothpaste" + +#: ../../ms2/ms2_pyra.c:1326 ../../ms2/ms2_pyra.c:1327 +msgid "Kugel" +msgstr "Ball" + +#: ../../ms2/ms2_pyra.c:1326 ../../ms2/ms2_pyra.c:1327 +msgid "Hmm, die Kugel sieht lose aus." +msgstr "Hmm, the ball looks loose." + +#: ../../ms2/ms2_pyra.c:1334 ../../ms2/ms2_pyra.c:1335 +msgid "Auge" +msgstr "Eye" + +#: ../../ms2/ms2_pyra.c:1334 ../../ms2/ms2_pyra.c:1335 +msgid "Irgendwas stimmt damit nicht." +msgstr "Something is wrong with that." + +#: ../../ms2/ms2_r1.c:11 +msgid "Es ist nichts Besonderes daran." +msgstr "There's nothing special about it." + +#: ../../ms2/ms2_r1.c:12 +msgid "Sieht nach Metall aus." +msgstr "It looks like metal." + +#: ../../ms2/ms2_r1.c:83 +msgid "Ein Taxi kommt angerauscht,|du steigst ein." +msgstr "A taxi arrives, and you get in." + +#: ../../ms2/ms2_r1.c:90 +msgid "Du drckst auf den Knopf, aber nichts passiert" +msgstr "You press the button, but nothing happens" + +#: ../../ms2/ms2_r1.c:94 +msgid "Es ist leer." +msgstr "It is empty." + +#: ../../ms2/ms2_r1.c:97 +msgid "Du findest ein kleines Ger„t,|einen Ausweis und einen Xa." +msgstr "You find a small device,|an ID card and a Xa." + +#: ../../ms2/ms2_r1.c:109 +msgid "Du heftest den|Magnet an die Stange." +msgstr "You attach the|magnet to the pole." + +#: ../../ms2/ms2_r1.c:110 +msgid "Stange mit Magnet" +msgstr "Pole with magnet" + +#: ../../ms2/ms2_r1.c:111 +msgid "Raffiniert!" +msgstr "Cunning!" + +#: ../../ms2/ms2_r1.c:118 +msgid "Du muát das|Ger„t erst kaufen." +msgstr "You must buy|this device first." + +#: ../../ms2/ms2_r1.c:127 +msgid "Du legst den Chip|in das Ger„t ein." +msgstr "You insert the chip|into the device." + +#: ../../ms2/ms2_r1.c:137 +msgid "Du berspielst die CD|auf den Musikchip." +msgstr "You transfer the CD|to the Music chip." + +#: ../../ms2/ms2_r1.c:141 +msgid "" +"Ohne einen eingelegten|Musikchip kannst du auf dem|Ger„t nichts aufnehmen." +msgstr "Without an inserted|music chip, you can not|record on the device." + +#: ../../ms2/ms2_r1.c:152 +msgid "Du nimmst den Chip|aus dem Ger„t." +msgstr "You remove the chip|from the device." + +#: ../../ms2/ms2_r1.c:157 +msgid "Es ist kein Chip eingelegt." +msgstr "There is no chip inserted." + +#: ../../ms2/ms2_r1.c:162 +msgid "Wozu? Du hast sowieso nur die eine CD." +msgstr "What for? You only have one CD anyway." + +#: ../../ms2/ms2_r1.c:166 +msgid "Die \"Mad Monkeys\"-CD. Du hast|sie schon tausendmal geh”rt." +msgstr "The \"Mad Monkeys\" CD.|You've heard them a thousand times." + +#: ../../ms2/ms2_r1.c:183 +msgid "Du h”rst nichts.|Der Chip ist unbespielt." +msgstr "All you hear is silence.|The chip is empty." + +#: ../../ms2/ms2_r1.c:185 +msgid "Du h”rst dir den Anfang|der berspielten CD an." +msgstr "You are listening to the beginning|of the copied CD." + +#: ../../ms2/ms2_r1.c:187 +msgid "Es ist kein Chip einglegt." +msgstr "There is no chip inserted." + +#: ../../ms2/ms2_r1.c:193 +msgid "Du trinkst etwas von den Zeug, danach|fhlst du dich leicht beschwipst." +msgstr "You drink some of the stuff,|then begin to feel slightly tipsy." + +#: ../../ms2/ms2_r1.c:224 +#, c-format +msgid "%d Xa" +msgstr "%d Xa" + +#: ../../ms2/ms2_r1.c:242 +msgid "" +"Als du ebenfalls aussteigst haben|die anderen Passagiere das|Fluggel„nde " +"bereits verlassen." +msgstr "" +"When you get off the plane|the other passengers|have already left the " +"airport." + +#: ../../ms2/ms2_r1.c:285 ../../ms2/ms2_r1.c:809 +msgid "Flughafen" +msgstr "Airport" + +#: ../../ms2/ms2_r1.c:286 +msgid "Stadtzentrum" +msgstr "Downtown" + +#: ../../ms2/ms2_r1.c:287 ../../ms2/ms2_r2.c:1204 +msgid "Kulturpalast" +msgstr "Palace of Culture" + +#: ../../ms2/ms2_r1.c:288 +msgid "Erde" +msgstr "Earth" + +#: ../../ms2/ms2_r1.c:289 +msgid "Privatwohnung" +msgstr "Private apartment" + +#: ../../ms2/ms2_r1.c:290 ../../ms2/ms2_r1.c:295 +msgid "(Taxi verlassen)" +msgstr "(Leave the taxi)" + +#: ../../ms2/ms2_r1.c:294 +msgid "(Bezahlen)" +msgstr "(Pay)" + +#: ../../ms2/ms2_r1.c:337 +msgid "Adresse:| " +msgstr "Address:| " + +#: ../../ms2/ms2_r1.c:356 +msgid "" +"Fuddeln gilt nicht!|Zu diesem Zeitpunkt kannst du diese|Adresse noch gar " +"nicht kennen!" +msgstr "" +"Fiddling with the system doesn't work!|At this time you can not|even know " +"this address!" + +#: ../../ms2/ms2_r1.c:378 +msgid "Du hast nicht|mehr genug Geld." +msgstr "You do not|have enough money left." + +#: ../../ms2/ms2_r1.c:389 +msgid "Du merkst, daá das Taxi stark beschleunigt." +msgstr "You notice the taxi is accelerating rapidly." + +#: ../../ms2/ms2_r1.c:398 +msgid "Fnf Minuten sp„ter ..." +msgstr "Five minutes later ..." + +#: ../../ms2/ms2_r1.c:433 +msgid "Du hast doch schon eine Stange" +msgstr "You already have a pole" + +#: ../../ms2/ms2_r1.c:436 +msgid "Du s„gst eine der Stangen ab." +msgstr "You saw off one of the poles." + +#: ../../ms2/ms2_r1.c:444 +msgid "Du betrittst das einzige|offene Gesch„ft, das|du finden kannst." +msgstr "You enter the only|open shop that|you can find." + +#: ../../ms2/ms2_r1.c:507 +msgid "Die Kabine ist besetzt." +msgstr "The cabin is occupied." + +#: ../../ms2/ms2_r1.c:524 +msgid "He, nimm erstmal das Geld|aus dem Rckgabeschlitz!" +msgstr "Hey, take the money|from the return slot!" + +#: ../../ms2/ms2_r1.c:526 +msgid "Du hast doch schon bezahlt." +msgstr "You have already paid." + +#: ../../ms2/ms2_r1.c:528 +msgid "Du hast nicht mehr genug Geld." +msgstr "You do not have enough money left." + +#: ../../ms2/ms2_r1.c:531 +msgid "Du wirfst 10 Xa in den Schlitz." +msgstr "You put 10 Xa in the slot." + +#: ../../ms2/ms2_r1.c:566 +msgid "Dir wird schwarz vor Augen." +msgstr "You are about to pass out." + +#: ../../ms2/ms2_r1.c:582 +msgid "Du ruhst dich eine Weile aus." +msgstr "You rest for a while." + +#: ../../ms2/ms2_r1.c:598 +msgid "" +"An der Wand steht:|\"Ich kenne eine tolle Geheimschrift:|A=Z, B=Y, C=X ...|" +"0=0, 1=9, 2=8 ...\"" +msgstr "" +"On the Wall is:|\"I know a great cypher:|A=Z, B=Y, C=X ...|0=0, 1=9, 2=8 ..." +"\"" + +#: ../../ms2/ms2_r1.c:657 +msgid "Ok, ich nehme es." +msgstr "OK, I'll take it." + +#: ../../ms2/ms2_r1.c:658 +msgid "Nein danke, das ist mir zu teuer." +msgstr "No thanks, that's too expensive for me." + +#: ../../ms2/ms2_r1.c:662 +msgid "Ich wrde gern etwas kaufen." +msgstr "I would like to buy something." + +#: ../../ms2/ms2_r1.c:663 +msgid "Ich bin's, Horst Hummel." +msgstr "It's me, Horst Hummel." + +#: ../../ms2/ms2_r1.c:664 +msgid "Haben Sie auch einen Musikchip fr das Ger„t?" +msgstr "Do you have a music chip for the device?" + +#: ../../ms2/ms2_r1.c:668 +msgid "Eine tolle Maske, nicht wahr?" +msgstr "It's a great mask, right?" + +#: ../../ms2/ms2_r1.c:668 +msgid "Komisch, daá sie schon drei Jahre da steht." +msgstr "Strange that it has been there for three years." + +#: ../../ms2/ms2_r1.c:669 +msgid "Ein starker Trunk. Zieht ganz sch”n rein." +msgstr "A strong drink. It hits you pretty hard." + +#: ../../ms2/ms2_r1.c:670 +msgid "Ein Abspiel- und Aufnahmeger„t fr die neuen Musikchips." +msgstr "A playback and recording device for the new music chips." + +#: ../../ms2/ms2_r1.c:671 +msgid "Eine ARTUS-Zahnbrste. Der letzte Schrei." +msgstr "An ARTUS toothbrush. The latest craze." + +#: ../../ms2/ms2_r1.c:671 +msgid "Verkaufe ich massenhaft, die Dinger." +msgstr "I sell these things in bulk." + +#: ../../ms2/ms2_r1.c:672 +msgid "Das sind echte Rarit„ten. Bcher in gebundener Form." +msgstr "These are real rarities. Books in bound form." + +#: ../../ms2/ms2_r1.c:673 +msgid "Die Encyclopedia Axacussana." +msgstr "The Encyclopedia Axacussana." + +#: ../../ms2/ms2_r1.c:673 +msgid "Das gr”áte erh„ltliche Lexikon auf 30 Speicherchips." +msgstr "The largest available dictionary on 30 memory chips." + +#: ../../ms2/ms2_r1.c:673 +msgid "šber 400 Trilliarden Stichw”rter." +msgstr "Over 400 sextillion keywords." + +#: ../../ms2/ms2_r1.c:674 +msgid "Die ist nicht zu verkaufen." +msgstr "It is not for sale." + +#: ../../ms2/ms2_r1.c:675 +msgid "So eine habe ich meinem Enkel zum Geburtstag geschenkt." +msgstr "I gave one to my grandson for his birthday." + +#: ../../ms2/ms2_r1.c:675 +msgid "Er war begeistert von dem Ding." +msgstr "He was excited about this thing." + +#: ../../ms2/ms2_r1.c:676 +msgid "Der stammt aus einem bekannten Computerspiel." +msgstr "It comes from a well-known computer game." + +#: ../../ms2/ms2_r1.c:677 +msgid "Robust, handlich und stromsparend." +msgstr "Sturdy, handy and energy-saving." + +#: ../../ms2/ms2_r1.c:678 ../../ms2/ms2_r1.c:679 ../../ms2/ms2_r1.c:680 +#: ../../ms2/ms2_r1.c:681 +msgid "Irgendein lasches Ges”ff." +msgstr "Some cheap swill." + +#: ../../ms2/ms2_r1.c:682 +msgid "Das sind Protestaufkleber gegen die hohen Taxigebhren." +msgstr "These are stickers protesting the high taxi fees." + +#: ../../ms2/ms2_r1.c:683 +msgid "Das ist Geschirr aus der neuen Umbina-Kollektion." +msgstr "These are dishes from the new Umbina-Collection." + +#: ../../ms2/ms2_r1.c:683 +msgid "H„álich, nicht wahr?" +msgstr "Ugly, right?" + +#: ../../ms2/ms2_r1.c:683 +msgid "Aber verkaufen tut sich das Zeug gut." +msgstr "But this stuff sells well." + +#: ../../ms2/ms2_r1.c:699 +#, c-format +msgid "Das kostet %d Xa." +msgstr "That costs %d Xa." + +#: ../../ms2/ms2_r1.c:726 +msgid "Schauen Sie sich ruhig um!" +msgstr "Take a look around!" + +#: ../../ms2/ms2_r1.c:728 +msgid "Unsinn!" +msgstr "Nonsense!" + +#: ../../ms2/ms2_r1.c:730 +msgid "Tut mir leid, die sind|schon alle ausverkauft." +msgstr "I'm very sorry,|they are already sold out." + +#: ../../ms2/ms2_r1.c:743 +msgid "Guten Abend." +msgstr "Good evening." + +#: ../../ms2/ms2_r1.c:744 +msgid "Hallo." +msgstr "Hello." + +#: ../../ms2/ms2_r1.c:754 +msgid "Huch, Sie haben mich aber erschreckt!" +msgstr "Yikes, you scared me!" + +#: ../../ms2/ms2_r1.c:755 +msgid "Wieso?" +msgstr "How so?" + +#: ../../ms2/ms2_r1.c:756 +msgid "Ihre Verkleidung ist wirklich t„uschend echt." +msgstr "Your disguise is deceptively real-looking." + +#: ../../ms2/ms2_r1.c:757 +msgid "Welche Verkleidung?" +msgstr "What disguise?" + +#: ../../ms2/ms2_r1.c:758 +msgid "Na, tun Sie nicht so!" +msgstr "Stop pretending you don't know!" + +#: ../../ms2/ms2_r1.c:759 +msgid "" +"Sie haben sich verkleidet wie der Auáerirdische,|dieser Horst Hummel, oder " +"wie er heiát." +msgstr "" +"You disguised yourself as that extraterrestrial guy,|Horst Hummel, or " +"whatever his name is." + +#: ../../ms2/ms2_r1.c:760 ../../ms2/ms2_r2.c:419 +msgid "Ich BIN Horst Hummel!" +msgstr "I AM Horst Hummel!" + +#: ../../ms2/ms2_r1.c:761 +msgid "Geben Sie's auf!" +msgstr "Give it up!" + +#: ../../ms2/ms2_r1.c:762 +msgid "An Ihrer Gestik merkt man, daá Sie|ein verkleideter Axacussaner sind." +msgstr "You can tell from your gestures that you are|a disguised Axacussan." + +#: ../../ms2/ms2_r1.c:763 +msgid "Der echte Hummel bewegt sich|anders, irgendwie ruckartig." +msgstr "The real Hummel moves|differently, kind of jerky." + +#: ../../ms2/ms2_r1.c:764 +msgid "Weil er ein Roboter ist! ICH bin der Echte!" +msgstr "Because he is a robot! I am the real one!" + +#: ../../ms2/ms2_r1.c:765 ../../ms2/ms2_r2.c:56 +msgid "Ach, Sie spinnen ja!" +msgstr "Oh, you are crazy!" + +#: ../../ms2/ms2_r1.c:766 +msgid "Sie Trottel!!!" +msgstr "You Idiot!!!" + +#: ../../ms2/ms2_r1.c:767 +msgid "Seien Sie still, oder ich werfe Sie raus!" +msgstr "Shut up or I'll kick you out!" + +#: ../../ms2/ms2_r1.c:780 +msgid "Taschenmesser" +msgstr "Pocket knife" + +#: ../../ms2/ms2_r1.c:780 +msgid "Hey, da ist sogar eine S„ge dran." +msgstr "Hey, there's even a saw on it." + +#: ../../ms2/ms2_r1.c:781 +msgid "20 Xa" +msgstr "20 Xa" + +#: ../../ms2/ms2_r1.c:782 +msgid "Discman" +msgstr "Discman" + +#: ../../ms2/ms2_r1.c:782 +msgid "Da ist noch die \"Mad Monkeys\"-CD drin." +msgstr "The \"Mad Monkeys\" CD is still in there." + +#: ../../ms2/ms2_r1.c:783 +msgid "Mit dem Ding sollst du dich|an der Wand festhalten." +msgstr "You should hold onto the wall|using that thing." + +#: ../../ms2/ms2_r1.c:785 +msgid "Spezialkeycard" +msgstr "Special keycard" + +#: ../../ms2/ms2_r1.c:785 +msgid "Damit sollst du die|Tren knacken k”nnen." +msgstr "With that you should be able to crack the doors." + +#: ../../ms2/ms2_r1.c:786 +msgid "Alarmknacker" +msgstr "Alarm cracker" + +#: ../../ms2/ms2_r1.c:786 +msgid "Ein kleines Ger„t, um|die Alarmanlage auszuschalten." +msgstr "A small device|to turn off the alarm." + +#: ../../ms2/ms2_r1.c:788 +msgid "Karte" +msgstr "Keycard" + +#: ../../ms2/ms2_r1.c:795 +msgid "Raumschiff" +msgstr "Spaceship" + +#: ../../ms2/ms2_r1.c:795 +msgid "Damit bist du hierhergekommen." +msgstr "You came here with it." + +#: ../../ms2/ms2_r1.c:796 +msgid "Fahrzeuge" +msgstr "Vehicles" + +#: ../../ms2/ms2_r1.c:796 +msgid "Du kannst von hier aus nicht erkennen,|was das fr Fahrzeuge sind." +msgstr "You cannot tell from here|what those vehicles are." + +#: ../../ms2/ms2_r1.c:803 ../../ms2/ms2_r1.c:804 +msgid "Fahrzeug" +msgstr "Vehicle" + +#: ../../ms2/ms2_r1.c:803 ../../ms2/ms2_r1.c:804 +msgid "Es scheint ein Taxi zu sein." +msgstr "It seems to be a taxi." + +#: ../../ms2/ms2_r1.c:805 +msgid "Komisch, er ist verschlossen." +msgstr "Funny, it is closed." + +#: ../../ms2/ms2_r1.c:806 +msgid "Portemonnaie" +msgstr "Wallet" + +#: ../../ms2/ms2_r1.c:806 +msgid "Das muá ein Axacussaner|hier verloren haben." +msgstr "This must have been|lost by an Axacussan." + +#: ../../ms2/ms2_r1.c:807 +msgid "Ger„t" +msgstr "Device" + +#: ../../ms2/ms2_r1.c:807 +msgid "Auf dem Ger„t steht: \"Taxi-Call\".|Es ist ein kleiner Knopf daran." +msgstr "The device says \"Taxi Call.\"|There is a small button on it." + +#: ../../ms2/ms2_r1.c:808 +msgid "Ausweis" +msgstr "ID card" + +#: ../../ms2/ms2_r1.c:808 +msgid "Auf dem Ausweis steht:| Berta Tschell| Axacuss City| 115AY2,96A,32" +msgstr "On the card it reads: | Berta Tschell | Axacuss City | 115AY2,96A,32" + +#: ../../ms2/ms2_r1.c:817 +msgid "Treppe" +msgstr "Staircase" + +#: ../../ms2/ms2_r1.c:817 +msgid "Sie fhrt zu den Gesch„ften." +msgstr "It leads to the shops." + +#: ../../ms2/ms2_r1.c:818 +msgid "Gesch„ftsstraáe im Hintergrund" +msgstr "Business street in the background" + +#: ../../ms2/ms2_r1.c:818 +msgid "Die Straáe scheint kein Ende zu haben." +msgstr "The road seems to have no end." + +#: ../../ms2/ms2_r1.c:819 ../../ms2/ms2_r1.c:820 +msgid "Stange" +msgstr "Rod" + +#: ../../ms2/ms2_r1.c:821 +msgid "Pfosten" +msgstr "Post" + +#: ../../ms2/ms2_r1.c:822 +msgid "Gel„nder" +msgstr "Railing" + +#: ../../ms2/ms2_r1.c:829 +msgid "Plakat" +msgstr "Poster" + +#: ../../ms2/ms2_r1.c:829 +msgid "" +"Musik Pur - Der Musikwettbewerb!|Heute im Kulturpalast|Hauptpreis:|" +"Fernsehauftritt mit Horst Hummel|Sponsored by Artus GmbH" +msgstr "" +"Pure Music - The Music Competition!|Today at the Palace of Culture|Main " +"Prize:|Television appearance with Horst Hummel|Sponsored by Artus GmbH" + +#: ../../ms2/ms2_r1.c:830 ../../ms2/ms2_r1.c:831 +msgid "Kabine" +msgstr "Cabin" + +#: ../../ms2/ms2_r1.c:830 +msgid "Sie ist frei!" +msgstr "It is free!" + +#: ../../ms2/ms2_r1.c:831 +msgid "Sie ist besetzt." +msgstr "It is occupied." + +#: ../../ms2/ms2_r1.c:832 +msgid "Fáe" +msgstr "Feet" + +#: ../../ms2/ms2_r1.c:832 +msgid "Komisch, die|Fáe scheinen|erstarrt zu sein." +msgstr "Strange, the|feet seem to be frozen." + +#: ../../ms2/ms2_r1.c:841 +msgid "Haube" +msgstr "Hood" + +#: ../../ms2/ms2_r1.c:841 +msgid "Sieht aus wie beim Fris”r." +msgstr "Looks like the hairdresser." + +#: ../../ms2/ms2_r1.c:842 +msgid "400 Xa" +msgstr "400 Xa" + +#: ../../ms2/ms2_r1.c:843 +msgid "10 Xa" +msgstr "10 Xa" + +#: ../../ms2/ms2_r1.c:844 +msgid "Darber steht:|\"Geldeinwurf: 10 Xa\"." +msgstr "It says:|\"Coins: 10 Xa\"." + +#: ../../ms2/ms2_r1.c:845 +msgid "Darber steht:|\"Gewinnausgabe / Geldrckgabe\"." +msgstr "It says:|\"Prize / Money Return\"." + +#: ../../ms2/ms2_r1.c:846 ../../ms2/ms2_r2.c:1264 +msgid "Stuhl" +msgstr "Chair" + +#: ../../ms2/ms2_r1.c:846 +msgid "Etwas Entspannung k”nntest du jetzt gebrauchen." +msgstr "You could use some relaxation right about now." + +#: ../../ms2/ms2_r1.c:847 ../../ms2/ms2_r1.c:848 +msgid "Gekritzel" +msgstr "Scribble" + +#: ../../ms2/ms2_r1.c:849 ../../ms2/ms2_r1.c:873 +msgid "Gesicht" +msgstr "Face" + +#: ../../ms2/ms2_r1.c:849 +msgid "Nicht zu fassen! Die|W„nde sind genauso beschmutzt|wie auf der Erde." +msgstr "Unbelievable! The walls|are just as dirty|as those on Earth." + +#: ../../ms2/ms2_r1.c:858 +msgid "Bcher" +msgstr "Books" + +#: ../../ms2/ms2_r1.c:859 +msgid "Lexikon" +msgstr "Dictionary" + +#: ../../ms2/ms2_r1.c:860 +msgid "Pflanze" +msgstr "Plant" + +#: ../../ms2/ms2_r1.c:861 +msgid "Maske" +msgstr "Mask" + +#: ../../ms2/ms2_r1.c:862 +msgid "Schlange" +msgstr "Snake" + +#: ../../ms2/ms2_r1.c:863 +msgid "Becher" +msgstr "Cup" + +#: ../../ms2/ms2_r1.c:864 +msgid "Joystick" +msgstr "Joystick" + +#: ../../ms2/ms2_r1.c:865 +msgid "Eine normale Zahnbrste,|es steht nur \"Artus\" darauf." +msgstr "An ordinary toothbrush.|It says \"Artus\" on it." + +#: ../../ms2/ms2_r1.c:866 +msgid "Musikger„t" +msgstr "Music device" + +#: ../../ms2/ms2_r1.c:866 +msgid "" +"Ein Ger„t zum Abspielen und|Aufnehmen von Musikchips.|Es ist ein Mikrofon " +"daran." +msgstr "" +"A device for playing and recording music chips.|There is a microphone on it." + +#: ../../ms2/ms2_r1.c:867 ../../ms2/ms2_r1.c:868 ../../ms2/ms2_r1.c:869 +#: ../../ms2/ms2_r1.c:870 ../../ms2/ms2_r1.c:871 +msgid "Flasche" +msgstr "Bottle" + +#: ../../ms2/ms2_r1.c:867 +msgid "Auf dem Etikett steht:|\"Enth„lt 10% Hyperalkohol\"." +msgstr "The label says: \"Contains 10% hyperalcohol\"." + +#: ../../ms2/ms2_r1.c:872 +msgid "Kiste" +msgstr "Box" + +#: ../../ms2/ms2_r1.c:874 +msgid "Verk„ufer" +msgstr "Seller" + +#: ../../ms2/ms2_r2.c:36 +msgid "Was? Dafr wollen Sie die Karte haben?" +msgstr "What? Do you want the card for that?" + +#: ../../ms2/ms2_r2.c:37 +msgid "Sie sind wohl nicht ganz ber|die aktuellen Preise informiert!" +msgstr "You are probably not completely|informed about the current prices!" + +#: ../../ms2/ms2_r2.c:47 +msgid "Ich bin's, Horst Hummel!" +msgstr "It's me, Horst Hummel!" + +#: ../../ms2/ms2_r2.c:48 +msgid "Sch”nes Wetter heute!" +msgstr "Nice weather today!" + +#: ../../ms2/ms2_r2.c:49 +msgid "" +"K”nnen Sie mir sagen, von wem ich eine Eintrittskarte fr den " +"Musikwettbewerb kriegen kann?" +msgstr "Can you tell me who can get me a ticket for the music contest?" + +#: ../../ms2/ms2_r2.c:55 +msgid "Ok, hier haben Sie den Xa." +msgstr "OK, here is the Xa." + +#: ../../ms2/ms2_r2.c:60 +msgid "Ich biete Ihnen 500 Xa." +msgstr "I offer you 500 Xa." + +#: ../../ms2/ms2_r2.c:61 +msgid "Ich biete Ihnen 1000 Xa." +msgstr "I offer you 1000 Xa." + +#: ../../ms2/ms2_r2.c:62 +msgid "Ich biete Ihnen 5000 Xa." +msgstr "I offer you 5000 Xa." + +#: ../../ms2/ms2_r2.c:63 +msgid "Ich biete Ihnen 10000 Xa." +msgstr "I offer you 10000 Xa." + +#: ../../ms2/ms2_r2.c:72 +msgid "Vielen Dank fr Ihren Kauf!" +msgstr "Thank you for your purchase!" + +#: ../../ms2/ms2_r2.c:77 +msgid "Was bieten Sie mir|denn nun fr die Karte?" +msgstr "What will you offer me|for the card?" + +#: ../../ms2/ms2_r2.c:81 +msgid "Hallo, Sie!" +msgstr "Hello to you!" + +#: ../../ms2/ms2_r2.c:83 ../../ms2/ms2_r2.c:719 +msgid "Was wollen Sie?" +msgstr "What do you want?" + +#: ../../ms2/ms2_r2.c:87 +msgid "Wer sind Sie?" +msgstr "Who are you?" + +#: ../../ms2/ms2_r2.c:88 +msgid "Horst Hummel!" +msgstr "Horst Hummel!" + +#: ../../ms2/ms2_r2.c:89 +msgid "Kenne ich nicht." +msgstr "Never heard of him." + +#: ../../ms2/ms2_r2.c:90 +msgid "Was, Sie kennen den berhmten Horst Hummel nicht?" +msgstr "What, you don't know the famous Horst Hummel?" + +#: ../../ms2/ms2_r2.c:91 +msgid "Ich bin doch der, der immer im Fernsehen zu sehen ist." +msgstr "I'm the guy who is always on TV." + +#: ../../ms2/ms2_r2.c:92 +msgid "Ich kenne Sie wirklich nicht." +msgstr "I really do not know you." + +#: ../../ms2/ms2_r2.c:93 +msgid "Komisch." +msgstr "Funny." + +#: ../../ms2/ms2_r2.c:95 ../../ms2/ms2_r2.c:1155 +msgid "Aha." +msgstr "Aha." + +#: ../../ms2/ms2_r2.c:97 +msgid "Ja, kann ich." +msgstr "Yes, I can." + +#: ../../ms2/ms2_r2.c:98 +msgid "Von wem denn?" +msgstr "From whom?" + +#: ../../ms2/ms2_r2.c:99 +msgid "Diese Information kostet einen Xa." +msgstr "This information costs a Xa." + +#: ../../ms2/ms2_r2.c:104 +msgid "Wie Sie meinen." +msgstr "As you say." + +#: ../../ms2/ms2_r2.c:110 +msgid "Sie k”nnen die Karte von MIR bekommen!" +msgstr "You can get the card from ME!" + +#: ../../ms2/ms2_r2.c:111 +msgid "Aber nur eine Teilnahmekarte,|keine Eintrittskarte." +msgstr "But only a participation ticket,|not an entrance ticket." + +#: ../../ms2/ms2_r2.c:112 +msgid "Was wollen Sie dafr haben?" +msgstr "What do you want for it?" + +#: ../../ms2/ms2_r2.c:113 +msgid "Machen Sie ein Angebot!" +msgstr "Make an offer!" + +#: ../../ms2/ms2_r2.c:133 +msgid "Das ist ein gutes Angebot!" +msgstr "That's a good offer!" + +#: ../../ms2/ms2_r2.c:135 +msgid "Dafr gebe ich Ihnen meine|letzte Teilnahmekarte!" +msgstr "For that I give you my|last participation card!" + +#: ../../ms2/ms2_r2.c:140 +msgid "(Dieser Trottel!)" +msgstr "(That Idiot!)" + +#: ../../ms2/ms2_r2.c:190 +msgid "Ich wrde gern beim Musikwettbewerb zuschauen." +msgstr "I would like to watch the music competition." + +#: ../../ms2/ms2_r2.c:191 +msgid "Ich wrde gern am Musikwettbewerb teilnehmen." +msgstr "I would like to participate in the music competition." + +#: ../../ms2/ms2_r2.c:192 +msgid "Wieviel Uhr haben wir?" +msgstr "What time is it?" + +#: ../../ms2/ms2_r2.c:196 ../../ms2/ms2_r2.c:749 +msgid "Ja." +msgstr "Yes." + +#: ../../ms2/ms2_r2.c:197 ../../ms2/ms2_r2.c:379 ../../ms2/ms2_r2.c:391 +#: ../../ms2/ms2_r2.c:697 +msgid "Nein." +msgstr "No." + +#: ../../ms2/ms2_r2.c:201 +msgid "Hallo, Leute!" +msgstr "Hi guys!" + +#: ../../ms2/ms2_r2.c:202 +msgid "Hi, Fans!" +msgstr "Hi, fans!" + +#: ../../ms2/ms2_r2.c:203 +msgid "Gute Nacht!" +msgstr "Good night!" + +#: ../../ms2/ms2_r2.c:207 +msgid "Žh, wie geht es euch?" +msgstr "Uh, how are you?" + +#: ../../ms2/ms2_r2.c:208 +msgid "Sch”nes Wetter heute." +msgstr "Nice weather today." + +#: ../../ms2/ms2_r2.c:212 +msgid "Hmm ..." +msgstr "Hmm ..." + +#: ../../ms2/ms2_r2.c:213 +msgid "Tja ..." +msgstr "Well ..." + +#: ../../ms2/ms2_r2.c:214 +msgid "Also ..." +msgstr "So ..." + +#: ../../ms2/ms2_r2.c:218 +msgid "Ok, los gehts!" +msgstr "OK let's go!" + +#: ../../ms2/ms2_r2.c:219 +msgid "Ich klimper mal was auf dem Keyboard hier." +msgstr "I'll fix something on the keyboard here." + +#: ../../ms2/ms2_r2.c:234 +msgid "Halt, sie sind doch schon drangewesen!" +msgstr "Stop, you have already been on it!" + +#: ../../ms2/ms2_r2.c:240 +msgid "He, Sie! Haben Sie|eine Eintrittskarte?" +msgstr "Hey, you! Do you have|a ticket?" + +#: ../../ms2/ms2_r2.c:244 +msgid "Ja natrlich, hier ist meine Teilnahmekarte." +msgstr "Yes of course, here is my participation ticket." + +#: ../../ms2/ms2_r2.c:245 +msgid "" +"Sie sind Teilnehmer! Fragen|Sie bitte an der Kasse nach,|wann Sie auftreten " +"k”nnen." +msgstr "" +"You are a participant!|Please ask at the checkout|when you can go on stage." + +#: ../../ms2/ms2_r2.c:247 +msgid "Žh, nein." +msgstr "Uh, no." + +#: ../../ms2/ms2_r2.c:252 +msgid "He, wo ist Ihr Musikchip?" +msgstr "Hey, where's your music chip?" + +#: ../../ms2/ms2_r2.c:267 +msgid "Laber nicht!" +msgstr "Stop talking!" + +#: ../../ms2/ms2_r2.c:270 +msgid "Fang an!" +msgstr "Get started!" + +#: ../../ms2/ms2_r2.c:273 +msgid "Einen Moment, ich muá erstmal berlegen, was ich|euch spiele." +msgstr "One moment, I have to think about what I'm playing for you." + +#: ../../ms2/ms2_r2.c:275 +msgid "Anfangen!!!" +msgstr "Begin!!!" + +#: ../../ms2/ms2_r2.c:278 +msgid "Nun denn ..." +msgstr "Well then ..." + +#: ../../ms2/ms2_r2.c:279 +msgid "Raus!" +msgstr "Out!" + +#: ../../ms2/ms2_r2.c:291 ../../ms2/ms2_r2.c:306 +msgid "Buh!" +msgstr "Boo!" + +#: ../../ms2/ms2_r2.c:298 +msgid "Aufh”ren!" +msgstr "Stop!" + +#: ../../ms2/ms2_r2.c:309 +msgid "Hilfe!" +msgstr "Help!" + +#: ../../ms2/ms2_r2.c:312 +msgid "Ich verziehe mich lieber." +msgstr "I'd prefer to get lost." + +#: ../../ms2/ms2_r2.c:317 +msgid "Mist, auf dem Chip war|gar keine Musik drauf." +msgstr "Damn, there was no music on the chip at all." + +#: ../../ms2/ms2_r2.c:319 +msgid "Das ging ja voll daneben!" +msgstr "That went completely wrong!" + +#: ../../ms2/ms2_r2.c:327 +msgid "Du n„herst dich der Bhne,|aber dir wird mulmig zumute." +msgstr "You approach the stage,|but you feel queasy." + +#: ../../ms2/ms2_r2.c:330 +msgid "" +"Du traust dich nicht, vor|so vielen Menschen aufzutreten|und kehrst wieder " +"um." +msgstr "You do not dare to appear|in front of so many people|and turn around." + +#: ../../ms2/ms2_r2.c:347 +msgid "Oh, Sie sind Teilnehmer!|Dann sind Sie aber sp„t dran." +msgstr "Oh, you are a participant!|But you are late." + +#: ../../ms2/ms2_r2.c:348 +msgid "Spielen Sie die Musik live?" +msgstr "Do you play the music live?" + +#: ../../ms2/ms2_r2.c:351 +msgid "" +"Dann geben Sie bitte Ihren Musikchip ab!|Er wird bei Ihrem Auftritt " +"abgespielt." +msgstr "" +"Then please submit your music chip!|It will be played during your " +"performance." + +#: ../../ms2/ms2_r2.c:357 +msgid "" +"Oh, Sie sind sofort an der Reihe!|Beeilen Sie sich! Der Bhneneingang|ist " +"hinter dem Haupteingang rechts." +msgstr "" +"Oh, it's your turn!|Hurry! The stage entrance|is to the right behind the " +"main entrance." + +#: ../../ms2/ms2_r2.c:367 +msgid "Habe ich noch einen zweiten Versuch?" +msgstr "Can I have another try?" + +#: ../../ms2/ms2_r2.c:368 +msgid "Nein!" +msgstr "No!" + +#: ../../ms2/ms2_r2.c:378 +msgid "Haben Sie schon eine Eintrittskarte?" +msgstr "Do you already have a ticket?" + +#: ../../ms2/ms2_r2.c:380 +msgid "Tut mir leid, die Karten|sind schon alle ausverkauft." +msgstr "I'm sorry, the tickets|are already sold out." + +#: ../../ms2/ms2_r2.c:381 +msgid "Mist!" +msgstr "Crap!" + +#: ../../ms2/ms2_r2.c:383 +msgid "Haben Sie schon eine Teilnahmekarte?" +msgstr "Do you already have a participation ticket?" + +#: ../../ms2/ms2_r2.c:386 +msgid "Ja, hier ist sie." +msgstr "Yes, here it is." + +#: ../../ms2/ms2_r2.c:392 +msgid "Tut mir leid, die Teilnahmekarten|sind schon alle ausverkauft." +msgstr "I'm sorry, the participation tickets|are already sold out." + +#: ../../ms2/ms2_r2.c:393 +msgid "Scheiáe!" +msgstr "Crap!" + +#: ../../ms2/ms2_r2.c:396 +msgid "Das kann ich Ihnen|leider nicht sagen." +msgstr "I can not tell you that." + +#: ../../ms2/ms2_r2.c:401 +msgid "Wo ist denn nun Ihr Musikchip?" +msgstr "Where is your music chip?" + +#: ../../ms2/ms2_r2.c:403 +msgid "Jetzt beeilen Sie sich doch!" +msgstr "Now hurry up!" + +#: ../../ms2/ms2_r2.c:416 +msgid "" +"Huch, Sie sind hier bei einem Musik-,|nicht bei einem Imitationswettbewerb" +msgstr "Huh, you're here at a music contest,|not at an imitation contest" + +#: ../../ms2/ms2_r2.c:417 +msgid "Imitationswettbewerb?|Ich will niemanden imitieren." +msgstr "Imitation contest?|I do not want to imitate anyone." + +#: ../../ms2/ms2_r2.c:418 +msgid "Guter Witz, wieso sehen Sie|dann aus wie Horst Hummel?" +msgstr "Good joke. Then why do you look like Horst Hummel?" + +#: ../../ms2/ms2_r2.c:420 +msgid "" +"Na, nun h”ren Sie auf! So perfekt ist|ihre Verkleidung auch wieder nicht." +msgstr "Oh come on! Your disguise isn't that perfect." + +#: ../../ms2/ms2_r2.c:421 +msgid "" +"Ich werde Ihnen beweisen, daá ich Horst Hummel bin,|indem ich diesen " +"Wettbewerb hier gewinne." +msgstr "I will prove to you that I am Horst Hummel|by winning this competition." + +#: ../../ms2/ms2_r2.c:422 +msgid "Dann kann ich in dieser verdammten Fernsehshow|auftreten." +msgstr "Then I can perform in this|damn TV show." + +#: ../../ms2/ms2_r2.c:447 +msgid "" +"Du hampelst ein biáchen zu|der Musik vom Chip herum.|Die Leute sind " +"begeistert!" +msgstr "" +"You're rocking a little bit|to the music from the chip.|The audience is " +"excited!" + +#: ../../ms2/ms2_r2.c:484 +msgid "Guten Abend. Diesmal haben wir|einen besonderen Gast bei uns." +msgstr "Good evening. This time we have|a special guest with us." + +#: ../../ms2/ms2_r2.c:485 +msgid "" +"Es ist der Gewinner des gestrigen|Musikwettbewerbs im Kulturpalast,|der dort " +"vor allem durch seine|Verkleidung aufgefallen war." +msgstr "" +"He is the winner of yesterday's music competition in the Palace of Culture.|" +"He was particularly noteworthy|because of his disguise." + +#: ../../ms2/ms2_r2.c:489 +msgid "Sie haben das Wort!" +msgstr "You have the floor!" + +#: ../../ms2/ms2_r2.c:490 +msgid "Nun ja, meine erste Frage lautet: ..." +msgstr "Well, my first question is ..." + +#: ../../ms2/ms2_r2.c:491 +msgid "" +"Warum haben Sie sich sofort nach|Ihrer Landung entschlossen, fr|die Artus-" +"GmbH zu arbeiten?" +msgstr "" +"Why did you decide immediately|after your arrival to work for|Artus GmbH?" + +#: ../../ms2/ms2_r2.c:492 +msgid "" +"Es war meine freie Entscheidung.|Die Artus-GmbH hat mir einfach gefallen." +msgstr "It was a decision I made on my own.|I just decided I liked Artus-GmbH." + +#: ../../ms2/ms2_r2.c:493 +msgid "" +"Wieso betonen Sie, daá es|Ihre freie Entscheidung war?|Haben Sie Angst, daá " +"man Ihnen|nicht glaubt?" +msgstr "" +"Why do you stress that|it was your own decision?|Are you afraid that nobody " +"will believe you otherwise?" + +#: ../../ms2/ms2_r2.c:494 +msgid "Also, ich muá doch sehr bitten!|Was soll diese unsinnige Frage?" +msgstr "How dare you!|What is with this nonsensical question?" + +#: ../../ms2/ms2_r2.c:495 +msgid "" +"Ich finde die Frage wichtig.|Nun, Herr Hummel, was haben|Sie dazu zu sagen?" +msgstr "" +"I think the question is important.|Well, Mr. Hummel, what do you have to say?" + +#: ../../ms2/ms2_r2.c:505 +msgid "Auf solch eine Frage brauche|ich nicht zu antworten!" +msgstr "I don't feel that I have|to answer such a question!" + +#: ../../ms2/ms2_r2.c:506 +msgid "Gut, dann etwas anderes ..." +msgstr "Alright, something else then ..." + +#: ../../ms2/ms2_r2.c:507 +msgid "" +"Sie sind von Beruf Koch.|Wie hieá das Restaurant,|in dem Sie auf der Erde|" +"gearbeitet haben?" +msgstr "" +"You are a chef by profession.|What was the name of the restaurant|where you " +"worked|on Earth?" + +#: ../../ms2/ms2_r2.c:508 +msgid "Hmm, daá weiá ich nicht mehr." +msgstr "Hmm, I do not remember that." + +#: ../../ms2/ms2_r2.c:509 +msgid "" +"Sie wollen mir doch nicht weismachen,|daá Sie den Namen vergessen haben!" +msgstr "Do you really expect me to believe you cannot remember the name?" + +#: ../../ms2/ms2_r2.c:510 +msgid "Schlieálich haben Sie|zehn Jahre dort gearbeitet!" +msgstr "After all, you worked there for ten years!" + +#: ../../ms2/ms2_r2.c:511 +msgid "Woher wollen Sie das wissen?" +msgstr "How do you know that?" + +#: ../../ms2/ms2_r2.c:512 +msgid "Nun, ich komme von der Erde,|im Gegensatz zu Ihnen!" +msgstr "Well, I come from Earth,|unlike you!" + +#: ../../ms2/ms2_r2.c:522 +msgid "Langsam gehen Sie zu weit!" +msgstr "Now you've gone too far!" + +#: ../../ms2/ms2_r2.c:523 +msgid "" +"Sie sind ein Roboter!|Das merkt man schon an|Ihrer dummen Antwort!|Sie sind " +"nicht optimal|programmiert!" +msgstr "" +"You are a robot!|It is obvious from|your stupid answer!|You are not even " +"programmed|correctly!" + +#: ../../ms2/ms2_r2.c:533 +msgid "" +"Wenn Sie jetzt nicht mit Ihren|Beleidigungen aufh”ren, muá ich|Ihnen das " +"Mikrofon abschalten!" +msgstr "" +"If you do not stop right now|with your insults, I will have|to turn off the " +"microphone!" + +#: ../../ms2/ms2_r2.c:534 +msgid "Ich bin der echte Horst Hummel,|und hier ist der Beweis!" +msgstr "I am the real Horst Hummel,|and here is the proof!" + +#: ../../ms2/ms2_r2.c:558 +msgid "" +"Am n„chsten Morgen sind alle|Zeitungen voll mit deiner spektakul„ren|" +"Enthllung des Schwindels." +msgstr "" +"The next morning, all the papers|are full of your spectacular|revelation of " +"fraud." + +#: ../../ms2/ms2_r2.c:561 +msgid "" +"Die Manager der Artus-GmbH und Commander|Sumoti wurden sofort verhaftet." +msgstr "" +"The managers of Artus-GmbH and Commander|Sumoti were arrested immediately." + +#: ../../ms2/ms2_r2.c:564 +msgid "" +"Nach dem Streá der letzten Tage,|entscheidest du dich, auf die|Erde " +"zurckzukehren." +msgstr "After these stressful last few days|you decide to return to Earth." + +#: ../../ms2/ms2_r2.c:567 +msgid "W„hrend du dich vor Interviews|kaum noch retten kannst, ..." +msgstr "While you can barely save|yourself from interviews, ..." + +#: ../../ms2/ms2_r2.c:570 +msgid "" +"... arbeiten die Axacussanischen|Techniker an einem Raumschiff,|das dich zur " +"Erde zurckbringen soll." +msgstr "" +"... the Axacussan|technicians are working on a spaceship|to bring you back " +"to Earth." + +#: ../../ms2/ms2_r2.c:573 +msgid "Eine Woche sp„ter ist der|Tag des Starts gekommen." +msgstr "One week later, the day of the launch has arrived." + +#: ../../ms2/ms2_r2.c:603 +msgid "" +"Zum dritten Mal in deinem|Leben verbringst du eine lange|Zeit im Tiefschlaf." +msgstr "For the third time in your life,|you spend a long time|in deep sleep." + +#: ../../ms2/ms2_r2.c:606 +msgid "Zehn Jahre sp„ter ..." +msgstr "Ten years later ..." + +#: ../../ms2/ms2_r2.c:609 +msgid "" +"Du wachst auf und beginnst,|dich schwach an deine|Erlebnisse zu erinnern." +msgstr "You wake up and begin|to faintly remember|your experiences." + +#: ../../ms2/ms2_r2.c:612 +msgid "Um dich herum ist alles dunkel." +msgstr "Everything is dark around you." + +#: ../../ms2/ms2_r2.c:670 ../../ms2/ms2_r2.c:900 +#, c-format +msgid "Sie zeigt %d an." +msgstr "It displays %d." + +#: ../../ms2/ms2_r2.c:680 +msgid "Ich interessiere mich fr den Job, bei dem man ber Nacht" +msgstr "I'm interested in the job where you can get" + +#: ../../ms2/ms2_r2.c:681 +msgid "reich werden kann." +msgstr "rich overnight." + +#: ../../ms2/ms2_r2.c:682 +msgid "Ich verkaufe frische Tomaten." +msgstr "I sell fresh tomatoes." + +#: ../../ms2/ms2_r2.c:683 +msgid "Ich bin der Klempner. Ich soll hier ein Rohr reparieren." +msgstr "I am the plumber. I'm supposed to fix a pipe here." + +#: ../../ms2/ms2_r2.c:688 +msgid "Ja, h”rt sich gut an." +msgstr "Yes, it sounds good." + +#: ../../ms2/ms2_r2.c:689 +msgid "Krumme Gesch„fte? Fr wen halten Sie mich? Auf Wiedersehen!" +msgstr "Crooked business? Who do you think I am? Goodbye!" + +#: ../../ms2/ms2_r2.c:693 +msgid "Žh - k”nnten Sie mir das Ganze nochmal erkl„ren?" +msgstr "Uh - could you explain that to me again?" + +#: ../../ms2/ms2_r2.c:694 +msgid "Wie groá ist mein Anteil?" +msgstr "How big is my share?" + +#: ../../ms2/ms2_r2.c:695 +msgid "" +"Machen Sie es immer so, daá Sie Ihre Komplizen ber ein Graffitti anwerben?" +msgstr "Do you always use graffiti to recruit your accomplices?" + +#: ../../ms2/ms2_r2.c:722 +msgid "Hmm, Moment mal, ich frage den Boss." +msgstr "Hmm wait, I will ask the boss." + +#: ../../ms2/ms2_r2.c:728 +msgid "Kurze Zeit sp„ter ..." +msgstr "A short while later ..." + +#: ../../ms2/ms2_r2.c:736 +msgid "Ok, der Boss will dich sprechen." +msgstr "OK, the boss wants to talk to you." + +#: ../../ms2/ms2_r2.c:742 +msgid "Du betrittst die Wohnung und|wirst zu einem Tisch gefhrt." +msgstr "You enter the apartment and are led to a table." + +#: ../../ms2/ms2_r2.c:748 +msgid "Hmm, du willst dir also|etwas Geld verdienen?" +msgstr "Hmm, so you want to earn some money?" + +#: ../../ms2/ms2_r2.c:750 +msgid "Nun ja, wir planen|einen n„chtlichen Besuch|eines bekannten Museums." +msgstr "Well, we're planning|a nightly visit|to a well-known museum." + +#: ../../ms2/ms2_r2.c:751 +msgid "Wie sieht's aus, bist du interessiert?" +msgstr "So, are you interested?" + +#: ../../ms2/ms2_r2.c:754 +msgid "Halt, warte!" +msgstr "Stop, wait!" + +#: ../../ms2/ms2_r2.c:755 +msgid "šberleg's dir, es springen|30000 Xa fr dich raus!" +msgstr "Think about it, your share would be|30000 Xa!" + +#: ../../ms2/ms2_r2.c:756 +msgid "30000?! Ok, ich mache mit." +msgstr "30000?! Alright, count me in." + +#: ../../ms2/ms2_r2.c:758 +msgid "Gut, dann zu den Einzelheiten." +msgstr "Good, now then to the details." + +#: ../../ms2/ms2_r2.c:759 +msgid "Bei dem Museum handelt es|sich um das Orzeng-Museum." +msgstr "The museum in question is|the Orzeng Museum." + +#: ../../ms2/ms2_r2.c:760 +msgid "Es enth„lt die wertvollsten|Dinosaurierfunde von ganz Axacuss." +msgstr "It contains the most valuable|dinosaur discoveries of Axacuss." + +#: ../../ms2/ms2_r2.c:761 +msgid "Wir haben es auf das Sodo-Skelett|abgesehen. Es ist weltberhmt." +msgstr "We're aiming to get the Sodo skeleton.|It is world-famous." + +#: ../../ms2/ms2_r2.c:762 +msgid "Alle bekannten Pal„ontologen haben|sich schon damit besch„ftigt." +msgstr "All known paleontologists|have already dealt with it." + +#: ../../ms2/ms2_r2.c:763 +msgid "" +"Der Grund dafr ist, daá es allen|bis jetzt bekannten Erkenntnissen|šber die " +"Evolution widerspricht." +msgstr "" +"The reason for this is that it contradicts all known|knowledge about " +"evolution." + +#: ../../ms2/ms2_r2.c:764 +msgid "" +"Irgendein verrckter Forscher|bietet uns 200.000 Xa,|wenn wir ihm das Ding " +"beschaffen." +msgstr "" +"Some crazy researcher|will give us 200,000 Xa|if we retrieve that thing for " +"him." + +#: ../../ms2/ms2_r2.c:765 +msgid "So, jetzt zu deiner Aufgabe:" +msgstr "So, now to your task:" + +#: ../../ms2/ms2_r2.c:767 +msgid "Du dringst durch den Nebeneingang|in das Geb„ude ein." +msgstr "You enter the building through|the side entrance." + +#: ../../ms2/ms2_r2.c:768 +msgid "" +"Dort schaltest du die Alarmanlage aus,|durch die das Sodo-Skelett gesichert " +"wird." +msgstr "There you switch off the alarm system,|which secures the Sodo skeleton." + +#: ../../ms2/ms2_r2.c:769 +msgid "Wir betreten einen anderen Geb„udeteil|und holen uns das Gerippe." +msgstr "We'll enter another part of the building|and fetch the skeleton." + +#: ../../ms2/ms2_r2.c:770 +msgid "Deine Aufgabe ist nicht leicht.|Schau dir diesen Plan an." +msgstr "Your task is not easy.|Look at this plan." + +#: ../../ms2/ms2_r2.c:775 +msgid "" +"Unten siehst du die kleine Abstellkammer,|durch die du in die " +"Austellungsr„ume kommst." +msgstr "" +"Below you can see the small storage room,|through which you come to the " +"showrooms." + +#: ../../ms2/ms2_r2.c:776 +msgid "Bei der mit Y gekennzeichneten|Stelle ist die Alarmanlage." +msgstr "The alarm system is at the location marked Y." + +#: ../../ms2/ms2_r2.c:777 +msgid "" +"Bei dem X steht ein groáer Dinosaurier|mit einem wertvollen Sch„del.|Den " +"Sch„del nimmst du mit." +msgstr "" +"The X marks the spot with a big dinosaur|with a valuable skull.|You will " +"take the skull with you." + +#: ../../ms2/ms2_r2.c:778 +msgid "Nun zu den Problemen:" +msgstr "Now for the problems:" + +#: ../../ms2/ms2_r2.c:779 +msgid "Die weiá gekennzeichneten|Tren sind verschlossen." +msgstr "The marked white doors|are locked." + +#: ../../ms2/ms2_r2.c:780 +msgid "" +"Sie mssen mit einer Spezialkeycard ge”ffnet|werden, was jedoch einige Zeit " +"dauert." +msgstr "They have to be opened with a special keycard,|which can take a while." + +#: ../../ms2/ms2_r2.c:781 +msgid "" +"Auáerdem gibt es in den auf der Karte|farbigen R„umen einen Druck-Alarm." +msgstr "" +"In addition, there are pressure alarms|in the rooms which are colored on the " +"map." + +#: ../../ms2/ms2_r2.c:782 +msgid "" +"Du darfst dich dort nicht l„nger|als 16 bzw. 8 Sekunden aufhalten,|sonst " +"wird Alarm ausgel”st." +msgstr "" +"You can not stay there longer than|16 or 8 seconds,|or the alarm will go off." + +#: ../../ms2/ms2_r2.c:783 +msgid "Im Raum oben rechts ist|eine Kamera installiert." +msgstr "In the room at the top right|there is a camera installed." + +#: ../../ms2/ms2_r2.c:784 +msgid "" +"Diese wird jedoch nur von|der 21. bis zur 40. Sekunde|einer Minute berwacht." +msgstr "" +"However, it is only monitored|between the 21st and the 40th second|of every " +"minute." + +#: ../../ms2/ms2_r2.c:785 +msgid "Das gr”áte Problem ist der W„chter." +msgstr "The biggest problem is the guard." + +#: ../../ms2/ms2_r2.c:786 +msgid "" +"Er braucht fr seine Runde genau|eine Minute, ist also ungef„hr|zehn " +"Sekunden in einem Raum." +msgstr "" +"He needs exactly one minute for his round,|so he is in each room|for about " +"ten seconds." + +#: ../../ms2/ms2_r2.c:787 +msgid "" +"Du mátest seine Schritte h”ren k”nnen,|wenn du in der Abstellkammer bist|" +"und der W„chter dort vorbeikommt." +msgstr "" +"You should be able to hear his footsteps|if you are in the closet|and the " +"guard passes by." + +#: ../../ms2/ms2_r2.c:788 +msgid "" +"Wenn du es bis zur Alarmanlage|geschafft hast, h„ngst du dich|mit dem Sauger " +"an die Wand,|damit du keinen Druck-Alarm ausl”st." +msgstr "" +"If you make it to the alarm system,|you'll use the sucker to hang on the " +"wall|to avoid triggering the pressure alarm." + +#: ../../ms2/ms2_r2.c:789 +msgid "Die Alarmanlage schaltest du|mit einem speziellen Ger„t aus." +msgstr "You switch off the alarm system|with a special device." + +#: ../../ms2/ms2_r2.c:790 +msgid "" +"Wenn du das geschafft hast, nichts|wie raus! Aber keine Panik,|du darfst " +"keinen Alarm ausl”sen." +msgstr "" +"Once you're done, get out of there!|But do not panic!|You must not set off " +"the alarm." + +#: ../../ms2/ms2_r2.c:795 +msgid "So, noch irgendwelche Fragen?" +msgstr "So, any more questions?" + +#: ../../ms2/ms2_r2.c:801 +msgid "Also gut." +msgstr "All right then." + +#: ../../ms2/ms2_r2.c:803 +msgid "Du bekommst 30000 Xa." +msgstr "You get 30,000 Xa." + +#: ../../ms2/ms2_r2.c:805 +msgid "Ja, die Methode hat sich bew„hrt." +msgstr "Yes, that method has proven itself worthy." + +#: ../../ms2/ms2_r2.c:808 +msgid "Hast du sonst noch Fragen?" +msgstr "Do you have any questions?" + +#: ../../ms2/ms2_r2.c:811 +msgid "Nachdem wir alles gekl„rt|haben, kann es ja losgehen!" +msgstr "Now that we are on the same page we can get started!" + +#: ../../ms2/ms2_r2.c:816 +msgid "Zur vereinbarten Zeit ..." +msgstr "At the agreed upon time ..." + +#: ../../ms2/ms2_r2.c:834 +msgid "" +"Du stehst vor dem Orzeng Museum,|w„hrend die Gangster schon in einen|anderen " +"Geb„uderteil eingedrungen sind." +msgstr "" +"You stand in front of the Orzeng Museum,|while the gangsters have already " +"penetrated|into another part of the building." + +#: ../../ms2/ms2_r2.c:837 +msgid "" +"Wichtiger Hinweis:|Hier ist die letzte M”glichkeit,|vor dem Einbruch " +"abzuspeichern." +msgstr "" +"Important note:|Here is the last possibility to save|before the break-in." + +#: ../../ms2/ms2_r2.c:840 +msgid "Wenn Sie das Museum betreten haben,|k”nnen Sie nicht mehr speichern!" +msgstr "Once you enter the museum|you will not be able to save!" + +#: ../../ms2/ms2_r2.c:848 +msgid "Stecken Sie sich Ihre|Tomaten an den Hut!" +msgstr "You can keep your tomatoes!" + +#: ../../ms2/ms2_r2.c:855 +msgid "Das kann ja jeder sagen!" +msgstr "Anyone can say that!" + +#: ../../ms2/ms2_r2.c:865 +msgid "Niemand ”ffnet." +msgstr "Nobody answers." + +#: ../../ms2/ms2_r2.c:870 +msgid "Welche Zahl willst du eingeben: " +msgstr "What number do you want to enter: " + +#: ../../ms2/ms2_r2.c:882 ../../ms2/ms2_r2.c:886 +msgid "Falsche Eingabe" +msgstr "Invalid input" + +#: ../../ms2/ms2_r2.c:896 +msgid "Der Aufzug bewegt sich." +msgstr "The elevator is moving." + +#: ../../ms2/ms2_r2.c:914 +msgid "Die Karte wird|nicht angenommen." +msgstr "The card|is not accepted." + +#: ../../ms2/ms2_r2.c:927 +msgid "Da ist nichts mehr." +msgstr "There is nothing left." + +#: ../../ms2/ms2_r2.c:930 +msgid "Da ist ein Schlssel unter dem Bett!" +msgstr "There's a key under the bed!" + +#: ../../ms2/ms2_r2.c:936 +msgid "" +"Hey, da ist etwas unter dem|Bett. Nach dem Ger„usch zu|urteilen, ist es aus " +"Metall." +msgstr "" +"Hey, there is something under the|bed. Judging by the noise,|it is made of " +"metal." + +#: ../../ms2/ms2_r2.c:939 +msgid "Mist, es gelingt dir nicht,|den Gegenstand hervorzuholen." +msgstr "Damn, you do not succeed in getting the object out." + +#: ../../ms2/ms2_r2.c:945 +msgid "Die Klappe ist schon offen." +msgstr "The flap is already open." + +#: ../../ms2/ms2_r2.c:979 +msgid "Der Schlsssel paát nicht." +msgstr "The key does not fit." + +#: ../../ms2/ms2_r2.c:983 +msgid "" +"Du steckst den Chip in die|Anlage, aber es passiert nichts.|Die Anlage " +"scheint kaputt zu sein." +msgstr "" +"You put the chip in the stereo,|but nothing happens.|The stereo seems to be " +"broken." + +#: ../../ms2/ms2_r2.c:987 +msgid "Es passiert nichts. Das Ding|scheint kaputt zu sein." +msgstr "Nothing happens. The thing|seems to be broken." + +#: ../../ms2/ms2_r2.c:998 +msgid "Hochspannung ist ungesund, wie du aus|Teil 1 eigentlich wissen mátest!" +msgstr "High voltage is unhealthy, as you|should already know|from Part 1!" + +#: ../../ms2/ms2_r2.c:1034 +msgid "Es h„ngt ein Kabel heraus." +msgstr "A cable hangs out." + +#: ../../ms2/ms2_r2.c:1035 +msgid "Irgendetwas hat hier|nicht ganz funktioniert." +msgstr "Something did not|quite work out here." + +#: ../../ms2/ms2_r2.c:1059 +msgid "Du ziehst den Raumanzug an." +msgstr "You put on your space suit." + +#: ../../ms2/ms2_r2.c:1061 +msgid "Du ziehst den Raumanzug aus." +msgstr "You take off your space suit." + +#: ../../ms2/ms2_r2.c:1069 ../../ms2/ms2_r2.c:1099 +msgid "Das ist schon verbunden." +msgstr "That is already connected." + +#: ../../ms2/ms2_r2.c:1129 +msgid "Die Leitung ist hier|schon ganz richtig." +msgstr "The cable is already|at the right place." + +#: ../../ms2/ms2_r2.c:1137 +msgid "Roger W.! Wie kommen Sie denn hierher?" +msgstr "Roger W.! How did you get here?" + +#: ../../ms2/ms2_r2.c:1140 +msgid "Ach, sieh mal einer an! Sie schon wieder!" +msgstr "Oh, look at that! It's you again!" + +#: ../../ms2/ms2_r2.c:1141 +msgid "Wo haben Sie denn|Ihr Schiff gelassen?" +msgstr "Where did you|leave your ship?" + +#: ../../ms2/ms2_r2.c:1144 +msgid "Schauen Sie mal hinter mich auf|den Turm! Da oben h„ngt es." +msgstr "Take a look behind me, up on|the tower! It's up there." + +#: ../../ms2/ms2_r2.c:1145 +msgid "" +"Ich hatte es scheinbar etwas zu|eilig, aber ich muáte unbedingt|zu den " +"Dreharbeiten nach Xenon!" +msgstr "" +"Apparently I was too much in a hurry,|but I had to be at the film shooting " +"in Xenon!" + +#: ../../ms2/ms2_r2.c:1146 +msgid "Mich wundert, daá es die Leute|hier so gelassen nehmen." +msgstr "I am surprised that people|here take things so calmly." + +#: ../../ms2/ms2_r2.c:1147 +msgid "" +"Die tun gerade so, als ob der Turm|schon immer so schr„g gestanden h„tte!" +msgstr "They are pretending that the tower|has always been that slanted!" + +#: ../../ms2/ms2_r2.c:1148 +msgid "Hat er auch, schon seit|mehreren Jahrhunderten!" +msgstr "It has, for|several centuries, actually!" + +#: ../../ms2/ms2_r2.c:1151 +msgid "" +"Žh ... ach so. Und von wo|kommen Sie? Sie hatten's ja|wohl auch ziemlich " +"eilig." +msgstr "" +"Uh ... I see. And where are you coming from? It seems you were in quite a " +"hurry as well." + +#: ../../ms2/ms2_r2.c:1152 +msgid "Ich komme von Axacuss." +msgstr "I come from Axacuss." + +#: ../../ms2/ms2_r2.c:1156 +msgid "Hmm, was mach ich jetzt bloá?" +msgstr "Hmm, what am I going to do now?" + +#: ../../ms2/ms2_r2.c:1157 +msgid "" +"Ich kenne ein gutes Cafe nicht|weit von hier, da k”nnen|wir uns erstmal " +"erholen." +msgstr "I know a good cafe not far from here,|where we can get some rest." + +#: ../../ms2/ms2_r2.c:1160 +msgid "Ok, einverstanden." +msgstr "OK, I agree." + +#: ../../ms2/ms2_r2.c:1204 +msgid "Faszinierend!" +msgstr "Fascinating!" + +#: ../../ms2/ms2_r2.c:1205 +msgid "Taxis" +msgstr "Taxis" + +#: ../../ms2/ms2_r2.c:1205 +msgid "Hier ist ja richtig was los!" +msgstr "There seems to be something really going on here!" + +#: ../../ms2/ms2_r2.c:1206 +msgid "Axacussaner" +msgstr "Axacussan" + +#: ../../ms2/ms2_r2.c:1207 +msgid "Teilnahmekarte" +msgstr "Participation card" + +#: ../../ms2/ms2_r2.c:1216 +msgid "Axacussanerin" +msgstr "Axacussian" + +#: ../../ms2/ms2_r2.c:1223 +msgid "Darauf steht:|\"115AY2,96A\"" +msgstr "It reads:|\"115AY2,96A\"" + +#: ../../ms2/ms2_r2.c:1224 +msgid "Darauf steht:|\"115AY2,96B\"" +msgstr "It reads:|\"115AY2,96B\"" + +#: ../../ms2/ms2_r2.c:1233 +msgid "Darauf steht:|\"341,105A\"" +msgstr "It reads:|\"341,105A\"" + +#: ../../ms2/ms2_r2.c:1234 +msgid "Darauf steht:|\"341,105B\"" +msgstr "It reads:|\"341,105B\"" + +#: ../../ms2/ms2_r2.c:1244 +msgid "Klingel" +msgstr "Bell" + +#: ../../ms2/ms2_r2.c:1245 +msgid "Anzeige" +msgstr "Display" + +#: ../../ms2/ms2_r2.c:1246 +msgid "Tastenblock" +msgstr "Keypad" + +#: ../../ms2/ms2_r2.c:1246 +msgid "Es sind Tasten von 0 bis 9 darauf." +msgstr "There are keys from 0 to 9 on it." + +#: ../../ms2/ms2_r2.c:1255 +msgid "Chip" +msgstr "Chip" + +#: ../../ms2/ms2_r2.c:1255 +msgid "Es ist ein Musikchip!" +msgstr "It's a music chip!" + +#: ../../ms2/ms2_r2.c:1256 +msgid "Klappe" +msgstr "Hatch" + +#: ../../ms2/ms2_r2.c:1256 +msgid "Sie ist mit einem altmodischen|Schloá verschlossen." +msgstr "It is secured with an old-fashioned lock." + +#: ../../ms2/ms2_r2.c:1258 +msgid "Musikanlage" +msgstr "Music system" + +#: ../../ms2/ms2_r2.c:1258 +msgid "Toll, eine in die Wand|integrierte Stereoanlage." +msgstr "Great, a built-in stereo|in the wall." + +#: ../../ms2/ms2_r2.c:1259 +msgid "Boxen" +msgstr "Speakers" + +#: ../../ms2/ms2_r2.c:1259 +msgid "Ganz normale Boxen." +msgstr "Ordinary speakers." + +#: ../../ms2/ms2_r2.c:1260 +msgid "Stifte" +msgstr "Pencils" + +#: ../../ms2/ms2_r2.c:1260 +msgid "Ganz normale Stifte." +msgstr "Ordinary pencils." + +#: ../../ms2/ms2_r2.c:1261 +msgid "Metallkl”tzchen" +msgstr "Metal blocks" + +#: ../../ms2/ms2_r2.c:1261 +msgid "Es ist magnetisch." +msgstr "It is magnetic." + +#: ../../ms2/ms2_r2.c:1262 +msgid "Bild" +msgstr "Image" + +#: ../../ms2/ms2_r2.c:1262 +msgid "Ein ungew”hnliches Bild." +msgstr "An unusual picture." + +#: ../../ms2/ms2_r2.c:1263 +msgid "Schrank" +msgstr "Cabinet" + +#: ../../ms2/ms2_r2.c:1263 +msgid "Er ist verschlossen" +msgstr "It is closed" + +#: ../../ms2/ms2_r2.c:1265 +msgid "Aufzug" +msgstr "Elevator" + +#: ../../ms2/ms2_r2.c:1266 +msgid "unter Bett" +msgstr "under bed" + +#: ../../ms2/ms2_r2.c:1266 +msgid "" +"Unter dem Bett sind bestimmt wichtige|Dinge zu finden, nur kommst du nicht " +"darunter.|Du br„uchtest einen Stock oder so etwas." +msgstr "" +"Under the bed are certainly important|things to find, only you cannot reach " +"underneath.|You need a stick or something." + +#: ../../ms2/ms2_r2.c:1267 +msgid "Schlssel" +msgstr "Key" + +#: ../../ms2/ms2_r2.c:1267 +msgid "Ein kleiner Metallschlssel." +msgstr "A small metal key." + +#: ../../ms2/ms2_r2.c:1274 ../../ms2/ms2_r2.c:1277 +msgid "Schalter" +msgstr "Switch" + +#: ../../ms2/ms2_r2.c:1275 +msgid "Griff" +msgstr "Handle" + +#: ../../ms2/ms2_r2.c:1276 +msgid "Luke" +msgstr "Hatch" + +#: ../../ms2/ms2_r2.c:1278 +msgid "Raumanzug" +msgstr "Space suit" + +#: ../../ms2/ms2_r2.c:1278 +msgid "Ein zusammenfaltbarer Raumanzug." +msgstr "A collapsible spacesuit." + +#: ../../ms2/ms2_r2.c:1279 ../../ms2/ms2_r2.c:1280 +msgid "Leitung" +msgstr "Cable" + +#: ../../ms2/ms2_r2.c:1279 +msgid "Irgendetwas scheint hier|kaputtgegangen zu sein." +msgstr "Something seems to|have broken here." + +#: ../../ms2/ms2_r2.c:1280 +msgid "Sie h„ngt lose von der Decke runter." +msgstr "It hangs loose from the ceiling." + +#: ../../ms2/ms2_s.c:85 +msgid "" +"Zur Erinnerung:|Dir ist es gelungen, aus den|Artus-Geheimbros zu fliehen." +msgstr "Reminder:|You managed to escape from the|Artus-GmbH secret offices." + +#: ../../ms2/ms2_s.c:88 +msgid "" +"Nun befindest du dich in|einem Passagierraumschiff,|das nach Axacuss City " +"fliegt." +msgstr "Now you are in a passenger|spaceship that|flies to Axacuss City." + +#: ../../ms2/ms2_s.c:91 +msgid "" +"W„hrend des Fluges schaust du dir|das axacussanische Fernsehprogramm an.|Du " +"st”át auf etwas Interessantes ..." +msgstr "" +"During the flight, you watch the|Axacussan TV program.|You come across " +"something interesting ..." + +#: ../../ms2/ms2_s.c:119 +msgid "Herzlich willkommen!" +msgstr "Welcome!" + +#: ../../ms2/ms2_s.c:123 +msgid "" +"Heute zu Gast ist Alga Lorch.|Sie wird Fragen an den Erdling|Horst Hummel " +"stellen." +msgstr "" +"Alga Lorch will be present today.|She will ask questions to the Earthling|" +"Horst Hummel." + +#: ../../ms2/ms2_s.c:127 +msgid "Horst wird alle Fragen|beantworten, soweit es|ihm m”glich ist." +msgstr "Horst will answer all|questions as fully|as possible." + +#: ../../ms2/ms2_s.c:128 +msgid "Sie haben das Wort, Frau Lorch!" +msgstr "You have the floor, Mrs Lorch!" + +#: ../../ms2/ms2_s.c:134 +msgid "Herr Hummel, hier ist meine erste Frage: ..." +msgstr "Mr. Hummel, here is my first question: ..." + +#: ../../ms2/ms2_s.c:135 +msgid "" +"Sie sind nun ein berhmter Mann auf Axacuss.|Aber sicher vermissen Sie auch " +"Ihren Heimatplaneten." +msgstr "" +"You are now a famous man on Axacuss.|But surely you miss your home planet." + +#: ../../ms2/ms2_s.c:136 +msgid "" +"Wenn Sie w„hlen k”nnten, wrden Sie lieber|ein normales Leben auf der Erde " +"fhren,|oder finden Sie das Leben hier gut?" +msgstr "" +"If you could choose, would you prefer|to lead a normal life on Earth,|or do " +"you find life here good?" + +#: ../../ms2/ms2_s.c:137 +msgid "" +"Ehrlich gesagt finde ich es sch”n,|berhmt zu sein. Das Leben ist|" +"aufregender als auf der Erde." +msgstr "" +"Honestly, I think it's nice to be|famous. Life is more exciting here|than on " +"Earth." + +#: ../../ms2/ms2_s.c:138 +msgid "Auáerdem sind die Leute von der|Artus GmbH hervorragende Freunde." +msgstr "In addition, the people of|Artus GmbH are excellent friends." + +#: ../../ms2/ms2_s.c:139 +msgid "" +"Nun ja, planen Sie denn trotzdem,|irgendwann auf die Erde zurckzukehren?" +msgstr "Well, are you still planning|to return to Earth someday?" + +#: ../../ms2/ms2_s.c:140 +msgid "Das kann ich Ihnen zum jetzigen|Zeitpunkt noch nicht genau sagen." +msgstr "At this point in time,|I haven't made up my mind, yet." + +#: ../../ms2/ms2_s.c:141 +msgid "Aber ich versichere Ihnen, ich|werde noch eine Weile hierbleiben." +msgstr "But I assure you,|I will stay here for a while." + +#: ../../ms2/ms2_s.c:142 +msgid "" +"Aha, mich interessiert auáerdem,|ob es hier auf Axacuss etwas gibt,|das Sie " +"besonders m”gen." +msgstr "" +"I see. I'm also interested in|whether there's anything here on Axacuss that " +"you particularly like." + +#: ../../ms2/ms2_s.c:152 +msgid "" +"Oh mir gef„llt der ganze Planet,|aber das Beste hier sind die|hervorragenden " +"Artus-Zahnbrsten!" +msgstr "" +"Oh I like the whole planet,|but the best thing here are the|extraordinary " +"Artus toothbrushes!" + +#: ../../ms2/ms2_s.c:153 +msgid "Zahnbrsten von solcher Qualit„t|gab es auf der Erde nicht." +msgstr "Toothbrushes of such quality|do not exist on Earth." + +#: ../../ms2/ms2_s.c:154 +msgid "Žh, ach so." +msgstr "Um, I see." + +#: ../../ms2/ms2_s.c:160 +msgid "Pl”tzlich lenkt dich eine|Lautsprecherstimme vom Fernseher ab." +msgstr "Suddenly, a speaker's voice|distracts you from the television." + +#: ../../ms2/ms2_s.c:163 +msgid "" +"\"Sehr geehrte Damen und Herren,|wir sind soeben auf dem Flughafen|von " +"Axacuss City gelandet.\"" +msgstr "" +"\"Ladies and Gentlemen,|We just landed at the airport|at Axacuss City.\"" + +#: ../../ms2/ms2_s.c:166 +msgid "" +"\"Ich hoffe, Sie hatten einen angenehmen Flug.|Bitte verlassen Sie das " +"Raumschiff! Auf Wiedersehen!\"" +msgstr "\"I hope you had a nice flight.|Please leave the spaceship! Goodbye!\"" + +#: ../../ms2/ms2_s.c:186 +msgid "" +"W„hrend die anderen Passagiere|aussteigen, versuchst du,|den Schock zu " +"verarbeiten." +msgstr "" +"While the other passengers|are disembarking, you are trying|to handle the " +"shock." + +#: ../../ms2/ms2_s.c:189 +msgid "" +"\"Ich muá beweisen, daá dieser|Roboter der falsche Horst|Hummel ist!\", " +"denkst du." +msgstr "" +"\"I have to prove that this robot|is the wrong Horst|Hummel!\", you think to " +"yourself." + +#: ../../ms2/ms2_s.c:192 +msgid "" +"\"Diese Mistkerle von der Artus GmbH und|Commander Sumoti mssen entlarvt " +"werden!\"" +msgstr "" +"\"These bastards from Artus GmbH and|Commander Sumoti must be unmasked!\"" -- cgit v1.2.3