RoniHB Posted September 22, 2019 Share Posted September 22, 2019 Hallo Goetz, vielen Dank für die Info. Vielleicht habe ich mich auch nicht rictig ausgedrückt. Mir war schon klar, dass mein Anliegen mit Lua recht einfach zu lösen ist, und ich werde es auch so machen. Mich hatte nur interessiert, ob Arrays auch unter der grafischen EV möglich sind. Link to comment Share on other sites More sharing options...
fzonk Posted September 22, 2019 Share Posted September 22, 2019 vor 2 Stunden schrieb randermann.tbb: Hintergrund ist, dass ich auf Gleisen in Abhängigkeit von der Zählvariable die Geschwindigkeit setzen möchte, dass aber bei 50 Gleisen nicht mit 50 Bedingungen abfragen möchte. Ja dies geht auch ohne Lua, dazu musst du nur in einem Objekt (zum Beispiel Hauptschalter) eine Auflistung anlegen. Name der (Objekt)Variable = 1; Wert = Name von Gleis1 Name der (Objekt)Variable = 2; Wert = Name von Gleis2 Name der (Objekt)Variable = 3; Wert = Name von Gleis3 Und so weiter… Wenn du dort deine 50 Gleise hinterlegt hast kannst du sie dann über die Werte 1-50 abrufen. Gruß Frank Link to comment Share on other sites More sharing options...
Timba Posted September 24, 2019 Author Share Posted September 24, 2019 Hallo, mal ein Definitionsfrage. In der grafischen EV gibt es die Bedingung "Zeitpunkt überschritten" mit der Möglichkeit, eine bestimmte Anlagenzeit einzugeben. Nehmen wir an, es ist 12:00 eingestellt. Da es wie gesagt eine Bedingung und kein Auslöser ist, muss ein anderes Ereignis auslösen. Nehmen wir also weiterhin an, Auslöser ist ein Gleiskontakt. Und wir nehmen auch noch an, dass dieser Gleiskontakt um 12:10 Anlagenzeit ausgelöst wird. Rein dem Wortsinn nach ist auch um 12:10 der Zeitpunkt (12:00) überschritten. Heißt das also, dass diese Bedingung permanent erfüllt ist bis ... ja, wie lange eigentlich? Bis zum neuen Tag? Oder ist nur in der Zeit von 12:00 bis 12:01 die Bedingung erfüllt, was ich vermute - und hoffe. Link to comment Share on other sites More sharing options...
Timba Posted September 24, 2019 Author Share Posted September 24, 2019 Hab's schon rausgefunden. Ist wirklich dauerhaft erfüllt und löst jede Minute aus. Hm ... Link to comment Share on other sites More sharing options...
metallix Posted September 24, 2019 Share Posted September 24, 2019 Link to comment Share on other sites More sharing options...
Timba Posted September 24, 2019 Author Share Posted September 24, 2019 Aha, Tom, und wer ist der MBS-Teufel, vor dem die Zeit halt macht? Du hoffentlich nicht, oder was? Link to comment Share on other sites More sharing options...
Goetz Posted September 24, 2019 Share Posted September 24, 2019 vor 14 Minuten schrieb Timba: Ist wirklich dauerhaft erfüllt und löst jede Minute aus. Hm ... Was suchst du denn? Die Möglichkeit, um Punkt 17:43 etwas auszulösen? Das findest du hier: Die Bedingung ist hingegen dafür da, dass du Aktionen beispielsweise auf einen Zeitraum zwischen 16:45 Uhr und 18:15 Uhr einschränken kannst. Link to comment Share on other sites More sharing options...
metallix Posted September 24, 2019 Share Posted September 24, 2019 Nee timba, ich nich. Der teufel steckt im detail (siehe Goetz's beitrag) Link to comment Share on other sites More sharing options...
Timba Posted September 24, 2019 Author Share Posted September 24, 2019 vor 1 Minute schrieb Goetz: Was suchst du denn? Die Möglichkeit, um Punkt 17:43 etwas auszulösen? Ich suche eine Möglichkeit, einen Zug um 8:00, 10:00, 12:00, usw. (jeweils Anlagenzeit) abfahren zu lassen. Etwas um Punkt xx:xx auszulösen hilft mir da nicht, außer ich würde für jeden Zeitpunkt ein eigenes Ereignis definieren. Ist mir zu redundant. Als ich bemerkte, dass die Bedingung der grafischen EV meinen Bedürfnissen nicht gerecht wird, habe ich sie kurzerhand in Lua umwandeln lassen und > durch == ersetzt, dann geht's, auch mit Mehrfachbedingungen. Link to comment Share on other sites More sharing options...
h.w.stein-info Posted September 24, 2019 Share Posted September 24, 2019 Hallo Modellbahnfreunde Mit der Musik eine Zeitsteuerung bewirken , das wär der Hammer . Bei bestimmte Töne werden Impulse ausgegeben , die die Züge dann starten lassen . Meine reale Modellbahn hatte mal so eine Steuerung gehabt mit Kassettenteil - CDs gab es noch nicht in dieser Zeit . Die Technik ist eine Analog-Digital-Umwandler zur Schienen gewesen . Nicht lachen - das war nicht schlecht und keine Unfälle ( Blockbereiche waren auch gegeben ) . Wenn man das auch hier so machen könnte in der virtuellen Welt , das wäre nicht schlecht . Ob das überhaupt machbar ist weiss ich leider nicht . Alexa ! Anlage ausschalten ! Viele Grüße HnS Link to comment Share on other sites More sharing options...
Andy Posted September 25, 2019 Share Posted September 25, 2019 Wenn Alexa dann antwortet: "Ich will aber noch ein bißchen spielen" und der Lokführer sagt: "Siri, zeige mir den kürzesten Weg nach Borsdorf", dann wird's mysteriös! Gruß Andy Link to comment Share on other sites More sharing options...
metallix Posted September 25, 2019 Share Posted September 25, 2019 vor 1 Stunde schrieb Timba: Ich suche eine Möglichkeit, einen Zug um 8:00, 10:00, 12:00, usw. (jeweils Anlagenzeit) abfahren zu lassen. Etwas um Punkt xx:xx auszulösen hilft mir da nicht, außer ich würde für jeden Zeitpunkt ein eigenes Ereignis definieren. Ich denke das sollte parameterisiert mit einem objekt, in dem die ganzen zeiten hinterlegt sind, und einer "zeitpunkt erreicht" zu machen sein. Link to comment Share on other sites More sharing options...
Neo Posted September 25, 2019 Share Posted September 25, 2019 Hallo, vor 8 Stunden schrieb Timba: Ich suche eine Möglichkeit, einen Zug um 8:00, 10:00, 12:00, usw. (jeweils Anlagenzeit) abfahren zu lassen. Etwas um Punkt xx:xx auszulösen hilft mir da nicht, außer ich würde für jeden Zeitpunkt ein eigenes Ereignis definieren. Ist mir zu redundant. die Bedingung "Zeitpunkt überschritten" ist für einen Zeitbereich gedacht, du interessierst dich aber für konkrete Zeitpunkte. Dafür kannst du direkt auf die Zeit prüfen: Alternativ (und performanter) kannst du ein Ereignis pro Zeitpunkt definieren und darin ein benutzerdefiniertes Ereignis mit den Aktionen aufrufen, dann vermeidest du Redundanzen. Viele Grüße, Neo Link to comment Share on other sites More sharing options...
Timba Posted September 25, 2019 Author Share Posted September 25, 2019 vor 2 Stunden schrieb Neo: Alternativ (und performanter) kannst du ein Ereignis pro Zeitpunkt definieren und darin ein benutzerdefiniertes Ereignis mit den Aktionen aufrufen, dann vermeidest du Redundanzen. Ach ja (Hand vor Stirn klatsch), diese neue hervorragende Möglichkeit vergesse ich immer wieder. Danke für die Erinnerung. Link to comment Share on other sites More sharing options...
Phrontistes Posted October 16, 2023 Share Posted October 16, 2023 Am 20.9.2019 um 11:41 schrieb Neo: Hallo Wolfgang, man muss hier unterscheiden zwischen einfachen Variablen (Boolean, Zahlen, Texte...) und Variablen, die Referenzen enthalten (Objekte, Ereignisse). Wird eine Variable gelöscht, dann wird ihr nil zugewiesen, ein Lua-Wert, der aussagt, dass die Variable keinen Wert enthält. Im Normalfall werden die Variablen daher einfach gelöscht. Bei Variablen, die aber Objekte referenzieren, kann bei einem nil nicht unterschieden werden, ob der Nutzer die Variable löschen wollte oder den gültigen Wert "keine Referenz" setzen wollte. Lua (und das Studio) unterscheiden nicht zwischen "leer" und "keine Referenz". Aus diesem Grund bleibt die Variable in diesem Fall erhalten, wird aber auf einen leeren Wert gesetzt. Viele Grüße, Neo Hallo @Neo, dass das so ist, habe ich inzwischen auch festgestellt. Aber irgendwie geht es offenbar ja doch, eine Variable, die auf ein Objekt referenziert zu löschen, denn mit dem Minus kann ich sie ja restlos löschen. Kann man das vielleicht zwischenzeitlich (einige Versionen später) automatisieren? Beste Grüße Phrontistes Link to comment Share on other sites More sharing options...
Goetz Posted October 16, 2023 Share Posted October 16, 2023 Für interessierte Mitleser Um vor 17 Minuten schrieb Phrontistes: eine Variable, die auf ein Objekt referenziert zu löschen kann man wie folgt vorgehen: Ändere zunächst den Typ der Variablen, indem du ihr z.B. eine Zahl zuweist und lösche sie dann im nächsten Schritt. Viele Grüße Götz Link to comment Share on other sites More sharing options...
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