【マイクラ】testforコマンドの使い方・構文・対象検出を解説【統合版】

この記事はマイクラ統合版(Bedrock Edition)向けのコマンド解説です
Java版では現在 /testfor コマンドは使えません
コマンドブロックで「近づいたら反応する装置」を作りたい方向けに、実例多めで解説します

こんにちは。ゆずかきです。

マイクラ統合版でコマンドブロックを触り始めると、かなり早い段階で出てくるのが /testfor コマンドです。

「プレイヤーが近くに来たらドアを開けたい」
「特定のモブがいるか調べたい」
「コマンドブロックで簡単なセンサーを作りたい」

こういう時に使えるのが、今回紹介する testforコマンドです。

ただし、ここは最初に注意です。
現在の統合版では /testfor 自体は使えますが、より新しい書き方として /execute if entity もあります。
そのため、本記事では、

  • まずは初心者さん向けに /testfor の使い方を覚える
  • コマンドブロックでの反応のさせ方を理解する
  • 最後に、最新版寄りの /execute if entity への置き換えも確認する

という流れで解説していきますね。

コマンドは一見難しそうですが、/testfor はやっていること自体はかなり単純です。
「条件に合う対象がいるか?」を調べるコマンドだと思えば大丈夫です👌

それでは、やっていきましょう!

※本記事はマイクラ統合版のコマンド仕様をもとに構成しています。
※Java版では /testfor は削除済みのため、Java版の方は /execute if entity を使ってください。
※コマンド仕様はアップデートで変わる場合があるため、記事末尾に参考文献を記載しています。


目次

1. testforコマンドとは
2. testforコマンドを使う前に知っておく注意点
3. testforコマンドの基本構文
4. ターゲットセレクターの基本
5. プレイヤーを検知する使い方
6. 範囲指定で近づいたプレイヤーを検知する
7. モブやアイテムを検知する使い方
8. コマンドブロックでセンサー装置を作る方法
9. よく使うtestforコマンド例まとめ
10. testforとexecute if entityの違い
11. testforが反応しない時のチェックポイント
12. まとめ
13. 参考文献

この記事で分かること
・統合版の /testfor コマンドの基本構文
・プレイヤー、モブ、アイテムを検知する方法
・コマンドブロックで「近づくと反応する装置」を作る考え方
・最新版寄りの /execute if entity への置き換え方


1. testforコマンドとは

/testfor は、条件に合うエンティティが存在するかを調べるコマンドです。

ここでいうエンティティとは、プレイヤー・モブ・防具立て・落ちているアイテムなど、ワールド内で動いたり存在したりする対象のことです。

たとえば、

/testfor @p

と入力すると、一番近い生存中のプレイヤーが存在するかを調べます。

もっと実用寄りにすると、

/testfor @a[r=5]

このように書くことで、コマンドを実行した場所から半径5ブロック以内にプレイヤーがいるかを検知できます。

これができるようになると、コマンドブロックでかなり色々できます。

  • プレイヤーが近づいたら音を鳴らす
  • 特定の場所に入ったらタイトルを表示する
  • モブが範囲内にいるか確認する
  • 落ちているアイテムを検知する
  • アドベンチャーマップのギミックを作る

こんな感じですね。

イメージとしては、レッドストーンの感圧板をコマンドで作るようなものです。
感圧板は踏んだ時しか反応できませんが、/testfor を使うと「この範囲に入ったら反応」という作り方ができます。

個人的には、コマンドブロック初心者さんが最初に覚える検知系コマンドとして、かなり分かりやすい部類だと思います。
ただ、範囲指定やセレクターの書き方でつまずきやすいので、そこを順番に整理していきますね。


2. testforコマンドを使う前に知っておく注意点

まず大前提として、/testfor を使うにはチートの有効化が必要です。

ワールド作成時、またはワールド設定からチートを有効にしてください。
チートをオンにすると、そのワールドでは実績が解除できなくなる点には注意です。

