Цитата:
Можешь рассказать, как из скрипта построить маршрут от светофора А до светофора Б?
|
Как бэ система "внутри" построена так, что собирается маршрут №6 светофора № 8. А реализацию отображения, как называется светофор №8 и куда ведёт маршрут № 6 этого светофора, можешь посмотреть например в правиле AddPath.
Собственно вызов сборки маршрута ведётся через публичную функцию
public void SetUsualPath(string <имя станции>, int <номер светофора>, int <номер маршрута>, bool SingleCheck)
последний параметр в настоящее время не используется, можно писать хоть true хоть false.
Для проверки, свободен ли маршрут, используется public bool CheckPathIsFree(string <имя станции>, int <номер светофора>, int <номер маршрута>) .
Сборка маневровых маршрутов производится в отдельном скрипте (находится в браузере маневровых маршрутов) и происходит, при отсылке сообщения
"MakeShuntPath", "<имя станции>^<имя светофора начала маршрута маршрута>^<имя светофора конца маршрута>^<можно строить под состав/нельзя строить под состав>"
Ответ (что в z7-xPath что в zxPath) при сборке маневрового маршрута будет
"z7-xPath","ShuntPathCreated^<имя станции>^<имя светофора начала маршрута маршрута>^<имя светофора конца маршрута>"
Если маршрут не собрался, ответа не будет.
Цитата:
(и люто негодовал, если они открывались сами когда не надо)
|
с z7-xPath была обратная проблема - предоткрытые светофоры z7
закрывались, когда не надо, хотя эта система вообще не ведает закрытием светофоров, исключая принудительную отмену маршрутов. В первых версиях даже в момент проследования поезда, в результате бот останавливал поезд на 2 минуты за проезд красного (пока там не был поставлен один костыль с дооткрытием светофоров. Позднее был поставлен ещё один, уже в скриптах Эрендира, но это так и не помогло).