ArmorStandのNBTでよく使うものをジャンルで整理してみる
ArmorStand
ArmorStand(minecraft:armor_stand。アーマースタンド。以下、アマスタ)っていろんな場面で使うじゃないですか。例えば。
- 防具立て
- マーカー(位置指定)
- 3Dモデル配置用
- 一時的なスコアボード保管用
- パーティクル表示の基準
などなど。そういう時に、いざアマスタを召喚しようとしたら、
「このNBTってどうやって書くんだったかなあ…」
ってよくなります。ということで私がよく使うやつだけ整理してみる。
基本セット(当たり判定・透明化・落下防止)
# 当たり判定を消す {Marker:true} # 透明化する {Invisible:true} # 落下防止する {NoGravity:true} # 3つ合わせて {Marker:true,Invisible:true,NoGravity:true}
上の3つは大体のやつに設定している気がする。特に理由もなく。
※ 宗教上の理由から0b, 1bではなく、false, trueで書いてます。
名前関係
# 名前をつける {CustomName:'{"text":"名前"}'} # 名前を表示する {CustomNameVisible:true} # 2つ合わせて {CustomName:'{"text":"名前"}',CustomNameVisible:true}
やっぱり、名前をつけるのはやるよね。普通のモブに対してもやるからね。
判別用途関係
# 最初からタグをつける {Tags:["aaa","bbb"]} # 最初からチームに含める {Team:"red"} # 2つ合わせて {Tags:["aaa","bbb"],Team:"red"}
タグとかチームはセレクター指定するときに楽になるから、ついつい使っちゃう。
見た目関係
# 小型化 {Small:true} # 手あり {ShowArms:true} # 下の台なし {NoBasePlate:true}
全部をあわせて使うことはあまりないけど、見た目をいじるなら、これは設定しておきたいよね。
姿勢関係
# 召喚時の向き ## 1つ目はアマスタの体の方向(-180:北、-90:東、0:南、90:西) ## 2つ目はアマスタの頭の方向(0:正面、90:真上、-90:真下) Rotation:[0.0f,0.0f] # 頭、体、左手、右手、左足、右足の角度(別サイトで設定することを推奨) Pose:{Body:[...],LeftArm:[...],RightArm:[...],LeftLeg:[...],RightLeg:[...],Head:[...]}
いよいよもって使わなくなってきたけど、アマスタの姿勢調整用。
各パーツはこちらで設定することをおすすめするよ。
アイテム装備関係
# 最初から右手、左手に装備する ## 1つ目は右手 ## 2つ目は左手 {HandItems:[{id:"minecraft:stone",Count:1b},{}]} # 最初から防具を装備する:インベントリとは逆順に装備するって覚えればいけそうだね ## 1つ目は足装備 ## 2つ目は腰装備 ## 3つ目は体装備 ## 4つ目は頭装備 {ArmorItems:[{},{},{},{id:"minecraft:stone",Count:1b}]} # 装備を付けられる、はずれるの設定 ## この値の詳細は後述 {DisableSlots:31}
アマスタの装備関係。最初から装備させなくていいなら、replaceitemでやった方がシンプルだと思う。
装備の付け外し設定
まずは、こちらの表をご確認あれ。
設定 | パーツ | 数値 |
---|---|---|
装備させない、はずさせない | 右手 | 1 |
装備させない、はずさせない | 足 | 2 |
装備させない、はずさせない | 腰 | 4 |
装備させない、はずさせない | 体 | 8 |
装備させない、はずさせない | 頭 | 16 |
装備させない、はずさせない | 左手 | 32 |
装備をはずさせない (装備できる) | 右手 | 256 |
装備をはずさせない (装備できる) | 足 | 512 |
装備をはずさせない (装備できる) | 腰 | 1024 |
装備をはずさせない (装備できる) | 体 | 2048 |
装備をはずさせない (装備できる) | 頭 | 4096 |
装備をはずさせない (装備できる) | 左手 | 8192 |
装備させない (はずせる) | 右手 | 65536 |
装備させない (はずせる) | 足 | 131072 |
装備させない (はずせる) | 腰 | 262144 |
装備させない (はずせる) | 体 | 524288 |
装備させない (はずせる) | 頭 | 1048576 |
装備させない (はずせる) | 左手 | 2097152 |
全部の値の意味はこんな感じなんだけど、複数指定したい場合はどうするのか。
全部足します。
つまり、両手、足、腰、体は「装備させない、はずさせない」だけど、頭は「装備させない、けどはずせる」ようにしたいのであれば
- 右手の「装備させない、はずさせない」は、1
- 左手の「装備させない、はずさせない」は、32
- 足の「装備させない、はずさせない」は、2
- 腰の「装備させない、はずさせない」は、4
- 体の「装備させない、はずさせない」は、8
- 頭の「装備させない、けどはずせる」は、1048576 (表の最後のやつ)
になるので、「1 + 32 + 2 + 4 + 8 + 1048576」の結果、「1048623」をDisableSlotsに指定すればOK。
面倒ならば、MC Stackerとか使ったほうが良いと思います。
ちなみに、全部「装備させない、はずさせない」、アマスタを破壊もできないで良いならばMarkerを使ったほうが楽です。
デバッグ目的
# 光らせる {Glowing:true}
実際の使い方は、もちろん光らせるためにあるんですけど、私はデバッグ用途で使ってます。
なんのデバッグかって?
透明化したアマスタがどこにいるのか見えるようにするため!
光らせてしまえば、壁の向こう側でも見えますからね。便利です。
最後に
まだ指定できるNBTはいっぱいあるんですが、私はそこまで残りのやつは使わないです。
世の中にはUUIDとか指定してアレコレする人やAttributeでアレコレする人がいるそうですね。
世界は広いですね。