マイクラ統合版(Minecraft BE/Bedrock)で/scoreboardコマンドを使用したランダム抽選の作り方を紹介します。
動画でご覧になりたい方はこちらをどうぞ↓
ランダム抽選の例
ここではランダム抽選の例として
『3つあるレッドストーンランプの中からランダムで1つを点灯する。』
という動作をコマンドで作成します。
択の数や抽選後の動作については必要に応じてカスタムしてください。
ランダム抽選のコマンド
①抽選用のスコアボード”lottery”を作成する。
/scoreboard objectives add lottery dummy
②空ネーム”lot”にランダムでスコアを付与する。
/scoreboard players random lot lottery 1 3
③lotteryのlotスコアに応じて信号(レッドストーンブロック)を配置する。
/execute if score lot lottery matches 1 run setblock 0 0 0 redstone_block
/execute if score lot lottery matches 2 run setblock 2 0 0 redstone_block
/execute if score lot lottery matches 3 run setblock 4 0 0 redstone_block
④動作リセット
/scoreboard players reset lot lottery
/fill 0 0 0 4 0 0 air [] replace redstone_block
ランダム抽選コマンドの解説
ランダムで抽選する行為自体は、②で行っているようにscoreboardコマンドで対象へスコアをランダム付与するコマンドを使用すれば実行可能です。
スコアを付与する対象はエンティティであれば何でも構いませんが、ここでは便利な「空ネーム(実体のない仮エンティティ)」を指定しています。
さらに③では、scoreboardコマンドの結果を取り出して次の動作へ繋げる例として、executeを使用して値の参照とsetblockを行っています。
run以降の実行されるコマンドを差し替えることでいろいろなケースに対応できます。
また④は抽選を繰り返す際のリセット動作です。
2回目以降は④②③を実行すれば抽選が行われます。