マルチプレイなら『シン・VPS』がおすすめ!

【解決】fillコマンドでコマンドブロックだけを消す【マイクラ】

【解決】fillコマンドでコマンドブロックだけを消す【マイクラ】

この記事では、Minecraft Java Edition(バージョン1.18.1)の情報をもとに執筆しています。
そのほかのバージョンや機種などでの動作は保証できません。

コマンドブロックを消したいマインクラフター
「tpコマンドをリピートして動けなくなっちゃったから、コマンドブロックを消したい。どうすればいいの? こういうことにならないようにするにはどういう対策方法がある?」

こんな疑問を解決します!

本記事の内容
  • fillコマンドでコマンドブロックだけを消す
  • コマンドブロックを消さなくて済むには

こんにちは! マインクラフターのなつめ(@natsume_717b)です。

なつめ

マイクラ歴は5年程で、最近は脱出マップを配布・制作しています!
→配布マップ・ダウンロードページ

この記事では、コマンドブロックだけを消したいという方の疑問を解決。
コマンド1つでコマンドブロックだけを消すことは可能です。

また、コマンドブロックを消さずに無効化する方法もありますので、それも紹介しています。
自分に合った方法で、問題を解決してくださいね。

それでは、さっそく見ていきましょう!
この記事を読めば、コマンドブロックに悩まされることが少なくなりますよ!



fillコマンドでコマンドブロックだけを消す

コマンドブロックだけを消すには、fillコマンドのreplaceという項目を使います。
replaceは指定した範囲の中にある特定のブロックだけを指定したブロックに変更するものです。

つまり、コマンドブロックだけを空気ブロックに変更すれば、コマンドブロックを消すことと同義になります。

実際にコマンドに書き起こしてみると、以下のようになります。

/fill 座標1 座標2 minecraft:air replace minecraft:command_block

座標1と座標2には、XYZで座標を指定します。
その座標同士が対角線となるような立方体が、実行したfillコマンドの範囲となります。

なので、消したいコマンドブロックが範囲の中に含まれるよう座標の指定をしましょう。
範囲の中に入っているブロックはすべて対象になるので、消したくないコマンドブロックがあればそれらは含まれないように座標を指定する必要があります。

そして、空気ブロックを置くことを指示していますが、replaceがあるのでコマンドブロックの場所だけを空気に置き換えるようになっています。
これで、関係ないブロックが影響を受けることはありません。

コマンドブロックのある座標が分からないという方は、後述するコマンドブロックを無効にする方法をおすすめします。

チェーンコマンドブロックやリピートコマンドブロックを空気ブロックに置き変えたい場合は、それぞれ文末のアイテムIDを「minecraft:chain_command_block」「minecraft:repeating_command_block」という風に変更すればOKです。

というわけで、コマンドブロックだけを消すにはfillコマンドでコマンドブロックだけを空気に置き換えればOKです。

コマンドブロックを消さなくて済むには

コマンドブロックだけを消す方法を紹介しましたが、サーバーを建てることでコマンドブロックを消さずにただただ無力化することが可能です。

というのも、サーバーを建てている場合だけに使える「enable-command-block」というコマンドブロックを無効にするかどうかの設定が操作できます。

通常はfalseとなっていますが、server.propertiesというファイルを弄ってtrueに変更することでコマンドブロックを無効にすることができるので、コマンドブロックをわざわざ消す必要がありません。

詳しい操作手順などは過去に記事にしているので、そちらを参考にしてもらえると幸いです。

【解決】コマンド無効にはenable-command-block

シングルプレイでコマンドブロックを扱っていたとしても、サーバーのワールドデータを入れ替えることで問題なくシングルプレイのデータもコマンドブロックを無効にすることができます。
なので、かなりおすすめな方法ですね。

初めからサーバーを建ててマップ制作等を行えば、都度ワールドを入れ替える必要がないので楽ですよ。

他のプレイヤーが入ってくるかどうか不安な人は、「enable-command-block」同様server.propertiesに含まれている「white-list」をtrueにして許可を得ていないプレイヤーは入れないようにすると良いです。

というわけで、コマンドブロックを壊さずに無効化するには、enable-command-blockをtrueに変更すればOKということでした。

まとめ

今回のまとめです。

使ったコマンドはこちら。

今回使ったコマンド
  • コマンドブロックを空気ブロックに置き換えるコマンド
/fill 座標1 座標2 minecraft:air replace minecraft:command_block
ポイント
  • fillコマンドのreplaceを使うことで、コマンドブロックだけを消せます。
    この時、チェーンやリピートといった異なるモードのコマンドブロックを消したい場合は文末のアイテムIDを変更すればOKです。
  • コマンドブロックを消さずに無効化したいのならば、サーバーを建ててワールドデータを移行。
    そうして、enable-command-blockをtrueに変更すれば、コマンドブロックを無効にした状態のワールドに入れます。

この記事は以上になります。

  • 【まとめ】functionコマンドの基本から応用【マイクラ】
  • 【まとめ】カスタムストラクチャーの実装・カスタム方法【マイクラ】