Goetz Geschrieben 24. Mai 2019 Autor Geschrieben 24. Mai 2019 (bearbeitet) vor 15 Minuten schrieb schlagerfuzzi1: sorry, für meine ehrliche antwort Ich glaube, für eine ehrliche Antwort muss sich niemand entschuldigen. Und Lua muss dich nicht erschrecken. Weil es nicht erforderlich ist, dass man das lernt. Die V5 wird dir gewiss auch ganz ohne Lua viel Freude machen. Und du wirst auch ohne Lua Kenntnisse auf nichts verzichten müssen. Lua ist einfach nur eine weitere Möglichkeit der Anlagensteuerung und für diejenigen gedacht, denen diese Methode liegt. Es ist wie ein weiteres Musikinstrument. Man muss nicht alle Instrumente beherrschen, um Musik zu machen. Aber man kann eine größere Auswahl an Musik genießen, wenn alle Musiker viele verschiedene Instrumente zur Auswahl haben. Bearbeitet 24. Mai 2019 von Goetz
BahnLand Geschrieben 24. Mai 2019 Geschrieben 24. Mai 2019 Hallo @schlagerfuzzi1, Du bist nicht gezwungen, LUA-Scripte zu schreiben, Du kannst die Ereignissteuerung wie bisher im Programm-Dialog bearbeiten. Du hast nur mit LUA mehr Möglichkeiten, als die die Ereignisverwaltung selbst zur Verfüguung stellt. Trotzdem wird auch die Ereignisverwaltung selbst in V5 wesentlich mehr Möglichkeiten bieten als in V4 - auch ohne "eigene" LUA-Scripte. Viele Grüße BahnLand
schlagerfuzzi1 Geschrieben 24. Mai 2019 Geschrieben 24. Mai 2019 hallo @Goetz, danke für deine Rückantwort … du machst diese sache recht gut mit lua … ich verfolge ja schon die ganze zeit dieses Thema ...und das gefällt mir ja auch ... nur wenn du dann in V5 dir evtl wenn auch nur für mich dann eine weitere Hilfestellung oder auch den einen oder anderen in sachen mit kleinen diversen anlagen Beispielen weiter helfen kannst wirst du sich nicht nur mir dabei helfen zum weiterkommen … danke dir für dein Verständnis … gruß schlagerfuzzi
schlagerfuzzi1 Geschrieben 24. Mai 2019 Geschrieben 24. Mai 2019 hallo @BahnLand und @Goetz danke an euch beide, dass ihr mich dazu immer wieder motiviert zum weiter machen … ich glaube ich brauche öfter mal im leben solche menschen, die mich immer wieder aufmuntern … … danke gruß schlagerfuzzi
fzonk Geschrieben 24. Mai 2019 Geschrieben 24. Mai 2019 Hallo @schlagerfuzzi1 ich kann @Goetz und @BahnLand nur beipflichten, du brauchst keine Angst vor V5 haben, soweit ich das Ganze verfolge wird das Grundsystem so bleiben wie es ist, nur eben erweitert. Keiner wird darauf angewiesen sein LUA zu beherrschen um weiterhin Anlagen zu erstellen, es ist wie mit deinen „geliebten“ Variablen, es gibt sie, man kann sie nutzen, ABER man muss nicht. Und wenn du bei irgend etwas nicht weiterkommst dann scheu dich nicht zu fragen, es gibt viele Nutzer die dir gern helfen. Gruß Frank
Andy Geschrieben 29. Mai 2019 Geschrieben 29. Mai 2019 (bearbeitet) Hallo Goetz, wegen Deinem letzten Kapitel über Variablen ist mir noch die Frage gekommen, ob es bei Schleifen noch so etwas wie ein 'break'-Kommando, also einen Schleifenabbruch, gibt. Und wenn ich dann den Schleifenzähler noch brauche, muß ich ihn nach dem Schleifenkopf an etwas längerlebiges zuweisen, oder? Gruß Andy p.s.: Schleifenzähler lokal aber nur bei der for-Schleife denke ich. Bei der While-Schleife gibt es ja nicht unbedingt einen Schleifenzähler. ?!? Bearbeitet 29. Mai 2019 von Andy
Goetz Geschrieben 29. Mai 2019 Autor Geschrieben 29. Mai 2019 (bearbeitet) vor 52 Minuten schrieb Andy: ob es bei Schleifen noch so etwas wie ein 'break'-Kommando, also einen Schleifenabbruch, gibt. Ja. Das Schlüsselwort dafür heißt break Wenn du einen for-Schleifenzähler über die Schleife hinaus noch benötigst, musst du ihn - genau wie du vermutest - übergeben. Was du im while ... do Konstrukt stehen hast, ist kein Zähler, sondern eine Bedingung. Ob du diese Bedingung innerhalb der While Schleife durch Zählen oder anderweitig veränderst, macht keinen Unterschied. Die Variable wird nicht in der Bedingung erzeugt und ist nicht automatisch local. Bearbeitet 29. Mai 2019 von Goetz
Goetz Geschrieben 5. Juni 2019 Autor Geschrieben 5. Juni 2019 Kurze Meldung zum laufenden Lua Tutorial: Ich brauche bitte eine kurze Pause, bevor ich die nächsten Kapitel posten kann. Im Übrigen freue ich mich ganz enorm, dass das Interesse so konstant ist. Die letzten Postings in der Serie wurden ebenso oft abgerufen wie die ersten. Teils sogar häufiger (vermutlich, weil der Eine oder Andere noch einmal etwas nachlesen will.) Insgesamt wird das trotzdem kein vollständiges Lua-Tutorial werden. Das würde meines Erachtens den Rahmen sprengen. Ich wollte euch gerne anhand von Beispielen an die Sprache sowie das Programmieren im Allgemeinen heranführen. Ich möchte euch die Systematik zeigen, die alledem zugrunde liegt. Und dazu habe ich noch ein paar weitere Kapitel geplant, für die ich aber etwas Zeit benötige.
h.w.stein-info Geschrieben 5. Juni 2019 Geschrieben 5. Juni 2019 Hallo Goetz Dafür hat jeder Verständnis und Du mast es sehr gut - Prima ! Möchte mich auch dafür bedanken für deine Mühe . Viele Grüße HnS
Andy Geschrieben 5. Juni 2019 Geschrieben 5. Juni 2019 Wenn man sich jetzt mal das Essentielle aus dem Tutorial herauspickt und in eigenen Worten in eine Textdatei schreibt, also praktisch einen Spickzettel bastelt, dann ist der gar nicht so groß. Wenn ich's mit der Original-Dokumentation vergleiche, dann scheinen wir mit den Grundlagen bereits durch zu sein. Man kann die Doku nun anlesen und kommt vorwärts, ohne ständig durch Dinge gestört zu werden, die man noch nicht kennt. Bis hierhin schon mal ein großes Dankeschön. Mir hast Du damit einen sehr sanften Einstieg gewährt. Schraubendreher, Hammer und Feile liegen damit bereit. Gruß Andy
ralf3 Geschrieben 7. Juni 2019 Geschrieben 7. Juni 2019 Danke Goetz, ich bin in meiner bisherigen Laufbahn in Elektronik- und IT-Bereich schon unzähligen Tutorials begegnet. Angefangen mit einem Commodore C16 (ja der lebt immer noch) über den Amiga bis hin zum 4000 (im eigenen 19" Gehäuse und ersten Erfahrungen mit Cinema 4D) bis zum MCSE auf Server 2012 hab ich schon viel an Anleitungen gesehen und studiert. Dein Tutorial zählt dabei zu den kurzweiligeren und somit in meinen Augen besseren. Ich programmiere heute nur noch am Rande und das eher praxisbezogen. Scripting wäre wohl auch angebrachter. Batch-Dateien für Kunden kann man nun wirklich nicht als Programmieren bezeichnen, auch das Scripting in HTML und/oder PHP für Kunden-Internetseiten zählen wohl kaum zum wirklichen programmieren, dann schon eher die Erstellung von Programmen für die ATMEL-Chips in unseren Eigenentwicklungen im Eventtechnik-Bereich und deren Ableger für die eigene Modellbahn, dort halt auch speziell die Lichtsteuerung. Da ich den Aufwand kenne allein eine Betriebsanleitung für ein DMX-Interface zu schreiben, das von Nicht-ITlern eingerichtet und betrieben werden soll, kann ich für Dein Tutorial nur höchsten Respekt zollen. Großartig! Bitte mach bis zur Einführung von V5 weiter. motivierende Grüße, Ralf
Goetz Geschrieben 7. Juni 2019 Autor Geschrieben 7. Juni 2019 vor 9 Minuten schrieb ralf3: Bitte mach bis zur Einführung von V5 weiter. Das werde ich gerne tun. Vielen Dank für deine motivierenden Worte
brk.schatz Geschrieben 7. Juni 2019 Geschrieben 7. Juni 2019 Hallo Goetz, hallo ralf3, Frage: Wieso nur bis Einführung V5????.... @Goetz Ich hoffe doch dein Engagement geht diesbezüglich darüber hinaus. Gruß Karl
BahnLand Geschrieben 10. Juni 2019 Geschrieben 10. Juni 2019 Hallo @Goetz, Dein ergänzendes Video zum Tutorial ist super! Das mit dem Doppelpunkt ist wirklich "tricky". Das muss man sich auf der Zunge zergehen lassen! Wenn Du da noch weitere hast oder planst: Immer her damit! Viele Grüße BahnLand
Andy Geschrieben 10. Juni 2019 Geschrieben 10. Juni 2019 Videos zeigen's doch am allerbesten. Mehr als jeder zweite Schüler nutzt über YouTube Lernvideus. Da können die freitags wirklich locker demonstrieren. Wenn die Generation jetzt nur noch mit dem Gedächtnis umgehen könnte...
wopitir Geschrieben 10. Juni 2019 Geschrieben 10. Juni 2019 Hallo Götz, dein Video zu den Tabellen ist Klasse. Mit deinen Worten und den Ausführungen am Bildschirm ergibt sich ein bestimmter "Aha-Effekt". Man versteht dann alles besser. Danke. Gruß Wolfgang
Goetz Geschrieben 10. Juni 2019 Autor Geschrieben 10. Juni 2019 vor einer Stunde schrieb BahnLand: Wenn Du da noch weitere hast oder planst: Immer her damit! In solch einem kurzen Video steckt in meinem Fall ein ganzer Tag Arbeit. Ich würde sicher gerne mehr machen, weil mir die Wirkung wohl bewusst ist. Aber ich habe nicht immer die Energie dafür.
BahnLand Geschrieben 10. Juni 2019 Geschrieben 10. Juni 2019 Hallo @Goetz, vor 3 Stunden schrieb Goetz: In solch einem kurzen Video steckt in meinem Fall ein ganzer Tag Arbeit. das glaube ich sofort! Um so mehr ist es Dir hoch anzurechnen, dass Du solch ein Video hier bereit stellst. Viele Grüße BahnLand
wopitir Geschrieben 25. Juni 2019 Geschrieben 25. Juni 2019 Hallo @Goetz, auch dein 2. Video ist super. Wenn einem gezeigt und erklärt wird wie es geht, versteht man alles gleich viel besser. Danke. Gruß Wolfgang
Andy Geschrieben 25. Juni 2019 Geschrieben 25. Juni 2019 Ja, kann ich nur bestätigen. An der Stelle, wo :format ins Spiel kommt, hättest Du vielleicht nochmal kurz auf die 'Einsparungsmöglichkeit' eingehen können. Aber jeder, der das nicht versteht, kann ja 'zurücklesen'. Gruß Andy
Andy Geschrieben 25. Juni 2019 Geschrieben 25. Juni 2019 eine Frage habe ich noch: string.find gibt zwei Werte zurück. Hatten wir das schon, wie man das bei einer Funktion hinbekommt? Oder kommt das noch?
Andy Geschrieben 25. Juni 2019 Geschrieben 25. Juni 2019 ...und noch eine: In der Sprache C muß man Extrabibliotheken (wie die String- oder Mathebibliothek) inkludieren, einen Header einbinden, also einen Verweis auf das 'Inhaltsverzeichnis' anbringen. Sogar für das einfache print. Das scheint in Lua zumindest für String- und Mathebibliohek nicht der Fall zu sein. Die sind immer da?
Andy Geschrieben 25. Juni 2019 Geschrieben 25. Juni 2019 aller guten Dinge sind drei. Hast Du noch ein Beispiel für was man diese unsortierte, praktisch zufällige Form "in pairs" gebrauchen kann? Die erscheint mir sehr ominös.
Goetz Geschrieben 25. Juni 2019 Autor Geschrieben 25. Juni 2019 (bearbeitet) vor 4 Stunden schrieb Andy: Hatten wir das schon, wie man das bei einer Funktion hinbekommt? Nein, das hatten wir noch nicht. Danke für den Hinweis vor 3 Stunden schrieb Andy: Extrabibliotheken (wie die String- oder Mathebibliothek) inkludieren … Das scheint in Lua zumindest für String- und Mathebibliohek nicht der Fall zu sein. Stimmt. Die müssen nicht erst eingebunden werden. Die Standardbibliotheken sind in Lua immer präsent. vor 3 Stunden schrieb Andy: Hast Du noch ein Beispiel für was man diese unsortierte, praktisch zufällige Form "in pairs" gebrauchen kann? Du benötigst diese Form vor allem dann, wenn die Schlüssel in deiner Tabelle Namen sind und du dennoch die ganze Tabelle in einem Rutsch abfragen willst. Im MBS könnte eine Tabelle zum Beispiel die Namen aller Gleisstücke von Gleis 1 im Bahnhof "Musterdorf" als Schlüssel verwenden unter dem gespeichert wird, ob das Gleis besetzt ist oder nicht. Um zu erfahren, ob Gleis 1 frei ist, könntest du diese Tabelle mit in pairs() abklappern und schauen, ob dort für eins der Gleise ein "besetzt" registriert ist. In einer anderen Software kann es praktisch sein, die Signalnummern einer Anlage als Index in einer Tabelle zu verwenden. Dann hat man keine lückenlose Nummerierung der Einträge (weil manche Nummern anderweitig vergeben wurden.) In diesem Fall kann man ebenfalls nur mit in pairs() die Tabelle abarbeiten, aber nicht mit in ipairs() Selbstverständlich gibt es in beiden Fällen viele andere Wege, um zum selben Ziel zu kommen. Aber diese "Schlüssel/Wert"-Paare sind praktisch. Gerade dann, wenn man die Tabelle nicht der Reihe nach abarbeiten kann und trotzdem beide Dinge benötigt. Bearbeitet 25. Juni 2019 von Goetz
Andy Geschrieben 12. Juli 2019 Geschrieben 12. Juli 2019 @Goetz, ich habe mal eine Bitte. Wenn man jetzt eine alte Anlage einliest und will dann ein altes Ereignis in Lua konvertieren, da gibt's ein paar Systemaufrufe. Kannst Du da mal drauf eingehen, was da geschieht? (deferred_call etc.) Gruß Andy
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen.
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden