Jump to content

Eine Frage zu Lua


Recommended Posts

Hallo zusammen,

habe eine Frage zu Lua, wie muss ich die Zeile

local Ziel = $("SP-01-Ausfahrt")

abändern, wenn die Information hier (SP-01-Ausfahrt) in der Variable Ziel steht.

 

local Quelle = $("SB-Gleis-11")

local Ziel = $("SP-01-Ausfahrt")

Quelle.transformation.position = Ziel.transformation.position

Quelle.transformation.rotation = Ziel.transformation.rotation

 

Entschuldigt meine Unwissenheit was Lua angeht. Gruß Axel

 

Link to comment
Share on other sites

Hallo @JimKnopf,

local Ziel = $("SP-01-Ausfahrt").variables.Ziel

-- alternativ

local Ziel = $("SP-01-Ausfahrt").variables["Ziel"]

die zweite Schreibweise bekommst du, wenn du die Variable in der grafischen EV eingibst und dann den <> Knopf zum Umwandeln benutzt.
Die Schreibweise mit dem Punkt als Trenner ist die vereinfachte Version, die Lua anbietet.
Die mit eckigen Klammern ist flexibler, weil sie auch Sonder- und Leerzeichen im Namen der Variablen gestattet.

Viele Grüße
Götz

Link to comment
Share on other sites

vor 15 Minuten schrieb HaNNoveraNer:

Hmmm ...

Sein Objekt SP-01-Ausfahrt enthält eine Variable, welche die Adresse eines anderen Objekts enthält.
Damit er im Code nicht an jeder Stelle den langen Umweg zu diesem Objekt hinschreiben muss, überträgt er die Adresse im ersten Schritt an eine neue, lokale Variable mit Namen "Ziel".

Sehr empfehlenswert, weil es für gut lesbaren Code sorgt.

Warum er allerdings die Koordinaten des Ziels an die der Quelle überträgt und nicht umgekehrt, kann ich nicht erklären. Da scheinen mir Dinge (zumindest namentlich) durcheinander zu geraten.

Edited by Goetz
Schreibfehler korrigiert
Link to comment
Share on other sites

Hallo nochmal,

Das Gleis mit dem Namen SB-Gleis-11 soll zu dem Ziel-Objekt SP-01-Ausfahrt springen. Da ich aber sechs Ausfahrten habe soll der Name des Ziel-Objekt in einer Variable stehen.

Gruß Axel

Link to comment
Share on other sites

Ja, da hätte ich verstanden, wenn das Ziel im Quellgleis als Variable steht.
local Ziel = $("SB-Gleis-11").variables["Ziel"]

Aber wird schon so richtig sein.
Interessante Idee, das ganze Gleis springen zu lassen.
 

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...