LTCatt преди 5 години
родител
ревизия
5d206e3ec6
променени са 58 файла, в които са добавени 200 реда и са изтрити 188 реда
  1. 1 1
      data/item/functions/tick2.mcfunction
  2. 18 6
      data/ltw/functions/init.mcfunction
  3. 10 10
      data/ltw/functions/main/game_end.mcfunction
  4. 2 2
      data/ltw/functions/main/get_max_score.mcfunction
  5. 6 6
      data/ltw/functions/main/player_enter.mcfunction
  6. 1 1
      data/ltw/functions/main/player_enter_rejoin.mcfunction
  7. 1 1
      data/ltw/functions/main/player_enter_watcher.mcfunction
  8. 1 1
      data/ltw/functions/main/player_leave.mcfunction
  9. 5 5
      data/ltw/functions/state/0/player_enter.mcfunction
  10. 15 9
      data/ltw/functions/state/0/start_game.mcfunction
  11. 6 6
      data/ltw/functions/state/0/state/check_slot.mcfunction
  12. 1 2
      data/ltw/functions/state/0/state/join_game.mcfunction
  13. 1 2
      data/ltw/functions/state/0/state/join_watch.mcfunction
  14. 4 1
      data/ltw/functions/state/0/state_enter.mcfunction
  15. 3 3
      data/ltw/functions/state/0/tick5.mcfunction
  16. 2 2
      data/ltw/functions/state/3/player_enter.mcfunction
  17. 4 1
      data/ltw/functions/state/3/state_enter.mcfunction
  18. 1 1
      data/ltw/functions/state/3/tick2.mcfunction
  19. 1 1
      data/ltw/functions/state/4/player_enter.mcfunction
  20. 1 1
      data/ltw/functions/state/6/generate_bonus.mcfunction
  21. 1 1
      data/ltw/functions/state/6/player_enter.mcfunction
  22. 2 2
      data/ltw/functions/state/6/tick2.mcfunction
  23. 1 1
      data/ltw/functions/state/7/continue_gameparty.mcfunction
  24. 6 6
      data/ltw/functions/state/7/player_enter.mcfunction
  25. 1 1
      data/ltw/functions/state/7/tick2.mcfunction
  26. 1 1
      data/mini/functions/colormatch/game/start_new_round.mcfunction
  27. 4 4
      data/mini/functions/colormatch/player_enter.mcfunction
  28. 1 1
      data/mini/functions/colormatch/player_intro.mcfunction
  29. 1 1
      data/mini/functions/colormatch/watcher_limit.mcfunction
  30. 6 6
      data/mini/functions/hotpm/player_enter.mcfunction
  31. 1 1
      data/mini/functions/hotpm/player_intro.mcfunction
  32. 1 1
      data/mini/functions/hotpm/watcher_limit.mcfunction
  33. 4 4
      data/mini/functions/main/game_end.mcfunction
  34. 2 2
      data/mini/functions/main/get_max_score.mcfunction
  35. 2 2
      data/mini/functions/main/get_max_temp.mcfunction
  36. 2 2
      data/mini/functions/main/player_enter.mcfunction
  37. 8 8
      data/mini/functions/main/show_result.mcfunction
  38. 2 2
      data/mini/functions/main/update_player_count.mcfunction
  39. 30 30
      data/mini/functions/parkour/game/test_treasure.mcfunction
  40. 1 1
      data/mini/functions/parkour/game_end.mcfunction
  41. 6 6
      data/mini/functions/parkour/player_enter.mcfunction
  42. 1 1
      data/mini/functions/parkour/player_intro.mcfunction
  43. 1 1
      data/mini/functions/parkour/watcher_limit.mcfunction
  44. 1 1
      data/mini/functions/phantom/game_end.mcfunction
  45. 5 5
      data/mini/functions/phantom/player_enter.mcfunction
  46. 1 1
      data/mini/functions/phantom/player_failed.mcfunction
  47. 1 1
      data/mini/functions/phantom/player_intro.mcfunction
  48. 11 11
      data/mini/functions/phantom/tick5.mcfunction
  49. 1 1
      data/mini/functions/phantom/watcher_limit.mcfunction
  50. 3 3
      data/mini/functions/tntrun/player_enter.mcfunction
  51. 1 1
      data/mini/functions/tntrun/player_enter2.mcfunction
  52. 1 1
      data/mini/functions/tntrun/player_intro.mcfunction
  53. 1 1
      data/mini/functions/tntrun/watcher_limit.mcfunction
  54. 1 3
      data/test/functions/mini/colormatch.mcfunction
  55. 1 3
      data/test/functions/mini/hotpm.mcfunction
  56. 1 3
      data/test/functions/mini/parkour.mcfunction
  57. 1 3
      data/test/functions/mini/phantom.mcfunction
  58. 1 3
      data/test/functions/mini/tntrun.mcfunction

+ 1 - 1
data/item/functions/tick2.mcfunction

@@ -5,7 +5,7 @@ execute as @e[type=item] if data entity @s Thrower run function item:disable_thr
 execute as @a if data entity @s Inventory[{"tag":{"bonus_new":1b}}] run function item:bonus_item/call
 
 # 检测玩家格子锁定
-execute if score $state mem matches 1.. as @a[tag=!debug] run function item:disable_slot/check_slot
+execute if score $state mem matches 1.. as @a[team=!debugging] run function item:disable_slot/check_slot
 execute if score $state mem matches 0 as @a run function ltw:state/0/state/check_slot
 execute if score $state mem matches 0.. run kill @e[type=item,tag=LockTempItem]
 

+ 18 - 6
data/ltw/functions/init.mcfunction

@@ -97,12 +97,24 @@ scoreboard players set #const_10 mem 10
 scoreboard players set #const_81 mem 81
 scoreboard players set #const_100 mem 100
 
-# 队伍
-team remove player
-team add player "玩家"
-team modify player color white
-team modify player collisionRule never
-team modify player deathMessageVisibility never
+# 玩家队伍
+team remove debugging
+team add debugging "调试者"
+team modify debugging color red
+team modify debugging collisionRule never
+team modify debugging deathMessageVisibility never
+team remove playing
+team add playing "已准备/游戏中"
+team modify playing color green
+team modify playing collisionRule never
+team modify playing deathMessageVisibility never
+team remove watching
+team add watching "未准备/旁观中"
+team modify watching color gray
+team modify watching collisionRule never
+team modify watching deathMessageVisibility never
+
+# 非玩家队伍
 team remove white
 team add white "白色"
 team modify white friendlyFire false

+ 10 - 10
data/ltw/functions/main/game_end.mcfunction

@@ -18,7 +18,7 @@ execute as @a[tag=!max_uncounted] if score @s total_score = #score_max mem run t
 tag @a[tag=max_uncounted] remove max_uncounted
 
 # 给予进度
-scoreboard players add @a[tag=!watcher] stat_total 1
+scoreboard players add @a[team=!watching] stat_total 1
 advancement grant @a[scores={stat_total=5..}] only ltw:story/total1
 advancement grant @a[scores={stat_total=20..}] only ltw:story/total2
 advancement grant @a[scores={stat_total=50..}] only ltw:story/total3
@@ -29,9 +29,9 @@ advancement grant @a[scores={stat_win=20..}] only ltw:story/win3
 
 # 计算金粒奖励
 scoreboard players set #total_gold mem 0
-execute as @a[tag=!watcher] run scoreboard players add #total_gold mem 400
+execute as @a[team=!watching] run scoreboard players add #total_gold mem 400
 # 无名次
-execute as @a[tag=!total_rank1,tag=!total_rank2,tag=!total_rank3,tag=!watcher] run scoreboard players remove #total_gold mem 100
+execute as @a[tag=!total_rank1,tag=!total_rank2,tag=!total_rank3,team=!watching] run scoreboard players remove #total_gold mem 100
 # 计算总权重与单份奖励
 scoreboard players set #total_weight mem 0
 execute as @a[tag=total_rank1] run scoreboard players add #total_weight mem 3
@@ -49,7 +49,7 @@ scoreboard players set #rank3_gold mem 1
 scoreboard players operation #rank3_gold mem *= #total_gold mem
 scoreboard players operation #rank3_gold mem /= #const_100 mem
 # 如果因为掉线强制结束则无名次奖励
