0. スコアボードのリセット | 既存のスコアをリセットし、クリーンな状態にする | /scoreboard players reset @a Life | 一括実行(ゲーム開始前に実行)<br>※Impulse (Needs Redstone) |
1. スコアボードの初期設定 | プレイヤーのライフ管理用 Objective「Life」と、ゲーム開始用トリガー Objective「GameStart」を作成する | /scoreboard objectives add Life dummy "ライフ" <br>/scoreboard objectives add GameStart trigger "ゲーム開始" | 一括実行(サーバー起動時・データパックロード時)<br>※Impulse (Needs Redstone) |
2. ゲーム開始トリガー実行 | プレイヤーまたは管理者が /trigger コマンドでゲーム開始の合図を送る | /trigger GameStart set 1 | 個別実行(必要に応じ手動実行) |
3. プレイヤーの初期化 | 全プレイヤーのライフを初期値(例:10)に設定し、ライフをサイドバーに表示する | /scoreboard players set @a Life 10 <br>/scoreboard objectives setdisplay sidebar Life | 一括実行(ゲーム開始時にまとめて実行)<br>※Impulse (Needs Redstone) |
4. 既存エンティティのクリア | 前回分の残骸(カスタム雪玉)の雪玉エンティティを削除してクリーンな状態にする | /kill @e[type=minecraft:snowball,nbt={Item:{tag:{display:{Name:'{"text":"カスタム雪玉"}'}}}}] | 一括実行(ゲーム開始前に実行)<br>※Impulse (Needs Redstone) |
5. ゲーム開始の通知 | チャットメッセージと音声で全プレイヤーにゲーム開始を通知する | /tellraw @a {"text":"ゲームスタート!","color":"gold"} <br>/playsound minecraft:entity.player.levelup master @a ~ ~ ~ 1 1 | 一括実行(開始関数内でまとめて実行)<br>※Impulse (Needs Redstone) |
6. カスタム雪玉の配布 | 各プレイヤーにカスタム雪玉(名前付き雪玉)を配布する。<br>(投射体となる雪玉が後の判定対象となる) | /give @p minecraft:snowball{display:{Name:'{"text":"カスタム雪玉"}'}} 1 | 一括実行または個別実行(ゲーム開始時に実行)<br>※Impulse (Needs Redstone) |
6a. カスタム雪玉にタグ付け | 投擲されたカスタム雪玉に識別用タグ「customSnowball」を付与する。<br>(CustomName の情報が投射体に引き継がれない場合に対応) | /execute as @e[type=minecraft:snowball,nbt={Item:{tag:{display:{Name:'{"text":"カスタム雪玉"}'}}}}] unless entity @s[tag=customSnowball] run tag @s add customSnowball | 常時実行(リピート型コマンドブロックまたは定期実行関数)<br>※Repeating (Always Active) |
7. カスタム雪玉の着弾検知 & スコア減少 | 着弾(inGround:1b)したカスタム雪玉(タグ「customSnowball」付き)が、半径1ブロック以内のプレイヤーに命中した場合、ライフを1減少させる | /execute as @e[type=minecraft:snowball,tag=customSnowball,nbt={inGround:1b}] at @s if entity @a[distance=..1] run scoreboard players remove @a[distance=..1] Life 1 | 常時実行(リピート型または定期実行関数)<br>※Repeating (Always Active) |
8. 着弾地点でのエフェクト発生 | 着弾地点にパーティクルやエフェクト(例:happyVillager)を発生させ、視覚的なフィードバックを与える | /execute as @e[type=minecraft:snowball,tag=customSnowball,nbt={inGround:1b}] at @s run summon minecraft:area_effect_cloud ~ ~ ~ {Duration:20,Particle:"happyVillager"} | 常時実行(リピート型または定期実行関数)<br>※Repeating/Chain (Always Active) |
9. 着弾後の雪玉除去 | 判定済みの雪玉(タグ「customSnowball」付き、着弾済み)を削除し、同一雪玉による複数回の処理を防止する | /kill @e[type=minecraft:snowball,tag=customSnowball,nbt={inGround:1b}] | 常時実行(リピート型または定期実行関数)<br>※Chain (Always Active) |