Ergebnis 1 bis 14 von 14

Thema: Sprache wählen ?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    Sprache wählen ?

    Hallo,
    ich arbeite derzeit an einem Projekt. Ich will das man beim Start des Spieles die Sprache wählen kann. Also Englisch oder Deutsch.
    Weiß vieleicht einer ob das geht und wenn ja, wie ?

    Dabke schonmal im vorraus.

  2. #2
    Ja es geht.
    Das jetzt zu erklären ist ein bissle zu kompliziert.
    Ich werde dir so etwas als Skript basteln.
    Kann es aber erst in den nächsten vier tagen hochladen da ich dann vieleicht erst wieder am 8 Januar online kommen kann.

  3. #3
    Oh, das wäre super. Danke.
    Bekommst dann natürlich ein gescheiden credits eintrag.

  4. #4


    Gut, meins ist dann die umständliche Variante, aber so ist es auch möglich.

    Geändert von Byder (04.01.2008 um 11:54 Uhr)

  5. #5
    Zitat Zitat von Byder Beitrag anzeigen
    So würde ich es nicht machen da wenn zwischen den Dialogen noch andere Befehle kommen diese imemr mit Kopiert werden müssen Man stelle sich mal vor man baut eine Szene, will die hinterher ändern und muss die Änderungen auf 4 oder mehr Event Seiten wiederholen XD

  6. #6
    Zitat Zitat von Caine Luveno Beitrag anzeigen
    So würde ich es nicht machen da wenn zwischen den Dialogen noch andere Befehle kommen diese imemr mit Kopiert werden müssen Man stelle sich mal vor man baut eine Szene, will die hinterher ändern und muss die Änderungen auf 4 oder mehr Event Seiten wiederholen XD
    Einfach Copy and paste.

  7. #7
    Zitat Zitat von Byder Beitrag anzeigen
    Einfach Copy and paste.
    Oder Dialog Events welche per "Call Event" aqufgerufen werden XD

    Ist aber in jedem Fall umständlicher, wollts auch nur erwähnt haben Aber natürlich geht deine Variante auch.

  8. #8
    Super, danke leute. Das wird mir mit sicherheit weiterhelfen.

  9. #9
    Ich hatte es glaube ich so gemacht:
    Variable mit der Text ID zB. auf 5.
    Dann Call Event (Common Event Texte).

    Das Common Event sah dann so aus:
    If Sprache = Deutsch
    if Variable Text ID = 5
    Show Text "Hallo Welt"
    end
    end

    If Sprache = Englisch
    if Variable Text ID = 5
    Show Text "Hello World"
    end
    end

    War meiner Meinung nach am bequemsten für die 2k/3. Fürn XP wäre Ruby sicher die bessere Lösung.

  10. #10
    Ich würde ein fieses Riesenarray anlegen das alle Texte beinhaltet. Einziger Haken wäre das jeder Text dann nur dynamisch über Skripte erhalten werden kann.

    Ich meine also eine globale $lang-Variable die dann zentral mit Werten gefüllt wird bei der Sprachwahl, zb so:

    if Sprache = Deutsch
    $lang["Hallo ich bin Hugo."] = "Hallo ich bin Hugo."
    $lang[..] = ".."
    # ... und alle anderen Texte entsprechend
    elsif Sprache = Englisch
    $lang["Hallo ich bin Hugo."] = "Hi my name is Hugo."
    $lang[..] = ".."
    # ... und alle anderen Texte entsprechend
    end


    Jeder Text wird dann aus $lang["Text"] ausgelesen und man muss nur einmal (bei Sprachauswahl) unterscheiden welche Sprache der Spieler ausgewählt hat. Danach kann man sicher sein das $lang["Text"] den Text in der Sprache enthält die der Spieler gewählt hatte.

    Zitat Zitat
    Variable mit der Text ID zB. auf 5.
    Der Nachteil an der Lösung ist das du vermutlich nicht immer im Kopf hast welche ID zu welchem Text gehört. Bei $lang["Hallo ich bin Hugo"] weiß man immer worum es im enthaltenen Text geht und nicht groß rätseln muss, obwohl der Text nicht direkt einzusehen ist.

  11. #11
    Zitat Zitat von Macavity Beitrag anzeigen
    Ich würde ein fieses Riesenarray anlegen das alle Texte beinhaltet. Einziger Haken wäre das jeder Text dann nur dynamisch über Skripte erhalten werden kann.

    Ich meine also eine globale $lang-Variable die dann zentral mit Werten gefüllt wird bei der Sprachwahl, zb so:

    if Sprache = Deutsch
    $lang["Hallo ich bin Hugo."] = "Hallo ich bin Hugo."
    $lang[..] = ".."
    # ... und alle anderen Texte entsprechend
    elsif Sprache = Englisch
    $lang["Hallo ich bin Hugo."] = "Hi my name is Hugo."
    $lang[..] = ".."
    # ... und alle anderen Texte entsprechend
    end


    Jeder Text wird dann aus $lang["Text"] ausgelesen und man muss nur einmal (bei Sprachauswahl) unterscheiden welche Sprache der Spieler ausgewählt hat. Danach kann man sicher sein das $lang["Text"] den Text in der Sprache enthält die der Spieler gewählt hatte.


    Der Nachteil an der Lösung ist das du vermutlich nicht immer im Kopf hast welche ID zu welchem Text gehört. Bei $lang["Hallo ich bin Hugo"] weiß man immer worum es im enthaltenen Text geht und nicht groß rätseln muss, obwohl der Text nicht direkt einzusehen ist.
    Antar benutzt wohl den Rm2k/3. Deine Rubykenntinisse werden ihm in dem Sinne nicht viel weiter helfen.


    @Topic
    Ich würde die Variante von Caine bevorzugen. scheint in meinen Augen noch die simpelste.

  12. #12
    Zitat Zitat von Macavity Beitrag anzeigen
    Der Nachteil an der Lösung ist das du vermutlich nicht immer im Kopf hast welche ID zu welchem Text gehört. Bei $lang["Hallo ich bin Hugo"] weiß man immer worum es im enthaltenen Text geht und nicht groß rätseln muss, obwohl der Text nicht direkt einzusehen ist.
    Ich habe bereits schon erwähnt das meine Lösung für 2k/3 ist und das für den XP Ruby die bessere Lösung wäre. Und nee, man muss nicht rätseln, man muss nur gucken bei welcher ID man stehen geblieben ist und dann einfach bei jedem Show Text ein Variable + 1, das reicht schon.
    Zitat Zitat von Supermike Beitrag anzeigen
    @Topic
    Ich würde die Variante von Caine bevorzugen. scheint in meinen Augen noch die simpelste.
    Auf den ersten Blick vielleicht, aber bei meiner Lösung gibt es den Vorteil das man a) mehr als 2 Sprachen benutzen kann, b) nicht sofort die englische Variante hinschreiben muss, sondern sie auch später einbauen kann c) zwecks Übersicht alle Dialoge in einem Event hat (man kann bei vielen Dialogen mehrere CEs anlegen, z.B. Texte Intro, Texte Kapitel 1, Texte Kapitel 2 usw.)
    d) nicht bei jeder Show Message immer wieder ein Fork Language setzen muss. Ich spreche aus Erfahrung da ich eine zweisprachige Demo rausgebracht habe und genau mein System benutzt habe und das auch jedem weiterempfehlen würde.

  13. #13
    Ist recht einfach:
    - Am Anfang deines Spiels musst du eine Auswahl erstellen welche Sprache man haben will. Das kannst du über Events, Pictures, oder per "Show Choice" abfrage machen (da du ein Anfänger zu sein scheinst nimmst du erst einmal "Show Choice" ).

    - Bei der Auswahl benötigt du einen Switch (Schalter) den du je nachdem was ausgewählt wurde auf ON oder OFF stellst. Das ganze sähe dann so aus:

    Code:
    Show Choice: Sprache auswählen
      Englisch Case:
       Change Switch: Sprache Englisch ON
      End;
    
      Deutsch Case;
       Change Switch: Sprache Englisch OFF
      End;
    Nun musst du überall wo es Text in deinem Spiel gibt eine Fork Condition einbauen um abzufragen welche Sprache ausgewählt wurde. Z.B.

    Code:
    Fork Condition: Switch Sprache Englisch ON
      Show Mssage: This is a text!
    ELSE
      Show essage: Dies ist ein Text!
    END;
    Bei einem größerem Projekt ist das allerdings ein Haufen arbeit jedem Dialog doppelt zu schreiben

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •