TranslatorScript

Willkommen in der Transport Fever Community

Wir begrüßen euch in der Fan-Community zu den Spielen Transport Fever und Train Fever, den Wirtschaftssimulatoren von Urban Games. Die Community steht euch kostenlos zur Verfügung damit ihr euch über das Spiel austauschen und informieren könnt. Wir pflegen hier einen freundlichen und sachlichen Umgang untereinander und unser Team steht euch in allen Fragen gerne beiseite.

 

Die Registrierung und Nutzung ist selbstverständlich kostenlos.

 

Wir wünschen euch viel Spaß und hoffen auf rege Beteiligung.

Das Team der Transport-Fever Community


Sie betrachten gerade eine ältere Version des Eintrags. Klicken Sie hier, um zur aktuellen Version zu gelangen.

  • Anleitung für TranslatorScript (für Modder).
    [url='http://www.train-fever.net/lexikon/index.php/Entry/84'][img]http://ftp.train-fever.net/flaggen/gb.png[/img] english version ->[/url] [img]http://ftp.train-fever.net/flaggen/de.png[/img] [b][url='http://www.train-fever.net/index.php/Thread/2351']Forums-Thread ->[/url][/b] [b][url='http://www.train-fever.net/filebase/index.php/Entry/727']Download ->[/url][/b] [u][size=14]Vorzüge & Kompatibilität[/size][/u] Um ein Model zu übersetzen wird normalerweise für jede Sprache eine eigene *.mdl-Datei benötigt. So, du glaubst nun das wäre kein Problem? Dann stelle dir vor, du müsstest ein paar Zahlen in deinem Modell ändern. Du musst dies in jeder einzelnen Datei machen! Dies kann sehr komplex und zeitaufwendig werden. Mit TranslatorScript muss nur eine einzige *.mdl-Datei für ein Modell bereitstellen. Die Sprachdaten sind in eine Sprachdatei ausgelagert. Der Benutzer installiert neben deinen Mod die Spache die er will. TranslatorScript übernimmt die gesamte Sprachintegration. Nur die Sprachdateien müssen von Hand gemacht werden. Machst du dir sorgen, dass wenn TranslatorScript nicht bei deinen Benutzern installiert ist, sie deinen Mod nicht nutzen können? Weit gefehlt: Die Einbindung wird in diesem Fall einfach übersprungen. Dein Mod wird funktionieren. [box][color=#FFA500][size=12]Wenn Nutzer TranslatorScript nicht installiert haben wird dein Mod trotzdem funktionieren![/color][/size][/box] [size=14][u]Vorbereitungen[/u][/size] [size=12]1) Einbinden von TranslatorScript[/size] Füge den folgenden Code als erste Zeile in die *.mdl-Datei ein: [code]pcall(require, 'BR146_translate_script')[/code]Diese Zeile wird übersprungen, wenn TranslatorScript nicht installiert ist. [size=12]2) Text richtig einbinden[/size] Jeder Text muss mit [tt]_("DEIN TEXT")[/tt] umschlossen werden. Die wichtigen Zeichen sind der Unterstrich und die Klammern. "DEIN TEXT" wird angezeigt, falls...[list][*]keine Übersetzung installiert ist [*]die Übersetzung für diesen Text fehlt [*]TranslatorScript nicht installiert ist [/list] [size=14][u]Sprachdatei[/u][/size] Die Sprachdatei ist an der selben stelle platziert wie die *.mdl-Datei. Der Name ist identisch zur *.mdl-Datei, mit einer Ausnahe: Anstatt von ".mdl" endet die Datei auf [b]".lang"[/b]. Die Datei muss als [b]UTF-8[/b] encoded sein. Beispiel: Die *.mdl-Datei liegt bei [tt]res\models\model\yourModel.mdl[/tt], dann liegt die Sprachdatei bei [tt]res\models\model\yourModel.lang[/tt] Die Sprachdatei hat folgenden Syntax: [code]return { ["Orignaltext mit Leerzeichen"] = "the translation is in here", ["zweitens"] = "second line", ... }[/code] [box][b][color=#FFA500]Ein Nutzer kann immer nur EINE Spachdatei gleichzeitig installiert haben! Oder keine Spachdatei - dann wird der Originaltext genutzt.[/color][/b][/box] [size=14][u]Beispiel[/u][/size] Diese Beispiel zeigt ein Grundgerüst einer *.mdl-Datei. Die Texte, die übersetzt werden sollen, lauten "Signal" und "Signal von BR146". Wenn nur der Mod installiert ist, zeigt Train Fever diese beiden an. Wenn eine Sprachdatei (und natürlich TranslatorScript) installiert ist, wird "Segnale" statt "Signal" angezeigt (entsprechend beim zweiten Text). Sollte ein Text fehlen, dann wird der Originaltext vom Mod angezeigt. [size=12]*.mdl-Datei[/size] [code]pcall(require, 'BR146_translate_script') function data() return { [...] metadata = { description = { name = _("Signal"), description = _("Signal von BR146") }, [...] } end[/code] [size=12]Sprachdatei[/size] [code]return { ["Signal"] = "Segnale", ["Signal von BR146"] = "Segnale (BR146)", }[/code]

Teilen