-execute store result score #count mem if entity @a[tag=!watcher]
+execute store result score #count mem if entity @a[team=!watching]
 execute if score #count mem matches ..2 run scoreboard players set #rank1_gold mem 0
 execute if score #count mem matches ..2 run scoreboard players set #rank2_gold mem 0
 execute if score #count mem matches ..2 run scoreboard players set #rank3_gold mem 0
@@ -62,22 +62,22 @@ execute if entity @a[tag=total_rank3] run tellraw @a [" ",{"text": "第三名 -
 tellraw @a ""
 
 # 得分金粒奖励
-execute as @a[tag=!watcher] run scoreboard players operation @s gold += @s total_score
-execute as @a[tag=!watcher] run scoreboard players operation @s gold_total += @s total_score
-tellraw @a[tag=!watcher] [" ",{"text": "得分奖励: ","color":"gold"},{"score":{"name": "*","objective": "total_score"}}," 金粒"]
+execute as @a[team=!watching] run scoreboard players operation @s gold += @s total_score
+execute as @a[team=!watching] run scoreboard players operation @s gold_total += @s total_score
+tellraw @a[team=!watching] [" ",{"text": "得分奖励: ","color":"gold"},{"score":{"name": "*","objective": "total_score"}}," 金粒"]
 
 # 名次金粒奖励
 scoreboard players set @a temp 0
 execute as @a[tag=total_rank1] run scoreboard players operation @s temp = #rank1_gold mem
 execute as @a[tag=total_rank2] run scoreboard players operation @s temp = #rank2_gold mem
 execute as @a[tag=total_rank3] run scoreboard players operation @s temp = #rank3_gold mem
-scoreboard players set @a[tag=!total_rank1,tag=!total_rank2,tag=!total_rank3,tag=!watcher] temp 1
+scoreboard players set @a[tag=!total_rank1,tag=!total_rank2,tag=!total_rank3,team=!watching] temp 1
 execute as @a run scoreboard players operation @s gold += @s temp
 execute as @a run scoreboard players operation @s gold_total += @s temp
-tellraw @a[tag=!watcher] [" ",{"text": "名次奖励: ","color":"gold"},{"score":{"name": "*","objective": "temp"}}," 金粒"]
+tellraw @a[team=!watching] [" ",{"text": "名次奖励: ","color":"gold"},{"score":{"name": "*","objective": "temp"}}," 金粒"]
 
 # 奖励结束
-tellraw @a[tag=!watcher] ""
+tellraw @a[team=!watching] ""
 
 # 返回主大厅
 schedule function ltw:state/0/state_enter 2t replace

+ 2 - 2
data/ltw/functions/main/get_max_score.mcfunction

@@ -1,6 +1,6 @@
 #> ltw:main/get_max_score
-# @input score @a[tag=!max_uncounted,tag=!watcher] total_score 进行统计的分数
+# @input score @a[tag=!max_uncounted,team=!watching] total_score 进行统计的分数
 # @output score #score_max mem 最高分
 
 scoreboard players set #score_max mem -2147483648
-scoreboard players operation #score_max mem > @a[tag=!max_uncounted,tag=!watcher] total_score
+scoreboard players operation #score_max mem > @a[tag=!max_uncounted,team=!watching] total_score

+ 6 - 6
data/ltw/functions/main/player_enter.mcfunction

@@ -1,5 +1,4 @@
 # 当玩家加入游戏时触发
-team join player @s
 
 advancement revoke @s only lib:damage_dealt
 advancement revoke @s only lib:damage_taken
@@ -13,10 +12,10 @@ execute as @a at @s run function lib:sounds/hit
 execute store result score @s UUID run data get entity @s UUID[0]
 
 # 如果是旁观者或局号不对头:开始旁观
-execute if entity @s[tag=watcher] run function ltw:main/player_enter_watcher
-execute if entity @s[tag=!watcher] unless score @s game_id = $ game_id run function ltw:main/player_enter_watcher
+execute if entity @s[team=watching] run function ltw:main/player_enter_watcher
+execute if entity @s[team=!watching] unless score @s game_id = $ game_id run function ltw:main/player_enter_watcher
 # 如果不是旁观且局号正确:游戏中掉线
-execute if entity @s[tag=!watcher] if score @s game_id = $ game_id run function ltw:main/player_enter_rejoin
+execute if entity @s[team=!watching] if score @s game_id = $ game_id run function ltw:main/player_enter_rejoin
 
 # 更新 Bossbar
 bossbar set ltw:notice players @a
@@ -28,5 +27,6 @@ function lib:bossbar/show
 # TODO: [LTCat/HIM] 土豆的两个炸弹同时爆炸把两个人炸死,让他们俩并列第三(按存活回合数记分)
 # FIXME: 旁观者在一轮开始时会被切换为冒险模式又切回去,这会造成游戏模式变更提示,鬼知道为啥
 # FIXME: [010] 如果有人没领取奖励,可以一直站在上面,在奖励领取阶段结束时再拿到一次
-# FIXME: [LTCat] 完成终局迷阵时不会同时完成纷乱迷阵
-# FIXME: 把道具放到 “已锁定” 格子导致道具消失
+# FIXME: 把道具放到 “已锁定” 格子导致道具消失
+# FIXME: 最后一轮还是会刷出道具
+# TODO: [LTCat] 优化色彩迷阵的加速算法

+ 1 - 1
data/ltw/functions/main/player_enter_rejoin.mcfunction

@@ -1,5 +1,5 @@
 # 作为玩家加入服务器
-tag @s remove watcher
+team join playing @s
 
 # 清除名次
 tag @s remove mini_rank1

+ 1 - 1
data/ltw/functions/main/player_enter_watcher.mcfunction

@@ -1,5 +1,5 @@
 # 作为旁观者加入服务器
-tag @s add watcher
+team join watching @s
 
 # 清除名次
 tag @s remove mini_rank1

+ 1 - 1
data/ltw/functions/main/player_leave.mcfunction

@@ -2,7 +2,7 @@
 execute as @a at @s run function lib:sounds/error
 
 # 由于玩家人数不足,强制结束游戏
-execute store result score #count mem if entity @a[tag=!watcher]
+execute store result score #count mem if entity @a[team=!watching]
 execute if score $state mem matches 1.. if score #count mem matches ..2 run function ltw:main/game_end
 execute if score $state mem matches 1.. if score #count mem matches ..2 run tellraw @a ["",{"text":">> ","color":"red","bold":true},{"text": "由于玩家不足, 游戏强制结束, 无名次金粒奖励……","color":"red","bold":false}]
 

+ 5 - 5
data/ltw/functions/state/0/player_enter.mcfunction

@@ -21,15 +21,15 @@ effect give @s resistance 1000000 4 true
 effect give @s weakness 1000000 4 true
 
 # 冒险模式
-gamemode adventure @s[tag=!debug]
+gamemode adventure @s[team=!debugging]
 
 # 传送玩家
-tp @s[tag=!debug] -10 8 -42 68 -20
+tp @s[team=!debugging] -10 8 -42 68 -20
 
 # 刷新物品
-clear @s[tag=!debug]
-execute as @s[tag=!debug] run function item:shop/refresh_gold
-execute as @s[tag=!debug] run function item:shop/refresh_green
+clear @s[team=!debugging]
+execute as @s[team=!debugging] run function item:shop/refresh_gold
+execute as @s[team=!debugging] run function item:shop/refresh_green
 
 # 默认进入待机状态
 function ltw:state/0/state/join_watch

+ 15 - 9
data/ltw/functions/state/0/start_game.mcfunction

@@ -1,22 +1,28 @@
-# 开始派对模式
+# 开始游戏
 
-# 设置旁观
-tag @a add watcher
-tag @a[tag=lobby_ready,sort=random,limit=8,tag=!debug] remove watcher
-tellraw @a[tag=debug] "你正处于 Debug 模式中, 将忽略游戏开始!"
+# 确认实际玩家
+tag @a remove selected_player
+tag @a[team=playing,sort=random,limit=8,team=!debugging] add selected_player
+
+# 通知队伍
+tellraw @a[team=playing,tag=!selected_player] ["",{"text": ">> ","color": "red","bold": true},{"text": "你没有被选中参与, 将旁观本局游戏!","color": "red"}]
+team join watching @a[team=playing,tag=!selected_player]
+tellraw @a[team=playing,tag=selected_player] ["",{"text": ">> ","color": "green","bold": true},{"text": "游戏开始!","color": "green"}]
+tellraw @a[team=watching] ["",{"text": ">> ","color": "green","bold": true},{"text": "游戏开始, 你将旁观本局游戏!","color": "green"}]
+tellraw @a[team=debugging] ["",{"text": ">> ","color": "blue","bold": true},{"text": "你正处于 Debug 模式中, 将忽略游戏开始!","color": "blue"}]
 
 # 设置数据
 scoreboard players reset * total_score
-scoreboard players set @a[tag=!watcher] total_score 0
+scoreboard players set @a[team=!watching] total_score 0
 scoreboard players reset * total_score_disp
-scoreboard players set @a[tag=!watcher] total_score_disp 0
+scoreboard players set @a[team=!watching] total_score_disp 0
 scoreboard players set $round mem 1
 scoreboard players add $ game_id 1
 scoreboard players operation @a game_id = $ game_id
 
 # 重置物品
-clear @a[tag=!watcher,tag=!debug]
-execute as @a[tag=!watcher,tag=!debug] at @s run function item:shop/refresh_equip
+clear @a[team=playing]
+execute as @a[team=playing] at @s run function item:shop/refresh_equip
 
 # 开始小游戏
 function lib:sounds/music/stop

+ 6 - 6
data/ltw/functions/state/0/state/check_slot.mcfunction

@@ -1,10 +1,10 @@
 # 第八格
-execute unless data entity @s[tag=lobby_watch] Inventory[{Slot:8b,tag:{lobby_item:1b,lobby_watch:1b}}] run function ltw:state/0/state/join_game
-execute if data entity @s[tag=lobby_watch] Inventory[{Slot:8b,tag:{lobby_item:1b,lobby_watch:1b}}] unless data entity @s[tag=lobby_watch] Inventory[{Count:1b,Slot:8b,tag:{lobby_item:1b,lobby_watch:1b}}] run function ltw:state/0/state/join_watch
-execute if data entity @s[tag=lobby_watch] Inventory[{tag:{lobby_item:1b,lobby_ready:1b}}] run clear @s lime_dye{lobby_item:1b,lobby_ready:1b} 
-execute unless data entity @s[tag=lobby_ready] Inventory[{Slot:8b,tag:{lobby_item:1b,lobby_ready:1b}}] run function ltw:state/0/state/join_watch
-execute if data entity @s[tag=lobby_ready] Inventory[{Slot:8b,tag:{lobby_item:1b,lobby_ready:1b}}] unless data entity @s[tag=lobby_ready] Inventory[{Count:1b,Slot:8b,tag:{lobby_item:1b,lobby_ready:1b}}] run function ltw:state/0/state/join_game
-execute if data entity @s[tag=lobby_ready] Inventory[{tag:{lobby_item:1b,lobby_watch:1b}}] run clear @s gray_dye{lobby_item:1b,lobby_watch:1b}
+execute unless data entity @s[team=watching] Inventory[{Slot:8b,tag:{lobby_item:1b,lobby_watch:1b}}] run function ltw:state/0/state/join_game
+execute if data entity @s[team=watching] Inventory[{Slot:8b,tag:{lobby_item:1b,lobby_watch:1b}}] unless data entity @s[team=watching] Inventory[{Count:1b,Slot:8b,tag:{lobby_item:1b,lobby_watch:1b}}] run function ltw:state/0/state/join_watch
+execute if data entity @s[team=watching] Inventory[{tag:{lobby_item:1b,lobby_ready:1b}}] run clear @s lime_dye{lobby_item:1b,lobby_ready:1b} 
+execute unless data entity @s[team=playing] Inventory[{Slot:8b,tag:{lobby_item:1b,lobby_ready:1b}}] run function ltw:state/0/state/join_watch
+execute if data entity @s[team=playing] Inventory[{Slot:8b,tag:{lobby_item:1b,lobby_ready:1b}}] unless data entity @s[team=playing] Inventory[{Count:1b,Slot:8b,tag:{lobby_item:1b,lobby_ready:1b}}] run function ltw:state/0/state/join_game
+execute if data entity @s[team=playing] Inventory[{tag:{lobby_item:1b,lobby_watch:1b}}] run clear @s gray_dye{lobby_item:1b,lobby_watch:1b}
 
 # 清除临时物品
 clear @s barrier{LockTempItem:1b}

+ 1 - 2
data/ltw/functions/state/0/state/join_game.mcfunction

@@ -7,5 +7,4 @@ replaceitem entity @s hotbar.8 lime_dye{lobby_item:1b,lobby_ready:1b,display:{Na
 execute at @s run function lib:sounds/hit
 
 # 处理数据
-tag @s remove lobby_watch
-tag @s add lobby_ready
+team join playing @s

+ 1 - 2
data/ltw/functions/state/0/state/join_watch.mcfunction

@@ -7,5 +7,4 @@ replaceitem entity @s hotbar.8 gray_dye{lobby_item:1b,lobby_watch:1b,display:{Na
 execute at @s run function lib:sounds/hit2
 
 # 处理数据
-tag @s remove lobby_ready
-tag @s add lobby_watch
+team join watching @s

+ 4 - 1
data/ltw/functions/state/0/state_enter.mcfunction

@@ -7,7 +7,7 @@ execute as @a run function ltw:state/0/player_enter
 
 # HUD
 scoreboard objectives setdisplay belowName green_total
-scoreboard objectives setdisplay sidebar green_total
+scoreboard objectives setdisplay sidebar
 scoreboard objectives setdisplay list green_total
 scoreboard players set $bossbar_type mem 0
 function lib:bossbar/show
@@ -18,6 +18,9 @@ team modify player friendlyFire false
 team modify player collisionRule never
 gamerule fallDamage false
 
+# 修改队伍颜色
+team modify playing color green
+
 # 加载老板
 function ltw:state/0/summon_entity
 

+ 3 - 3
data/ltw/functions/state/0/tick5.mcfunction

@@ -1,5 +1,5 @@
 # 让无状态玩家变为准备状态
-execute as @a[tag=!lobby_ready,tag=!lobby_watch] run function ltw:state/0/state/join_watch
+execute as @a[team=!debugging,team=!playing,team=!watching] run function ltw:state/0/state/join_watch
 
 # 给予进度
 execute as @a at @s if entity @s[x=-1,y=22,z=-29,dx=5,dy=3,dz=3] run advancement grant @s only ltw:parkour/explore1
@@ -15,7 +15,7 @@ execute as @e[type=piglin,tag=shop_piglin_11,tag=lobby_entity] at @s unless enti
 # ————————————————————————————————————————————————————————————————————————————
 
 # 检查已准备人数
-execute store result score $count mem if entity @a[tag=lobby_ready]
+execute store result score $count mem if entity @a[team=playing]
 execute store result score #total_count mem if entity @a
 
 # 开始:提示开始
@@ -34,7 +34,7 @@ scoreboard players operation #start_sec mem = #start_countdown mem
 scoreboard players operation #start_sec mem /= #const_4 mem
 
 # 20s:提示未准备
-execute if score #start_sec mem matches 20 run tellraw @a[tag=!lobby_ready] [{"text":"","color":"red"},{"text":">> ","bold": true},"你还没有准备, 如果要参加游戏, 请丢出快捷栏最后一格的物品!"]
+execute if score #start_sec mem matches 20 run tellraw @a[team=watching] [{"text":"","color":"red"},{"text":">> ","bold": true},"你还没有准备, 如果要参加游戏, 请丢出快捷栏最后一格的物品!"]
 
 # 10s:提示玩家数量过多
 execute if score #start_sec mem matches 10 if score $count mem matches 9.. run tellraw @a [{"text":"","color":"gold"},{"text":">> ","bold": true},"已超出游戏最多支持的 8 人人数上限, 将随机抽取 8 人开始游戏!"]

+ 2 - 2
data/ltw/functions/state/3/player_enter.mcfunction

@@ -12,11 +12,11 @@ execute if score $round mem matches 5 run title @s title {"text":"最终轮","co
 effect clear @s
 effect give @s saturation 1000000 0 true
 gamerule naturalRegeneration true
-effect give @s[tag=!debug] blindness 1000000 0 true
+effect give @s[team=!debugging] blindness 1000000 0 true
 
 # 音效
 execute at @s run function lib:sounds/levelup
 
 # 自由旁观
-gamemode spectator @s[tag=!debug]
+gamemode spectator @s[team=!debugging]
 spectate

+ 4 - 1
data/ltw/functions/state/3/state_enter.mcfunction

@@ -15,9 +15,12 @@ time set midnight
 # 初始化倒计时
 scoreboard players set $countdown mem 3
 
-# 禁用tempo_block
+# 禁用 tempo_block
 scoreboard players set $tempo_enable mem 0
 
+# 修改队伍颜色
+team modify playing color white
+
 # 小游戏编号
 # 优化下一次游戏的选择:生成一个 1~[最大游戏编号] 的 randomarray,每次从其中取下一个数。
 execute unless data storage ltw:mini types[0] run function ltw:state/3/newarray

+ 1 - 1
data/ltw/functions/state/3/tick2.mcfunction

@@ -1,3 +1,3 @@
 # 固定旁观
 execute as @a run spectate
-tp @a[tag=!debug] 0 10000 1000 0 0
+tp @a[team=!debugging] 0 10000 1000 0 0

+ 1 - 1
data/ltw/functions/state/4/player_enter.mcfunction

@@ -14,5 +14,5 @@ function mini:main/player_intro
 execute at @s run function lib:sounds/travel
 
 # 自由旁观
-gamemode spectator @s[tag=!debug]
+gamemode spectator @s[team=!debugging]
 spectate

+ 1 - 1
data/ltw/functions/state/6/generate_bonus.mcfunction

@@ -6,7 +6,7 @@ kill @e[type=arrow]
 kill @e[type=trident]
 
 # 生成 玩家数+2 个奖励
-execute store result score #bonus_count mem if entity @a[tag=!watcher]
+execute store result score #bonus_count mem if entity @a[team=!watching]
 scoreboard players add #bonus_count mem 2
 execute if score #bonus_count mem matches 1.. positioned 17.5 10.2 1967.5 run function item:bonus_item/gameparty/random
 execute if score #bonus_count mem matches 2.. positioned 19.5 10.2 1962.5 run function item:bonus_item/gameparty/random

+ 1 - 1
data/ltw/functions/state/6/player_enter.mcfunction

@@ -22,7 +22,7 @@ function mini:main/show_result
 execute at @s run function lib:sounds/levelup
 
 # 自由旁观
-gamemode spectator @s[tag=!debug]
+gamemode spectator @s[team=!debugging]
 spectate
 
 # 清理物品

+ 2 - 2
data/ltw/functions/state/6/tick2.mcfunction

@@ -2,5 +2,5 @@
 function mini:main/watcher_limit
 
 # 渐渐变暗
-execute as @a[tag=!debug] at @s positioned ~ ~1.5 ~ positioned ^ ^ ^1 run particle dust 0 0 0 1000 ~ ~ ~ 1 1 1 0 15 force @s
-execute if score $countdown mem matches ..2 as @a[tag=!debug] at @s positioned ~ ~1.5 ~ positioned ^ ^ ^1 run particle dust 0 0 0 1000 ~ ~ ~ 1 1 1 0 25 force @s
+execute as @a[team=!debugging] at @s positioned ~ ~1.5 ~ positioned ^ ^ ^1 run particle dust 0 0 0 1000 ~ ~ ~ 1 1 1 0 15 force @s
+execute if score $countdown mem matches ..2 as @a[team=!debugging] at @s positioned ~ ~1.5 ~ positioned ^ ^ ^1 run particle dust 0 0 0 1000 ~ ~ ~ 1 1 1 0 25 force @s

+ 1 - 1
data/ltw/functions/state/7/continue_gameparty.mcfunction

@@ -3,7 +3,7 @@ scoreboard players set $bossbar_type mem 0
 function lib:bossbar/show
 
 # 继续下一轮小游戏
-gamemode adventure @a[tag=!debug]
+gamemode adventure @a[team=!debugging]
 scoreboard players add $round mem 1
 schedule function ltw:state/3/state_enter 2t replace
 forceload remove 0 1900 50 2000

+ 6 - 6
data/ltw/functions/state/7/player_enter.mcfunction

@@ -10,14 +10,14 @@ gamerule naturalRegeneration true
 effect give @s resistance 1000000 4 true
 
 # 传送玩家
-tp @s[tag=!debug] 24.5 11.0 1967.5 112.5 25
+tp @s[team=!debugging] 24.5 11.0 1967.5 112.5 25
 execute at @s run function lib:sounds/travel
 
 # 清除 Tag
-tag @s[tag=watcher] remove mini_rank1
-tag @s[tag=watcher] remove mini_rank2
-tag @s[tag=watcher] remove mini_rank3
-tag @s[tag=watcher] remove mini_rank4
+tag @s[team=watching] remove mini_rank1
+tag @s[team=watching] remove mini_rank2
+tag @s[team=watching] remove mini_rank3
+tag @s[team=watching] remove mini_rank4
 tag @s[tag=rejoining] remove mini_rank1
 tag @s[tag=rejoining] remove mini_rank2
 tag @s[tag=rejoining] remove mini_rank3
@@ -25,5 +25,5 @@ tag @s[tag=rejoining] remove mini_rank4
 tag @s remove selecting
 
 # 自由旁观
-gamemode spectator @s[tag=!debug]
+gamemode spectator @s[team=!debugging]
 spectate

+ 1 - 1
data/ltw/functions/state/7/tick2.mcfunction

@@ -1,3 +1,3 @@
 # 观察者限制
 execute as @a[gamemode=spectator] run spectate
-execute as @a[gamemode=spectator] unless entity @s[x=12,y=9,z=1955,dx=24,dy=14,dz=24] run tp @s[tag=!debug] 24.5 12.0 1967.5
+execute as @a[gamemode=spectator] unless entity @s[x=12,y=9,z=1955,dx=24,dy=14,dz=24] run tp @s[team=!debugging] 24.5 12.0 1967.5

+ 1 - 1
data/mini/functions/colormatch/game/start_new_round.mcfunction

@@ -27,7 +27,7 @@ function lib:bossbar/show
 bossbar set mini:red name "地板消失"
 
 # 给予进度
-execute if score $color_match_time mem matches 10 as @a[tag=!debug,gamemode=adventure] run advancement grant @s only ltw:parkour/colormatch1
+execute if score $color_match_time mem matches 10 as @a[team=!debugging,gamemode=adventure] run advancement grant @s only ltw:parkour/colormatch1
 
 # 更新地板方块
 scoreboard players operation $color_match_current mem = $color_match_floor mem

+ 4 - 4
data/mini/functions/colormatch/player_enter.mcfunction

@@ -11,15 +11,15 @@ effect give @s night_vision 1000000 0 true
 effect give @s resistance 1000000 4 true
 
 # 设置玩家生命
-scoreboard players set @s[tag=!watcher,tag=!rejoining] mini_heart 3
+scoreboard players set @s[team=!watching,tag=!rejoining] mini_heart 3
 function mini:main/player_max_health
 
 # 传送玩家
-tp @s[tag=!watcher,tag=!rejoining,tag=!debug] 1062 16.5 4012
+tp @s[team=playing,tag=!rejoining] 1062 16.5 4012
 
 # 调整模式
-gamemode spectator @s[tag=!debug]
-gamemode adventure @s[tag=!watcher,tag=!rejoining,tag=!debug]
+gamemode spectator @s[team=!debugging]
+gamemode adventure @s[team=playing,tag=!rejoining]
 
 # 重新加入处理
 execute if entity @s[tag=rejoining] run function mini:main/player_failed

+ 1 - 1
data/mini/functions/colormatch/player_intro.mcfunction

@@ -1,5 +1,5 @@
 # 向单个玩家展示小游戏介绍
-tp @s[tag=!debug] 1062.78 22.00 4019.40 178.41 40.03
+tp @s[team=!debugging] 1062.78 22.00 4019.40 178.41 40.03
 tellraw @s ["",{"text":"\n >> 色彩迷阵 >>\n\n","color":"gold","bold":true}," 倒计时结束时地板会消失, 只有站在与墙壁显示的方块相同的地板上才能存活!\n"]
 tellraw @s ["",{"text": " <生命淘汰制> ","color":"red","bold": true}, {"text":"你有 3 条生命, 生命耗尽后即被淘汰。","color":"gray"}]
 tellraw @s ["",{"text": " <PVP 干扰> ","color":"light_purple","bold": true}, {"text":"攻击其他玩家可以造成击退, 但没有伤害。","color":"gray"}]

+ 1 - 1
data/mini/functions/colormatch/watcher_limit.mcfunction

@@ -1,3 +1,3 @@
 # 观察者限定范围
 execute as @a[gamemode=spectator] unless entity @s[x=1049,y=10,z=3999,dx=26,dy=30,dz=26] run spectate
-execute as @a[gamemode=spectator] unless entity @s[x=1049,y=10,z=3999,dx=26,dy=30,dz=26] run tp @s[tag=!debug] 1062 22 4012
+execute as @a[gamemode=spectator] unless entity @s[x=1049,y=10,z=3999,dx=26,dy=30,dz=26] run tp @s[team=!debugging] 1062 22 4012

+ 6 - 6
data/mini/functions/hotpm/player_enter.mcfunction

@@ -11,7 +11,7 @@ effect give @s night_vision 1000000 0 true
 effect give @s resistance 1000000 4 true
 
 # 设置玩家生命
-scoreboard players set @s[tag=!watcher,tag=!rejoining] mini_heart 3
+scoreboard players set @s[team=!watching,tag=!rejoining] mini_heart 3
 function mini:main/player_max_health
 
 # 清理 Tag
@@ -22,14 +22,14 @@ tag @s remove pm_explode_last
 
 
 # 传送玩家
-tp @s[tag=!watcher,tag=!rejoining,tag=!debug] 1023 25 3021
-# spreadplayers 1023 3021 5 5 false @s[tag=!watcher,tag=!rejoining,tag=!debug]
+tp @s[team=!watching,tag=!rejoining,team=!debugging] 1023 25 3021
+# spreadplayers 1023 3021 5 5 false @s[team=!watching,tag=!rejoining,team=!debugging]
 # schedule function mini:hotpm/player_enter2 1t replace
-# execute as @a[tag=!watcher,tag=!rejoining,tag=!debug] at @s run tp @s ~ 25 ~
+# execute as @a[team=!watching,tag=!rejoining,team=!debugging] at @s run tp @s ~ 25 ~
 
 # 调整模式
-gamemode spectator @s[tag=!debug]
-gamemode adventure @s[tag=!watcher,tag=!rejoining,tag=!debug]
+gamemode spectator @s[team=!debugging]
+gamemode adventure @s[team=!watching,tag=!rejoining,team=!debugging]
 
 # 重新加入处理
 execute if entity @s[tag=rejoining] run function mini:main/player_failed

+ 1 - 1
data/mini/functions/hotpm/player_intro.mcfunction

@@ -1,5 +1,5 @@
 # 向单个玩家展示小游戏介绍
-tp @s[tag=!debug] 1022 25 3038 180 20
+tp @s[team=!debugging] 1022 25 3038 180 20
 tellraw @s ["",{"text":"\n >> 炸弹狂魔 >>\n\n","color":"gold","bold":true}, " 在炸弹爆炸前攻击他人, 将炸弹扔到其他人身上!\n"]
 tellraw @s ["",{"text": " <生命淘汰制> ","color":"red","bold": true}, {"text":"你有 3 条生命, 生命耗尽后即被淘汰。","color":"gray"}]
 tellraw @s ["",{"text": " <PVP> ","color":"light_purple","bold": true}, {"text":"攻击其他玩家可以转移炸弹, 远程伤害同样有效。","color":"gray"}]

+ 1 - 1
data/mini/functions/hotpm/watcher_limit.mcfunction

@@ -1,3 +1,3 @@
 # 观察者限制飞行范围
 execute as @a[gamemode=spectator,x=1022,y=27,z=3022,distance=21..] run spectate
-tp @a[gamemode=spectator,x=1022,y=27,z=3022,distance=21..,tag=!debug] 1022 29 3038 180 0
+tp @a[gamemode=spectator,x=1022,y=27,z=3022,distance=21..,team=!debugging] 1022 29 3038 180 0

+ 4 - 4
data/mini/functions/main/game_end.mcfunction

@@ -12,18 +12,18 @@ tag @a remove mini_rank3
 tag @a remove mini_rank4
 # 1
 function mini:main/get_max_score
-execute as @a if score @s mini_score = #score_max mem run tag @s[tag=!watcher] add mini_rank1
+execute as @a if score @s mini_score = #score_max mem run tag @s[team=!watching] add mini_rank1
 tag @a[tag=mini_rank1] add max_uncounted
 # 2
 function mini:main/get_max_score
-execute as @a[tag=!max_uncounted] if score @s mini_score = #score_max mem run tag @s[tag=!watcher] add mini_rank2
+execute as @a[tag=!max_uncounted] if score @s mini_score = #score_max mem run tag @s[team=!watching] add mini_rank2
 tag @a[tag=mini_rank2] add max_uncounted
 # 3
 function mini:main/get_max_score
-execute as @a[tag=!max_uncounted] if score @s mini_score = #score_max mem run tag @s[tag=!watcher] add mini_rank3
+execute as @a[tag=!max_uncounted] if score @s mini_score = #score_max mem run tag @s[team=!watching] add mini_rank3
 tag @a[tag=max_uncounted] remove max_uncounted
 # 4
-tag @a[tag=!mini_rank1,tag=!mini_rank2,tag=!mini_rank3,tag=!watcher] add mini_rank4
+tag @a[tag=!mini_rank1,tag=!mini_rank2,tag=!mini_rank3,team=!watching] add mini_rank4
 
 # 给予进度
 execute if score $mini_type mem matches 2 run advancement grant @a[tag=mini_rank1] only ltw:parkour/tnt1

+ 2 - 2
data/mini/functions/main/get_max_score.mcfunction

@@ -1,5 +1,5 @@
 #> mini:main/get_max_score
-# @input score @a[tag=!max_uncounted,tag=!watcher] mini_score 进行统计的分数
+# @input score @a[tag=!max_uncounted,team=!watching] mini_score 进行统计的分数
 # @output score #score_max mem 最高分
 scoreboard players set #score_max mem -2147483648
-scoreboard players operation #score_max mem > @a[tag=!max_uncounted,tag=!watcher] mini_score
+scoreboard players operation #score_max mem > @a[tag=!max_uncounted,team=!watching] mini_score

+ 2 - 2
data/mini/functions/main/get_max_temp.mcfunction

@@ -1,6 +1,6 @@
 #> mini:main/get_max_temp
-# @input score @a[tag=!max_uncounted,tag=!watcher] temp 进行统计的分数
+# @input score @a[tag=!max_uncounted,team=!watching] temp 进行统计的分数
 # @output score #score_max mem 最高分
 
 scoreboard players set #score_max mem -2147483648
-scoreboard players operation #score_max mem > @a[tag=!max_uncounted,tag=!watcher] temp
+scoreboard players operation #score_max mem > @a[tag=!max_uncounted,team=!watching] temp

+ 2 - 2
data/mini/functions/main/player_enter.mcfunction

@@ -1,10 +1,10 @@
 # 单个玩家开始小游戏时执行
 
 tag @s remove mini_running
-tag @s[tag=!rejoining,tag=!watcher] add mini_running
+tag @s[tag=!rejoining,team=!watching] add mini_running
 scoreboard players set @s mini_score 0
 scoreboard players set @s[tag=rejoining] mini_score -1000
-scoreboard players set @s[tag=watcher] mini_score -1000000
+scoreboard players set @s[team=watching] mini_score -1000000
 function mini:main/update_player_count
 
 clear @s #mini:game_item{game_item:1b}

+ 8 - 8
data/mini/functions/main/show_result.mcfunction

@@ -5,11 +5,11 @@ execute if entity @a[tag=mini_rank2] unless entity @a[tag=mini_rank3] run tellra
 execute unless entity @a[tag=mini_rank2] run tellraw @s [{"text":"\n >> 小游戏结束 >>\n\n","color":"gold","bold":true},{"text": " 第一名 - ","color":"green","bold": false},{"selector": "@a[tag=mini_rank1]","color":"white","bold": false},"\n"]
 
 # 记分
-# scoreboard players add @s[tag=mini_rank1,tag=!watcher] total_score 3
-# scoreboard players add @s[tag=mini_rank1,tag=!watcher] total_score_disp 3
-# scoreboard players add @s[tag=mini_rank2,tag=!watcher] total_score 2
-# scoreboard players add @s[tag=mini_rank2,tag=!watcher] total_score_disp 2
-# scoreboard players add @s[tag=mini_rank3,tag=!watcher] total_score 1
-# scoreboard players add @s[tag=mini_rank3,tag=!watcher] total_score_disp 1
-# scoreboard players add @s[tag=mini_rank4,tag=!watcher] total_score 0
-# scoreboard players add @s[tag=mini_rank4,tag=!watcher] total_score_disp 0
+# scoreboard players add @s[tag=mini_rank1,team=!watching] total_score 3
+# scoreboard players add @s[tag=mini_rank1,team=!watching] total_score_disp 3
+# scoreboard players add @s[tag=mini_rank2,team=!watching] total_score 2
+# scoreboard players add @s[tag=mini_rank2,team=!watching] total_score_disp 2
+# scoreboard players add @s[tag=mini_rank3,team=!watching] total_score 1
+# scoreboard players add @s[tag=mini_rank3,team=!watching] total_score_disp 1
+# scoreboard players add @s[tag=mini_rank4,team=!watching] total_score 0
+# scoreboard players add @s[tag=mini_rank4,team=!watching] total_score_disp 0

+ 2 - 2
data/mini/functions/main/update_player_count.mcfunction

@@ -1,6 +1,6 @@
 # 更新存活与结束的玩家数量
 
 scoreboard players set $player_alive mem 0
-execute as @a[tag=mini_running,tag=!watcher,scores={mini_score=-10..}] run scoreboard players add $player_alive mem 1
+execute as @a[tag=mini_running,team=!watching,scores={mini_score=-10..}] run scoreboard players add $player_alive mem 1
 scoreboard players set $player_finish mem 0
-execute as @a[tag=!mini_running,tag=!watcher,scores={mini_score=-10..}] run scoreboard players add $player_finish mem 1
+execute as @a[tag=!mini_running,team=!watching,scores={mini_score=-10..}] run scoreboard players add $player_finish mem 1

+ 30 - 30
data/mini/functions/parkour/game/test_treasure.mcfunction

@@ -1,44 +1,44 @@
 tag @a remove get_treasure
 
-execute positioned 1009.50 14.50 1007.50 as @a[tag=!treasure1,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure1] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "营地屋顶","color":"gold"}," 的宝藏!"]
-execute positioned 1009.50 14.50 1007.50 as @a[tag=!treasure1,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1009.50 14.50 1007.50 as @a[tag=!treasure1,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure1
+execute positioned 1009.50 14.50 1007.50 as @a[tag=!treasure1,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure1] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "营地屋顶","color":"gold"}," 的宝藏!"]
+execute positioned 1009.50 14.50 1007.50 as @a[tag=!treasure1,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1009.50 14.50 1007.50 as @a[tag=!treasure1,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure1
 
-execute positioned 1020.50 15.50 1016.50 as @a[tag=!treasure2,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure2] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "沙漠骨骸","color":"gold"}," 的宝藏!"]
-execute positioned 1020.50 15.50 1016.50 as @a[tag=!treasure2,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1020.50 15.50 1016.50 as @a[tag=!treasure2,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure2
+execute positioned 1020.50 15.50 1016.50 as @a[tag=!treasure2,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure2] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "沙漠骨骸","color":"gold"}," 的宝藏!"]
+execute positioned 1020.50 15.50 1016.50 as @a[tag=!treasure2,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1020.50 15.50 1016.50 as @a[tag=!treasure2,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure2
 
-execute positioned 1008.50 30.50 1020.50 as @a[tag=!treasure3,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure3] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "神庙立柱","color":"gold"}," 的宝藏!"]
-execute positioned 1008.50 30.50 1020.50 as @a[tag=!treasure3,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1008.50 30.50 1020.50 as @a[tag=!treasure3,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure3
+execute positioned 1008.50 30.50 1020.50 as @a[tag=!treasure3,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure3] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "神庙立柱","color":"gold"}," 的宝藏!"]
+execute positioned 1008.50 30.50 1020.50 as @a[tag=!treasure3,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1008.50 30.50 1020.50 as @a[tag=!treasure3,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure3
 
-execute positioned 1011.50 19.50 1058.50 as @a[tag=!treasure4,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure4] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "下界之门","color":"gold"}," 的宝藏!"]
-execute positioned 1011.50 19.50 1058.50 as @a[tag=!treasure4,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1011.50 19.50 1058.50 as @a[tag=!treasure4,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure4
+execute positioned 1011.50 19.50 1058.50 as @a[tag=!treasure4,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure4] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "下界之门","color":"gold"}," 的宝藏!"]
+execute positioned 1011.50 19.50 1058.50 as @a[tag=!treasure4,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1011.50 19.50 1058.50 as @a[tag=!treasure4,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure4
 
-execute positioned 1026.50 18.50 1047.00 as @a[tag=!treasure5,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure5] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "落日森林","color":"gold"}," 的宝藏!"]
-execute positioned 1026.50 18.50 1047.00 as @a[tag=!treasure5,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1026.50 18.50 1047.00 as @a[tag=!treasure5,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure5
+execute positioned 1026.50 18.50 1047.00 as @a[tag=!treasure5,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure5] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "落日森林","color":"gold"}," 的宝藏!"]
+execute positioned 1026.50 18.50 1047.00 as @a[tag=!treasure5,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1026.50 18.50 1047.00 as @a[tag=!treasure5,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure5
 
-execute positioned 1004.50 18.50 1043.50 as @a[tag=!treasure6,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure6] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "地狱之顶","color":"gold"}," 的宝藏!"]
-execute positioned 1004.50 18.50 1043.50 as @a[tag=!treasure6,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1004.50 18.50 1043.50 as @a[tag=!treasure6,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure6
+execute positioned 1004.50 18.50 1043.50 as @a[tag=!treasure6,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure6] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "地狱之顶","color":"gold"}," 的宝藏!"]
+execute positioned 1004.50 18.50 1043.50 as @a[tag=!treasure6,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1004.50 18.50 1043.50 as @a[tag=!treasure6,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure6
 
-execute positioned 1013.00 08.50 1041.00 as @a[tag=!treasure7,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure7] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "节奏舞厅","color":"gold"}," 的宝藏!"]
-execute positioned 1013.00 08.50 1041.00 as @a[tag=!treasure7,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1013.00 08.50 1041.00 as @a[tag=!treasure7,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure7
+execute positioned 1013.00 08.50 1041.00 as @a[tag=!treasure7,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure7] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "节奏舞厅","color":"gold"}," 的宝藏!"]
+execute positioned 1013.00 08.50 1041.00 as @a[tag=!treasure7,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1013.00 08.50 1041.00 as @a[tag=!treasure7,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure7
 
-execute positioned 1007.50 13.50 1025.50 as @a[tag=!treasure8,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure8] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "末路营火","color":"gold"}," 的宝藏!"]
-execute positioned 1007.50 13.50 1025.50 as @a[tag=!treasure8,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1007.50 13.50 1025.50 as @a[tag=!treasure8,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure8
+execute positioned 1007.50 13.50 1025.50 as @a[tag=!treasure8,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure8] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "末路营火","color":"gold"}," 的宝藏!"]
+execute positioned 1007.50 13.50 1025.50 as @a[tag=!treasure8,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1007.50 13.50 1025.50 as @a[tag=!treasure8,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure8
 
-execute positioned 1024.50 29.50 1038.50 as @a[tag=!treasure9,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure9] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "活塞平台","color":"gold"}," 的宝藏!"]
-execute positioned 1024.50 29.50 1038.50 as @a[tag=!treasure9,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1024.50 29.50 1038.50 as @a[tag=!treasure9,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure9
+execute positioned 1024.50 29.50 1038.50 as @a[tag=!treasure9,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure9] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "活塞平台","color":"gold"}," 的宝藏!"]
+execute positioned 1024.50 29.50 1038.50 as @a[tag=!treasure9,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1024.50 29.50 1038.50 as @a[tag=!treasure9,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure9
 
-execute positioned 1014.50 19.50 1024.50 as @a[tag=!treasure10,gamemode=!spectator,tag=!debug,distance=..2] unless entity @a[tag=treasure10] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "沙漠密室","color":"gold"}," 的宝藏!"]
-execute positioned 1014.50 19.50 1024.50 as @a[tag=!treasure10,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add get_treasure
-execute positioned 1014.50 19.50 1024.50 as @a[tag=!treasure10,gamemode=!spectator,tag=!debug,distance=..2] run tag @s add treasure10
+execute positioned 1014.50 19.50 1024.50 as @a[tag=!treasure10,gamemode=!spectator,team=!debugging,distance=..2] unless entity @a[tag=treasure10] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"} , " 第一个获得了 ",{"text": "沙漠密室","color":"gold"}," 的宝藏!"]
+execute positioned 1014.50 19.50 1024.50 as @a[tag=!treasure10,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add get_treasure
+execute positioned 1014.50 19.50 1024.50 as @a[tag=!treasure10,gamemode=!spectator,team=!debugging,distance=..2] run tag @s add treasure10
 
 scoreboard players add @a[tag=get_treasure] treasure 1
 tellraw @a[tag=get_treasure,scores={treasure=..9}] ["",{"text":">> ","color":"green","bold": true},"你已获得 ",{"score": {"objective": "treasure","name": "*"},"color":"green"},{"text": " 份 ","color":"green"},"宝藏!"]

+ 1 - 1
data/mini/functions/parkour/game_end.mcfunction

@@ -5,4 +5,4 @@ forceload remove 1000 1000 1064 1064
 scoreboard players set $tempo_enable mem 0
 
 # 计算得分
-execute as @a[tag=!watcher,tag=!debug] run scoreboard players operation @s mini_score += @s treasure
+execute as @a[team=playing] run scoreboard players operation @s mini_score += @s treasure

+ 6 - 6
data/mini/functions/parkour/player_enter.mcfunction

@@ -14,7 +14,7 @@ attribute @s generic.max_health base set 20
 
 # 计分板重置
 scoreboard players reset @s treasure
-scoreboard players set @s[tag=!watcher,tag=!rejoining,tag=!debug] treasure 0
+scoreboard players set @s[team=!watching,tag=!rejoining,team=!debugging] treasure 0
 tag @s remove treasure1
 tag @s remove treasure2
 tag @s remove treasure3
@@ -27,13 +27,13 @@ tag @s remove treasure9
 tag @s remove treasure10
 
 # 传送玩家
-spreadplayers 1018 1007 4 6 under 9 false @s[tag=!watcher,tag=!rejoining,tag=!debug]
-# tp @s[tag=!watcher,tag=!rejoining,tag=!debug] 1010.07 7.50 1006.98 -1518.69 -10.62
+spreadplayers 1018 1007 4 6 under 9 false @s[team=!watching,tag=!rejoining,team=!debugging]
+# tp @s[team=!watching,tag=!rejoining,team=!debugging] 1010.07 7.50 1006.98 -1518.69 -10.62
 
 # 调整模式
-gamemode spectator @s[tag=!debug]
-gamemode adventure @s[tag=!watcher,tag=!rejoining,tag=!debug]
+gamemode spectator @s[team=!debugging]
+gamemode adventure @s[team=!watching,tag=!rejoining,team=!debugging]
 
 # 修改 Tag
 tag @s add parkour_portal
-tag @s[tag=!watcher,tag=!rejoining] remove parkour_portal
+tag @s[team=!watching,tag=!rejoining] remove parkour_portal

+ 1 - 1
data/mini/functions/parkour/player_intro.mcfunction

@@ -1,5 +1,5 @@
 # 向单个玩家展示小游戏介绍
-tp @s[tag=!debug] 1010.96 26.83 1032.37 -385.24 16.67
+tp @s[team=!debugging] 1010.96 26.83 1032.37 -385.24 16.67
 tellraw @s ["",{"text":"\n >> 遗迹寻宝 >>\n\n","color":"gold","bold":true}," 遗迹中共有十处宝藏, 赶在遗迹关闭前尽量收集吧!\n"]
 tellraw @s ["",{"text": " <积分制> ","color":"red","bold": true}, {"text":"根据寻得的宝藏数量进行排名。","color":"gray"}]
 tellraw @s ["",{"text": " <和平环境> ","color":"light_purple","bold": true}, {"text":"无法攻击其他玩家。","color":"gray"}]

+ 1 - 1
data/mini/functions/parkour/watcher_limit.mcfunction

@@ -1,3 +1,3 @@
 # 观察者限制飞行范围
 execute as @a[gamemode=spectator] unless entity @s[x=1001,y=7,z=1001,dx=30,dy=30,dz=62] run spectate
-execute as @a[gamemode=spectator] unless entity @s[x=1001,y=7,z=1001,dx=30,dy=30,dz=62] run tp @s[tag=!debug] 1027.56 18.03 1046.89 13.48 4.84
+execute as @a[gamemode=spectator] unless entity @s[x=1001,y=7,z=1001,dx=30,dy=30,dz=62] run tp @s[team=!debugging] 1027.56 18.03 1046.89 13.48 4.84

+ 1 - 1
data/mini/functions/phantom/game_end.mcfunction

@@ -3,7 +3,7 @@ forceload remove 1000 6000 1064 6064
 gamerule doDaylightCycle false
 
 # 计算得分
-execute as @a[tag=!watcher,tag=!debug] run scoreboard players operation @s mini_score = @s kill_phantom
+execute as @a[team=playing] run scoreboard players operation @s mini_score = @s kill_phantom
 
 # 清理锁定格子
 execute as @a run function item:disable_slot/disable_slot_7

+ 5 - 5
data/mini/functions/phantom/player_enter.mcfunction

@@ -15,17 +15,17 @@ attribute @s generic.max_health base set 20
 # 计分板重置
 scoreboard players reset @s kill_phantom
 scoreboard players reset @s kill_phantom2
-scoreboard players set @s[tag=!watcher,tag=!rejoining,tag=!debug] kill_phantom 0
-scoreboard players set @s[tag=!watcher,tag=!rejoining,tag=!debug] kill_phantom2 0
+scoreboard players set @s[team=!watching,tag=!rejoining,team=!debugging] kill_phantom 0
+scoreboard players set @s[team=!watching,tag=!rejoining,team=!debugging] kill_phantom2 0
 scoreboard players reset @s use_trident
 scoreboard players reset @s countdown
 
 # 传送玩家
-tp @s[tag=!watcher,tag=!debug] 1030.5 24.5 6031.5
+tp @s[team=playing] 1030.5 24.5 6031.5
 
 # 调整模式
-gamemode spectator @s[tag=!debug]
-gamemode adventure @s[tag=!watcher,tag=!rejoining,tag=!debug]
+gamemode spectator @s[team=!debugging]
+gamemode adventure @s[team=!watching,tag=!rejoining,team=!debugging]
 
 # 重新加入处理
 execute if entity @s[tag=rejoining] run gamemode spectator

+ 1 - 1
data/mini/functions/phantom/player_failed.mcfunction

@@ -2,7 +2,7 @@
 
 tag @s remove mini_running
 gamemode spectator
-tp @s[tag=!debug] 1062.34 27.11 6040.84 461.44 28.30
+tp @s[team=!debugging] 1062.34 27.11 6040.84 461.44 28.30
 tellraw @a ["",{"text": ">> ","color":"red","bold": true},{"selector": "@s","color":"red"}," 已死亡!"]
 execute as @a at @s run function lib:sounds/error
 execute unless entity @a[tag=mini_running] run function mini:main/game_end

+ 1 - 1
data/mini/functions/phantom/player_intro.mcfunction

@@ -1,5 +1,5 @@
 # 向单个玩家展示小游戏介绍
-tp @s[tag=!debug] 1062.34 27.11 6040.84 461.44 28.30
+tp @s[team=!debugging] 1062.34 27.11 6040.84 461.44 28.30
 tellraw @s ["",{"text":"\n >> 月夜狩猎 >>\n\n","color":"gold","bold":true}," 在太阳升起之前, 用三叉戟尽量击杀幻翼吧!\n 同时也别被幻翼杀死了……你可以在两翼的洞穴中恢复生命值!\n"]
 tellraw @s ["",{"text": " <积分制> ","color":"red","bold": true}, {"text":"太阳升起时游戏即会结束, 然后根据击杀数决定排名。","color":"gray"}]
 tellraw @s ["",{"text": " <PVE> ","color":"light_purple","bold": true}, {"text":"无法攻击其他玩家, 但可以杀死幻翼。","color":"gray"}]

+ 11 - 11
data/mini/functions/phantom/tick5.mcfunction

@@ -1,15 +1,15 @@
 
 # 击杀音效与提示
-execute as @a[tag=!watcher] run scoreboard players operation @s temp = @s kill_phantom
-execute as @a[tag=!watcher] run scoreboard players operation @s temp -= @s kill_phantom2
-execute as @a[tag=!watcher] run scoreboard players operation @s kill_phantom2 = @s kill_phantom
-execute as @a[tag=!watcher] run scoreboard players operation @s kill_phantom2 %= #const_5 mem
-execute as @a[tag=!watcher,scores={temp=1..,kill_phantom2=1..}] run function lib:sounds/hit
-execute as @a[tag=!watcher,scores={temp=1..,kill_phantom2=0}] run function lib:sounds/levelup
-execute as @a[tag=!watcher,scores={temp=1..,kill_phantom2=0}] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"}," 已击杀 ",{"score": { "name": "@s","objective": "kill_phantom"},"color":"gold"}," 只幻翼!"]
-execute as @a[tag=!watcher] run scoreboard players operation @s kill_phantom2 = @s kill_phantom
+execute as @a[team=!watching] run scoreboard players operation @s temp = @s kill_phantom
+execute as @a[team=!watching] run scoreboard players operation @s temp -= @s kill_phantom2
+execute as @a[team=!watching] run scoreboard players operation @s kill_phantom2 = @s kill_phantom
+execute as @a[team=!watching] run scoreboard players operation @s kill_phantom2 %= #const_5 mem
+execute as @a[team=!watching,scores={temp=1..,kill_phantom2=1..}] run function lib:sounds/hit
+execute as @a[team=!watching,scores={temp=1..,kill_phantom2=0}] run function lib:sounds/levelup
+execute as @a[team=!watching,scores={temp=1..,kill_phantom2=0}] run tellraw @a ["",{"text": ">> ","color":"gold","bold": true},{"selector": "@s","color":"gold"}," 已击杀 ",{"score": { "name": "@s","objective": "kill_phantom"},"color":"gold"}," 只幻翼!"]
+execute as @a[team=!watching] run scoreboard players operation @s kill_phantom2 = @s kill_phantom
 
 # 给予进度
-execute as @a[tag=!watcher,scores={temp=1..,kill_phantom=8}] run advancement grant @s only ltw:combat/phantom1
-execute as @a[tag=!watcher,scores={temp=1..,kill_phantom=16}] run advancement grant @s only ltw:combat/phantom2
-execute as @a[tag=!watcher,scores={temp=1..,kill_phantom=24}] run advancement grant @s only ltw:combat/phantom3
+execute as @a[team=!watching,scores={temp=1..,kill_phantom=8}] run advancement grant @s only ltw:combat/phantom1
+execute as @a[team=!watching,scores={temp=1..,kill_phantom=16}] run advancement grant @s only ltw:combat/phantom2
+execute as @a[team=!watching,scores={temp=1..,kill_phantom=24}] run advancement grant @s only ltw:combat/phantom3

+ 1 - 1
data/mini/functions/phantom/watcher_limit.mcfunction

@@ -1,3 +1,3 @@
 # 观察者限制飞行范围
 execute as @a[gamemode=spectator] if entity @s[x=1000,y=30,z=6000,distance=100..] run spectate
-execute as @a[gamemode=spectator] if entity @s[x=1000,y=30,z=6000,distance=100..] run tp @s[tag=!debug] 1062.34 27.11 6040.84 461.44 28.30
+execute as @a[gamemode=spectator] if entity @s[x=1000,y=30,z=6000,distance=100..] run tp @s[team=!debugging] 1062.34 27.11 6040.84 461.44 28.30

+ 3 - 3
data/mini/functions/tntrun/player_enter.mcfunction

@@ -13,7 +13,7 @@ effect give @s resistance 1000000 4 true
 attribute @s generic.max_health base set 20
 
 # 传送玩家
-spreadplayers 1019.5 2020.5 2 2 false @s[tag=!watcher,tag=!rejoining,tag=!debug]
+spreadplayers 1019.5 2020.5 2 2 false @s[team=!watching,tag=!rejoining,team=!debugging]
 # schedule: tp @a ~ ~-3 ~
 
 # 两秒后才开始 TNT 掉落
@@ -21,8 +21,8 @@ tag @s remove tntrun_pc
 # schedule: tag @a add tntrun_pc
 
 # 调整模式
-gamemode spectator @s[tag=!debug]
-gamemode adventure @s[tag=!watcher,tag=!rejoining,tag=!debug]
+gamemode spectator @s[team=!debugging]
+gamemode adventure @s[team=!watching,tag=!rejoining,team=!debugging]
 
 # 重新加入处理
 execute if entity @s[tag=rejoining] run function mini:tntrun/player_failed

+ 1 - 1
data/mini/functions/tntrun/player_enter2.mcfunction

@@ -1,2 +1,2 @@
 # spreadplayer 后不能立即传送,所以延迟 1tick
-execute as @a[tag=!watcher,tag=!rejoining] at @s run tp @s[tag=!debug] ~ 34.5 ~
+execute as @a[team=!watching,tag=!rejoining] at @s run tp @s[team=!debugging] ~ 34.5 ~

+ 1 - 1
data/mini/functions/tntrun/player_intro.mcfunction

@@ -1,5 +1,5 @@
 # 向单个玩家展示小游戏介绍
-tp @s[tag=!debug] 1023.65 20.29 2006.59 -345.99 17.34
+tp @s[team=!debugging] 1023.65 20.29 2006.59 -345.99 17.34
 tellraw @s ["",{"text":"\n >> 地陷圣坛 >>\n\n","color":"gold","bold":true}," 你脚下的方块会不断塌陷! 保持移动, 千万不要停下来啊!\n"]
 tellraw @s ["",{"text": " <淘汰制> ","color":"red","bold": true}, {"text":"圣坛一共有四层, 掉到最下面即被淘汰。","color":"gray"}]
 tellraw @s ["",{"text": " <PVP 干扰> ","color":"light_purple","bold": true}, {"text":"攻击其他玩家可以造成击退, 但没有伤害。","color":"gray"}]

+ 1 - 1
data/mini/functions/tntrun/watcher_limit.mcfunction

@@ -1,3 +1,3 @@
 # 观察者限制飞行范围
 execute as @a[gamemode=spectator] unless entity @s[x=1001,y=10,z=2001,dx=37,dy=37,dz=37] run spectate
-execute as @a[gamemode=spectator] unless entity @s[x=1001,y=10,z=2001,dx=37,dy=37,dz=37] run tp @s[tag=!debug] 1023.65 20.29 2006.59 -345.99 17.34
+execute as @a[gamemode=spectator] unless entity @s[x=1001,y=10,z=2001,dx=37,dy=37,dz=37] run tp @s[team=!debugging] 1023.65 20.29 2006.59 -345.99 17.34

+ 1 - 3
data/test/functions/mini/colormatch.mcfunction

@@ -1,7 +1,5 @@
 # 测试用:快速开始 Color Match
-tag @a add lobby_ready
-tag @a remove lobby_watch
-tag @a remove watcher
+team join playing @a
 function ltw:state/0/start_gameparty
 scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 4

+ 1 - 3
data/test/functions/mini/hotpm.mcfunction

@@ -1,7 +1,5 @@
 # 测试用:快速开始 Hot Potato
-tag @a add lobby_ready
-tag @a remove lobby_watch
-tag @a remove watcher
+team join playing @a
 function ltw:state/0/start_gameparty
 scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 3

+ 1 - 3
data/test/functions/mini/parkour.mcfunction

@@ -1,7 +1,5 @@
 # 测试用:快速开始跑酷
-tag @a add lobby_ready
-tag @a remove lobby_watch
-tag @a remove watcher
+team join playing @a
 function ltw:state/0/start_gameparty
 scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 1

+ 1 - 3
data/test/functions/mini/phantom.mcfunction

@@ -1,7 +1,5 @@
 # 测试用:快速开始幻翼
-tag @a add lobby_ready
-tag @a remove lobby_watch
-tag @a remove watcher
+team join playing @a
 function ltw:state/0/start_gameparty
 scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 5

+ 1 - 3
data/test/functions/mini/tntrun.mcfunction

@@ -1,7 +1,5 @@
 # 测试用:快速开始 TNT Run
-tag @a add lobby_ready
-tag @a remove lobby_watch
-tag @a remove watcher
+team join playing @a
 function ltw:state/0/start_gameparty
 scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 2