TrainCartsドキュメント

特に断りのない場合「列車」は「列車またはカート」と同義です。

看板の前提

看板識別子

  • 全ての看板の1行目には[train]または[cart]の指定が必要です。[train]を使用する場合は看板が編成の中央にきたときに動作し、[cart]を指定した場合は編成のいずれかのカートが看板の上に来た時に処理を行います。たとえば、station看板にて[train]を指定した場合は看板が編成の真ん中に来るように列車が停止し、[cart]を指定した場合は看板が先頭車両に合うように列車は停止します。
  • 看板の動作にはRS入力が必要です。[!train]とすることで入力を反転でき、[+train]とすると周囲の状態にかかわらず常に両側からRS入力があるのと同じ意味になります。
  • [train:l]、[train:rl]のように、影響する列車の方向を指定することもできます。たとえば、[train:rl]を指定すると看板に対し左右から来る列車にのみ動作します。
  • いくつかの看板は列車名での動作に対応します。[train 新交通*]のように指定できます。また、列車名が長い場合は[t 新交通*]のように指定することもできます。このとき、看板は必ずしも線路の下にある必要はありません。列車名入りの看板を任意の場所に設置し、レバーやボタンにてRS入力を行うことでリモートコントロールを行うことができます。リモートコントロールに対応する看板はproperty,destination,destroy,eject,setblockです。

条件文

  • 以下に全体を通して使用できる方向は以下の通りです。これは[train:l]のような方向の指定、条件文内での方向の指定に共通して使用できます。

    テキスト 省略形
    north n
    east e
    west w
    south s
    left l
    right r
    forward f
    backwads b
    upwards u
    downwards d
    none n
  • 条件文で使用できる演算子は以下の通りです。

    記号 意味
    = 等しい
    != 等しくない
    >= 同じか、大きい
    <= 同じか、小さい
    > 大きい
    < 小さい
  • 条件文で使用できる対象は以下の通りです。

    対象 意味
    passenger 乗客
    items チェスト内のアイテム
    empty 乗客もチェスト内のアイテムもない
    fuel かまど付きが編成内にあり、燃料がある
    speed スピード
    powered 動力があるかどうか
    storage チェストがあるかどうか
    minecart 通常のカートがあるかどうか
    redstone 看板にRS入力があるかどうか
    maxspeed 設定されている最大速度
    mobenter mob乗車が許可されているか
    playerenter プレイヤ乗車が許可されているか
    playerexit プレイヤ降車が許可されているか
    destination 行先
    random 50%の確立で選択
  • 条件を判定させる場合は@を使用し、複数の一致条件を指定する場合は";"でつなげます。

  • 以下に条件文の例をあげます。

    記述 意味
    n@<names> 列車の名前を<names>と比較
    name@<names> 上と同じ
    o@<owner> 列車の所有者を<owner>と比較
    d@<destination> 列車の行先を<destination>と比較
    p@<player> 列車の乗客を<player>と比較
    m@<mob> 列車の乗客を<mob>と比較
    pi@<item> プレイヤのインベントリに<item>が存在するか判定
    ph@<item> プレイヤが<item>を手に持っているか判定
    rand@30% 30%の確率で選択
    t@<tag> 列車のタグと<tag>を比較
    <tag> 上と同じ
  • tagについては以下のようにワイルドカードなどが使用できます。

    記号 意味
    * タグが設定されている
    !* タグが設定されていない
    *a aで終わるタグが設定されている
    a* aから始まるタグが設定されている
    *a* aを含むタグが設定されている
    *ab*cd* abおよびcdを含むタグが設定されている
  • 実際の条件文の使用例は以下のようになります。

    • i@stone=64
    • m@cow>5
    • trainsize>=5
    • !o@namiken
    • !a
    [+train] switcher
    rapid
    *main

看板の説明

SKIP

skip看板は、列車がこの先通過する1つ以上の看板を構文によって無視させることができます。