また、コマンドブロックで使う場合は、先にコマンドブロックを入手しておきましょう。
統合版では、基本的にチャット欄から下記のコマンドで入手できます。

/give @p command_block

Java版では使えません

ここは特に重要です。

Java版では /testfor コマンドは1.13で削除されています。
そのため、Java版で同じことをしたい場合は、次のように /execute if entity を使います。

/execute if entity @a[distance=..5] run say 近くにプレイヤーがいます

一方、この記事で扱うのは統合版の /testfor です。
Switch、スマホ、Windows版、Xbox、PlayStationなどの統合版でコマンドを使う方向けですね。

統合版でもexecuteの新構文は覚えておくと便利

統合版では、1.19.50以降に /execute コマンドの新しい構文が本格的に使われるようになりました。
現在は、単純な検知なら /testfor でも十分ですが、複雑な条件分岐を作るなら /execute if entity の方が扱いやすい場面も多いです。

なので、この記事では前半で /testfor を解説し、後半で /execute if entity への置き換えも紹介します。

初心者さん向けの考え方
まずは /testfor で「検知する感覚」を覚える
慣れてきたら /execute if entity に進む
この順番が一番分かりやすいと思います👌


3. testforコマンドの基本構文

/testfor の構文はかなりシンプルです。

/testfor <対象>

実際の形にすると、こうです。

/testfor @p

@p は「一番近い生存中のプレイヤー」を意味します。
つまりこのコマンドは、一番近い生存中のプレイヤーが存在するかを調べるという意味になります。

基本の構文表

項目 内容
コマンド名 /testfor /testfor
対象 プレイヤー名、またはターゲットセレクター @p、@a、@e など
使い道 条件に合う対象がいるか調べる /testfor @a[r=5]


/testfor は、対象が見つかれば成功。
対象が見つからなければ失敗です。

たとえば、

/testfor @a[r=5]

このコマンドをコマンドブロックで実行した時、半径5ブロック以内にプレイヤーがいれば成功します。
誰もいなければ失敗します。

この「成功・失敗」を使って、次のコマンドブロックを動かすのが基本になります。

チャット欄で試す場合

まずはチャット欄で試すと分かりやすいです。

/testfor @p

自分がワールドにいる状態なら、普通は成功します。
この時点で「コマンド自体が使えるか」を確認できます。

次に、少し条件を付けてみます。

/testfor @a[r=3]

これは、実行した場所から半径3ブロック以内のプレイヤーを調べます。
チャットから実行した場合は、自分の位置が基準になります。
コマンドブロックから実行した場合は、コマンドブロックの位置が基準になります。

ここ、地味に大事です。

注意!
チャットで成功したコマンドでも、コマンドブロックに入れると反応範囲が変わることがあります。
理由は、実行位置が「自分」ではなく「コマンドブロック」になるからです。


4. ターゲットセレクターの基本

/testfor を使ううえで一番大事なのが、ターゲットセレクターです。

ターゲットセレクターとは、@p@a のように、対象を指定するための記号です。
この書き方を覚えると、プレイヤーだけでなく、モブやアイテムも検知できるようになります。

よく使うターゲットセレクター

セレクター 意味 よく使う場面
@p 一番近い生存中のプレイヤー 近くの1人だけを対象にする
@a すべてのオンラインプレイヤー 範囲内の全員を検知する
@r ランダムな生存中のプレイヤー ランダム抽選
@e すべてのエンティティ モブ・アイテム・防具立てなどを検知する
@s 実行者自身 executeコマンドと組み合わせる


/testfor で特によく使うのは、@p@a@e の3つです。

初心者さんは、まずこの3つだけ覚えれば大丈夫です。

  • 近くのプレイヤー1人を調べるなら @p
  • 範囲内のプレイヤー全員を調べるなら @a
  • モブやアイテムも含めて調べるなら @e

こんな感じですね。

条件は角括弧の中に書く

