HowTo "Kuppelsounds erstellen"

  • Moin Männers,


    da ich gefragt wurde wie man Kuppelsounds erstellt gibt es hier die Anleitung aus meinem aktuellen Projekt. Das Skript sollte direkt kompilierbar sein.






    In der Config.txt als class "MyFirstTrainzCar" angeben.


    Code
    AddHandler(me,"Vehicle","Coupled","Coupled");
        AddHandler(me,"Vehicle","Decoupled","Decoupled");



    Trainz stellt alles was wir brauchen bereits ab Werk bereit. Mit diesem Befehl fangen wir die Botschaft an unserem Zug ab und verarbeiten diese.



    Code
    World.PlaySound(GetAsset(),"sound/couple.wav",1000,10,100,me,("a.sound"));



    Das ist der eigentliche Befehl. "sound/couple.wav" ist eine Datei in unserem Asset im Ordner "sound" liegt.
    "a.sound" der Attachmentpoint der die Quelle des Sounds ist. Dies kann ein beliebiger sein. "a.limfront" oder "a.limback" sollte bei jedem Wagen gehen.


    That's it.

  • Hm, ok funktioniert schon mal.
    Nur habe ich durch diese Variante das Kuppelgeräusch bei jedem Fahrzeug.
    Das ist zwar praktisch, da ich nicht jedes Asset anpassen muss, aber so ganz richtig scheint es nicht zu sein, oder?
    Denn ich kann mir gut vorstellen, dass es so dann Probleme beim Multiplayer geben wird.
    Entweder hört es keiner, oder alle Spieler hören es beim eigenen Zug. :upside_down_face:

  • Füge in die Message-Handler noch eine Abfrage ein:


    if(msg.dst != me) return;


    Direkt in eine neue Zeile nach der geschweiften geöffneten Klammer.
    (Jeweils bei 'Coupled' und 'Decoupled', über 'World.PlaySound(...)')


    Gruß
    Pascal

    Einmal editiert, zuletzt von PascalW () aus folgendem Grund: Rechtschreibung, mit dem Handy war es nicht so einfach

  • Füge das ein.


    Code
    if(msg.src != me) return;
  • Oh man, klar! Die Nachricht kommt ja vom Vehicle selbst... Ist ja ne Broadcasted Message :pinch:
    Peinlich ...!


    Danke für die Richtigstellung! :)


    Gruß
    Pascal

  • Danke, jetzt funzt es wie gewollt...


    Naja, mal sehen, wie es beim Multiplayer aussieht xD