38
1.9で追加されたtag、最初は何に使うんだ...と思ってたんですけど、1回使ってみたらハマってしまい(?)
1.8に戻れなくなってしまいました...

ミニゲームとか配布マップを作っている人は絶対というぐらい使いたくなります。

例えばいちいち座標を調べて@e[type=ArmorStand,x=10,y=20,z=10,dx=4,dy=30,dz=9]
みたいに長たらしい引数を指定しなくてもtagをつければ@e[tag=big]みたいにとても短く指定できます。

たぶんコマンド好きの人はほとんどの人がsummonコマンドでmobを出してると思うので、tagになれたら自然に使えるようになれます。(コマンド使ってない人もtagを使いたい人は自然に使えるようになります。)

出すときにデータタグにTags:["タグ名"]と指定するだけです。
タグ名は半角しか使えません。

例:/summon ArmorStand ~ ~ ~ {Tags:["big"]}  (bigというtagがついたアーマースタンドを出します)
/execute @e[tag=big] ~ ~ ~ summon Zombie ~ ~ ~   (bigとタグが付けられたアマスタのところにゾンビを出します。)

もうすでに出したmobにtagをつけるには
/scoreboard players tag @e add タグ

tagを消すときは
/scoreboard players tag @e remove タグ
と書きます。

簡単に言えばscoreboardのteamsと同じようなものですが、teamsでは一つのチームにしか参加させることができないのですが、tagを使えばいくつものtagがつけられるのでその点こちらのtagのほうが便利です。

例えば配布マップの謎解きでAとBとCの仕掛けを解いたらダイアモンドをもらえるという仕掛けは
Aをクリアするとscoreboard players tag @p add a
Bをクリアするとscoreboard players tag @p add b
Cをクリアするとscoreboard players tag @p add c
そしてこのa、b、cの全てのタグを持っている人にダイアモンドを与えるにはexecuteコマンドを使います。
execute @a[tag=a] ~ ~ ~ execute @a[tag=b] ~ ~ ~ give @a[tag=c] diamond
とexecuteをいくつも繋げます。

簡単に自分のハマっているtagについて語ろうとしたら結構まだまだ書きたいことがたくさんあるので今回は控えめにしときます。