ターゲットセレクターは、そのまま使うだけでなく、角括弧 [] の中に条件を追加できます。

/testfor @a[r=5]

この r=5 が条件です。
意味は、半径5ブロック以内です。

複数の条件を書く時は、カンマで区切ります。

/testfor @e[type=zombie,r=10]

これは、半径10ブロック以内のゾンビを検知します。

覚え方
@e でエンティティ全体を見る
type=zombie でゾンビだけに絞る
r=10 で半径10ブロック以内に絞る

このように、セレクターは「まず広く選んで、条件で絞る」イメージです。


5. プレイヤーを検知する使い方

まずは一番分かりやすい、プレイヤー検知から見ていきましょう。

一番近いプレイヤーを検知する

/testfor @p

これは、一番近い生存中のプレイヤーがいるかを調べるコマンドです。

シングルプレイなら基本的に自分が検知されます。
マルチプレイなら、コマンドの実行位置から一番近い生存中のプレイヤーが対象になります。

ワールド内の全プレイヤーを検知する

/testfor @a

これは、ワールド内にいる全オンラインプレイヤーを対象にします。

ただし、実用上はこのままだと範囲が広すぎます。
コマンドブロックのギミックで使うなら、基本的には距離指定を入れた方が扱いやすいです。

/testfor @a[r=5]

このように、r=5 を付けると半径5ブロック以内だけを検知できます。

特定の名前のプレイヤーを検知する

プレイヤー名を直接書くこともできます。

/testfor PlayerName

ただし、アドベンチャーマップや配布ワールドのように、誰が遊ぶか分からないワールドではおすすめしません。
プレイヤー名を直接書くと、その名前の人にしか反応しないからです。

個人的には、基本は @p@a を使う方が安全だと思います。

ゲームモードで絞る

サバイバルモードのプレイヤーだけを検知したい場合は、m=survival を使います。

/testfor @a[m=survival]

クリエイティブモードだけなら、こうです。

/testfor @a[m=creative]

コマンド練習中は、自分がクリエイティブなのに m=survival で検知しようとして「反応しない!」となりがちです。
ここはけっこうあるあるなので、ゲームモード指定を入れた時は自分のモードも確認してくださいね。


6. 範囲指定で近づいたプレイヤーを検知する

/testfor が一番活躍するのは、範囲指定でプレイヤーを検知する使い方です。

たとえば、コマンドブロックの近くにプレイヤーが来たら反応させたい場合は、こう書きます。

/testfor @a[r=5]

これは、コマンド実行位置から半径5ブロック以内にいる全プレイヤーを検知します。

rは最大距離

r は、最大距離を表します。

/testfor @a[r=10]

この場合は、半径10ブロック以内です。

  • r=3:かなり近い
  • r=5:小部屋や入口の検知向け
  • r=10:広めの部屋や広場向け
  • r=20:周辺エリア全体の検知向け

個人的には、最初は r=5 くらいで試すのがおすすめです。
広すぎると「思ったより遠くで反応する」ことがあります。

rmは最小距離

rm は、最小距離です。

/testfor @a[rm=5,r=10]

これは、5ブロック以上、10ブロック以内にいるプレイヤーを検知します。

中心に近すぎるプレイヤーを除外したい時に使えます。
初心者さん向けの装置では出番は少なめですが、円形エリアの外側だけを検知したい時などに便利です。

x y zで検知位置を固定する

コマンドブロックの位置ではなく、特定の座標を基準にしたい場合は、xyz を使います。

/testfor @a[x=100,y=64,z=100,r=5]

これは、座標100 64 100を中心に、半径5ブロック以内のプレイヤーを検知します。

コマンドブロックを地下に隠して、別の場所を検知したい時に便利です。
ただし、座標の入力ミスがあると全く反応しないので、統合版なら「座標を表示」をオンにして確認しましょう。

dx dy dzで箱型に検知する

