更新日:
1. 死んだ回数のスコアを作る
/scoreboard objectives add deaths deathCount "死んだ回数"
/scoreboard objectives setdisplay sidebar deaths
deathCount は、プレイヤーが死ぬたびに1増えるスコアです。2行目で画面の右側(サイドバー)に表示します。回数の多い人ほど上に並びます。
2. Tab一覧や名前の下に出す
/scoreboard objectives setdisplay list deaths
/scoreboard objectives setdisplay below_name deaths
list はTabキーを押したときのプレイヤー一覧、below_name は頭の上の名前の下です。表示する場所は1つのスコアにつき好きなだけ選べます。体力を出す例は 体力を表示するコマンド にまとめています。
3. 死んだときに全員へ知らせる
/scoreboard objectives add died deathCount
# 反復・常時実行
execute as @a[scores={died=1..}] run tellraw @a [{"selector":"@s","color":"red"},{"text":" が倒れた! 合計 "},{"score":{"name":"@s","objective":"deaths"}},{"text":" 回目"}]
# チェーン・常時実行
scoreboard players reset @a[scores={died=1..}] died
お知らせ用にもう1つ died を作り、メッセージを出したらすぐ消します。deaths は合計を残しておく用なので消しません。死んだ場所も知らせたいときは 死んだ場所を調べて戻るコマンド を見てください。
4. 3回死んだら観戦にする(残機制)
execute as @a[scores={deaths=3..},gamemode=survival] run gamemode spectator @s
3回死んだ人は観戦モードになり、ゲームに戻れなくなります。反復ブロックで動かしておきます。体力が自然に回復しない遊び方と組み合わせる例は UHCをコマンドで作る方法 にあります。
5. 回数を0に戻す
/scoreboard players set @a deaths 0
新しいゲームを始めるときに全員の回数を0にします。表示ごと消したいときは /scoreboard objectives remove deaths でスコアを削除します。
6. 残りの命を画面に出す
/scoreboard objectives add lives dummy "残機"
# 反復コマンドブロック
scoreboard players set @a lives 3
# チェーン1
execute as @a run scoreboard players operation @s lives -= @s deaths
# チェーン2
execute as @a run title @s actionbar [{"text":"残り "},{"score":{"name":"@s","objective":"lives"}},{"text":" 機"}]
毎回3から死んだ回数を引いて、残りの命をアクションバーに出します。4の残機制と組み合わせると、あと何回で脱落するかが分かります。残機を5にするときは、反復コマンドブロックの3と、4の 3.. を両方5に変えます。
うまくいかないときの確認ポイント
- サイドバーに名前が出ない:まだ1回も死んでいない人は表示されません。5の行で0を入れると、全員が並びます。
- お知らせが何度も出る:チェーンで
diedを消しているか確認します。 - 統合版で使いたい:統合版のスコアボードは dummy だけなので、死んだ回数を自動で数えることはできません。
よくある質問
倒した数も数えられますか?
playerKillCount でほかのプレイヤーを倒した数、totalKillCount でMobも含めて倒した数を数えられます。
ゲームの途中から入った人も数えられますか?
スコアを作ったあとに死んだ分は、あとから入った人も自動で数えられます。
表示名に色を付けられますか?
/scoreboard objectives modify deaths displayname {"text":"死んだ回数","color":"red"} のように変えられます。