HaNNoveraNer Posted October 3, 2020 Posted October 3, 2020 (edited) Hallo Ich muß abfragen, ob eine Lok an eine Waggongruppe angekuppelt hat. d.h. wenn sie angekuppelt hat, soll ein Ereignis ausgelöst werden. Es gibt doch in Lua diverse Kupplungsbefehle. Ich verstehe aber nicht, wie die angewendet werden. Kann man mein Problem damit lösen? Danke, Thomas Edited October 3, 2020 by HaNNoveraNer
Neo Posted October 3, 2020 Posted October 3, 2020 Hallo Thomas, es gibt kein Ereignis, was beim Ankuppeln einer Lok ausgelöst wird. Es gibt aber das Ereignis "Zug/Fahrzeug stoppt", mit dem du in Kombination mit dem automatischen Bremsen/sanften Ankuppeln auf diese Situation reagieren kannst. Anschließend hast du mit Lua mehrere Möglichkeiten, auf die Zusammenstellung eines Zugs zu prüfen: Per "layout:getVehicleGroup" oder "layout:getVehicleGroupLength" erhältst du eine Liste aller Fahrzeuge eines Zugs. Gibt es mehr als ein Fahrzeug in der Liste, hat die Lok angekuppelt (für den einfachen Fall, dass die Lok keinen Tender besitzt) Per "vehicle.couplers[0 oder 1].connectedCoupler.vehicle" erhältst du Zugriff auf das Fahrzeug, was mit der vorderen (0) oder hinteren Kupplung (1) verbunden ist. Viele Grüße, Neo
HaNNoveraNer Posted October 4, 2020 Author Posted October 4, 2020 (edited) @Neo Danke für den Hinweis. Die Funktion "vehicle.couplers[0 oder 1].connectedCoupler.vehicle" läuft noch auf einen Fehler, wenn an der Kupplung nichts angekuppelt ist. Soll das so sein? Wäre evtl. besser, wenn sie durchläuft und "nil" zurückliefert. Gruß Thomas Edited October 4, 2020 by HaNNoveraNer
Neo Posted October 4, 2020 Posted October 4, 2020 Hallo Thomas, die Zeile war nur ein Stichwortgeber für dich. Beim Einsatz musst du natürlich prüfen, ob connectedCoupler <> nil ist, und erst dann auf vehicle zugreifen. Viele Grüße, Neo
HaNNoveraNer Posted October 4, 2020 Author Posted October 4, 2020 (edited) Hallo Neo Ach, das muß man erstmal wissen. Also kann man z.B. mit " vehicle.couplers[0].connectedCoupler ~= nil" abfragen, ob angekuppelt wurde. Danke! Edited October 4, 2020 by HaNNoveraNer
Neo Posted October 4, 2020 Posted October 4, 2020 Hallo Thomas, connectedCoupler ist ein Objekt, kein Boolean, siehe dazu die integrierte Hilfe: Korrekt wäre daher: local coupler = vehicle.couplers[0].connectedCoupler if coupler ~= nil then -- Kupplung ist verbunden end Viele Grüße, Neo
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