|
| Om det här är ditt första besök, se till att gå till vår FAQ (finns även länk till FAQ i navigeringsmenyn ovan). Du kan behöva att registrera dig innan du kan posta (finns även en länk till registrering i navigeringsmenyn ovan). För att titta på inlägg, välj det forum som du vill besöka från de som är listade nedan. |
|
|||||||
|
|
Ämnesverktyg | Visningsalternativ |
|
|
#34 |
|
Medlem
Reg.datum: Feb 2012
Inlägg: 1 379
|
Efter mycket misslyckande försök så valde ajg att skapa en ny Signal state, STATE_SLOWER.
Vid DefaultSetLights() (rad 96-126) så lade jag till raderna för signalbilden STATE_SLOWER: HTML-kod:
-- Swedish home signals SetLights
-- Switch the appropriate lights on and off based on our new state
function DefaultSetLights()
-- DebugPrint("DefaultSetLights()")
if (gSignalState == STATE_GO) then
SwitchLight( LIGHT_NODE_GREEN, 1 )
SwitchLight( LIGHT_NODE_RED, 0 )
SwitchLight( LIGHT_NODE_GREEN2, 0 )
SwitchLight( LIGHT_NODE_WHITE, 0 )
SwitchLight( LIGHT_NODE_GREEN3, 0 )
elseif (gSignalState == STATE_SLOW) then
SwitchLight( LIGHT_NODE_GREEN, 1 )
SwitchLight( LIGHT_NODE_RED, 0 )
SwitchLight( LIGHT_NODE_GREEN2, 1 )
SwitchLight( LIGHT_NODE_WHITE, 0 )
SwitchLight( LIGHT_NODE_GREEN3, 0 )
elseif (gSignalState == STATE_SLOWER) then
SwitchLight( LIGHT_NODE_GREEN, 1 )
SwitchLight( LIGHT_NODE_RED, 0 )
SwitchLight( LIGHT_NODE_GREEN2, 1 )
SwitchLight( LIGHT_NODE_WHITE, 0 )
SwitchLight( LIGHT_NODE_GREEN3, 1 )
else -- stop or blocked
SwitchLight( LIGHT_NODE_GREEN, 0 )
SwitchLight( LIGHT_NODE_RED, 1 )
SwitchLight( LIGHT_NODE_GREEN2, 0 )
SwitchLight( LIGHT_NODE_WHITE, 0 )
SwitchLight( LIGHT_NODE_GREEN3, 0 )
end
end
HTML-kod:
STATE_SLOWER = 4 HTML-kod:
elseif Call("GetLinkFeatherChar", gConnectedLink) == 51 then
if Call ( "GetLinkApproachControl", gConnectedLink ) ~= 0 then
-- Check if next signal is at red, show a slow signal if that is the case.
if (gExpectState == STATE_GO) or (gExpectState == STATE_SLOW) then
newSignalState = STATE_GO
else
newSignalState = STATE_SLOWER
end
elseif Call ( "GetLinkLimitedToYellow", gConnectedLink ) ~= 0 then
-- diverging route, signal slow
newSignalState = STATE_SLOWER
end
elseif Call ( "GetLinkApproachControl", gConnectedLink ) ~= 0 then
-- Check if next signal is at red, show a slow signal if that is the case.
if (gExpectState == STATE_GO) or (gExpectState == STATE_SLOW) then
newSignalState = STATE_GO
else
newSignalState = STATE_SLOW
end
elseif Call ( "GetLinkLimitedToYellow", gConnectedLink ) ~= 0 then
-- diverging route, signal slow
newSignalState = STATE_SLOW
end
Nedanför denna kodsnutt (rad 454) så lade jag in denna del: HTML-kod:
if newSignalState ~= gSignalState then
DebugPrint("SetSignalState() - signal state changed from " .. gSignalState .. " to " .. newSignalState .. " - sending message" )
gSignalState = newSignalState
SetLights()
if gSignalState >= STATE_STOP then
Call( "Set2DMapSignalState", STATE_STOP)
else
if gSignalState == STATE_SLOWER then
Call( "Set2DMapSignalState", STATE_SLOW)
else
Call( "Set2DMapSignalState", gSignalState)
end
end
if gSignalState == STATE_BLOCKED and not gBlockSignal then
Call( "SendSignalMessage", SIGNAL_STOP, "BLOCKED", -1, 1, 0 )
else
if gSignalState == STATE_SLOWER then
Call( "SendSignalMessage", SIGNAL_GO + STATE_SLOW, "", -1, 1, 0 )
else
Call( "SendSignalMessage", SIGNAL_GO + gSignalState, "", -1, 1, 0 )
end
end
end
Dock lyckas jag inte lura kartan. Den visar en röd prick istället för gul. Men det får nog vara så, antar jag. Filen finns på Github om någon vill testa.
__________________
Mvh SummerADDE Alla mina projekt till Train Simulator Classic är nedlagda. Jag kommer härmed fokusera på att skapa rutter och innehåll till Train Sim World i fortsättningen. Alla mina downloads på Google Drive kommer att tas bort permament den 31:a agusuti 2024. Senast redigerad av ADDE den 2022-01-17 klockan 04:13. |
|
|
|