Andy Geschrieben 15. August 2019 Geschrieben 15. August 2019 Hallo, ich habe da eine Frage bezüglich defer und deferredCall. Ich habe ein Päckchen zurechtgemacht um mehrere Drehscheiben mit unterschiedlich vielen Zufahrten und Lokschuppen zu steuern. Durch die unbestimmte Anzahl der Gleise liegen die Stammdaten der Drehscheiben in tables im zugehörigen Modulskript. Das funktioniert wunderbar. Jetzt habe ich die zugehörigen Funktionen auch dorthin verschoben, um in den 'normalen' Ereignissen die jeweilige Funktion mit dem zugehörigen Table-Parameter aufrufen zu können. Die sind jetzt auch prima universell verwendbar. Nun haben aber die meisten dieser Funktionen auch Verzögerungen drin und nun denke ich, beißt sich da was. defer und deferredCall, so verstehe ich's, scheinen eine direkte Bindung mit dem Ereignis einzugehen, in dem sie gerufen werden. Lager ich's aus, ist die Fähigkeit weg. Im Modulskript rührt sich nämlich diesbezüglich nichts mehr. Muß ich den Funktionsaufrufen noch einen Parameter dafür mit auf den Weg geben und mit return wieder abholen? Oder muß ich in der Konfiguration doch auf Timer umstellen. Modulskript: Drehscheibe_1 = { ... } function Drehscheibe_Einfahrt(drehs, track, vehicle) if not deferredCall then ... defer("Verzögerung (3)") elseif deferredCall == "Verzögerung (3)" then ... end end function... auch mit defer function... function... normales Ereignis: Zug betritt ... Aktion: Drehscheibe_Einfahrt(Drehscheibe_1, track, vehicle) Gruß Andy
Neo Geschrieben 15. August 2019 Geschrieben 15. August 2019 Hallo Andy, vor 3 Minuten schrieb Andy: Muß ich den Funktionsaufrufen noch einen Parameter dafür mit auf den Weg geben und mit return wieder abholen? ja und nein: Ja: Du musst den Funktionsaufrufen den Parameter deferredCall mitgeben, ansonsten kennen die Funktionen diesen Parameter nicht. Nein: Du musst nichts mit return abholen. Was willst du denn abholen? Viele Grüße, Neo
Andy Geschrieben 15. August 2019 Autor Geschrieben 15. August 2019 (bearbeitet) vor 14 Minuten schrieb Neo: Was willst du denn abholen? tja, z.B. deferredCall. Hätte ich mir vorstellen können, wenn das Ereignis wirklich eine Bindung aufbaut. Ich hätte noch ein wenig herumkombiniert, aber ein offizielles Statement von Dir ist mir da doch lieber! Muß es gleich einbauen. Prima, wieder ein kritisches Ding im Griff. vielen Dank Andy ps: Klappt alles, Neo! Bearbeitet 15. August 2019 von Andy ps
EASY Geschrieben 17. August 2019 Geschrieben 17. August 2019 Hallo @Neo ... wenn bei " deferredCall" die gleiche Beschreibung wie bei "defer" stehen würde, wäre die Sache vielleicht klarer dargestellt. (und eindeutig, dass beides zusammengehört) Ich habe auch erst nach der Beschreibung bei "defer" verstanden, wie " deferredCall" einzusetzen ist. Gruß EASY
Neo Geschrieben 18. August 2019 Geschrieben 18. August 2019 Hallo EASY, vor 19 Stunden schrieb EASY: wenn bei " deferredCall" die gleiche Beschreibung wie bei "defer" stehen würde, wäre die Sache vielleicht klarer dargestellt. es ist meistens keine gute Idee, Dokumentation zu replizieren, weshalb ich bei deferredCall für weitere Informationen auf defer verweise. Viele Grüße, Neo
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