連結入出庫機能 coupling convoy enter and leave depot - teamhimeh/simutrans GitHub Wiki
連結入出庫機能 coupling convoy enter and leave depot
はじめに
OTRP v44より実装された連結入出庫機能について説明します。
連結入出庫機能の使い方
連結出庫機能
連結した状態で車庫から出庫できるようになりました。対象となるのは列車track,路面電車tram_track,モノレールmonorail_tack等です。
使い方
- 同じ車庫内に編成を複数用意します。
- 車庫内で「スタート」"Start"ボタンの上に新しくできた「後ろに連結する編成」"Child convoy:" の欄にできたボックスから、表示中の編成の後ろに連結する編成を選択してください。
- 連結するすべての編成の次の駅の座標を統一し、先頭の編成の「スタート」"Start"ボタンを押してください。
編成をコピーすると、その編成と後ろに連結するすべての編成がコピーされ、新しい連結予定の編成が追加されます。
注意点
- スタートボタンが変わってしまって発車できない場合
その編成を後ろに連結する予定の別の編成がいます。「先頭の編成に移動」"Move to Parent Convoy"を押すと前に連結する編成に移動できます。(スタートボタンが表示されるまで押してください。) - 連結設定をしたのに発車しない場合
連結予定の編成の次の停車駅が違う、次の停車駅までのルートが無い(電化されているかなども注意してください)、連結する各編成の動力が無い、各編成の車両の順序が連結制限に違反している、などの原因が考えられます。連結予定の編成のスケジュールやルートを見直してください。
※連結予定の各編成が、単独で出庫可能な編成(各車両下のステータスカラーが赤色ではない、編成の出力が0より大きい、など)である必要があります。 - 連結設定を解除したい 後ろに連結する編成の連結予定を解除するには、「後ろに連結する編成」"Child convoy:"の欄において「連結せずに発車」"depart without child convoy"を選択してください。
- 連結したい編成を選択したのに選択できない 選択しようとした編成がすでに連結設定を行っており、表示中の編成を後ろにつなぐ予定の場合、連結できない場合があります。選択しようとした編成の連結設定を解除してみてください。
連結入庫機能
連結した先頭編成の「車庫へ」ボタンを押せるようにし、連結したまま入庫できるようにしました。 入庫後は、連結設定を行った状態となり、入庫時と同様に連結したまま出庫できます。
ソースについて補足
連結設定は通常走行時、親側(前側)の編成が子側(後ろ側)の編成をcoupling_convoi
に記録しています。この情報はget_conpling_convoi()
で取得できます。一方、子側編成は親編成のことは直接は知らず、state=COUPLED
またはstate=COUPLED_LOADING
となっています。
一方、車庫内ではすべての編成がstate=INITIAL
となっているため、親編成は子編成をcoupling_convoi
に記録していますが、子編成であるという情報はdepot
側が取得しています。そのため、入庫時・出庫時には一度情報を消去し、state
を切り替えてから連結やcoupling_convoi
の上書きを行っています。