[train] skip 2 1
<条件文1>
<条件文2>

  • skip に続けて数字を2つ指定します。1つ目の数字は無視しない看板の数、
    2つ目の数字はその後無視する看板の数を指定します。
    例では 2 1 が指定されており、これはskip看板の後の2つの看板の内容を実行し、
    その後1つの看板を無視することを表します。

  • 3行目・4行目には実行条件を指定します。

MUTEX

mutex看板は排他制御を実現します。 この看板は特定の範囲内に列車が存在する場合、他の列車の進入を停止します。

[train] mutex 1/2/1

  • mutexに続いて範囲を指定します。例では看板を中心として1x2x1 (X/Y/Z)の直方体を閉塞範囲として指定します。
    なお、3つ数字を指定せず、1つの数字のみ指定した場合は、一辺が指定した数字の立方体が指定されます。
    2つ数字を指定した場合(2/1 など)は1つ目の数字がx,z軸となり、2つ目の数字がy軸の値となります。
  • 3,4行目は使用しません。

DESTROY

destroy看板は列車を破壊します。

[train] destroy

  • 2行目にdestroyを指定します。3,4行目は使用しません。

EJECT

eject看板は列車の乗客を降車させます。

[train] eject
0/12/12
90/0

  • 2行目にejectを指定します。
  • 3行目は降車させる際のオフセット値を指定します。1つ目の数字はカートを起点として前後の位置、2つ目は上下、3つ目は左右を指定します。
  • 4行目は降車させる際の方向を指定します。1つ目の数字はヨーを指定し、2つ目はピッチを指定します。ヨーの指定は90で進行方向正面を向き、数字の増加に伴い時計回りに回転します。
  • 3,4行目はオプションです。

ENTER

enter看板は付近のプレイヤやmobを乗車させます。この看板はallowenterプロパティを無視します。

[train] enter 3s
player mob
no

  • 2行目にはenterと影響範囲を指定します。例では半径3の球体の範囲が指定されます。"s"はsphericalを意味し、sを入力せず数字だけとすると半径3で高さが1の円筒状の範囲が指定されます。
  • 3行目には影響するエンティティのタイプを指定します。例ではプレイヤとmobの両方が指定されていますが、どちらか片方にすることも可能です。
  • 4行目では範囲指定の中心をそれぞれのカートにするか、看板にするかを指定します。yesもしくはtrueを指定すると看板を中心とし、noもしくはfalse、あるいは4行目を空欄とした場合はそれぞれのカートが中心となります。

BLOCKER

blocker看板は一定の方向からの列車を停止させます。 間違った方向に走行した列車を停止させたり、他の列車を待機させたりすることができます。また、経路探索機能において、走行ルートを指定することにも使用できます。

[train] blocker

  • 1行目、通常通り[train]や[cart]を指定しますが、[train:north]などとすることで停車させる進行方向を指定できます。指定できる方向は(north/south/east/west/left/right/backwards/forwards)で、それぞれ"s"、"n"など頭文字だけに省略ができます。特に方向を指定しなかった場合はforwardsと同様の動きとなります。
  • 2行目にはblockerを指定します。
  • 3行目にはstation看板と同様に発車方向(left/right/continue/reverse)を指定できます。これはオプションです。

STATION

station看板は列車を一時停止させます。 指定秒数経過後、指定の方向と速度で発車します。

[train] station
5
continue

  • 2行目にはstationを指定します。stationの後に数字を指定すると列車が最大速度に達するまでの距離を指定できます。指定しない場合は自動的に決定されます。数字を大きくすると発車速度は緩やかになります。
  • 3行目は停車秒数を指定します。
  • 4行目には看板の両側にRS入力がある場合の発車方向を指定します。片側にのみ入力がある場合は入力がある方向に発車します。[!train]や[+train]などを1行目に指定している場合は両側から入力があるものとして扱われます。4行目が省略されていて、かつ両側にRS入力がある場合、列車は発車しません。

