//Mutex
概要
Mutexサインは排他的な制御、つまり列車が中にある間は他の列車を入らせない領域を展開します。領域が消えると、待機していた列車が入れるようになります。このサインはSwitcherサインと組み合わせて衝突を避けるのに便利です。またMutexサインは、取り付けられたレバーを通じ、領域展開が行われているかどうかの状態を切り替えます。
複数のMutexサインは同じ名前をつけることでくっつけることができ、それぞれの立方体の領域をあわせてより複雑な領域を作ることが可能です。
記法
- 一行目:[train]。Mutexサインは電源を必要としません。
- 二行目:mutexと書きます。引数を指定することができ、個数によって挙動が変化します。一つだけの場合は領域のxyzすべてのサイズが一度に指定され、二つだけの場合はひとつめがxzでふたつめがy、三つ全て指定するとそれぞれxyzのサイズとなります。指定しない場合、1×2×1の箱型の領域が生成されます。
- 三行目:他の領域と結合して複雑な形の領域を作りたい場合、ここに名前を指定できます。必須ではありません。
- 四行目:ステートメント。同じ名前を指定した複数サインのステートメントは、それぞれリストに追加され、各個処理されます。先頭に&(アンド)や|(パイプ)をつけることで、AND演算かOR演算を選択できます。
スマートミューテックス
Smart Mutexサインはそれぞれの列車の通る経路を考慮し、衝突が起きそうにないのであれば、複数の列車を通過させます。
予測
スマートミューテックスによって列車の通るであろうルートを確認する時、Switcherサインも考慮に入れられます。なのでレールの分岐が現在どちらを向いているかは重要ではありません。
パシングミューテックス
Pathing MutexはWaiterサインの上位互換のようなサインです。列車がパシングミューテックスサインを起動すると、その地点から列車の通るであろう経路を予測し、そのレール上を一時的な閉塞領域として扱います。そのレールを横切ろうとするその他の列車は一時的にせき止められ、また走行中であれば、パシングミューテックスの看板の前で止められます。
Syntax
pathmutex / pmutex: Creates a standard mutex zone using the path ahead
spmutex: Creates a smart mutex zone using the path ahead
First number is the path distance ahead to create as a mutex zone. Second number (optional) sets the width, or, distance that trains keep from the path. Setting this to a higher number avoids trains colliding with each other.
Slowing down on approach
By setting the train wait acceleration property, trains will automatically slow down approaching an occupied mutex zone, instead of stopping instantly.