r は半径なので、丸い範囲に近い検知になります。
一方で、部屋の中だけを検知したい場合は、dxdydz の方が扱いやすいです。

/testfor @a[x=100,y=64,z=100,dx=5,dy=3,dz=5]

これは、指定した座標をひとつの角として、X方向5・Y方向3・Z方向5の箱型範囲を検知します。

部屋、通路、ゲート、アスレチックの判定などでは、r より dx dy dz の方が狙った場所にしやすいです。

体験談
筆者は最初、全部 r で作ろうとして、壁の向こう側のプレイヤーまで検知してしまいました。
部屋単位で判定したい時は、箱型の dx dy dz を使う方が安定します。

dx dy dzは方向に注意

dx dy dz は、指定した座標をひとつの角として、そこから各方向に伸びる範囲です。
正の値ならプラス方向、負の値ならマイナス方向に伸ばせます。

思った方向と逆に範囲が伸びていると、まったく反応しません。
うまくいかない時は、まず小さい範囲で試すのがおすすめです。

/testfor @a[x=100,y=64,z=100,dx=1,dy=2,dz=1]

このように小さくして、ちゃんと反応するか確認してから広げると失敗しにくいです。


7. モブやアイテムを検知する使い方

/testfor はプレイヤーだけでなく、モブやアイテムも検知できます。
この時に使うのが @e です。

ゾンビを検知する

/testfor @e[type=zombie]

これは、ワールド内のゾンビを検知します。
ただし、このままだと範囲が広すぎるので、普通は距離指定を入れます。

/testfor @e[type=zombie,r=10]

これで、半径10ブロック以内のゾンビを検知できます。

クリーパーを検知する

/testfor @e[type=creeper,r=10]

これは、半径10ブロック以内のクリーパー検知です。

拠点防衛ギミックを作るなら、クリーパー検知は結構実用的です。
検知したら音を鳴らしたり、タイトルで警告したりできます。

例:クリーパーが近くにいたらチャットに表示

/testfor @e[type=creeper,r=10]

このコマンドブロックの後ろに、条件付きチェーンで次をつなぎます。

/say 近くにクリーパーがいます

これだけでも、簡単な警報装置になります。

落ちているアイテムを検知する

落ちているアイテムは type=item で検知できます。

/testfor @e[type=item,r=5]

これは、半径5ブロック以内に落ちているアイテムがあるかを調べます。

アイテム回収装置や、アドベンチャーマップの「アイテムを置いたら反応する仕組み」に使えます。

ただし、type=item は落ちているアイテム全般を検知します。
「ダイヤだけ」「紙だけ」のように、アイテムの種類まで /testfor だけで簡単に絞るのは苦手です。
その場合は、コマンド構成を工夫するか、別の方法を使った方が安全です。

名前付きエンティティを検知する

名前を付けたモブや防具立てを検知したい場合は、name= を使います。

/testfor @e[name=入口センサー,r=5]

これは、名前が「入口センサー」のエンティティを半径5ブロック以内で探します。

防具立てに名前を付けて目印にする方法は、コマンド装置を作る時にかなり便利です。
ただし、名前の全角・半角・スペース違いで反応しなくなるので、コピーして使うのがおすすめです。

tagで検知する

/tag コマンドでタグを付けておくと、tag= で検知できます。

まず、近くのプレイヤーにタグを付けます。

/tag @p add clear_stage1

その後、タグ付きプレイヤーだけを検知します。

/testfor @a[tag=clear_stage1]

アドベンチャーマップで「ステージ1をクリアした人だけ通れる」みたいな仕組みを作るなら、タグ管理がとても便利です。


8. コマンドブロックでセンサー装置を作る方法

ここからは、実際に /testfor を使ってコマンドブロック装置を作る流れを解説します。

今回は、プレイヤーが近づいたらメッセージを表示する簡単なセンサーを作ります。

1. コマンドブロックを入手する

チャット欄に次のコマンドを入力します。

/give @p command_block

