· 

地下試験線V3 C-ATSパッチのホームドア表示機の仕組み

「地下試験線V3 C-ATSパッチのホームドア表示機の仕組みを知りたい。」

という方が多かったので、今回、仕組みを解説します。

 

・注意

この記事を理解するには、Bve5の構文をそこそこ理解している必要があります。

 

・どの構文を使っているのか?

ざっくりと説明しますと、他列車(Train)構文を使用し、

表示機を0.1m単位で動かしています。

 

・作り方

まず、「ホームドア全開」「ホームドア全閉」「停止位置OK」

それぞれの状態を表示した表示機ストラクチャを作ります。

 

下のSSは左から、「ホームドア全開」「ホームドア全閉」「停止位置OK」

状態のストラクチャです。

次に、ストラクチャリストにさっき作ったストラクチャを書き込みます。

ここでは、上のSSの左から、「open」「close」「ok」としておきます。

 

次は、他列車構文を使うのに必要な、他列車ファイルを作りましょう。

まずは、「open.txt」「close.txt」「ok.txt」という名前の

テキストファイルを作り、適当なところに保存します。

それぞれのテキストファイルに、以下の構文を打ち込みます。

文字コードはUTF-8を推奨します。

 

・open.txt

BveTs Train 1.01

#ホームドア全開

[Structure]

Key = open

Distance = 0

Span = 0

Z = 0

 

・close.txt

BveTs Train 1.01

#ホームドア全閉

[Structure]

Key = close

Distance = 0

Span = 0

Z = 0

 

・ok.txt

BveTs Train 1.01

#停止位置OK

[Structure]

Key = ok

Distance = 0

Span = 0

Z = 0

 

これでOKです。

次は、mapファイルに他列車構文を打ち込みます。

メインのmapファイルに打ち込むとごちゃごちゃになるので、

新しくmapファイルを作り、includeで読み込ませると良いでしょう。

では、打ち込みます。

 

・mapファイル

BveTs Map 2.02

#ファイルの読み込み

Train['open'].Load("open.txtへの相対パス",'FormDoor',1);

Train['close'].Load("close.txtへの相対パス",'FormDoor',1);

Train['ok'].Load("ok.txtへの相対パス",'FormDoor',1);

 

$Station = 1000;#停止位置距離程(m)

$Departure = '11:59:30';#出発時刻(12:00:00)-停車時間(30秒)

$StopTime = 30;#停車時間(second)

 

$Station-0.5;#停止位置前方限界

Train['close'].Enable(0);

Train['ok'].Enable(0);

Train['close'].Enable($Departure);

$Station;#○○駅停止位置

Station['○○'].Put(1,-0.5,0.5);

$Station+0.5;#停止位置後方限界

 

#停止位置の10m先にホームドア表示機を設置。

#一番前

$Station+9.8;

Train['close'].Stop(0,0,99999,99999);

$Station+9.9;

Train['ok'].Stop(0,5,99999,99999);

$Station+10;

Train['open'].Stop(0,$StopTime-3,99999,99999);

$Station+10.1;

Train['close'].Stop(99999,0,0,0);

$Station+10.2;

Train['ok'].Stop(99999,0,0,0);

Train['open'].Stop(99999,0,0,0);

#一番後ろ

 

#ホームドア表示機の位置調整。

Track['FormDoor'].Position(0,0);#位置がズレていたらここでXとYの調整が可能。

 

 

…、理解出来ましたか?

おそらく出来ないと思います。

この仕組みは、言葉で表すのが難しいので、実際に路線に実装して、

いじってみるのが一番手っ取り早いです。

僕もこれを作るのに結構苦労しましたが、苦労した分

いいものができたと思っています。

これを完璧なものに仕上げるのは、あとはあなたの技術次第です。

 

以上です。

 

あ、SSのストラクチャは、C-ATSパッチのフリー素材として配布しています。