更新日:
1. 名前の下に体力を出す
/scoreboard objectives add hp health {"text":"❤","color":"red"}
/scoreboard objectives setdisplay below_name hp
ほかのプレイヤーの名前の下に「20 ❤」のように体力が出ます。数字はハート半分を1として数えるので、満タンは20です。1.20.1以前は below_name の代わりに belowName と書きます。
2. Tabキーの一覧に出す
/scoreboard objectives setdisplay list hp
/scoreboard objectives modify hp rendertype hearts
Tabキーを押したときのプレイヤー一覧に体力が出ます。2行目を入れると、数字ではなくハートの形で表示されます。
3. サイドバーに出す
/scoreboard objectives setdisplay sidebar hp
画面の右側に、全員の体力が一覧で出ます。人数が多いときは、名前の下かTab一覧のほうが見やすいです。
4. ほかの数値も出す
| 出したいもの | 種類(criteria) |
|---|---|
| 体力 | health |
| 満腹度 | food |
| 経験値のレベル | level |
| 防具の防御力 | armor |
| 死んだ回数 | deathCount |
| プレイヤーを倒した数 | playerKillCount |
/scoreboard objectives add deaths deathCount "死んだ回数"
/scoreboard objectives setdisplay sidebar deaths
health・food・level・armorは自動で今の値になり、コマンドで書き換えることはできません。くわしくは scoreboardコマンドの基本 にまとめています。
5. 表示を消す
/scoreboard objectives setdisplay below_name
/scoreboard objectives remove hp
1行目は表示だけを消します。2行目はスコアそのものを消します。
6. 体力が少なくなったら知らせる(くり返し)
/title @a[scores={hp=..6}] actionbar {"text":"体力が少ない!","color":"red"}
1で作った hp のスコアを使います。くり返しコマンドブロック(常時実行)に入れると、体力が6(ハート3つ)以下の人のホットバーの上に赤い文字が出続けます。回復して7以上になると消えます。..6 の数を変えると、知らせる体力を変えられます。
/effect give @a[scores={hp=..6}] glowing 1 0 true
チーム戦なら、体力の少ない人を光らせて、仲間が助けに行きやすくすることもできます。
うまくいかないときの確認ポイント
- 最初は0と出る:体力の表示は、体力が一度変わったときに更新されます。少しダメージを受けるか、回復すると正しい数字になります。
- 自分の名前の下に出ない:名前の下の表示は、ほかのプレイヤーから見たときに出ます。自分では見えません。
- 統合版で使えない:統合版のスコアボードにはhealthの種類がないため、この方法はJava版向けです。
よくある質問
ハートの形で表示できますか?
Tab一覧では rendertype hearts でハートの形になります。名前の下やサイドバーは数字で表示されます。
Mobの体力も表示できますか?
health のスコアはプレイヤーだけです。Mobの体力は /data get entity で確認します。
最大体力を増やすと表示も変わりますか?
はい。attributeで最大体力を増やすと、表示される数字も大きくなります。