Jump to content

Goetz

Mitglieder
  • Gesamte Inhalte

    5770
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von Goetz

  1. Und davon habe ich bei meiner Optimierung profitiert. Weil ich sehen konnte, welche Faktoren beachtet werden müssen.
  2. Hallo Hawkeye, Dann habe ich hier einen neuen Türöffner für dich: --[[---------------------------------------------------------------------------------------------- Türen öffnen, wenn Zug am Bahnsteig hält und Animation "Türen öffnen/schließen" vorhanden ist. ------------------------------------------------------------------------------------------------]] local BahnsteigSeite = ({["links"] = 0, ["rechts"] = 1})[Zug.variables["Bahnsteig"]] local Fahrtrichtung = ({["vorwärts"] = 0, ["rückwärts"] = 1})[Zug.variables["Richtung"]] for i, Wagen in pairs(layout:getVehicleGroup(Zug, 0)) do local Wagenrichtung = ({["links"] = 0, ["rechts"] = 1})[Wagen.variables["Türen in Fahrtrichtung"]] if BahnsteigSeite and Fahrtrichtung and Wagenrichtung then local Seite = (BahnsteigSeite + Fahrtrichtung + Wagenrichtung) % 2 + 1 -- ergibt 1 oder 2 local Tueren = Wagen.variables["Tueren"][Seite] if Tueren then Wagen.animations[Tueren]:play(-1, 1) end end end Die Basis ist, dass alle Einzelbedingungen gemeinsam haben, dass sie ein entweder/oder sind. Und auch in Summe ergeben sie wieder entweder/oder -> Tür links oder rechts. Das entspricht gerade oder ungerade. Und das bekomme ich mit Modulo 2. Da zuletzt die Zahl 1 oder 2 benötigt wird, addiere ich dem Modulo Ergebnis noch eine 1 hinzu. Noch etwas zu der Art, wie ich deine Texte aus den Variablen in Zahlen umwandle: {["links"] = 0, ["rechts"] = 1} ist eine Tabelle mit den Bezeichnern "links" und "rechts" für die Werte 0 und 1. Wenn man die Tabelle in runde Klammern setzt und dahinter in eckige Klammern einen Bezeichner schreibt, ist das Ergebnis das Element aus der Tabelle, welches durch den Bezeichner benannt wird. Existiert der Bezeichner, der in der eckigen Klammer angegeben ist, in der Tabelle nicht, ist das Ergebnis = nil In der Prüfung wird nil von Lua als false gewertet. Deshalb muss ich dort nur den Inhalt prüfen und keinen Vergleich anstellen. Jeder existierende Wert einschließlich 0 gilt in Lua als true Viele Grüße Götz
  3. Tut mir leid, den habe ich nicht wiedererkannt. Wir benutzen das Kettensymbol in der Kopfleiste. Die Unterstreichung wird dann automatisch vorgenommen.
  4. Hallo Türmer, Das macht bei dieser Funktion keinen Unterschied. Ob du etwas falsch machst, ist aber sehr schwer zu beurteilen, wenn man nicht sieht, was du tust. Zum Drehen von Objekten empfehle ich die Ringe des Gismo zu benutzen. Achte bitte darauf, dass ein Ring (und ebenso die Achsen) des Gismo gelb wird, wenn du den Mauszeiger an der richtigen Stelle hast. Dann drück die linke Maustaste, halte sie gedrückt und verschiebe die Maus zum Drehen nach links oder rechts. Nicht das Objekt umkreisen! Zum Andocken ist es oft ratsam, nah an die Stelle ranzugehen (Mausrad oder Plus-Taste im Zahlenblock der Tastatur) Hilft dir das weiter? Götz
  5. Hallo Hawkeye, schade, dass du dein Skript als Screenshot eingefügt hast. Wenn du ihn als Code einfügst (mit dem <> Knopf in der Kopfleiste), könnte ich ihn kopieren und Vorschläge dazu machen. Viele Grüße Götz
  6. Hallo Markus, hast du mal versucht sie über die Auswahl "Signalbegriff" einzustellen? Viele Grüße Götz
  7. Hallo Jürgen, Es geschieht genau dann, wenn exakt diejenige Fahrstraße, welche du anforderst, aktuell aktiv ist. Weil die Anforderung dann als "erledigt" abgeschlossen wird und keine neue "oben drauf" kommt. Es kann also theoretisch bei 2A oder 2C genauso passieren. Um in solchen Fällen die neue Anforderung nicht zu verlieren, aktiviere bitte in der EV das Kästchen "Anforderung vormerken". Viele Grüße Götz Nachtrag: Sorry, ich hatte Neos Antwort nicht gesehen.
  8. Vielleicht ist es für dich handlicher, mit einem Rechtsklick das Kontextmenü zu öffnen, dort "Duplizieren" auszuwählen und dann das Duplikat an eine neue Stelle zu verschieben? Alternativ kannst du (wie du im Kontextmenü sehen wirst) auch Strg + D nutzen, um ein Objekt zu duplizieren.
  9. Und das macht es so gefährlich. Weil man deshalb denken könnte, es wäre so richtig. Sie läuft nicht mehr rund, wenn du beispielsweise einen Zug in einem Block stoppst.
  10. Nein Gerhard, die Kopie bekommt eine eigene, individuelle ID und wird an keiner Stelle mit dem Original verwechselt. Viele Grüße Götz
  11. Es tut mir leid, Andy, aber das stimmt nicht. Im Gegenteil ist dein Beispiel sehr problematisch. Denn du stellst auch das Signal am Ende einer Fahrstraße auf Fahrt, wenn die Fahrstraße aktiviert wird. Das Signal am Ende muss auf nichts unternehmen stehen. Denn es deckt den folgenden Abschnitt. Seine Stellung steht nicht im Zusammenhang mit der Fahrstraße, deren Ende es markiert. Und wenn du eine Fahrstraße stellst, dann weißt du nicht ob der nachfolgende Abschnitt (hinter dem letzten Signal) frei ist oder nicht. Viele Grüße und bitte entschuldige, dass ich so laut werde. Es ist einfach sehr wichtig, dass dieser Unterschied für alle deutlich wird. Götz
  12. Du weißt, dass die Standardversion kostenlos ist und den vollen Funktionsumfang bietet? Lediglich das Speichern einer Anlage ist auf solche beschränkt, die maximal 150 Modelle enthalten. Und du kannst keine eigenen Modelle hinzufügen. Damit kannst du alles nach Herzenslust ausprobieren und auch beliebig große Versuchsanlagen anderer betrachten. Ja, ich denke du wirst das wissen. Bist lange genug dabei. Viele Grüße Götz
  13. Hallo Herbert, Ja, du kannst mehrere Kontakte nacheinander anklicken und so einen Pfad für das Auto bestimmen, der über eine größere Anzahl von Abzweigungen geht. Zwischen zwei Kontakten dürfen maximal 7 Abzweigungen liegen. Beachte bitte, dass der Weg über eine Kreuzung zwei Abzweigungen enthält, je eine am Anfang und am Ende. Viele Grüße Götz
  14. Hallo Jürgen, hast du eventuell nach Einrichten der Fahrstraßen noch Signale oder Signalkontakte verschoben? Es sieht nämlich für mich im Betrieb so aus, als würden sich Bereiche überlappen. Viele Grüße Götz
  15. Hello Simon, Indeed, it is. Merge panel integrates the shape of one panel into the other. The base panel needs to be wide enough to incorporate the entire other panel (or the added panel gets cut off, which may occasionally be what one desires.) Purpose is to form one continuous landscape. Easier to handle for the studio Easier to handle for the user User can mold the new, merged landscape across former fringes. Greets Goetz
  16. Ja, das geht. Aber mach mal nicht zu viele Baustellen auf einmal auf
  17. See? That's what I mean by "copying is no learning method" With understanding, you would have realised that what you want to do here is to change the property of a contact. Because that's where you find that value: In the contact's properties: I know I sound harsh, as if I'm telling you off. I don't mean to. I just can't help it when I try to clarify things. So, once again: Please, don't feel sorry I'm only trying to help you understand the underlying structure. Cheers Goetz
  18. Hi Pete, not clumsy, Pete You cannot see your mistakes when you don't understand what you copy. The flaw that still upsets your barrier closing routine is in the first iteration. You (correctly) iterate over a bunch of contacts. And then you attempt to set a vehicle property. You should set a contact property instead. You stand no chance to spot these errors when all you do is copy. I copy first and understand later is tempting, but impossible. So - don't feel sorry that you didn't spot it. You couldn't. Also, when you defend or excuse your mistakes, you concentrate on the old. That leaves little romm for the brain to take in the new. The key to learning is joy. Appreciate every new realisation. Take it in, look at it from all angles. Love it for what it offers. But don't fret. Ever! So, here's some additional knowledge which I consider useful: The first "untoward" command in an event list causes the studio to exit from this entire action list. That's why the barriers didn't close, even though that part of your leist was now perfectly fine. Kind regards Goetz
  19. Brummis Anzeigetafel ist eine Gruppe von Objekten. Wenn du die Modellliste öffnest (Menü Icon oder F3) kannst du die Untergruppen alle aufklappen (kleines Dreieck neben dem Namen) und siehst dann die Beschriftungsobjekte, aus denen sich diese Tafel zusammensetzt. Jetzt kannst du in der Liste jedes einzelne Textfeld auswählen und nach deinen Wünschen abändern. Brummi hat sich sogar die Mühe gemacht, jedes Feld einzeln zu benennen. Der Vorschlag von @Little ist eine sehr gute Alternative. Denn im Simulationsmodus kannst du jedes Textfeld mit einem Klick darauf auswählen. Im Bearbeitungsmodus würdest du mit einem Klick auf die Tafel die ganze Gruppe auswählen. Viele Grüße Götz
  20. Hello Pete, Because a single command can perform only one action at a time. But that's not your problem. In the iteration over all barriers, you're only addressing one specific object instead of every object that you receive from the iteration. That's the point you overlooked. Greets Goetz
  21. Hallo Walti, Du markierst alle Teile einer Kombination und fasst sie zu einem Block zusammen. Unter "Katalog - Neu aus Selektion" kannst du diese Gruppe in der Kategorie "Meine Modelle" abspeichern. In dieser Kategorie kannst du bei Bedarf Unterordner einrichten, um bei größeren Mengen die Übersicht zu behalten. Um den dort abgelegten Block zu laden und auf deine Anlage zu ziehen, öffne die Kategorie "Meine Modelle". Auf der Anlage kannst du den Block als solchen belassen oder ihn wieder auflösen (Menü Icon oder Strg-U) Viele Grüße Götz
  22. Hallo @Markus40, diese Bahnsteignummern sind dein Einstieg in die wunderbare Welt der Tauschtexturen. Geh in den Eigenschaften des Modells in das Untermenü mit dem Pinselsymbol und exportiere die Textur dieses Modells in einen Bilderordner: Achte bitte beim Export darauf, den Dateityp von .dds zu .png zu ändern. Jetzt kannst du diese Textur in einem Malprogramm deiner Wahl verändern. Anschließend benutzt du wieder das Texturmenü in den Eigenschaften des Modells, um ihm deine neue Textur zuzuweisen. Das kannst du individuell für jedes einzelne Objekt auf deiner Anlage tun. Das Grundmodell ändert sich hierdurch nicht. Viele Grüße Götz
  23. Hallo @Andy, hallo @Neo dank der guten Beobachtung von @HaNNoveraNer konnte ich das Problem hier nachstellen. Zur leichteren Untersuchung habe ich die Situation auf ihr Minimum reduziert: Dieses Minimum füge hier als Beispielanlage an: problematische Klappbrücke.mbp Eventuell liegt die Ursache hier in derselben konstruktiven Besonderheit, die auch die von mir gebauten Weichen in der Kategorie "Vorbildgerecht" betrifft? Viele Grüße Götz
  24. Hallo @Vermanus, hier habe ich einen zweiten Vorschlag, der einfach umzusetzen ist. Platziere gleich hinter dem Signal einen Beschleunigungskontakt. Wenn der Zug den Signalkontakt (im Bild grün) betritt, ändere per EV den Wert im Beschleunigungskontakt (im Bild hellblau). Dieser Wert ist eine Eigenschaft des Kontakts. Wenn der Zug den Signalkontakt betritt, ist er selbst am Ereignis "Kontakt wird betreten" beteiligt. Deshalb bekommst du ihn bei dieser Methode als "Auslöser" zu fassen. Hier ist eine Beispielanlage mit dieser Methode: individuelle Vmax 2.mbp Die Züge kommen in diesem Beispiel schneller aus dem Depot, weil ich den nächsten Zug schon starte, wenn der vorherige das Signal passiert hat. Viele Grüße Götz
  25. Beim Öffnen des Signals ist der Zug kein Auslöser. Er ist am Vorgang "Signal schaltet" nicht beteiligt. Das macht es schwerer ihn anzusprechen. Darum würde ich einen geringfügig anderen, bequemeren Weg vorschlagen: Starte den Zug am Signal (mittels der Beschleunigung im Signalkontakt) zunächst mit einer geringen Geschwindigkeit. Sagen wir 40 km/h. Und wenn dann die Zugmitte den Signalkontakt überfährt, liest du seine Vmax Variable (wenn vorhanden) aus und gibst den dort gefundenen Wert als Geschwindigkeit vor. Ist keine Vmax eingetragen, dann nennst du ihm deine Standardgeschwindigkeit. Neben der einfacheren Adressierung hat das noch zwei weitere Vorteile: Du musst beim Umschalten des Signals weder die Signalstellung prüfen, noch ob überhaupt ein Zug am Signal steht. Die Wunschgeschwindigkeit wird auch dann an den Zug übertragen, wenn das Signal schon vor seiner Ankunft auf Fahrt stand und er gleich durchfahren durfte. Hier hast du ein kleines Beispiel dieser Methode: individuelle Vmax.mbp Aus dem verborgenen Depot kommt ein neuer Zug, wenn der vorherige verschwunden ist. Die Züge im Depot haben unterschiedliche Werte in einer Vmax Variablen. Der rote Regionalzug hat keine Vmax. Die Zuweisung der Geschwindigkeit sieht so aus: Viele Grüße Götz
×
×
  • Neu erstellen...