Autor Thema: Abhängig von Übersetzung unterschiedliche Grafiken einblenden  (Gelesen 4002 mal)

Cone Arex

  • Mod
  • alter Tentakel
  • **
  • Beiträge: 2324
  • Geschlecht: Männlich
  • Skandal-Entwickler und Idiot
    • Profil anzeigen
    • Conequest
Was ist der korrekte Weg um abhängig von der gewählten Übersetzung unterschiedliche Grafiken einzublenden? In der Vergangenheit habe ich schlicht
if (Game.TranslationFilename == "English")
{
// Do stuff
}
verwendet. Dies funktioniert aber eindeutig nicht immer. Was mache ich falsch?
« Letzte Änderung: 03. Dezember 2021, 06:06:31 von Cone Arex »


Folge mir auf X und itch.io

Bòógieman

  • International anerkannter Superheld
  • Globaler Moderator
  • alter Tentakel
  • *****
  • Beiträge: 2667
  • Geschlecht: Männlich
  • Grün Tentakel = Running Sushi!
    • Profil anzeigen
Re: Abhängig von Übersetzung unterschiedliche Grafiken einblenden
« Antwort #1 am: 03. Dezember 2021, 08:56:02 »
ich hab es in der vergangenheit immer so gemacht:
if(IsTranslationAvailable())
  if(GetTranslation("MMM-The Klaus strikes back") == "MMM-Le Klaus contre-attaque") // French
    object[0].SetView(181);
  else if(GetTranslation("MMM-The Klaus strikes back") == "MMM-Il Klaus colpisce ancora") // Italian
    object[0].SetView(182);
  else // English
    object[0].SetView(180);

sprich zuerst checken ob überhaupt übersetzt wurde und dann den titel der epi per string vergleich prüfen welche sprache
« Letzte Änderung: 03. Dezember 2021, 22:47:03 von Bòógieman »
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

Cone Arex

  • Mod
  • alter Tentakel
  • **
  • Beiträge: 2324
  • Geschlecht: Männlich
  • Skandal-Entwickler und Idiot
    • Profil anzeigen
    • Conequest
Re: Abhängig von Übersetzung unterschiedliche Grafiken einblenden
« Antwort #2 am: 03. Dezember 2021, 18:33:19 »
Danke. Für die Grafiken funktioniert es jetzt. Gibt es eine Möglichkeit, den Spieletitel zu ändern, ohne das man es sieht? Bislang ist es so, dass erst der deutsche Titel in der Titelleiste steht und einen Moment später auf den englischen Titel gewechselt wird. Es dauert einen Moment, aber es ist sichtbar.

// Post Scriptum
99 little bugs in the code, fixing one. 120 little bugs in the code. Hach ja.


Folge mir auf X und itch.io

Bòógieman

  • International anerkannter Superheld
  • Globaler Moderator
  • alter Tentakel
  • *****
  • Beiträge: 2667
  • Geschlecht: Männlich
  • Grün Tentakel = Running Sushi!
    • Profil anzeigen
Re: Abhängig von Übersetzung unterschiedliche Grafiken einblenden
« Antwort #3 am: 03. Dezember 2021, 22:49:53 »
naja, ich denke AGS erzeugt mal das fenster mit dem originaltitel und der code mit der übersetzung kommt dann erst später dran
könnte mir vorstellen, dass es besser wäre den standardtitel überhaupt leer zu lassen und im code einmal bewusst zu setzen  :cl
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

Cmdr

  • volljähriger Tentakel
  • *****
  • Beiträge: 744
    • Profil anzeigen
Re: Abhängig von Übersetzung unterschiedliche Grafiken einblenden
« Antwort #4 am: 03. Dezember 2021, 23:30:29 »
Ich würde nicht den Spieletitel in Abhängigkeit zur Überprüfung der Sprache nutzen.
Auch wenn es funktioniert, es ist ganz schlechter Stil.

Game.TranslationFilename== habe ich auch benutzt und scheint der richtige Weg zu sein. Was hast du denn für Probleme damit?

Cone Arex

  • Mod
  • alter Tentakel
  • **
  • Beiträge: 2324
  • Geschlecht: Männlich
  • Skandal-Entwickler und Idiot
    • Profil anzeigen
    • Conequest
Re: Abhängig von Übersetzung unterschiedliche Grafiken einblenden
« Antwort #5 am: 03. Dezember 2021, 23:55:07 »
Das es nicht immer funktioniert. Im AGS-Forum gab es damals das Problem, dass die Notiz an Tür bei Bertholds Rückkehr nicht übersetzt wurde (=falsche Grafik eingeblendet). Unter ScummVM und AGS-Android-App wird es ebenfalls grundsätzlich ignoriert, auch beim Titelbildschirm und dem Introtext (selbiger muss hardgecodet werden, da er dynamisch erzeugt wird). Mit Bòógiemans Lösung hatte ich bei meinen Tests bislang keine solchen Probleme.

