Показать сообщение отдельно
Старый 02.03.2020, 05:21   #397
Forsayth
Пользователь
 
Аватар для Forsayth
 
Регистрация: 02.12.2009
Сообщений: 32
Вы сказали Спасибо: 51
Поблагодарили 7 раз(а) в 6 сообщениях
Forsayth стоит на развилке (репутация по умолчанию)
По умолчанию

Прошу Вашей помощи в скрипте. При прописании строчки:

if (enabled)
{
if (route_set())
{


Что бы потушить светофоры встречного направления на однопутном участке, светофор перестал сигнализировать сигналом "один жёлтый мигающий" при открытом входном светофоре, сигнализирующим "два жёлтых огня" или "два жёлтых огня, из них один верхний мигающий" в этом случае предвходная точка сигнализирует "один зелёный огонь". При всех остальных сигналах входного светофора сигнализирует правильно.
Вот сам скрипт:

SCRIPT T_Head_YGR

extern float block_state ();
extern float route_set ();
extern float next_sig_lr ();
extern float next_sig_mr ();
extern float def_draw_state ();
extern float state;
extern float draw_state;
extern float enabled;
extern float sig_feature ();
float next_state;

if (enabled)
{
if (route_set())
{
state = SIGASP_STOP_AND_PROCEED;
if ((enabled || !sig_feature (SIGFEAT_USER1)) && (block_state() ==# BLOCK_CLEAR))
{
next_state = next_sig_lr (SIGFN_NORMAL);
if ((next_state ==# SIGASP_STOP) || ((next_sig_mr (SIGFN_NORMAL) ==# SIGASP_STOP_AND_PROCEED) && (next_state ==# SIGASP_RESTRICTING)))
{
state = SIGASP_RESTRICTING;
}
else if ((next_state ==# SIGASP_STOP_AND_PROCEED) || (next_state ==# SIGASP_RESTRICTING))
{
state = SIGASP_APPROACH_1;
}
else
{
state = SIGASP_CLEAR_2;
}
}
draw_state = def_draw_state (state);
if (state ==# SIGASP_CLEAR_2)
{
if (next_state ==# SIGASP_APPROACH_2)
{
draw_state = 4;
}
else if ((next_state ==# SIGASP_APPROACH_3) || (next_state ==# SIGASP_CLEAR_1))
{
draw_state = 5;
}
}
}
else
{
state = SIGASP_STOP;
if (block_state() ==# BLOCK_JN_OBSTRUCTED)
{
state = SIGASP_STOP_AND_PROCEED;
}
}
} else state = SIGASP_STOP;
draw_state = def_draw_state (state);
Forsayth вне форума   Ответить с цитированием
Этот пользователь сказал Спасибо Forsayth за это полезное сообщение:
Старый 01.01.2007, 12:00  
Яndex
Спонсор
 
 
Регистрация: 01.01.2007
Сообщения: 500


Реклама показывается изредка по случайному принципу
По умолчанию РЕКЛАМА