ないが、添付ビヘイビアとか作るの面倒くさい時に。オブジェクトが渡される。Town」において、マインカート(鉄道)は直進しかできない猪突猛進型のユニットですが、計算ブロックを使うことで、マインカートに様々な振る舞いをさせられるようになります。以下の記事の内容は把握済みである前提でまとめています。画像はクリックすると拡大します。やりたいことマインカートの積み荷によって、行き先を分岐させたいと思います。台ごとに別の荷物を積むようにします。全体像が右の写真です。カートは青白い矢印の向きに時計回りに走るものとします。1のサイロには木材があり、2の井戸からは水が出てきます。右方向に進むようにします。これにより、3の倉庫には木材だけが、4の倉庫には水だけが溜まっていきます。同じ線路を使用していても、積み荷の振り分けが可能となります。上方向と右方向を交互に進ませます。種類の積み荷を運ぶことができます。(補足)積み荷の振り分けは、計算ブロックを使わずとも、ソーターやプッシャーでマインカートを押し出すことにより行えます。本記事は計算ブロックの勉強用としてご覧ください。右の写真のように、施設やレールとバリアゲートを配置します。時間を止めた方がやりやすいです。バリアゲートは物流ブロックの中にあり、設置時は「オフ」になっていて遮断機がおりた状態で通行できませんが、「オン」にすると遮断機が上がって通行できるようになるというブロックです。サイロと井戸のレールストップは出力、倉庫のレールストップは入力に設定します。詳しくは、マインカートの記事の「単線運用」節を参考にしてください。台にしました)を、時計回りに走るように配置します。手動でバリアゲートをオンオフして、それぞれの場合でカートが詰まらずに走れるか確認すると良いと思います。計算ブロックの配置と設定(右側の分岐)右側の分岐(積み荷の種類による分岐)の制御を行う計算ブロックの説明から先にします。かのどちらかに進む分岐です。カートの積み荷による分岐を行うには、計算ブロックであるエージェントトリガーを使います。エージェントトリガーは、通過したアイテムによってオンオフを出力するブロックです。エージェントトリガーを分岐点に上乗せして配置します。簡単のために分岐点に重ねていますが、重ねたくない場合は他の場所に配置しても構いません。他の場所に配置した場合は、オフセット指定で分岐点を必ず指定して下さい。エージェントトリガーのアイテムフィルタを「水」にします。最後に、オンオフをバリアゲートに伝送するために、エージェントトリガーとバリアゲートをリンクします。エージェントトリガーが送信元(左クリック)、バリアゲートが受け取り先(右クリック)です。ここまでの設定により、「エージェントトリガーを通過したアイテムが水の場合はオン、そうでないならオフ」という設定がバリアゲートに送られます。バリアゲートはオンの時は通行可能となりますから、結果として、水を積んでいる場合に通行可能となります。一方で、水を積んでいない場合(木を積んでいるか、または空の場合)はエージェントトリガーがオフになります。結果として、木は上の倉庫に、水は下の倉庫に入ります。計算ブロックの配置と設定(左側の分岐)次に左側の分岐(交互に振り分け)の制御を行う計算ブロックの説明をします。かのどちらかに進む分岐です。エージェントトリガーを使います。エージェントトリガーを分岐に重ねて下さい(オフセットをしていする場合はどこでも構いません)。トグルを付近の適当な場所に設置します。計算ブロックの設定ですが、左側の分岐では、エージェントトリガーのアイテムフィルタは無しのままにしておきます。すると、エージェントトリガーと何かが通過したときに常に信号が発生するようになります。エージェントトリガーからトグルへ信号を伝送するためにリンクします(エージェントトリガーが送信元、トグルが受け取り先)。トグルは、何らかの信号が届くたびに、オンとオフが切り替わります。エージェントトリガーをトロッコが通過する度に、交互にオンとオフになります。トグルの設定をバリアゲートへ伝送するために、トグルからバリアゲートへリンクします(トグルが送信元、バリアゲートが受け取り先)。交互にオンオフが送られてくるので、バリアゲートは開いたり閉じたりを繰り返します。動作結果ゲーム時間を再開すると、カートが走り出します。カートが動く様子を動画にしましたので、以下の動画を参照してください。Town】積み荷に応じたマインカート分岐【計算ブロック回路】&amp;lt;/a&amp;gt;上側の倉庫を見ると、木材だけが溜まっていくのが分かります。逆に、下側の倉庫を見ると、水だけが溜まっていくのが分かります。以上により、マインカートを制御して積み荷を振り分けることができました。積み荷の振り分けということでいえば、計算ブロックに限らずやり方はいくつもあり、先の補足に記したようにソーターなどでも実現可能です。計算ブロックでマインカートの制御ができるようになることで、いろいろな夢が広がっていくのではないでしょうか。Town」における計算ブロックの使い方を整理しておきます。前回はごく基礎的な操作方法のまとめでしたが、今回は実用のイメージが湧くかと思います。画像はクリックすると拡大します。やりたいこと牧場が肥料を生産してベルトコンベアで流してそれを農場が受け取っている場合、農場であまり肥料が消費されないと、肥料が余ってしまってベルトコンベアが渋滞してしまいます。「農場の入力用ストレージにある程度肥料が溜まってきたら、牧場側は肥料を送らないようにする」です。これは計算ブロックで実現できます。今回は例として牧場と農場の代わりに、「井戸が生産した水をサイロで受け取る」場合を考えてみます。個未満の場合のみ、井戸はベルトコンベアに水を放出します。個以上になったら、井戸は放出をやめます。余談ですが、今回もマインカートの時も井戸とサイロを例にしているのは、単に供給が楽というだけで、深い意味はありません。右の写真のように施設を配置します。時間を止めた方がやりやすいです。井戸とサイロをベルトコンベアで結んでいます。井戸からはグラバーで水を引き出し、サイロへはプッシャーで水を押し込みます。サイロの向きはベルトコンベアに向かないようにして下さい。計算ブロックの配置まず、サイロに溜まっている水の数を計測するセンサーの役割を果たす計算ブロックを配置します。建設メニューの計算ブロックの中に、その名も「インベントリセンサー」というセンサーブロックがありますので、それを配置します。個未満かどうか」を判定する役割を果たす計算ブロックを配置します。建設メニューの計算ブロックの中に「数学ブロック」という名前のブロックがあるので、それを配置します。ちなみに、数学というほど仰々しいものではありません。簡単に数字を扱うだけのブロックです。前回も触れたように計算ブロックの位置はどこでも構いません(問題なく動きます)が、個人的には、インベントリセンサーを左、数学ブロックを右に配置すると、条件が読みやすくて好きです。これで役者が出そろいました。個未満かどうか」という判断をしたうえで、井戸のグラバーのオンオフを切り替えるという出力を行います。計算ブロックの設定インベントリセンサーをクリックし、右上に出てくる小窓のオフセットの所をクリックすると、黄色い線が出てきます。これは、インベントリセンサーが「どこの」在庫の数を調べるかを指定するものです。今回はサイロにある水の数を調べたいので、サイロで「右」クリックします(左クリックではないので注意)。設定できると、再度インベントリセンサーをクリックして選択した際、黄色い線がサイロに向かって伸び、また、オフセットに値が入っています。アイテムフィルタも設定して明示的に測定対象を指定することも可能ですが、今回は設定しなくても構いません。次に、センサーの結果を数学ブロックに伝達したいので、センサーと数学ブロックをリンクします。センサーが送信元、数学ブロックが受け取り先なので、インベントリセンサーで左クリックし、数学ブロックで右クリックです(詳しいリンクのやり方は前回を参照して下さい)。設定できると、再度インベントリセンサーをクリックして選択した際、数学ブロックへの白い線が増えています(根本が太いほうがインベントリセンサー)。続いて数学ブロックの設定です。数学ブロックをクリックし、右上の小窓から数学関数のところをクリックします。数学関数ウィンドウが開き、数学ブロックで行う処理の種類を選べます。個未満かどうか」を判定したいので、「未満」を選びます。続いて、右上の小窓から設定値のところをクリックします。設定を終えると、数学ブロックの表示が「<10」というようになっています。未満かどうか」ということになります。未満かどうか」を判定できることになります。未満の場合だけオン」が出力されます。その結果を井戸のグラバーに伝える必要があるので、数学ブロックとグラバーをリンクします。数学ブロックが送信元(左クリック)、グラバーが受け取り先(右クリック)です。個未満かどうか」判定し、結果を井戸のグラバーに送る、という一連の流れが完成しました。動作結果ゲーム時間を再開すると、井戸から水が流れていきます。個みまんなので、判定結果はオンであり、グラバーが有効な状態になっています。井戸から流れてきた水がサイロに入っていきます。個未満かを判定し、結果をグラバーに送るので、伝達を示す青い線が一定間隔で表示されます。個未満の場合は結果は「オン」のままなので、引き続き水は流れていきます。個溜まったところで、判定結果が「オフ」に変わります。それがグラバーに伝わると、グラバーがオフになって赤く表示が変わります。以降、水が止まります。サイロにある在庫を手動でゼロに戻すと、再び水が流れるようになります。以上により、サイロの在庫数に応じた、井戸からの発送調整が実現できました。発送をやめてもベルトコンベアに流れている分があるため、多少のタイムラグがあるので、実際にはこのあたりを工夫する必要が出てくる場合もあるかもしれません。Town」における計算ブロックの使い方を整理しておきます。画像はクリックすると拡大します。blocks)は、物流の状況に応じた調整(アクション)を自動的に行うためのブロックです。「農場で使う肥料は十分にあるから、牧場からの肥料発送をやめよう」とか、「普通は直進しかしないマインカートを状況に応じて分岐させよう」などということができるようになります。現在の状況という「入力」を元に、必要に応じて「判断」を行い、アクションという「出力」を行う。これを実現するのが計算ブロックです。入力も出力も原則として「オン/オフ」で表現されるので、一般的に論理回路と呼ばれます。回路を組む敷居は低いのではないかと思います。シンプルな入出力を行う一番シンプルに計算ブロックを使ってみます。スイッチを押すと、ランプが光ったり消えたりする、という簡単なものです。スイッチは「トグル」という名前のブロックになります。建設メニューの計算ブロックでトグルを選択して配置します。ランプは「論理ランプ」という名前のブロックです。建設メニューの計算ブロックから選択して配置します。スイッチとランプの位置関係は適当で構いません。つのブロックを配置しただけでは連動しないので、連動するようにリンクを張ります(配線します)。トグルを左クリックして選択状態にしてから、マウスカーソルを論理ランプの上に持って行くと、「論理リンクを追加」という表示が出ます。この状態で「右」クリックすると、リンクが張られます。トグル(入力元)で左クリック→論理ランプ(出力先)で右クリック、の順番です。リンクが張られると、改めてトグルを選択した際に、トグルと論理ランプが白いカーブで結ばれている表示になります。入力元であるトグルの方が太い線になっています。補足ですが、リンクを張ってあればきちんと動作するので、ブロック同士の位置関係はどんなものでも構いません。逆に、隣同士に配置したとしても自動でリンクが張られるということはありません。キーを押すと、トグルのマークが赤い禁止マークから緑のチェックマークに変化します。同時に、カチッと音をたてながら青いビームが論理ランプに飛び、変化が論理ランプに伝わり、論理ランプが青く光ります。キーを押す度にトグルの表示が変わり、併せて論理ランプの表示も変わります。キーを押すまでにマウスカーソルがずれてしまうと、トグルのオンオフは切り替わるのに論理ランプの表示は変わらなくなってしまうので注意して下さい。言うと、トグルを選択すると画面右下にトグルのオンオフを切り替える小窓が表示されますが、この小窓でマウスを使ってオンオフを切り替えると論理ランプの表示は変わらないので注意して下さい。バージョンアップするに従ってこの辺りは改善されるとは思いますが、現状ではトグルの扱いに注意が必要です。いえ、実際には手動でトグルをいじることはないので、実用上はあまり問題にはならないかと思います。出力という一番シンプルな計算ブロックの使い方となります。「入力のオン/オフに応じて出力がオン/オフ」されました。これを発展させていくと、実用的な使い方ができるようになります。Town」において、高速輸送ツールであるマインカート(Minecart:鉄道のイメージ)の使い方が最初分からなくて困ったので整理しておきます。画像はクリックすると拡大します。環状線が基本マインカート(電車というかトロッコ?)はひたすら前に進むのみで、折り返しという機能はありません。手動で進行方向の反転は可能ですが、自動運転が基本ですので、前進のみを前提に線路(レール)を敷設する必要があります。これにより、レールの形態としては環状線が基本となります。建設メニューの通路からレールを選びます。環状にレールを敷設します。今回は例として「井戸からサイロに水を運ぶ」こととしますので、レールに隣接するように井戸とサイロを配置しました。サイロを配置すると、向きによっては矢印が表示されますが、これは「レールストップ」です。駅に相当するのがレールストップです。建設メニューの物流ブロックからレールストップを選びます。井戸から出る方向になるようにレールストップを設置します。設置したレールストップをクリックすると、右上の小窓にアクセスタイプが表示されるのでクリックすると、アクセスタイプを設定するウィンドウが表示されます。井戸の水をトロッコに積み込みたい(井戸からトロッコへ出力)ので、井戸のレールストップのアクセスタイプを出力に設定します。サイロのレールストップでは、トロッコに積んである水を格納したい(トロッコからサイロへの入力)ので、サイロのレールストップのアクセスタイプは入力に設定します。矢印の向きがサイロを向くようにします。建設メニューのワーカーからマインカートを選びます。レールの上にマインカートを配置します。キーを押すと、マインカートの進行方向を指定できます。マインカートを走らせると、井戸の前を通る際に自動的に水を積み込みます。サイロの前を通ると、自動的に水を降ろします。面からも環状線が有用ですが、そうは言っても単線で運用したい場合(序盤でレール資源が少ない場合や、景観上の好みなど)は、線路の終端を右の写真のようにすることで折り返し運転が可能となります。マインカートは矢印のように進みます。レールの敷設手順としては、まず、交差部分以外の線路を先に敷設しておきます。次に、右の写真の1から2に向かってレールを敷設します。右の写真は、2までレールを敷設した段階のものです。最後に、3から1に向かってレールを敷設すれば完成です。本節の最初の写真のような敷設になるはずです。参考までに、ダメな例を右に。1と3を最初に結んでしまうと、交差点部分があたかも十字路のようであるかのようになり、2から進んできたマインカートが直進しようとして詰まってしまいます。マスで折り返し運転が可能となります。