state_enter.mcfunction 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. # 要求系统进入状态 3(主要阶段结束,初始化小游戏)
  2. scoreboard players set $state mem 3
  3. execute as @a[team=!debugging] run function ltw:state/3/player_enter
  4. # HUD
  5. scoreboard objectives setdisplay belowName total_score_disp
  6. scoreboard objectives setdisplay sidebar total_score
  7. scoreboard objectives setdisplay list total_score_disp
  8. scoreboard players set $bossbar_type mem 0
  9. function lib:bossbar/show
  10. # 修改时间
  11. time set midnight
  12. # 初始化倒计时
  13. scoreboard players set $countdown mem 3
  14. # 禁用 tempo_block
  15. scoreboard players set $tempo_enable mem 0
  16. # 修改队伍颜色
  17. team modify playing color reset
  18. # 小游戏编号:生成一个 1~[最大游戏编号] 的 randomarray,每次从其中取下一个数。
  19. execute unless data storage ltw:mini types[0] run function ltw:state/3/newarray
  20. execute store result score $mini_type mem run data get storage ltw:mini types[0]
  21. data remove storage ltw:mini types[0]
  22. # 小游戏编号覆盖:如果为第 5 轮,则有一半概率选用钻石风暴
  23. scoreboard players set $random_max mem 1
  24. scoreboard players set $random_min mem 0
  25. function lib:random
  26. execute if score $round mem matches 5 if score $random mem matches 1 run scoreboard players set $mini_type mem 6
  27. # 初始化小游戏
  28. function mini:main/game_init