投稿日:
最終更新:

Splatoon風トラップの作り方 コマンド解説編part1 - スコア/回路の準備,投げて設置する仕組み

Splatoonのトラップコマンド解説編part1

巷で話題のSplatoonに登場するサブウェポン「トラップ」をマイクラで作ってみましょう。
今回は、前回紹介した「トラップ」の作り方を一から解説します。スコアボードの作成から回路の組み立て各コマンドの仕組みの解説まで、分かりやすく画像付きで解説します。これからPvPマップを作りたい方は、ブキ開発入門として是非最後までお読み下さい。また、scoreboardコマンドを使った仕掛けの作り方がよく分からない! という方も、分かりやすい図で丁寧に解説いたしますのでどうぞ最後までお付き合い下さい。

「トラップ」を今すぐ手に入れて遊びたい方は紹介編をお読み下さい

トラップに完全敗北した君

▲細い通路に設置した「赤チームのトラップ」が、青チームのプレイヤーを瞬殺! 殴り合いが苦手なプレイヤーでもチームに貢献できる、新感覚のPvPを提供するバトルアイテム「トラップ」はいかが?

コマンドをペーストして実行!

なんとこの「トラップ」は、とある1つのコマンドを実行するだけで手に入ります。詳しい入手方法や使い方については、以下の記事で解説していますので、この「コマンド解説編」の前にそちらをお読み下さい。

トラップを入手するコマンドや使い方をまとめた紹介編はこちら!
Splatoonのトラップを作ってみた
https://www.napoan.com/splatoon-trap-show/

一から自分で作りたい! 方のために、コマンドと仕組みを解説

「トラップ」はお楽しみ頂けましたか? 私が再現したトラップの仕様は以下のとおりです。

  • トラップに書かれたチームの敵が触れると反応する
  • 一回触れるとそのトラップから音が鳴り煙が出て、数秒後に消える
  • トラップが反応した後しばらくするとダメージを受ける
  • 俊敏のポーションなどを飲んでいれば、ダメージを回避することも可能
  • 味方チームがセットしたトラップは、味方チームに反応することはない
  • 何もしなくても、設置から約10秒後にトラップは煙とともに消える

「あー、アイテムの場所にexecuteで何か召喚しているな」「触れたらparticleとかplaysoundとか動かしてるんだろ」など、勘の鋭い方は仕組みがだいたい予想できたと思います。さあ、作っていきましょう。


まずは回路とスコアボード、チームを用意しよう

scoreboardを作成

回路を組み立てる前に、7つのscoreboardを作成します。以下のコマンドを全て実行して下さい。

scoreboardを作成するコマンド
/scoreboard objectives add isRedTrap dummy
/scoreboard objectives add isBlueTrap dummy
/scoreboard objectives add DamageFlag dummy
/scoreboard objectives add TrapTimer dummy
/scoreboard objectives add TrapRemove dummy
/scoreboard objectives add TrapAge dummy
/scoreboard objectives add TrapFlag dummy
どれもトラップを動かすために大切なスコアボードです。打ち間違いのないように!

次に、こちらもトラップを動かすのに必須な「赤チーム」「青チーム」を作成します。

トラップを動かすための「チーム」を作成するコマンド
/scoreboard teams add Red
/scoreboard teams option Red color dark_red
/scoreboard teams add Blue
/scoreboard teams option Blue color dark_blue
▲scoreboardコマンドのteams機能で、チームを作成して色を設定しています。
これがコマンドブロック達だ

さあ、回路を組み立てます。回路と言っても、fillコマンドを使った高速クロックだけですが。

高速fillクロックの作り方

バージョン1.9なら「リピートコマンドブロック」を使っても構いません。上下のコマンドブロック「A」「B」に、以下のコマンドを入力して下さい。それから、上下のコマンドブロックの間にレッドストーンブロックを挟んで下さい。

「A」に入力するコマンド/fill ~ ~-1 ~ ~13 ~-1 ~ redstone_block
「B」に入力するコマンド/fill ~ ~1 ~ ~13 ~1 ~ stone

レッドストーンブロックを26個増設

すると回路が動き出し、赤石ブロックの棒が現れますので、上側に13個、下側にも13個、計26個のコマンドブロックを追加で設置します。なんとこのトラップの回路、常に26個ものコマンドを動かしているんです!

この時点で「...で満たしました」等のメッセージでログが埋め尽くされている方は、/gamerule commandBlockOutput falseを実行して下さい。


アイテムを投げてトラップを設置する仕組みの解説

「トラップ」を使うには、まずトラップのアイテムをポイっと投げる必要がありますね。アイテムを投げて何かを設置するというコマンドは、一体どういう仕組みになっているのでしょうか。

まずは、「赤チームのトラップ」「青チームトラップ」を入手しましょう。

