Hallo,
ich bin neu hier, die echte Modellbahn gibt es schon länger nicht mehr, dafür hab ich jetzt auf virtuellen Modellbau umgeschwenkt. Da ich Softwareentwickler bin, hab ich bei der Ereignissteuerung natürlich bessere Voraussetzungen, um direkt mittels LUA-Skripten Probleme zu lösen. Daher hier mein erstes Beispielprojekt:
Angeregt von der Diskussion über einheitliche Schalternamen hab ich mal ein Demoprojekt gebaut, wo ich für Straßenfahrzeuge weitgehend generisch Blinker und Bremslicht über ein spezielles Skript gekapselt habe. So ist über ein benutzerdefiniertes Ereignis ein Blinken/Bremsen für nn Sekunden einfach möglich. z.B. ausgelöst über Gleiskontakt.
Das die Schalter oft unterschiedlich heißen, hab ich aus der Schalterliste von Neo aus der Diskussion Neue Schalterfunktionen mit einheitlichen Namen Alle Blinker, Bremslichter und Türen extrahiert (Powershell-Script, im Anhang) und jeweils ein Benutzerdefiniertes Ereignis erstellt und mit der vorher extrahierten Liste gefüttert. Das Eregnis erhält den Auslöser und die gewünschte Dauer als Parameter und kann von einem Gleiskontakt o.ä. einfach aufgerufen werden. Im Beispiel-Projekt Ansicht 0, am besten Nachtansicht. Da sieht man die Bremslichter besser.
Eine ähnliche Diskussion gab es über Wagentüren am Bahnhof.
ähnliche Lösung, nur daß Fahrtrichtung von Wagen nicht eindeutig definiert ist, daher wird bei jedem Wagen beim ersten Aufruf eine Variable zugefügt ("drivingDirection", 0/1), die die Richtung ggfs. korrigiert. Wenn die Türen auf der falschen Seite öffnen, einfach den Parameter pro Waggon zwischen 0 und 1 wechseln.
(Ansicht 1, Tagesansicht. vorn und hinten werden jeweils Türen links und rechts am Zug geöffnet)
Bei allen Skripten wird nach dem entsprechenden Schalter gesucht. Wenn gefunden, dann wird der Schaltername auf in das entsprechende Objekt direkt eingetragen und beim nächsten Aufruf direkt benutzt.
Die Suche nach den passenden Schalternamen in der Schalterliste (schalter.txt von Neo) erfokgt über ein Powershell-Script. Das liefert dan Dateien, in denen ein Quelltextschnipsel für die benutzerdefinierten Scripte steht. Dabei gibt es natürlich auch falsche Treffer (Fahrzeugtüren in der Liste das Waggon-Türen), die machen aber nichts, weil i.D.R, keine Autos auf den Gleisen fahren.
Vielleicht hilft das ja dem einen oder anderen. Das soll vor allem als Anregung dienen und hat keinen Anspruch auf allumfassende Lösung
Viele Grüße,
Christian
Blinken-Bremsen-Türen.mbp
Schalterlisten.zip