w-radel Posted July 19, 2021 Posted July 19, 2021 Hallo Gemeinde, ich möchte ein Gleisbildstellpult abhängig von den Gleisbelegungen in einfacher Weise programmieren. Zu diesem Zweck besitzen die Bausteine des GBS den Namen des Gleises, das angezeigt werden soll. Z.B. Gleis „BHF 1“ --> GBS: „GBS0 BHF1“ Wenn nun ein Zug ein beliebiges Gleis betritt, möchte ich aus dem String „GBS0“ und dem Gleisnamen eine Variable erzeugen, mit der ich das GBS-Modul schalten kann. Etwa in dieser Art in LUA: $("Gleisbelegung").variables["GBS-Baustein"] = "GBS0 " .. $("Gleisbelegung").variables["Neues Gleis"] Leider funktioniert die Zusammensetzung der Strings nicht, obwohl jeder einzeln für sich funktioniert. Gibt es dafür eine Lösung? Vielen Dank im Voraus Willi
Goetz Posted July 19, 2021 Posted July 19, 2021 (edited) Hallo Willi, vor einer Stunde schrieb w-radel: $("Gleisbelegung").variables["Neues Gleis"] ist kein String, sondern eine Adresse. Die Objektadresse des Gleises, welches betreten wird. Der Name des Objekts ist ein String. Viele Grüße Götz Edited July 19, 2021 by Goetz
w-radel Posted July 21, 2021 Author Posted July 21, 2021 Hallo Götz, vielen Dank, das war hilfreich und so funktioniert es im Prinzip: Gleis wird betreten: $("Gleisbelegung").variables["Neues Gleis"] = track.name $("Gleisbelegung").variables["GBS-Baustein"] = $("Gleisbelegung").variables["GBS0"] .. $("Gleisbelegung").variables["Neues Gleis"] layout:getEntityByName($("Gleisbelegung").variables["GBS-Baustein"]).state = 2 Gleis wird verlassen: $("Gleisbelegung").variables["Altes Gleis"] = track.name $("Gleisbelegung").variables["GBS-Baustein"] = $("Gleisbelegung").variables["GBS0"] .. $("Gleisbelegung").variables["Altes Gleis"] layout:getEntityByName($("Gleisbelegung").variables["GBS-Baustein"]).state = 0 Jetzt kann ich mit geringstem Aufwand ein "life-Bild" erstellen. Vielleicht kann es ja auch jemand brauchen. Viele Grüße Willi
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now