Nu till nåt helt annat:
Att använda Approach Control-funktionen för att få en signal att bete sig på olika sätt var en väldigt smart idé. Från början fattade jag nog inte riktigt att det "bara" är ett sätt att kunna välja olika egenskaper för signalen utan jag trodde det hade något specifikt med just "approach control" att göra. Tack för tipset!
Jag provkörde ett scenario på Malmbanan och låg bakom ett långsamt malmtåg då jag höll på att köra mot rött när mellansignalen visar "kör" med utfartsblocket i "stopp". Dvs "kör vänta kör" i infartssignalen, nästa signal som är en H2 visar "kör" och nästa H2 efter bara ca 300 m visar "stopp". Så kan man ju inte ha det tänkte jag, så jag såg till att göra nåt åt saken!
Min första tanke var att skapa en ny variant av H2 och H3 med ändrat script som ställer signalen till stopp när nästa signal visar stopp. Men det skulle bli många signaler att byta ut! Då kom jag på att Approach Control-funktionen kanske kunde lösa problemet. Resultatet blev en smärre ändring i scripten för H2 och H3, vilket innebär att man inte behöver byta ut några signaler och befintliga signalers funktion påverkas bara om man går in och bockar för "Approach Control" i signalens egenskaper.
Jag lade till de här raderna i scripten:
Kod:
elseif Call ( "GetLinkApproachControl", gConnectedLink ) ~= 0 and gExpectState == STATE_STOP then
newSignalState = STATE_STOP
Alltså, OM "Approach Control" är valt så kommer signalen gå till stopp när nästa signal är i stopp.
Jag har nu "utrustat" alla mellansignaler som står före utfartsblocksignaler på Malmbanan på detta sätt och provkört, och det fungerar fint. Nästa steg blir att utrusta Jönköpingsbanan på samma sätt.
Tänker också att "Approach Control", "Limited Aspect" och "GetLinkFeatherChar" kan vara användbara om man vill göra signalers funktion mer flexibla som du redan varit inne på Adde! Det gäller bara att komma fram till i vilken utsträckning man behöver göra nya signaler och i vilken utsträckning man kan uppdatera scripten så att redan utplacerade signaler kan ges ny funktionalitet vid behov, utan att påverka de signaler som man
inte vill ska ändras.