各チーム専用のトラップアイテムを入手するコマンド
各チーム専用のトラップアイテム
/give @p minecraft:paper 64 0 {display:{Name:"赤チームのトラップ",Lore:["投げて設置だゾ"]}} /give @p minecraft:slime_ball 64 0 {display:{Name:"青チームのトラップ",Lore:["投げて設置してね"]}}
▲実は、赤チームのトラップの正体は紙(画像は間違っています!ごめんなさい)、青チームのトラップの正体はスライムボールです。勝手にテクスチャ差し替えちゃってごめんなさい。
トラップを設置するコマンド

さあ、回路内のコマンドを入力していきましょう。左上から「1,2,3,4,5」のコマンドブロックを編集します。

「1」に入力するコマンド
/scoreboard players add @e[type=Item] isRedTrap 1 {Item:{id:"minecraft:paper",tag:{display:{Name:"赤チームのトラップ",Lore:["投げて設置だゾ"]}}},OnGround:1b}
フィールド上に、地面に接した「赤チームのトラップ」が捨てられたら、そいつの「isRedTrap」スコアを1づつ追加していきます。setではなくaddを使っているところがミソです
「2」に入力するコマンド
/execute @e[type=Item,score_isRedTrap_min=1,score_isRedTrap=1] ~ ~ ~ summon armor_stand ~ ~ ~ {CustomName:"RedTrap",Invisible:1b}
isRedTrapスコアが1になったトラップアイテムの場所に、透明な「RedTrap」防具立てを召喚します。召喚している間もスコアは増え続けるので、条件が「1以上1以下」、すなわち1体しか召喚されません。
「3」に入力するコマンド
/kill @e[type=Item,score_isRedTrap_min=2]
キル数が「RedTrap」防具立てがトラップアイテムの場所に召喚された直後、アイテムのスコアは「2」に増えます。そしたらアイテムは用済みなので、killで消去します。防具立てはその場に残ります。
「4」に入力するコマンド
/scoreboard players add @e[type=Item] isBlueTrap 1 {Item:{id:"minecraft:slime_ball",tag:{display:{Name:"青チームのトラップ",Lore:["投げて設置してね"]}}},OnGround:1b}
キル数が先ほどの「1」のコマンドブロックの、青チーム版です。「青チームのトラップ」が地面に設置したら、「isBlueTrap」スコアを1づつ増やしていきます。
「5」に入力するコマンド
/execute @e[type=Item,score_isBlueTrap_min=1,score_isBlueTrap=1] ~ ~ ~ summon armor_stand ~ ~ ~ {CustomName:"BlueTrap",Invisible:1b}
接地したトラップアイテムの場所に「BlueTrap」という透明な防具立てを召喚します。条件は「スコア1以上1以下」なので、1体しか召喚されません。
「6」に入力するコマンド
/kill @e[type=Item,score_isBlueTrap_min=2]
スコアが「2」に増え、用済みになった青チームのトラップアイテムを消去します。
トラップを設置する仕組み1

文章の説明じゃ分かりにくいので、図で説明します。まず赤チームのプレイヤーが「赤チームのトラップ」をポイっと投げますね。それが地面に付いたら「OnGround:1b」というデータタグが付きますので、それを「1」のコマンドブロックが見つけるわけです。/scoreboard players add <セレクタ> <スコア名> 1 <条件>という構文で、条件が合った物にどんどんスコアを1づつプラスしていきます。setではなくてaddなのです。

トラップを設置する仕組み2

先ほどのスコアをプラスするコマンドは超高速クロックで動いてますから、ほぼ地面に触れたと同時に「isRedTrap」スコアがプラスされ、1になります。それを監視していたコマンドブロック「2」はすかさずexecuteコマンドを発動。「isRedTrapが1以上1以下のアイテムの場所に"RedTrap"という名の防具立てを召喚せよ」と命令します。そして防具立てが召喚されてもなお、コマブロNo.1がスコアを増やし続け...

トラップを設置する仕組み3

スコアがどんどん増え続けるので、アイテムの「isRedTrap」スコアはすぐ「2」になります。それを見つけたコマンドブロックNo.3が「スコアが2以上の奴は殺せ!」と指示し、アイテムは消えて防具立てだけ残るんです。

これら「1」~「3」のコマンドブロックは、赤チームのトラップを設置するためのコマンド達ですが、「4」~「6」は同じ方法で「青チームのトラップ」を設置しています。やっている事は同じなので解説は省略します。


長くなりすぎたので記事を分けます。続きはコマンド解説編part2へ

全部説明すると長くなるので記事を分けます

マウスホイール回すの疲れましたよね、ごめんなさい。ということでコマンド解説編も記事を分けさせて頂きます。この解説の続きはコマンド解説編part2へどうぞ。

Splatoon風トラップの作り方 コマンド解説編part2へ
Splatoonのトラップコマンド解説編part2
https://www.napoan.com/splatoon-trap-command-part2/

 

 

コメント

記事の内容が最新のものと異なる場合があります。ご了承ください。

“Splatoon風トラップの作り方 コマンド解説編part1 - スコア/回路の準備,投げて設置する仕組み” への2件のフィードバック

  1. gsれ より:

    紙を花火の玉と間違えていますよ

  2. Yu Ki より:

    1.11版に修正されてる……
    さんありがとう

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください