Die Komponente
Title.txt kann in Szenarien und Objektordnern verwendet
werden, um den Titel für verschiedene Sprachen zu definieren.
In jeder Zeile wird dabei ein Sprachkürzel dem gewünschten Titel vorangestellt. Beispiel:
DE:Angriff der Killerwipfe
US:Attack of the Killer Wipfs
In externen Sprachpaketen sollte an der entsprechenden Verzeichnis-Position eine Komponente Title*.txt stehen (wobei * durch das entsprechende Sprachkürzel ersetzt wird), die dann den Titel für die jeweilige zusätzliche Sprache enthalten kann. Beispiel für den Inhalt einer TitleFR.txt:
FR:Les wipfes moerderesque attaquent
Ist ein Eintrag für die gewählte Sprache vorhanden, so wird der Title-Eintrag aus der
Scenario.txt durch den entsprechenden Namen überschrieben.
Wichtig: es sollten keine Anführungszeichen oder Sonderzeichen verwendet werden.
Um sprachabhängig Texte in Scripts einzufügen, kommen sogenannte String Tables
zum Einsatz. Im Script wird dazu, anstatt des Textes ein Verweis auf einen Eintrag einer
solchen String-Tabelle eingefügt. Die Tabelle muss sich im selben Verzeichnis wie das
darauf verweisende Script befinden und den Namen StringTbl*.txt haben (wobei * für den
Sprachcode steht).
Der Verweis im Script besteht aus einem Namen für den zu verwendenden String (String-ID),
der mit Dollarzeichen ("$") als ein solcher Stringtabellenverweis gekennzeichnet ist.
Beispiel:
protected func Activate(pCaller)
{
[$DescActivate$]
Message("$MsgYourPosition$ %d / %d", GetX(pCaller), GetY(pCaller));
}
Hier werden zwei Strings mit den Namen "DescActivate" und "MsgYourPosition" eingebunden.
Eine passende StringTblDE.txt (für deutsche Sprache) könnte folgendermaßen aussehen:
# Beschreibungstexte
DescActivate=Position bestimmen
# Nachrichten
MsgYourPosition=Deine Position ist:
Im Objekt hätte also Activate den Beschreibungstext "Position bestimmen" und würde z.B.
die Nachricht "Deine Position ist: 252 / 352" ausgeben. In der Stringtabelle wurden hier zwei
Kommentare eingefügt. Sie beginnen mit einem '#'-Zeichen und werden ignoriert.
Zur Vollständigkeit - eine passende StringTblUS.txt:
# Description texts
DescActivate=Tell position
# Messages
MsgYourPosition=Your position is:
Hier würden also z.B. die Nachricht "Your position is: 252 / 352" erzeugt, wenn Englisch
als Sprache eingestellt ist.