インベントリにコマンドブロックが入ればOKです。

2. リピートコマンドブロックを置く

まず、検知用のコマンドブロックを置きます。
設定は下記にしてください。

  • ブロックの種類:リピート
  • 条件:無条件
  • レッドストーン:常にアクティブ

入力するコマンドはこちらです。

/testfor @a[r=5]

これで、コマンドブロックの半径5ブロック以内にプレイヤーがいるかを常に調べます。

3. チェーンコマンドブロックをつなげる

次に、リピートコマンドブロックの矢印の先に、チェーンコマンドブロックを置きます。

設定は下記です。

  • ブロックの種類:チェーン
  • 条件:条件付き
  • レッドストーン:常にアクティブ

入力するコマンドはこちらです。

/title @a[r=5] title ようこそ!

これで、半径5ブロック以内にプレイヤーがいる時だけ、タイトルが表示されます。

4. コマンドブロックの向きに注意

チェーンコマンドブロックは、前のコマンドブロックの矢印の先につなげる必要があります。
向きがズレていると、条件付きにしていても動きません。

体験談
筆者は最初、コマンド内容ばかり見直していましたが、原因は普通にコマンドブロックの向きでした。
チェーンが動かない時は、まず矢印の向きを見てください。

5. 連続でメッセージが出る場合の対策

リピートコマンドブロックは毎秒20回動くため、そのままだとタイトルや音が連続で出続けます。
練習用なら問題ありませんが、実用装置ならタグで一度だけ反応するようにすると使いやすいです。

例:初回だけメッセージを出す構成

1つ目:リピート・無条件・常にアクティブ

/testfor @a[r=5,tag=!entered]

2つ目:チェーン・条件付き・常にアクティブ

/title @a[r=5,tag=!entered] title ようこそ!

3つ目:チェーン・条件付き・常にアクティブ

/tag @a[r=5,tag=!entered] add entered

これで、タグが付いていないプレイヤーが範囲に入った時だけ反応し、反応後に entered タグが付きます。
同じプレイヤーには二度目以降反応しなくなります。

アドベンチャーマップを作るなら、このタグ管理はかなり大事です。


9. よく使うtestforコマンド例まとめ

ここでは、実際によく使う /testfor の例をまとめます。
そのままコピペして、数字や対象だけ変えて使ってください。

近くのプレイヤーを検知

/testfor @a[r=5]

半径5ブロック以内のプレイヤーを検知します。
入口、ゲート、隠し部屋の判定に使いやすいです。

指定座標の近くにいるプレイヤーを検知

/testfor @a[x=100,y=64,z=100,r=5]

座標100 64 100を中心に、半径5ブロック以内のプレイヤーを検知します。
コマンドブロックを別の場所に隠したい時に便利です。

サバイバルのプレイヤーだけ検知

/testfor @a[m=survival,r=10]

半径10ブロック以内のサバイバルモードのプレイヤーだけを検知します。
クリエイティブの管理者を除外したい時に使えます。

特定タグを持つプレイヤーを検知

/testfor @a[tag=stage1_clear]

stage1_clear タグを持つプレイヤーを検知します。
ステージ制のワールドや、クリア判定に便利です。

特定タグを持たないプレイヤーを検知

/testfor @a[tag=!stage1_clear,r=5]

半径5ブロック以内にいる、stage1_clear タグを持っていないプレイヤーを検知します。
初回だけ反応させたい時によく使います。

ゾンビを検知

/testfor @e[type=zombie,r=10]

半径10ブロック以内のゾンビを検知します。
モブ検知の基本形です。

クリーパーを検知

/testfor @e[type=creeper,r=10]

半径10ブロック以内のクリーパーを検知します。
拠点防衛や警報ギミックに使えます。

落ちているアイテムを検知

/testfor @e[type=item,r=5]

半径5ブロック以内に落ちているアイテムを検知します。
アイテムを投げ入れるタイプのギミックに使えます。

