今回は、前回の引数編の続きと、それだけじゃ短いと思ったのでコマンドブロックの種類などのあれこれを説明していきます。
前回の初級コマンド講座は↓こちら
1.残りの引数について
・rx,rxm引数
・ry,rym引数
2.コマンドブロック
・コマンドブロックの入手方法
・コマンドブロックの設定画面
・コマンドブロックの種類
・衝撃モード
・チェーンモード
・反復モード
1.残りの引数について
今回は、前回解説していないrx,rxm,ry,rym引数をやっていくのですが、まあこれがすごい難しいんですよ。
どんな引数があったか忘れた人もいると思うので、引数の一覧を貼っておきます。
基準点を指定したx座標に変更 | x |
---|---|
基準点を指定したy座標に変更 | y |
基準点を指定したz座標に変更 | z |
x軸方向に範囲指定 | dx |
y軸方向に範囲指定 | dy |
z軸方向に範囲指定 | dz |
指定した半径の内側の範囲を指定 | r |
指定した半径の外側の範囲を指定 | rm |
エンティティの縦方向の視点の最大の位置を指定する | rx |
エンティティの縦方向の視点の最小の位置を指定する | rxm |
エンティティの横方向の視点の最大の位置を指定する | ry |
エンティティの横方向の視点の最小の位置を指定する | rym |
対象となるエンティティの数を指定 | c |
経験値レベルが指定した数字以下のプレイヤーを指定 | l |
経験値レベルが指定した数字以上のプレイヤーを指定 | lm |
ゲームモードを指定 | m |
エンティティの種類を指定 | type |
エンティティの名前を指定 | name |
まずrx,rxm,ry,rym引数は何ができるかというと、「指定した方向を向いているエンティティをコマンドの対象にする」という感じのことができます。
ただ、正直普通にコマンドで遊ぶ分にはまず使いませんし、配布ワールドを作る時にも使うかどうかという感じではあると思います。
たぶん本格的な使い方は応用のほうでやると思いますので(丸投げ)、こちらの方では紹介程度の説明になります。なのでわからなくても気にせずスルーしてください。まじで。
rx,rxm引数
まずはrx.rxm引数です。
この引数は、縦の視点を指定する引数です。xなので横を想像すると思いますが、ややこしいことに縦の視点です。まあこの引数を超簡単に言うと、上を向いてるか下を向いてるか斜め上を向いてるか斜め下を向いてるか、をとても細かく検知できるという感じですかね。
まず、縦の視点は、画像の180°の範囲を表します。
そして、真下の方向が90、真上の方向が-90の-90から90までの範囲の数字で縦の視点の方向を表します。
このとき気をつけて欲しいのは、下を向くほど数値は大きくなることです。これまたややこしいので気をつけてください。
では、@a[rx=50]としてみましょう。rxは、最大の視点の角度を指定するため、視点が50の位置より上の方向(マイナスの方向)を向いているプレイヤーが対象になります。
今度はrxmを使ってみましょう。@a[rxm=-30]としてみます。
rxmは、最低の視点の角度を指定するため、今度は視点が-30の位置より下の方向(プラスの方向)を向いているプレイヤーが対象となります。
では今度はrxとrxmを同時に使ってみます。@a[rx=20,rxm=-45]としてみましょう。
この場合、最大が20で、最低が-45なので、視点が20の位置より上(マイナスの方向)で、なおかつ-45より下(プラスの方向)の方向を向いているプレイヤーが対象になります。
はい、rx,rxm引数はこんな感じです。多分こんな説明ではわからないと思いますが、この引数はあまり考えるととてもややこしくなるので、わからなければスルーしてください。
ry,rym引数
はい、これが最後の引数です。今度は縦の視点ではなく横の視点です。
横の視点は、南を0として、そこから右に向けば数字が増えていき、左に向けば数字が減っていきます。
数字の範囲は、-180~180です。180と-180の位置は同じになります。
では、@a[ry=80]としてみましょう。ryは、指定した数字以下の範囲を指定するので、80の位置よりも左を向いているプレイヤーが対象になります。パック〇ン
次はrymです。@a[rym=-130]としてみます。rymは、指定した数字以上の範囲を指定するので、-130の位置よりも右を向いているプレイヤーが対象になります。これまたパッ〇マン
もちろんryとrymも同時に使用できます。@a[ry=100,rym=-30]としてみます。この場合は、100の位置よりも左を向いていて、なおかつ-30の位置よりも右を向いているプレイヤーが対象になります。今度はパ〇クマンじゃない
rxよりもこっちのほうがややこしいかもしれませんね。特に180と-180の位置が同じなので、そこであれ?となるかもしれません。まあここもあまり考えるととてもややこしいので、わからなければスルーを推奨します。
2.コマンドブロック
コマンドブロック。たぶん存在は知っている方も多いと思います。これはもはやコマンドを使う上でなくてはならないものですからね。
ただ、存在は知っていても、使い方や詳しい機能までは知らないという方もいるかと思います。でも心配無用。この記事でコマンドブロックの1から10までを説明してみせます(できるとは言っていない)。
コマンドブロックの入手方法
まずコマンドブロックの入手方法。たぶん知っている方も多いと思います。
コマンドブロックは、クリエイティブモードのアイテム一覧から手に入れることはできません。ではどうするかというと、次のコマンドをチャット欄に入力しましょう。
/give @p command_block
これでコマンドブロックを1つ入手できます。これでコマンドブロックを使う準備は完了です。
コマンドブロックの設定画面
コマンドブロックを触ると、このような画面が出てきます。
それぞれの項目に番号を割り振って説明します。
①・・・コマンドを入力する場所です。
②・・・コマンドの実行結果がでる場所です。コマンドが成功したか失敗したかなどが表示されます。また①に入力したコマンドが間違っていたりするとここにエラーメッセージがでます。
③・・・コマンドブロックの名前をつける場所です。といってもname引数で指定できるわけではありません。tellコマンドなどで表示される名前になります。
④・・・後述するコマンドブロックの種類を変更する場所です。
⑤・・・コマンドが無条件で実行されるか条件が満たされた時に実行されるかを選択する場所です。チェーンモードの時のみ使用します。チェーンモードの説明で詳しくやります。
⑥・・・レッドストーン信号が入力された時のみコマンドを実行するか、常にコマンドを実行するかを選択する場所です。常にアクティブの状態は、レッドストーン信号が入力され続けている状態になると思ってください。衝撃モードでは常にアクティブにしてもほとんど意味がありません。
コマンドブロックの種類
コマンドブロックには3つの種類、もといモードがあります。
コマンドブロックには、「衝撃(インパルス)」、「チェーン」、「反復(リピート)」の3つのモードがあります。
コマンドブロックはモードによって見た目が異なります。
衝撃モードはオレンジ、チェーンモードは少し緑っぽい色、反復モードは紫です。
この3つはそれぞれ違う性質を持っています。一つ一つ説明していきます。
衝撃モード
このモードは、1番基本的なモードです。
まず、このモードでは、「レッドストーンが必要」の状態で使用します。
「常にアクティブ」にすると、編集完了した直後に1回だけコマンドが実行されて、後はただの案山子になります。
このモードは、レッドストーン信号が入力された瞬間に1回だけコマンドを実行します。あくまで入力された瞬間のみです。入力中実行し続けるわけではありません。
ちなみに、このモードのコマンドブロックにコンパレーターをつけると、コマンドが成功してから、次に失敗するまでレッドストーン信号を出力し続けます。
チェーンモード
チェーンモードは、チェーンモードのコマンドブロックの後ろにあるコマンドブロックのコマンドが実行された直後にコマンドを実行するという、すこし特殊なモードです。
レッドストーン信号が入力されているか、常にアクティブの状態でないと、後ろのコマンドブロックのコマンドが実行されてもコマンドを実行しません。
なので、基本的にはチェーンモードでは、常にアクティブの状態にします。
ただ、レッドストーンが必要の状態だと、一連なりのコマンドブロック郡で、特定のコマンドブロックを実行させないようにすることもできます。
まず、下の画像の状態でレバーをオンにすると、下から上へすべてのコマンドが順番に実行されます。
では、今度は先程の③の位置のレッドストーンブロックを外してみます。
この場合は、信号が入力されていない所を飛ばして実行されていきます。なんで入力がない所で止まらないのかはわかりません。そういう仕様なんです。(魔法の言葉)
次は、条件付きの状態のコマンドブロックについてです。
条件付きの状態のコマンドブロックは、こんなふうに矢印の後ろが凹んだ模様になります。
条件付きのコマンドブロックは、後ろのコマンドブロックのコマンドが成功した場合のみ実行されるという仕様になります。コマンドの成功とは、コマンドの対象が存在した場合のことです。逆にコマンドの対象が存在しなかった場合は失敗になります。
まず、こんな風にコマンドブロックを置いてみます。チェーンモードのコマンドブロックはすべて条件付きです。
この場合、1番下の衝撃のコマンドブロックが起点となり、このコマンドブロックのコマンドが成功した場合、次のコマンドブロックのコマンドが実行され、そのコマンドブロックのコマンドが成功した場合、次の・・・ のようにどんどん連鎖的にコマンドが実行されていきます。ややこしいですね。どこかでコマンドが失敗した場合、そこから先のコマンドは実行されません。
では、今度は途中に無条件のコマンドブロックを挟んでみましょう。
この場合、無条件のコマンドブロックの前のコマンドが成功しなかったとしても、その無条件のコマンドブロックのコマンドは実行されます。失敗した所で途切れるかと思いきやそうではないんです。無条件のコマンドブロックは、起点のコマンドが実行されれば必ず実行されます。
チェーンモードのコマンドブロックの仕様はこんな感じです。やたらとここだけややこしいですが、それだけ多機能ということです。ここは頑張って理解してください。(そこ、説明が悪いとか言わないで(泣))
反復モード
このモードは、レッドストーン信号が入力されている間、1秒間に20回の早さで連続でコマンドを実行するモードです。1秒間に20回なので、0.05秒に1回実行されます。ちなみにこの0.05秒は、マイクラ内では1tickと表します。マイクラ内での時間の単位のようなものです。
常にアクティブの状態だと、その状態のコマンドブロックを壊すか信号が必要の状態に変えるまで連続でコマンドを実行し続けます。
このモードは、常にコマンドを実行させたい時に便利なのですが、その分端末に負荷がかかります。コマンドによってはワールドが使い物にならなくなったりします。なのでこのモードを使用する際は、コマンドミスなどには十分気をつけましょう。(経験者は語る)
はい、今回はここで終わりです。次からとうとうコマンドの解説をしていきます。(やっとかよとか言わないで)
引数はわりと応用的な内容なのでスルーしてもいいですが、それ以外は本当に基礎知識なので、わからないと話にならないレベルです。
とはいえこちらの説明が足りない所もあると思いますので、わからなければぜひコメントしていってください。
次回は、よく使う(?)便利なコマンドなどの解説をする予定です。では閲覧ありがとうございました。
前の講座↓
次の講座↓