LAUNCH

launch看板は列車を指定の速度で発車させます。 指定の速度で発車させる点ではstation看板に似ています。列車の減速、加速にも使用できます。

[train] launch 10
0.4
continue

  • 1行目にはlaunchを指定します。そのあとに続く数字はstation看板と同様で、列車が指定の速度に到達するまでの距離を指定します。値を指定しない場合は即時その速度になります。
  • 3行目には設定したい列車の速度を指定します。0を指定した場合列車は停止します。速度を相対値で指定することもでき、+0.5や-0.3などと指定します。
  • 4行目には発車方向を指定します。これもstation看板と同様です。

PROPERTY

property看板は列車のパラメータを変更します。 これらのパラメータはコマンドでも変更が可能です。また、所有者は無視されます。

[train] property
speedlimit
1.5

  • 2行目にはpropertyを指定します。
  • 3行目には変更したいパラメータ名を指定します。
  • 4行目には値を指定します。

BLOCK CHANGER

blockchangerはカートに表示されているブロックの種類を変更します。 たとえば、チェスト付きトロッコのチェストを内容物に合わせて変更することができます。

[trian] blockchanger
2xwood;3xstone

  • 2行目にはblockchangerを指定します。
  • 3行目には表示するブロックを指定します。例では5両編成のうち、2両が木になり、3両が石になります。
  • 4行目にもブロックを指定することができます。また、"2x"などの数字は両数に必ずしも合わせる必要はなく、数字を指定しない場合は全てのカートがそのブロックに変更されます。たとえば、"2xgoldblock;stone"を指定した場合、2両が金ブロックとなり、残りは全て石になります。

SWITCHER

switcher看板は条件に従い列車のルートを変更します。 線路を自動的に切り替えるだけでなく、経路探索のノード(分岐点)としても機能します。

[train] switcher
<左に行く条件>
<右に行く条件>

  • 2行目にはswitcherもしくはタグを指定します。
  • 3行目には左に分岐する際の条件を指定します。
  • 4行目には右に分岐する際の条件を指定します。
  • 分岐条件にはは列車のタグ、行先、乗客、アイテム等が指定できます。数字により行き先を振り分けることもできます。
  • 経路探索上のノードとして使用する場合は3,4行目は省略可能です。

DETECTOR

detector看板は列車を検出することができます。検出する列車は条件で分けることができます。

[train] detector
<条件文1>
<条件文2>

  • 2行目にはdetectorを指定します、

  • 3,4行目には検出する列車を選択するための条件を記載します。3,4行目が空欄の場合は全ての列車を検出します。

  • detector看板を動作させるには2つの看板が必要です。看板は文字が書かれた面が向かい合うように設置し、同じブロックにレバーやRSトーチを設置することで出力が取り出せます。看板の間に対象の列車が存在するとき、2つの看板はレバーあるいはRS出力を作動させます。detector看板の条件文を拡張したいときは、下に追加の看板を設置することができます。

ELEVATOR

elevator看板は列車を他の階層のelevator看板にワープさせます。

[train] elevator
up 2

  • 2行目にはelevatorを指定します。
  • 3行目には移動する方向(down/up)と数を指定します。例では2階層上のelevator看板にワープします。指定した方向に対応するelevator看板が見つからない場合、この看板はなにもしません。

SPAWNER

spawn看板は任意の列車を出現させることができます。 任意の編成や、保存済みの車両名が使用できます。

[train] spawn 1:30 2
mmmp

  • 2行目にはspawnとスポーン間隔、発車速度を指定します。発車速度の指定はstation看板やlaunch看板と同様です。スポーン間隔は省略可能で、省略した場合はRS入力が1回あるごとに列車をスポーンします。ただし、いずれの場合でもスポーンする予定の線路上に何らかの車両が存在する場合、列車はスポーンしません。

  • 3行目には編成を指定します。編成の代わりに保存した列車の名前を指定することもできます。使用できる文字は以下の通りです。

    文字 タイプ
    m 通常
    p かまど付き
    s チェスト付き
    t TNT付き
    h ホッパー付き
    e スポナー付き
  • スポーン間隔が設定された看板は7x7の範囲のチャンクをロードします。短すぎるスポーン間隔の設定は問題を引き起こすことがあります。