防具立てを検知

/testfor @e[type=armor_stand,r=5]

半径5ブロック以内の防具立てを検知します。
防具立てを目印や制御用マーカーとして使う時に便利です。

名前付きエンティティを検知

/testfor @e[name=センサーA,r=10]

名前が「センサーA」のエンティティを半径10ブロック以内で検知します。
防具立てやモブに名前を付けて管理する時に使えます。

スコアで検知

スコアボードを使っている場合は、scores={} で絞ることもできます。

/testfor @a[scores={point=10..}]

これは、point のスコアが10以上のプレイヤーを検知します。

スコアボードは少し難しめですが、ミニゲーム制作ではかなり重要です。
ポイント、残機、クリア数などを条件にしたい時に使えます。


10. testforとexecute if entityの違い

ここまで /testfor を紹介してきましたが、現在の統合版では /execute if entity も重要です。

統合版の /execute は、1.19.50以降の新構文でかなり使いやすくなりました。
その中でも、if entity/testfor とかなり近い使い方ができます。

testforの例

/testfor @a[r=5]

これは、半径5ブロック以内のプレイヤーを検知します。

execute if entityで書く例

/execute if entity @a[r=5] run say 近くにプレイヤーがいます

こちらは、半径5ブロック以内にプレイヤーがいた場合、そのまま say コマンドを実行します。

/testfor は「検知するだけ」なので、コマンドブロックの成功・失敗を使って次の処理につなげます。
一方、/execute if entity は、検知したらその場で次のコマンドを実行できるのが強みです。

反対条件ならunlessが便利

/testfor で少し面倒なのが、「いない時に反応する」処理です。

たとえば、プレイヤーが範囲内にいない時だけメッセージを出したい場合、/execute unless entity を使うと分かりやすいです。

/execute unless entity @a[r=5] run say 範囲内にプレイヤーはいません

unless は、条件を満たさない時に実行する書き方です。

これから作るならどちらを使う?

個人的には、初心者さんはまず /testfor で大丈夫です。
理由は、構文が短くて分かりやすいからです。

ただし、これから本格的にコマンド装置やミニゲームを作るなら、最終的には /execute if entity も覚えた方が良いです。

使い方 おすすめ 理由
簡単な検知 /testfor 短くて分かりやすい
検知してすぐ実行 /execute if entity 1行で処理を書ける
いない時に実行 /execute unless entity 反対条件を書きやすい
複雑なミニゲーム制作 /execute 条件分岐を増やしやすい


筆者の考え
/testfor は、検知系コマンドの入門としてすごく分かりやすいです。
ただ、今後も使い回すワールドを作るなら、/execute if entity の形にも慣れておくと後々楽です。

testforからexecuteへの置き換え例

よく使う形だけ、対応表にしておきます。

やりたいこと testfor execute if entity
半径5ブロック以内のプレイヤー検知 /testfor @a[r=5] /execute if entity @a[r=5] run say 検知
半径10ブロック以内のゾンビ検知 /testfor @e[type=zombie,r=10] /execute if entity @e[type=zombie,r=10] run say ゾンビ検知
タグ付きプレイヤー検知 /testfor @a[tag=clear] /execute if entity @a[tag=clear] run say クリア済み
範囲内に誰もいない時 工夫が必要 /execute unless entity @a[r=5] run say 誰もいません

最初から全部覚える必要はありません。
まずは /testfor で仕組みを掴んで、必要になったら /execute に進むくらいで大丈夫です。


11. testforが反応しない時のチェックポイント

