Guten Tag.
wer meine Website ab und zu mal besucht (also keiner), der wird sie seit ca. 1 Woche kennen.
Meine neueste Include: LangFiles v0.1.
Vorwort:
Ich weiß, sowas wird es schon einige Male geben. Das hindert mich aber nicht daran, meine aus Langeweile entstandenen Projekte zu veröffentlichen
Erklärung zum System:
Dabei handelt es sich um ein kleines System, das es erlaubt, bestimmte Bereiche im Script oder auch den kompletten Code ohne feste Texte zu scripten.
In erster Linie ist es dazu gedacht, das Script mehrsprachig halten zu können, ohne jedes Mal alles mehrfach mit if-Abfragen, ...Ex Funktionen mit tausenden Parametern oder sogar Übersetzungen per Google vollzuklatschen.
Eine kurze Funktion, die durch direkte Eingabe des jeweiligen Sprachkürzels (z.b. "DE" oder "FR", man kann auch eigene Namen verwenden) oder Abfrage der Sprache (z.b. über ein GeoIP-System oder eine Frage an den Spieler) die passende Sprachvariable aus selbstdefinierten Sprachvariablen (in selbst erstellten Dateien, so sind z.b. auch eigene "Sprachen" wie z.b. Klingonisch oder Dialekte möglich (wenn man es nötig hat)) ausliest, ermöglicht es dem Nutzer, über format(...) die Texte individuell anzupassen (Strings, Zahlen usw dazwischenformatieren) und zu ändern/korrigieren, ohne das Script neu kompilen zu müssen (solange die Arraygröße der Strings passt).
Lange Rede, kurzer Sinn, hier das Beispiel aus der Include: (Ich hab bei dem Text oben selbst mehrmals überlegen müssen :D)
format(string, sizeof(string), "%s%s%s", GetLangVar("DE", "HelloText"), playername, GetLangVar("DE", "HelloText2"));print(string);
// Hallo, Peter, willkommen auf unserem Server!
format(string, sizeof(string), "%s%s%s", GetLangVar("ENG", "HelloText"), playername, GetLangVar("ENG", "HelloText2"));print(string);
// Hello, Peter, welcome to our server!
format(string, sizeof(string), "%s%s%s", GetLangVar("JP", "HelloText"), playername, GetLangVar("JP", "HelloText2"));print(string);
// Kon'nichiwa, Peter, Watashi-tachi no sâba e yôkoso!
Vorraussetzung ist, dass der Ordner scriptfiles/LangFiles existiert und die jeweilgen Dateien existieren, die bei GetLangVar abgerufen werden. Die Dateien müssen folgendermaßen benannt sein:
"[Sprachkürzel].lang" - also z.b. "DE.lang"
Die Sprachvariablen, wie hier z.b. HelloText und HelloText2 werden wie in einer typischen Godfather.ini Datei gespeichert.
Beispiel (DE.lang
HelloText=Hallo,
HelloText2=, willkommen auf unserem Server!
Download:
LangFiles v0.1 (.rar Paket und Quelltext)
LangFiles v0.1 // Extern
Pastebin
Ich empfehle den Download der .rar Datei, da dort auch Beispieldateien enthalten sind.
Sollten noch Fragen aufkommen, was ich auch vermute, einfach fragen. Entweder hier oder per PM
Viel Spaß damit,
MfG
PS: Ich verwende das System selbst auch nicht, hab es aber auf jeden Fall mehrmals getestet