game_end.mcfunction 1.2 KB

12345678910111213141516171819202122232425
  1. # 小游戏结束
  2. execute if score $mini_type mem matches 1 run function mini:parkour/game_end
  3. execute if score $mini_type mem matches 2 run function mini:tntrun/game_end
  4. # 计算排名
  5. #1
  6. scoreboard players set $t_score_max mini_score -2147483648
  7. execute as @a run function mini:main/get_max_score
  8. execute as @a unless entity @a[tag=mini_rank1] if score @s mini_score = $t_score_max mini_score run tag @s add mini_rank1
  9. scoreboard players reset @a[tag=mini_rank1] mini_score
  10. #2
  11. scoreboard players set $t_score_max mini_score -2147483648
  12. execute as @a run function mini:main/get_max_score
  13. execute as @a[tag=!mini_rank1] unless entity @a[tag=mini_rank2] if score @s mini_score = $t_score_max mini_score run tag @s add mini_rank2
  14. scoreboard players reset @a[tag=mini_rank2] mini_score
  15. #3
  16. scoreboard players set $t_score_max mini_score -2147483648
  17. execute as @a run function mini:main/get_max_score
  18. execute as @a[tag=!mini_rank1,tag=!mini_rank2] unless entity @a[tag=mini_rank3] if score @s mini_score = $t_score_max mini_score run tag @s add mini_rank3
  19. scoreboard players reset @a[tag=mini_rank3] mini_score
  20. #4
  21. tag @a[tag=!mini_rank1,tag=!mini_rank2,tag=!mini_rank3] add mini_rank4
  22. # 进入状态 6
  23. function ltw:state/6/state_enter