/testfor は構文自体は簡単ですが、反応しない原因は意外と多いです。
困った時は、下記を順番に確認してください。

  • [ ] チートは有効になっているか?
  • [ ] コマンドブロックは有効になっているか?
  • [ ] コマンドブロックの種類はリピートになっているか?
  • [ ] レッドストーン設定は「常にアクティブ」になっているか?
  • [ ] チェーンコマンドブロックの向きは合っているか?
  • [ ] チェーン側は「条件付き」になっているか?
  • [ ] r の範囲が狭すぎないか?
  • [ ] x y z の座標を間違えていないか?
  • [ ] dx dy dz の方向を間違えていないか?
  • [ ] type= のモブ名を間違えていないか?
  • [ ] tag= のタグ名にスペルミスがないか?
  • [ ] m=survival などで、自分のゲームモードを除外していないか?

よくあるミス1:チャットでは動くのにコマンドブロックだと動かない

これはかなり多いです。
理由は、実行位置が違うからです。

チャットから実行すると、自分の位置が基準になります。
コマンドブロックから実行すると、コマンドブロックの位置が基準になります。

つまり、

/testfor @a[r=5]

このコマンドは、チャットなら自分の周囲5ブロック。
コマンドブロックなら、コマンドブロックの周囲5ブロックです。

よくあるミス2:@pと@aの使い分け

@p は一番近い生存中のプレイヤー1人です。
@a は条件に合う全オンラインプレイヤーです。

範囲内に複数人いる可能性がある装置なら、基本的には @a の方が分かりやすいです。

/testfor @a[r=5]

この形を基本にすると、マルチでも事故りにくいと思います。

よくあるミス3:typeの名前違い

モブ検知で反応しない場合は、type= の名前を疑ってください。

/testfor @e[type=zombie,r=10]

このように、エンティティIDを正しく書く必要があります。
候補が出る環境なら、途中まで入力して補完を確認すると安全です。

よくあるミス4:タグを付けたつもりで付いていない

タグ検知を使う場合、先にタグが付いていないと反応しません。

タグを付ける例:

/tag @p add test

タグ付きプレイヤーを検知:

/testfor @a[tag=test]

タグを外す場合:

/tag @p remove test

「タグ名は合っているのに反応しない」という時は、そもそもタグが付いていない可能性があります。

よくあるミス5:反応し続けてしまう

リピートコマンドブロックで /testfor を使うと、条件を満たしている間はずっと成功します。
その結果、タイトルや音が連続で出ます。

一度だけ反応させたいなら、タグで制御しましょう。

/testfor @a[r=5,tag=!done]

反応後に、

/tag @a[r=5,tag=!done] add done

このようにタグを付ければ、同じプレイヤーには繰り返し反応しにくくなります。


12. まとめ

今回は、マイクラ統合版の /testfor コマンドについて解説しました。

要点をまとめると、

  • /testfor は、条件に合うエンティティがいるかを調べるコマンド
  • 基本構文は /testfor <対象>
  • プレイヤー検知なら @p@a を使う
  • モブやアイテム検知なら @e を使う
  • 範囲指定は r、箱型判定は dx dy dz が便利
  • コマンドブロックでは「リピート検知 → 条件付きチェーン」で装置化できる
  • Java版では /testfor は使えないので /execute if entity を使う
  • 統合版でも、複雑な処理を作るなら /execute if entity も覚えておくと便利

こんな感じです。

/testfor は、コマンドブロックでギミックを作る時の入口としてかなり使いやすいコマンドです。
最初は、

/testfor @a[r=5]

この1行だけでも大丈夫です。
まずは「近づいたら反応する」装置を作って、そこからタイトル表示、効果音、テレポート、タグ管理などに広げていくのがおすすめです。

コマンドは、いきなり全部を覚えようとすると大変です。
でも、1つずつ動くものを作っていくと、少しずつ分かるようになります。

まずは小さい範囲のセンサーから試してみてください。
動いた瞬間に、コマンドブロックの使い道が一気に広がると思います👌

では、本日はここまでで終わります。
最後までご覧いただき、ありがとうございました。
柚子クラでは他にも便利装置やコマンド解説を紹介しているので、是非ご覧くださいね(^^♪


13. 参考文献

この記事を書くにあたり、以下の公式ドキュメント・海外Wikiの情報を参考にしています。