![]() |
![]() |
|
Сайт | ПРАВИЛА ФОРУМА | FAQ | Регистрация | Справка | Пользователи | Социальные группы | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
![]() |
#11 |
Пользователь
Регистрация: 02.12.2009
Сообщений: 35
Вы сказали Спасибо: 51
Поблагодарили 7 раз(а) в 6 сообщениях
![]() |
![]()
В одном из заграничных маршрутов есть трех-крылый семафор.
![]() В сигнализации СССР подобные семафоры использовались для указания направления при многопутном участке: При наличии трёх и более направлений применяются трёхкрылые семафоры ... Третье крыло сигнализирует также, как и второе крыло, желтым огнем. Есть ли возможность поднять одновременно три крыла семафора? Используя, вот этот скрипт: sigcfg.dat SignalType ( "T_Semaphore_GR_X_X" SignalFnType ( NORMAL ) SignalLightTex ( "ltex" ) SemaphoreInfo ( 1 ) SignalFlags ( SEMAPHORE ) SignalLights ( 2 SignalLight ( 0 "Red Light" Position ( -0.367 0 -0.04 ) Radius ( 0.1 ) SignalFlags ( SEMAPHORE_CHANGE ) ) SignalLight ( 1 "Green Light" Position ( -0.367 0 -0.04 ) Radius ( 0.1 ) SignalFlags ( SEMAPHORE_CHANGE ) ) ) SignalDrawStates ( 2 SignalDrawState ( 0 "Stop" DrawLights ( 1 DrawLight ( 0 ) ) SemaphorePos ( 0 ) ) SignalDrawState ( 1 "Green" DrawLights ( 1 DrawLight ( 1 ) ) SemaphorePos ( 2 ) ) ) SignalAspects ( 2 SignalAspect ( STOP_AND_PROCEED "Stop" SpeedKPH ( 0 ) ) SignalAspect ( CLEAR_1 "Green" ) ) SignalNumClearAhead ( 1 ) ) SignalType ( "T_Semaphore_GX_Y_X" SignalFnType ( NORMAL ) SignalLightTex ( "ltex" ) SemaphoreInfo ( 1 ) SignalFlags ( SEMAPHORE ) SignalLights ( 3 SignalLight ( 0 "No Light" Position ( 0 0 0 ) Radius ( 0.001 ) SignalFlags ( SEMAPHORE_CHANGE ) ) SignalLight ( 1 "AmberF Light" Position ( -0.367 0 -0.04 ) Radius ( 0.1 ) SignalFlags ( SEMAPHORE_CHANGE ) ) SignalLight ( 2 "Green Light" Position ( -0.367 0 -0.04 ) Radius ( 0.1 ) SignalFlags ( SEMAPHORE_CHANGE ) ) ) SignalDrawStates ( 2 SignalDrawState ( 0 "No Light" DrawLights ( 1 DrawLight ( 0 ) ) SemaphorePos ( 0 ) ) SignalDrawState ( 1 "YellowGreen" DrawLights ( 2 DrawLight ( 1 ) DrawLight ( 2 ) ) SemaphorePos ( 2 ) ) ) SignalAspects ( 2 SignalAspect ( STOP "No Light" ) SignalAspect ( APPROACH_1 "YellowGreen" SpeedKPH ( 40 ) ) ) SignalNumClearAhead ( 3 ) ) SignalType ( "T_Semaphore_GX_Y_Y" SignalFnType ( INFO ) SignalLightTex ( "ltex" ) SemaphoreInfo ( 1 ) SignalFlags ( SEMAPHORE ) SignalLights ( 4 SignalLight ( 0 "No Light" Position ( 0 0 0 ) Radius ( 0.001 ) SignalFlags ( SEMAPHORE_CHANGE ) ) SignalLight ( 1 "Amber Light" Position ( -0.367 0 -0.04 ) Radius ( 0.1 ) SignalFlags ( SEMAPHORE_CHANGE ) ) SignalLight ( 2 "AmberF Light" Position ( -0.367 0 -0.04 ) Radius ( 0.1 ) SignalFlags ( SEMAPHORE_CHANGE ) ) SignalLight ( 3 "Green Light" Position ( -0.367 0 -0.04 ) Radius ( 0.1 ) SignalFlags ( SEMAPHORE_CHANGE ) ) ) SignalDrawStates ( 2 SignalDrawState ( 0 "No Light" DrawLights ( 1 DrawLight ( 0 ) ) SemaphorePos ( 0 ) ) SignalDrawState ( 1 "YellowYellow" DrawLights ( 3 DrawLight ( 3 ) DrawLight ( 2 ) DrawLight ( 1 ) ) SemaphorePos ( 2 ) ) ) SignalAspects ( 2 SignalAspect ( STOP "No Light" ) SignalAspect ( APPROACH_1 "YellowYellow" SpeedKPH ( 40 ) ) ) SignalNumClearAhead ( 5 ) ) SignalShape ( "LHUQ3abs.s" "Выходной Семафор 3 Крыла" SignalSubObjs ( 3 SignalSubObj ( 0 "HEAD1" "Одно Крыло-Главный Путь" SigSubType ( SIGNAL_HEAD ) SignalFlags ( JN_LINK ) SigSubSType ( "T_Semaphore_GR_X_X" ) ) SignalSubObj ( 1 "HEAD2" "Два Крыла-Ответление На Боковой Путь" SigSubType ( SIGNAL_HEAD ) SignalFlags ( JN_LINK OPTIONAL DEFAULT ) SigSubSType ( "T_Semaphore_GX_Y_Y" ) ) SignalSubObj ( 2 "HEAD3" "Три Крыла-Ответление На Боковой Путь" SigSubType ( SIGNAL_HEAD ) SignalFlags ( JN_LINK OPTIONAL DEFAULT ) SigSubSType ( "T_Semaphore_GX_Y_Y" ) ) ) ) sigscr.dat SCRIPT T_Semaphore_GR_X_X 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; state = SIGASP_STOP_AND_PROCEED; if (enabled && (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_STOP_AND_PROCEED))) { state = SIGASP_CLEAR_1; } else { state = SIGASP_CLEAR_1; } } draw_state = def_draw_state (state); SCRIPT T_Semaphore_GX_Y_X 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 (route_set()) { state = SIGASP_STOP_AND_PROCEED; if (enabled && (block_state() ==# BLOCK_CLEAR)) { next_state = next_sig_lr (SIGFN_NORMAL); if ((next_state ==# SIGASP_STOP_AND_PROCEED) || ((next_sig_mr (SIGFN_NORMAL) ==# SIGASP_STOP_AND_PROCEED) && (next_state ==# SIGASP_STOP_AND_PROCEED))) { state = SIGASP_STOP_AND_PROCEED; } else { state = SIGASP_APPROACH_1; } } draw_state = def_draw_state (state); if ((state >=# SIGASP_APPROACH_1) && (next_state ># SIGASP_STOP_AND_PROCEED)) { draw_state = 1; } else if (next_state ==# SIGASP_STOP_AND_PROCEED) { draw_state = 1; } } else { state = SIGASP_STOP_AND_PROCEED; if (block_state() ==# BLOCK_JN_OBSTRUCTED) { state = SIGASP_STOP_AND_PROCEED; } draw_state = def_draw_state (state); } SCRIPT T_Semaphore_GX_Y_Y 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 (route_set()) { state = SIGASP_STOP_AND_PROCEED; if (enabled && (block_state() ==# BLOCK_CLEAR)) { next_state = next_sig_lr (SIGFN_NORMAL); if ((next_state ==# SIGASP_STOP_AND_PROCEED) || ((next_sig_mr (SIGFN_NORMAL) ==# SIGASP_STOP_AND_PROCEED) && (next_state ==# SIGASP_STOP_AND_PROCEED))) { state = SIGASP_STOP_AND_PROCEED; } else { state = SIGASP_APPROACH_1; } } draw_state = def_draw_state (state); if ((state >=# SIGASP_APPROACH_1) && (next_state ># SIGASP_STOP_AND_PROCEED)) { draw_state = 1; } else if (next_state ==# SIGASP_STOP_AND_PROCEED) { draw_state = 1; } } else { state = SIGASP_STOP_AND_PROCEED; if (block_state() ==# BLOCK_JN_OBSTRUCTED) { state = SIGASP_STOP_AND_PROCEED; } draw_state = def_draw_state (state); } У меня следующая ситуация: При указании главного пути: Семафор сигнализирует правильно: ![]() При указании бокового направления и два крыла. Семафор сигнализирует правильно. ![]() А при использовании третьего направления,почему-то не подымается, среднее крыло. ![]() Возможно нужно прописать какой-то дополнительный параметр? Последний раз редактировалось Forsayth; 23.10.2020 в 22:34. |
![]() |
![]() |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
Опции темы | |
Опции просмотра | |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Скрипты Вл | ~sejo~ | TrainZ - Подвижной состав | 2 | 25.09.2010 18:11 |
Как эта конфигурация ? | vita | IT, компьютеры, электроника | 9 | 02.06.2009 00:26 |
Заказы на скрипты | TRam_ | TrainZ — Об игре | 5 | 03.04.2009 16:25 |
MSTS-конфигурация компьютера | GeneZone | MSTS - Об игре | 6 | 03.03.2008 21:03 |
Trainz 2006 SP1 Конфигурация PC | vita | TrainZ — Об игре | 18 | 11.02.2008 00:11 |
|
![]() Что это? |