TRIGGER

trigger看板は列車の情報を看板に表示するために使用します。 列車が到着するまでの残り時間を表示したりすることができます。この機能を使用するにはSignLinkプラグインが必要です。

[train] trigger
trigger1
00:26

  • 2行目にはtriggerを指定します。

  • 3行目にはトリガー名を指定します。この名前は情報を情報を表示する際に使用します。例では"trigger1"を指定しており、情報を取り出す際には次のような記述を使用します。

    内容
    %trigger1% 4行目に指定した時間からカウントダウンします
    %trigger1T% 上と同じ
    %trigger1D% 列車の行先
    %trigger1N% 列車の名前
  • 4行目にはカウントダウンで使用する時間を指定します。":"で区切ることで"時:分:秒"もしくは"分:秒"の形で記載します。あるいは単純に秒数だけ記載することも可能です。4行目を空欄とした場合は"記録モード"になります。このモードではトリガーがONになると時間の計測を開始し、その列車が停止、もしくは破壊された場合に測定した時間を表示します。

DESTINATION

destination看板は列車の行先を設定します。 これは経路探索に使用されます。行先が設定された列車はその行先に到達しようとします。どの経路を通過すれば行先に到達できるかはプラグインにより自動的に計算されます。

[train] destination
<看板の位置の地名>
<列車に設定する行先地名>

  • 2行目にはdestinationを指定します。
  • 3行目には看板を設置する場所の名前を指定します。大文字小文字は区別されます。3行目を空欄とし、4行目のみに地名を設定した場合、この看板の場所には地名は設定されず、行き先だけを設定する看板として動作します。
  • 4行目には列車に設定する行き先の名前を指定します。大文字小文字は区別されます。
  • 列車に新しい行先が指定されるのは以下の条件を満たしたときです。
    • 列車に行先が設定されていないとき
    • 看板3行目が空欄で、4行目のみ指定されているとき
    • 看板にRS入力があるとき([!train]や[+train]でも可)
    • 列車に設定されている行先が、看板と同じであるとき(例えば、看板の3行目がCity01で列車の行先もCity01であるとき、看板の4行目に設定されている行先が列車の行先として更新される)

ANNOUNCE

announce看板は列車の乗客にメッセージを表示します。

[train] announce
<文字列1>
<文字列2>

  • 2行目にはannounceを指定します。
  • 3行目にはアナウンスの1行目を指定します。
  • 4行目にはアナウンスの2行目を指定します。

WAITER

waiter看板は進行方向の線路がクリアになるまで列車を待機させます。 この看板は列車同士の衝突防止に使用します。

[train] waiter10
5

  • 2行目にはwaiterとブロック数を指定します。例では看板の先10ブロック内の線路がクリアになるまで列車を待機させます。
  • 3行目はオプションです。2行目で指定した範囲がクリアになった後、すぐに発車させたくない場合に遅延秒数を指定することができます。

EFFECT

effect看板はパーティクルを表示させ、音を鳴らします。

[train] effect
<音エフェクト1>
<視覚エフェクト2>

  • 2行目にはeffectを指定します。続けて3行目で指定する音のピッチとボリュームを指定することもできます。デフォルトの値は1.0です。
  • 3行目には音を指定します。指定できる音は標準でクライアントに含まれているものと、リソースパックで追加されたものです。
  • 4行目には視覚パーティクルを指定します。

TICKET

ticket看板は簡単な運賃徴収システムと表示システムを提供します。 この機能にはEssentialsの経済システムが必要です。