Update: Ich mal deine Episode 100 in ScummVM getestet und bei dir wird zumindest der Titelbildschirm korrekt übersetzt. Also irgendetwas mache ich falsch.  ???
« Letzte Änderung: 04. Dezember 2021, 00:20:17 von Cone Arex »


Folge mir auf X und itch.io

Bòógieman

  • International anerkannter Superheld
  • Globaler Moderator
  • alter Tentakel
  • *****
  • Beiträge: 2667
  • Geschlecht: Männlich
  • Grün Tentakel = Running Sushi!
    • Profil anzeigen
Re: Abhängig von Übersetzung unterschiedliche Grafiken einblenden
« Antwort #6 am: 04. Dezember 2021, 11:03:51 »
evtl. ist es ein zeitliches problem, d.h. das AGS die übersetzung erst zu laufzeit lädt und erst ab diesem zeitpunkt die übersetzung kennt  :cl
oder groß-/kleinschreibung, weil du fragst explizit nur "English" ab, aber nicht "english"  :-\

notiz am rande: man muss ja nicht über den titel gehen sondern kann da eine oder mehrere übersetzungs-id als string einbauen, die die steuerung der übersetzung von zB grafiken und text getrennt übernehmen
über filenamen im code finde ich eigentlich noch unsauberer, weil die übersetzungsdatei ist extern und somit veränderbar
würde zB schon reichen, dass die filenamen übers filesystem auf kleinschreibung konvertiert werden und schon geht "English" nicht mehr
oder du willst mal bei den übersetzungen zwischen english-us und english-gb unterscheiden und schon musst du den code angreifen
da ist die steuerung über eine ID im file deutlich zuverlässiger, da würde auch eine übersetzung namens xxx die richtigen ergebnisse bringen
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

Cmdr

  • volljähriger Tentakel
  • *****
  • Beiträge: 744
    • Profil anzeigen
Re: Abhängig von Übersetzung unterschiedliche Grafiken einblenden
« Antwort #7 am: 04. Dezember 2021, 11:44:01 »
Der Titel im Startbildschirm von Episode 100 ist Text, wird also einfach direkt übersetzt.
Probier mal aus, ob die Titel in der Zeitung korrekt übersetzt sind - die Texte befinden sich im Bild. Ebenso die Packliste in Episode 90 - wird die korrekt übersetzt?

Die Idee von einer Id in der Übersetzungsdatei ist gut.
Also in den ersten beiden Zeilen einen Code einfügen, dessen Übersetzung dann im Script abgefragt wird.

Cone Arex

  • Mod
  • alter Tentakel
  • **
  • Beiträge: 2324
  • Geschlecht: Männlich
  • Skandal-Entwickler und Idiot
    • Profil anzeigen
    • Conequest
Re: Abhängig von Übersetzung unterschiedliche Grafiken einblenden
« Antwort #8 am: 04. Dezember 2021, 18:17:51 »
würde zB schon reichen, dass die filenamen übers filesystem auf kleinschreibung konvertiert werden und schon geht "English" nicht mehr
Das ist etwas, was ich bislang tatsächlich nicht bedacht habe. Es funktioniert nur "English" mit großen E. Die meisten Probleme hatte ich mit linux-basierten Systemen (Ubuntu, Android), die anders als das Windows-Filesystem Case-Sensitive sind. Kann es sein, dass es bei dem Wechsel zum Komplikationen kommt?
Anzumerken ist aber, dass das Problem auch unter ScummVM unter Windows vorkommt.

Probier mal aus, ob die Titel in der Zeitung korrekt übersetzt sind - die Texte befinden sich im Bild. Ebenso die Packliste in Episode 90 - wird die korrekt übersetzt?
Episode 90 habe ich ausprobiert und es funktioniert nicht. Weder der Titelbildschirm, noch die Packliste weder übersetzt.

Update: Ich habe mal Bòógiemans Episode 53 unter ScummVM ausprobiert und der Introtext funktioniert dort.

Update 2: Ich habe Ganze mal in einem leeren Projekt ausprobiert. Es gibt einen Raum, ein übersetzter Text und ein Objekt, welches ein anderes Sprite hat, wenn die englische Übersetzung gewählt wurde. Geprüft wird sowohl auf "English" als auch auf "english" uuuunnnddd...es geht nicht. Egal ob die Überprüfung in Before Fade-In oder After-Fade-In (damit wenn AGS alles geladen hat) stattfindet.
« Letzte Änderung: 04. Dezember 2021, 19:52:57 von Cone Arex »


Folge mir auf X und itch.io