Hallo zusammen,
ein lauer Sommerabend auf der Terrasse ist ideal zum Testen der neuen Version 10.3 - Trockentest ohne Anlage !
Nächster Testpunkt bei mir ist der neue Makrobefehl LETBLOCKLOK, der einer Variablen den Wert der im Block befindlichen Lok liefert. Das hatte ich mir mal gewünscht. Nun hat es Ronald eingebaut
10.B35 23-5-22
Neue Makrokommandos:
- letblocklok(block, variabele): weist die loknummer in Block [block] die
Variabele [variabele] zu.
Leider war der Test nur halb erfolgreich. Beim ersten Versuch eine Lok nach Ermittlung der ldf.Nr. mit Fahrstufe 20 anzusteuern misslang.
Nach einigem Probieren habe ich herausgefunden, dass der Variablen die lfd.Nr. der Lok -1 zugewiesen wird (z.B. 47, dann steht in der Variablen die 46). Wenn man den Wert dann um +1 erhöht, hat man die korrekte lfd.Nr. wie sie in ModellStw angezeigt wird.
Beispiel-Makro (Lok-Nr. 47 soll gesteuert werden):
1 letblocklok(62, L)
2 ifvar(L, 46, 5)... <== Abfrage nur für Test !!!
3 bel(0)
4 end
5 inc(L)...<== um 1 erhöhen für richtige lfd.Nr.
6 lok(L, 20)...<== nun wird lfd.Nr. 47 angesteuert
7 end
Da müsste Ronald noch nachbessern. Kann nicht so schwierig sein . Hier wird sicher eine interne Tabelle ausgelesen, deren Index (je nach Programmiersprache) mit 0 beginnt. Das Erhöhen mit +1 sollte schon das Programm machen, und nicht das Makro.
Nochmal Gruss von der Terrasse
Werner
[H0 K-Gleis / Fahren: z21 mit Uhlenbrock Power-4 (DCC) / Melden+Schalten: Stärz Businterface + Decoder/Melder(Selectrix) / PC: Fujitsu Esprimo 2,8 GHz mit WIN10 / ModellStw 10.6B109) |