////////////////////////////////////////////////////////////////////////////////
///vyhodnoy svetovor 4 linz 2Yellow po bokovomu///
///////////////////////////////////////////////////////////////////////////////
SCRIPT vyhod4L2Y
extern float block_state ();
extern float route_set ();
extern float next_sig_lr ();
extern float def_draw_state ();
extern float state;
extern float draw_state;
extern float enabled;
float next_state;
state = SIGASP_STOP_AND_PROCEED;
if (block_state() ==# BLOCK_CLEAR)
{
next_state = next_sig_lr (SIGFN_NORMAL);
if (next_state ==# SIGASP_STOP_AND_PROCEED
|| next_state ==# SIGASP_RESTRICTING )
{
state = SIGASP_APPROACH_1;
}
else if (next_state ==# SIGASP_STOP )
{
state = SIGASP_STOP_AND_PROCEED;
}
else if (next_state ==# SIGASP_APPROACH_1)
{
state = SIGASP_CLEAR_1;
}
else if (next_state ==# SIGASP_CLEAR_1)
{
state = SIGASP_CLEAR_2;
}
else if (next_state ==# SIGASP_CLEAR_2)
{
state = SIGASP_CLEAR_2;
}
}
if ( !route_set() )
{
if (state ==# SIGASP_APPROACH_1)
{
state = SIGASP_APPROACH_2;
}
else if (state ==# SIGASP_CLEAR_1
|| state ==# SIGASP_CLEAR_2
|| state ==# SIGASP_APPROACH_2
|| state ==# SIGASP_APPROACH_3)
{
state = SIGASP_APPROACH_3;
}
}
draw_state = def_draw_state (state);
Выделенное красным - то, что происходит,когда путь в тупик. Всё по скрипту - "закрыт SAP"
Чтобы работало должно быть
Цитата:
else if (next_state ==# SIGASP_STOP )
{
state = SIGASP_APPROACH_1;
}
|
Будет показывать 2Ж
Или
Цитата:
else if (next_state ==# SIGASP_STOP )
{
state = SIGASP_RESTRICTING;
}
|
Погаснет, но пропустит.
Если в конфигурации этой головы прописать белый, заменив "No Light" на "White Light" - будет гореть белым