[train] ticket
add
1.5

  • 2行目にはticketを指定します。
  • 3行目には機能を指定します。addを指定した場合、4行目の額がプレイヤに追加されます。checkを指定すると額面が表示されます。buyを指定した場合はプレイヤから料金を徴収します。このとき、プレイヤが徴収に対し十分な額を所持していなかった場合、プレイヤは列車から降ろされます。降ろされたプレイヤが再び列車に乗車できないようにするには、property看板を使用し、プレイヤが列車に乗車できないようにしておく必要があります。
  • 4行目には額面を指定します。

ANIMATION

animation看板は設定したアニメーションを制御します。 アタッチメントに設定されたアニメーションの速度やループをコントロールしたり、アニメーションを設定したりできます。

[train] animate
rotate

  • 2行目にはanimateを指定します。また、そのあとに続けてloopedやresetを追記できます。両方を指定したい場合は"animate l r"とすることができます。
  • 3行目には動きの名前を入力します。rotate,roll,pitchが標準で使用できます。他の動きを指定する場合は事前にアタッチメントエディタで作成・保存しておきます。
  • 4行目はオプションです。スピードや遅延を指定できます。"0.5 0.4"のように指定し、最初の値がスピード、2つめの値が遅延となります。

FLIPPER

flipper看板はカートを180度回転させます。 保存済みで、かつ3Dモデルを適用した編成では先頭車両の回転がうまくいかないようです。

[train] flipper

  • 2行目にはflipperを指定します。

TELEPORTER

teleporter看板は列車を他の地点にワープさせることができます。 動作には"MyWorlds"プラグインが別に必要です。

  • 看板の記述方法はMyWorldプラグインに依存します。

TRANSFER

transfer看板はアイテムを移動できます。 チェスト付きトロッコとチェスト、かまど、ディスペンサーなどアイテムを収納できるブロックの間で自由にアイテムを移動できます。

[train] chest in 3

  • 上の例では看板を中心とし半径3ブロックの範囲のチェストなどにアイテムを移します。
[train] collect chest
wood:64 stone
64 cobble

  • この例では全ての木材と64個にスタックされた石、丸石をチェストに移動します。
  • 2行目にはこの他に以下の操作を設定できます。

    テキスト 結果
    chest in / deposit chest / deposit c チェスト付きトロッコからチェストへアイテムを移動します
    chest out / collect chest / collect c チェストからチェスト付きトロッコへアイテムを移動します
    dispenser in / deposit disp / deposit d チェスト付きトロッコからディスペンサーにアイテムを移動します
    dispenser out / collect disp / collect d ディスペンサーからチェスト付きトロッコにアイテムを移動します
    furnace in / deposit furn / deposit f チェスト付きトロッコからかまどにアイテムを移動します
    furnace out / collect furn /collect f かまどからチェスト付きトロッコにアイテムを移動します
    deposit cfd / deposit チェスト付きトロッコからチェスト(c)、かまど(f)、ディスペンサー(d)にアイテムを移動します
    collect cfd / collect チェスト、かまど、ディスペンサーからチェスト付きトロッコへアイテムを移動します
    deposit fc チェスト付きトロッコからかまど(f)、チェスト(c)にアイテムを移動します
    fuel チェストからかまど付きトロッコに燃料を移動します

CRAFTER

crafter看板は自動でアイテムをクラフトできます。 材料はチェスト付きマインカートに入っている必要があります。また、近くに作業台が必要です。

[train] craft
wood:stick
torch

  • 2行目にはcraftまたはcrafterを設定します。続けて作業台を探す範囲の半径を指定できます。
  • 3,4行目には作成したいアイテムを":"で分けて記述します。例ではまず全ての原木を木材にします。次にその木材から棒を作成し、最後に石炭か木炭を組み合わせ松明が完成します。棒などの途中成果物を一時格納するため、マインカートのチェストには十分な空き容量がなければなりません。"32 torch"のように数量を指定しない場合は可能な限りアイテムが作成されます。