Просмотр исходного кода

Merge branch 'master' of github.com:LTCatt/LTW3

HerobrineXia 5 лет назад
Родитель
Сommit
8ca9386485
45 измененных файлов с 218 добавлено и 171 удалено
  1. 0 0
      data/item/functions/bonus_item/gameparty/auto/random.mcfunction
  2. 11 12
      data/item/functions/bonus_item/gameparty/mixed/random.mcfunction
  3. 8 9
      data/item/functions/bonus_item/gameparty/score/random.mcfunction
  4. 4 0
      data/item/functions/bonus_item/new_array.mcfunction
  5. 6 5
      data/item/functions/bonus_item/stole_score.mcfunction
  6. 1 1
      data/item/loot_tables/gameparty/item/blue.json
  7. 3 3
      data/item/loot_tables/gameparty/item/green.json
  8. 22 0
      data/item/loot_tables/gameparty/item/purple.json
  9. 0 11
      data/item/loot_tables/gameparty/item/white.json
  10. 2 2
      data/item/loot_tables/gameparty/score/white.json
  11. 1 0
      data/item/tags/items/bonus.json
  12. 1 0
      data/ltw/functions/init.mcfunction
  13. 0 12
      data/ltw/functions/main/player_enter.mcfunction
  14. 1 1
      data/ltw/functions/state/3/tick2.mcfunction
  15. 8 8
      data/ltw/functions/state/6/generate_bonus.mcfunction
  16. 10 4
      data/minecraft/loot_tables/gameplay/fishing.json
  17. 3 3
      data/minecraft/loot_tables/gameplay/fishing/fish.json
  18. 2 2
      data/mini/functions/colormatch/game/remove_ground.mcfunction
  19. 32 32
      data/mini/functions/colormatch/game/replace_wall.mcfunction
  20. 1 1
      data/mini/functions/colormatch/game/start_new_round.mcfunction
  21. 1 1
      data/mini/functions/colormatch/game_init2.mcfunction
  22. 1 0
      data/mini/functions/diamond/game_end.mcfunction
  23. 2 1
      data/mini/functions/tntrun/player_enter.mcfunction
  24. 1 0
      data/mini/functions/tntrun/player_intro.mcfunction
  25. 1 1
      data/mini/functions/trade/game/paper_show.mcfunction
  26. 1 0
      data/mini/functions/trade/game_end.mcfunction
  27. 2 2
      data/mini/functions/trade/player_intro.mcfunction
  28. 23 3
      data/mini/loot_tables/diamond.json
  29. 1 1
      data/mini/loot_tables/trade_e.json
  30. 8 8
      data/mini/loot_tables/trade_s.json
  31. 0 0
      data/mini/tags/blocks/colormatch_floor.json
  32. 3 0
      data/mini/tags/blocks/tntrun_floor.json
  33. 0 0
      data/test/functions/countdown/quick.mcfunction
  34. 6 0
      data/test/functions/countdown/slow.mcfunction
  35. 13 13
      data/test/functions/generate/mixed.mcfunction
  36. 13 13
      data/test/functions/generate/score.mcfunction
  37. 3 1
      data/test/functions/mini/colormatch.mcfunction
  38. 3 1
      data/test/functions/mini/diamond.mcfunction
  39. 3 1
      data/test/functions/mini/hotpm.mcfunction
  40. 3 1
      data/test/functions/mini/parkour.mcfunction
  41. 3 1
      data/test/functions/mini/phantom.mcfunction
  42. 3 1
      data/test/functions/mini/tntrun.mcfunction
  43. 3 1
      data/test/functions/mini/trade.mcfunction
  44. 0 15
      data/test/functions/reset/emerald.mcfunction
  45. 5 0
      data/test/functions/start_game.mcfunction

+ 0 - 0
data/item/functions/bonus_item/gameparty/random.mcfunction → data/item/functions/bonus_item/gameparty/auto/random.mcfunction


+ 11 - 12
data/item/functions/bonus_item/gameparty/mixed/random.mcfunction

@@ -1,17 +1,16 @@
 # 生成随机品质的物品
 
-# 品质 = d100
-scoreboard players set $random_min mem 1
-scoreboard players set $random_max mem 100
-function lib:random
-scoreboard players operation #quality mem = $random mem
+# 品质:生成一个 1~10 的 randomarray,每次从其中取下一个数
+execute unless data storage ltw:mini qualities[0] run function item:bonus_item/new_array
+execute store result score #quality mem run data get storage ltw:mini qualities[0]
+data remove storage ltw:mini qualities[0]
 
 # 根据品质生成不同的物品
-# 白色:50%
-execute if score #quality mem matches ..50 run function item:bonus_item/gameparty/mixed/white
+# 白色:40%
+execute if score #quality mem matches ..4 run function item:bonus_item/gameparty/mixed/white
 # 绿色:30%
-execute if score #quality mem matches 50..79 run function item:bonus_item/gameparty/mixed/green
-# 蓝色:15%
-execute if score #quality mem matches 80..95 run function item:bonus_item/gameparty/mixed/blue
-# 紫色:5%
-execute if score #quality mem matches 96.. run function item:bonus_item/gameparty/mixed/purple
+execute if score #quality mem matches 5..7 run function item:bonus_item/gameparty/mixed/green
+# 蓝色:20%
+execute if score #quality mem matches 8..9 run function item:bonus_item/gameparty/mixed/blue
+# 紫色:10%
+execute if score #quality mem matches 10.. run function item:bonus_item/gameparty/mixed/purple

+ 8 - 9
data/item/functions/bonus_item/gameparty/score/random.mcfunction

@@ -1,17 +1,16 @@
 # 生成随机品质的物品
 
-# 品质 = d100
-scoreboard players set $random_min mem 1
-scoreboard players set $random_max mem 100
-function lib:random
-scoreboard players operation #quality mem = $random mem
+# 品质:生成一个 1~10 的 randomarray,每次从其中取下一个数
+execute unless data storage ltw:mini qualities[0] run function item:bonus_item/new_array
+execute store result score #quality mem run data get storage ltw:mini qualities[0]
+data remove storage ltw:mini qualities[0]
 
 # 根据品质生成不同的物品
 # 白色:40%
-execute if score #quality mem matches ..40 run function item:bonus_item/gameparty/score/white
+execute if score #quality mem matches ..4 run function item:bonus_item/gameparty/score/white
 # 绿色:30%
-execute if score #quality mem matches 41..70 run function item:bonus_item/gameparty/score/green
+execute if score #quality mem matches 5..7 run function item:bonus_item/gameparty/score/green
 # 蓝色:20%
-execute if score #quality mem matches 71..90 run function item:bonus_item/gameparty/score/blue
+execute if score #quality mem matches 8..9 run function item:bonus_item/gameparty/score/blue
 # 紫色:10%
-execute if score #quality mem matches 91.. run function item:bonus_item/gameparty/score/purple
+execute if score #quality mem matches 10.. run function item:bonus_item/gameparty/score/purple

+ 4 - 0
data/item/functions/bonus_item/new_array.mcfunction

@@ -0,0 +1,4 @@
+scoreboard players set $randarray_max mem 10
+scoreboard players set $randarray_last mem 0
+function lib:randarray/call
+data modify storage ltw:mini qualities set from storage lib:randarray out

+ 6 - 5
data/item/functions/bonus_item/stole_score.mcfunction

@@ -1,21 +1,22 @@
 # as player
-execute store result score #bonus_stole_score mem run data get block 0 0 0 RecordItem.tag.bonus_stole_score
+execute store result score #bonus_stole_score mem run data get storage item:bonus item.tag.bonus_stole_score
 
 # 获取有效的最高分玩家
 function ltw:main/get_max_score
 tag @a remove highest
 tag @a remove may_highest
 execute as @a if score @s total_score = #score_max mem if score @s total_score >= #bonus_stole_score mem run tag @s add may_highest
-execute at @s as @a[tag=may_highest,limit=1,sort=furthest,team=playing] run tag @s add highest
+tag @s remove may_highest
+execute as @a[tag=may_highest,limit=1,sort=random,team=playing] run tag @s add highest
 execute unless entity @a[tag=highest] run tag @s add highest
 
 # 更改得分
 scoreboard players operation @s total_score += #bonus_stole_score mem
 scoreboard players operation @s total_score_disp += #bonus_stole_score mem
-scoreboard players operation @p[tag=highest] total_score -= #bonus_stole_score mem
-scoreboard players operation @p[tag=highest] total_score_disp -= #bonus_stole_score mem
+scoreboard players operation @a[tag=highest] total_score -= #bonus_stole_score mem
+scoreboard players operation @a[tag=highest] total_score_disp -= #bonus_stole_score mem
 
 # 显示提示
 execute if entity @s[tag=highest] run tellraw @a ["",{"text": ">> ","color":"aqua","bold": true},{"selector": "@s","color":"aqua"}," 没能偷到任何人的分数……"]
-execute if entity @s[tag=!highest] run tellraw @a ["",{"text": ">> ","color":"red","bold": true},{"selector": "@p[tag=highest]","color":"red"}," 被偷取了 ",{"score": {"name": "#bonus_stole_score","objective": "mem"},"color":"red"},{"text": " 分","color":"red"},", 当前共有 ",{"score": {"name": "@p[tag=highest]","objective": "total_score"}}, " 分"]
+execute if entity @s[tag=!highest] run tellraw @a ["",{"text": ">> ","color":"red","bold": true},{"selector": "@a[tag=highest]","color":"red"}," 被偷取了 ",{"score": {"name": "#bonus_stole_score","objective": "mem"},"color":"red"},{"text": " 分","color":"red"},", 当前共有 ",{"score": {"name": "@a[tag=highest,limit=1]","objective": "total_score"}}, " 分"]
 execute if entity @s[tag=!highest] run tellraw @a ["",{"text": ">> ","color":"green","bold": true},{"selector": "@s","color":"green"}," 偷取了 ",{"score": {"name": "#bonus_stole_score","objective": "mem"},"color":"green"},{"text": " 分","color":"green"},", 当前共有 ",{"score": {"name": "@s","objective": "total_score"}}, " 分"]

+ 1 - 1
data/item/loot_tables/gameparty/item/blue.json

@@ -99,7 +99,7 @@
     "functions": [
         {
             "function": "minecraft:set_nbt",
-            "tag": "{\"item_name\":\"{\\\"text\\\":\\\"鞘翅, 烟花火箭 x8\\\",\\\"color\\\":\\\"aqua\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_return\":1b,\"display\":{\"Name\":\"{\\\"text\\\":\\\"鞘翅\\\",\\\"italic\\\":false,\\\"color\\\":\\\"aqua\\\"}\"},\"bonus_give_items\":[{\"id\":\"minecraft:firework_rocket\",\"Count\":8,\"tag\":{\"is_bonus\":1b,\"bonus_return\":1b,\"bonus_clear_nbt\":1b}}]}"
+            "tag": "{\"item_name\":\"{\\\"text\\\":\\\"鞘翅, 烟花火箭 x9\\\",\\\"color\\\":\\\"aqua\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_return\":1b,\"display\":{\"Name\":\"{\\\"text\\\":\\\"鞘翅\\\",\\\"italic\\\":false,\\\"color\\\":\\\"aqua\\\"}\"},\"bonus_give_items\":[{\"id\":\"minecraft:firework_rocket\",\"Count\":9,\"tag\":{\"is_bonus\":1b,\"bonus_return\":1b,\"bonus_clear_nbt\":1b}}]}"
         }
     ]
 },

+ 3 - 3
data/item/loot_tables/gameparty/item/green.json

@@ -2,7 +2,7 @@
 
 {
         "type": "minecraft:item",
-        "weight":3,
+        "weight":6,
         "name": "minecraft:fishing_rod",
         "functions": [
             {
@@ -73,11 +73,11 @@
     "functions": [
         {
             "function": "minecraft:set_count",
-            "count": 16
+            "count": 20
         },
         {
             "function": "minecraft:set_nbt",
-            "tag": "{\"item_name\":\"{\\\"text\\\":\\\"圆石 x16\\\",\\\"color\\\":\\\"green\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_return\":1b,\"bonus_clear_nbt\":1b}"
+            "tag": "{\"item_name\":\"{\\\"text\\\":\\\"圆石 x20\\\",\\\"color\\\":\\\"green\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_return\":1b,\"bonus_clear_nbt\":1b}"
         }
     ]
 },

+ 22 - 0
data/item/loot_tables/gameparty/item/purple.json

@@ -1,5 +1,16 @@
 {"pools": [{"rolls": 1,"entries": [
 
+    {
+        "type": "minecraft:item",
+        "weight": 6,
+        "name": "minecraft:totem_of_undying",
+        "functions": [
+            {
+                "function": "minecraft:set_nbt",
+                "tag": "{\"item_name\":\"{\\\"text\\\":\\\"不死图腾 x3\\\",\\\"color\\\":\\\"light_purple\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_give_items\":[{\"id\":\"minecraft:totem_of_undying\",\"Count\":1,\"tag\":{\"bonus_return\":1b,\"is_bonus\":1b}},{\"id\":\"minecraft:totem_of_undying\",\"Count\":1,\"tag\":{\"bonus_return\":1b,\"is_bonus\":1b}},{\"id\":\"minecraft:totem_of_undying\",\"Count\":1,\"tag\":{\"bonus_return\":1b,\"is_bonus\":1b}}]}"
+            }
+        ]
+    },
     {
         "type": "minecraft:item",
         "weight": 6,
@@ -51,6 +62,17 @@
                 "tag": "{\"item_name\":\"{\\\"text\\\":\\\"钻石 x5\\\",\\\"color\\\":\\\"light_purple\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_return\":1b,\"bonus_clear_nbt\":1b}"
             }
         ]
+    },
+    {
+        "type": "minecraft:item",
+        "weight": 6,
+        "name": "minecraft:netherite_ingot",
+        "functions": [
+            {
+                "function": "minecraft:set_nbt",
+                "tag": "{\"item_name\":\"{\\\"text\\\":\\\"下界合金全身甲\\\",\\\"color\\\":\\\"light_purple\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_give_items\":[{\"id\":\"minecraft:netherite_helmet\",\"Count\":1,\"tag\":{\"bonus_return\":1b,\"is_bonus\":1b}},{\"id\":\"minecraft:netherite_chestplate\",\"Count\":1,\"tag\":{\"bonus_return\":1b,\"is_bonus\":1b}},{\"id\":\"minecraft:netherite_leggings\",\"Count\":1,\"tag\":{\"bonus_return\":1b,\"is_bonus\":1b}},{\"id\":\"minecraft:netherite_boots\",\"Count\":1,\"tag\":{\"bonus_return\":1b,\"is_bonus\":1b}}]}"
+            }
+        ]
     }
 
 

+ 0 - 11
data/item/loot_tables/gameparty/item/white.json

@@ -111,17 +111,6 @@
         }
     ]
 },
-{
-    "type": "minecraft:item",
-    "weight": 6,
-    "name": "minecraft:crossbow",
-    "functions": [
-        {
-            "function": "minecraft:set_nbt",
-            "tag": "{\"item_name\":\"{\\\"text\\\":\\\"弩, 箭 x3\\\",\\\"color\\\":\\\"white\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_return\":1b,\"display\":{\"Name\":\"{\\\"text\\\":\\\"弩\\\",\\\"italic\\\":false,\\\"color\\\":\\\"white\\\"}\"},\"bonus_give_items\":[{\"id\":\"minecraft:arrow\",\"Count\":3,\"tag\":{\"is_bonus\":1b,\"bonus_return\":1b,\"bonus_clear_nbt\":1b}}]}"
-        }
-    ]
-},
 {
     "type": "minecraft:item",
     "weight": 3,

+ 2 - 2
data/item/loot_tables/gameparty/score/white.json

@@ -33,7 +33,7 @@
     "functions": [
         {
             "function": "minecraft:set_nbt",
-            "tag": "{\"item_name\":\"{\\\"text\\\":\\\"小概率得分 +6\\\",\\\"color\\\":\\\"white\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_add_score\":0}"
+            "tag": "{\"item_name\":\"{\\\"text\\\":\\\"小概率得分 +5\\\",\\\"color\\\":\\\"white\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_add_score\":0}"
         }
     ]
 },
@@ -44,7 +44,7 @@
     "functions": [
         {
             "function": "minecraft:set_nbt",
-            "tag": "{\"item_name\":\"{\\\"text\\\":\\\"小概率得分 +6\\\",\\\"color\\\":\\\"white\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_add_score\":6}"
+            "tag": "{\"item_name\":\"{\\\"text\\\":\\\"小概率得分 +5\\\",\\\"color\\\":\\\"white\\\"}\",\"is_bonus\":1b,\"bonus_new\":1b,\"bonus_add_score\":5}"
         }
     ]
 },

+ 1 - 0
data/item/tags/items/bonus.json

@@ -13,6 +13,7 @@
         "minecraft:nether_star",
         "minecraft:trident",
         "minecraft:stick",
+        "minecraft:netherite_ingot",
         "minecraft:coal",
         "minecraft:chest",
         "minecraft:lava_bucket",

+ 1 - 0
data/ltw/functions/init.mcfunction

@@ -169,6 +169,7 @@ function ltw:state/0/state_enter
 
 # 重置随机数组
 data modify storage ltw:mini types set value []
+data modify storage ltw:mini qualities set value []
 data modify storage ltw:mini colormatch.types set value []
 
 # 显示提示

+ 0 - 12
data/ltw/functions/main/player_enter.mcfunction

@@ -27,18 +27,6 @@ execute if entity @s[team=playing] if score @s game_id = $ game_id run function
 bossbar set ltw:notice players @a
 function lib:bossbar/show
 
-
-# 无指定人员
-# FIXME: 关掉 JourneyMap 的生物雷达
-# TODO: {TNTRun} 哭泣的黑曜石的光照更新导致了严重的卡顿
-
-# LTCat
-# FIXME: 尝试偷 3 分时只会偷到 0 分
-# FIXME: 继续尝试修改过场动画
-
-# HIM
-# TODO: {贸易} 让每条出售交易都有 30% 的概率打 7 折
-
 # 010
 # TODO: 升级 1.16.5(不过得先等 OptiFine 更新)
 # TODO: {幻翼} 制作幻翼的成品地图

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

@@ -1,4 +1,4 @@
 # 固定旁观
 gamemode spectator @a[team=!debugging]
 execute as @a[team=!debugging] run spectate
-tp @a[team=!debugging] 3.5 6.0 12.5 0 90
+tp @a[team=!debugging] -22.5 6.5 -9.0 180.0 0.0

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

@@ -8,14 +8,14 @@ kill @e[type=trident]
 # 生成 玩家数+1 个奖励
 execute store result score #bonus_count mem if entity @a[team=playing]
 scoreboard players add #bonus_count mem 1
-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
-execute if score #bonus_count mem matches 3.. positioned 24.5 10.2 1960.5 run function item:bonus_item/gameparty/random
-execute if score #bonus_count mem matches 4.. positioned 29.5 10.2 1962.5 run function item:bonus_item/gameparty/random
-execute if score #bonus_count mem matches 5.. positioned 31.5 10.2 1967.5 run function item:bonus_item/gameparty/random
-execute if score #bonus_count mem matches 6.. positioned 29.5 10.2 1972.5 run function item:bonus_item/gameparty/random
-execute if score #bonus_count mem matches 7.. positioned 24.5 10.2 1974.5 run function item:bonus_item/gameparty/random
-execute if score #bonus_count mem matches 8.. positioned 19.5 10.2 1972.5 run function item:bonus_item/gameparty/random
+execute if score #bonus_count mem matches 1.. positioned 17.5 10.2 1967.5 run function item:bonus_item/gameparty/auto/random
+execute if score #bonus_count mem matches 2.. positioned 19.5 10.2 1962.5 run function item:bonus_item/gameparty/auto/random
+execute if score #bonus_count mem matches 3.. positioned 24.5 10.2 1960.5 run function item:bonus_item/gameparty/auto/random
+execute if score #bonus_count mem matches 4.. positioned 29.5 10.2 1962.5 run function item:bonus_item/gameparty/auto/random
+execute if score #bonus_count mem matches 5.. positioned 31.5 10.2 1967.5 run function item:bonus_item/gameparty/auto/random
+execute if score #bonus_count mem matches 6.. positioned 29.5 10.2 1972.5 run function item:bonus_item/gameparty/auto/random
+execute if score #bonus_count mem matches 7.. positioned 24.5 10.2 1974.5 run function item:bonus_item/gameparty/auto/random
+execute if score #bonus_count mem matches 8.. positioned 19.5 10.2 1972.5 run function item:bonus_item/gameparty/auto/random
 
 # 生成拾取背景
 execute positioned 17.0 10.0 1967.0 run function ltw:state/6/generate_background

+ 10 - 4
data/minecraft/loot_tables/gameplay/fishing.json

@@ -6,19 +6,25 @@
       "entries": [
         {
           "type": "minecraft:loot_table",
-          "weight": 10,
-          "quality": 10,
+          "weight": 2,
+          "quality": 9,
+          "name": "item:gameparty/item/blue"
+        },
+        {
+          "type": "minecraft:loot_table",
+          "weight": 18,
+          "quality": 11,
           "name": "item:gameparty/item/green"
         },
         {
           "type": "minecraft:loot_table",
           "weight": 40,
-          "quality": 10,
+          "quality": 0,
           "name": "item:gameparty/item/white"
         },
         {
           "type": "minecraft:loot_table",
-          "weight": 50,
+          "weight": 40,
           "quality": -20,
           "name": "minecraft:gameplay/fishing/fish"
         }

+ 3 - 3
data/minecraft/loot_tables/gameplay/fishing/fish.json

@@ -6,17 +6,17 @@
       "entries": [
         {
           "type": "minecraft:item",
-          "weight": 60,
+          "weight": 50,
           "name": "minecraft:cod"
         },
         {
           "type": "minecraft:item",
-          "weight": 25,
+          "weight": 30,
           "name": "minecraft:salmon"
         },
         {
           "type": "minecraft:item",
-          "weight": 15,
+          "weight": 20,
           "name": "minecraft:pufferfish"
         }
       ]

+ 2 - 2
data/mini/functions/colormatch/game/remove_ground.mcfunction

@@ -1,8 +1,8 @@
 # 去除地板
-fill 1049 16 3999 1071 16 4021 air replace #mini:colarmatch_floor
+fill 1049 16 3999 1071 16 4021 air replace #mini:colormatch_floor
 
 # 替换方块
-execute positioned 1001 11 4000 run clone ~ ~ ~ ~20 ~ ~20 1050 16 4000 filtered #mini:colarmatch_floor
+execute positioned 1001 11 4000 run clone ~ ~ ~ ~20 ~ ~20 1050 16 4000 filtered #mini:colormatch_floor
 
 # 告知玩家
 execute as @a at @s run function lib:sounds/hit2

+ 32 - 32
data/mini/functions/colormatch/game/replace_wall.mcfunction

@@ -1,32 +1,32 @@
-execute if score $color_match_floor mem matches 1 run fill 1049 18 4008 1049 22 4012 minecraft:acacia_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 1 run fill 1062 22 4021 1058 18 4021 minecraft:acacia_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 1 run fill 1071 18 4012 1071 22 4008 minecraft:acacia_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 1 run fill 1058 22 3999 1062 18 3999 minecraft:acacia_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 2 run fill 1049 18 4008 1049 22 4012 minecraft:birch_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 2 run fill 1062 22 4021 1058 18 4021 minecraft:birch_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 2 run fill 1071 18 4012 1071 22 4008 minecraft:birch_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 2 run fill 1058 22 3999 1062 18 3999 minecraft:birch_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 3 run fill 1049 18 4008 1049 22 4012 minecraft:soul_soil replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 3 run fill 1062 22 4021 1058 18 4021 minecraft:soul_soil replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 3 run fill 1071 18 4012 1071 22 4008 minecraft:soul_soil replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 3 run fill 1058 22 3999 1062 18 3999 minecraft:soul_soil replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 4 run fill 1049 18 4008 1049 22 4012 minecraft:crimson_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 4 run fill 1062 22 4021 1058 18 4021 minecraft:crimson_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 4 run fill 1071 18 4012 1071 22 4008 minecraft:crimson_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 4 run fill 1058 22 3999 1062 18 3999 minecraft:crimson_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 5 run fill 1049 18 4008 1049 22 4012 minecraft:warped_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 5 run fill 1062 22 4021 1058 18 4021 minecraft:warped_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 5 run fill 1071 18 4012 1071 22 4008 minecraft:warped_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 5 run fill 1058 22 3999 1062 18 3999 minecraft:warped_planks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 6 run fill 1049 18 4008 1049 22 4012 minecraft:purpur_block replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 6 run fill 1062 22 4021 1058 18 4021 minecraft:purpur_block replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 6 run fill 1071 18 4012 1071 22 4008 minecraft:purpur_block replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 6 run fill 1058 22 3999 1062 18 3999 minecraft:purpur_block replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 7 run fill 1049 18 4008 1049 22 4012 minecraft:bricks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 7 run fill 1062 22 4021 1058 18 4021 minecraft:bricks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 7 run fill 1071 18 4012 1071 22 4008 minecraft:bricks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 7 run fill 1058 22 3999 1062 18 3999 minecraft:bricks replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 8 run fill 1049 18 4008 1049 22 4012 minecraft:mossy_cobblestone replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 8 run fill 1062 22 4021 1058 18 4021 minecraft:mossy_cobblestone replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 8 run fill 1071 18 4012 1071 22 4008 minecraft:mossy_cobblestone replace #mini:colarmatch_floor
-execute if score $color_match_floor mem matches 8 run fill 1058 22 3999 1062 18 3999 minecraft:mossy_cobblestone replace #mini:colarmatch_floor
+execute if score $color_match_floor mem matches 1 run fill 1049 18 4008 1049 22 4012 minecraft:acacia_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 1 run fill 1062 22 4021 1058 18 4021 minecraft:acacia_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 1 run fill 1071 18 4012 1071 22 4008 minecraft:acacia_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 1 run fill 1058 22 3999 1062 18 3999 minecraft:acacia_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 2 run fill 1049 18 4008 1049 22 4012 minecraft:birch_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 2 run fill 1062 22 4021 1058 18 4021 minecraft:birch_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 2 run fill 1071 18 4012 1071 22 4008 minecraft:birch_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 2 run fill 1058 22 3999 1062 18 3999 minecraft:birch_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 3 run fill 1049 18 4008 1049 22 4012 minecraft:soul_soil replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 3 run fill 1062 22 4021 1058 18 4021 minecraft:soul_soil replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 3 run fill 1071 18 4012 1071 22 4008 minecraft:soul_soil replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 3 run fill 1058 22 3999 1062 18 3999 minecraft:soul_soil replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 4 run fill 1049 18 4008 1049 22 4012 minecraft:crimson_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 4 run fill 1062 22 4021 1058 18 4021 minecraft:crimson_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 4 run fill 1071 18 4012 1071 22 4008 minecraft:crimson_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 4 run fill 1058 22 3999 1062 18 3999 minecraft:crimson_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 5 run fill 1049 18 4008 1049 22 4012 minecraft:warped_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 5 run fill 1062 22 4021 1058 18 4021 minecraft:warped_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 5 run fill 1071 18 4012 1071 22 4008 minecraft:warped_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 5 run fill 1058 22 3999 1062 18 3999 minecraft:warped_planks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 6 run fill 1049 18 4008 1049 22 4012 minecraft:purpur_block replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 6 run fill 1062 22 4021 1058 18 4021 minecraft:purpur_block replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 6 run fill 1071 18 4012 1071 22 4008 minecraft:purpur_block replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 6 run fill 1058 22 3999 1062 18 3999 minecraft:purpur_block replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 7 run fill 1049 18 4008 1049 22 4012 minecraft:bricks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 7 run fill 1062 22 4021 1058 18 4021 minecraft:bricks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 7 run fill 1071 18 4012 1071 22 4008 minecraft:bricks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 7 run fill 1058 22 3999 1062 18 3999 minecraft:bricks replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 8 run fill 1049 18 4008 1049 22 4012 minecraft:mossy_cobblestone replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 8 run fill 1062 22 4021 1058 18 4021 minecraft:mossy_cobblestone replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 8 run fill 1071 18 4012 1071 22 4008 minecraft:mossy_cobblestone replace #mini:colormatch_floor
+execute if score $color_match_floor mem matches 8 run fill 1058 22 3999 1062 18 3999 minecraft:mossy_cobblestone replace #mini:colormatch_floor

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

@@ -1,7 +1,7 @@
 # 替换墙壁
 function mini:colormatch/game/replace_wall
 # 复制地板
-execute positioned 1001 10 4000 run clone ~ ~ ~ ~20 ~ ~20 1050 16 4000 filtered #mini:colarmatch_floor
+execute positioned 1001 10 4000 run clone ~ ~ ~ ~20 ~ ~20 1050 16 4000 filtered #mini:colormatch_floor
 
 # 设置倒计时
 execute if score $color_match_time mem matches 20.. run scoreboard players remove $color_match_time mem 4

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

@@ -1,4 +1,4 @@
 # 替换墙壁
 function mini:colormatch/game/replace_wall
 # 复制地板
-execute positioned 1001 10 4000 run clone ~ ~ ~ ~20 ~ ~20 1050 16 4000 filtered #mini:colarmatch_floor
+execute positioned 1001 10 4000 run clone ~ ~ ~ ~20 ~ ~20 1050 16 4000 filtered #mini:colormatch_floor

+ 1 - 0
data/mini/functions/diamond/game_end.mcfunction

@@ -1,5 +1,6 @@
 # 游戏结束
 forceload remove 1000 5000 1064 5064
+worldborder set 1000000
 
 # Gamerule 调整
 gamerule doDaylightCycle false

+ 2 - 1
data/mini/functions/tntrun/player_enter.mcfunction

@@ -6,8 +6,9 @@ title @s actionbar ""
 # 状态效果
 effect clear @s
 effect give @s saturation 1000000 0 true
-gamerule naturalRegeneration true
 effect give @s resistance 1000000 4 true
+effect give @s night_vision 1000000 0 true
+gamerule naturalRegeneration true
 
 # 设置玩家生命
 attribute @s generic.max_health base set 20

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

@@ -1,5 +1,6 @@
 # 向单个玩家展示小游戏介绍
 tp @s[team=!debugging] 1023.65 20.29 2006.59 -345.99 17.34
+effect give @s[team=!debugging] night_vision 1000000 0 true
 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/trade/game/paper_show.mcfunction

@@ -6,4 +6,4 @@ execute if data entity @s Inventory[{Slot:8b}] run scoreboard players set @s ite
 execute if data entity @s Inventory[{Slot:8b}] at @s run function item:pop_slot/return_item
 
 # 设置最后一格的物品
-replaceitem entity @s hotbar.8 paper{game_item:1b,display:{Name:'[{"text":"交易之纸","color":"aqua","italic":false}]',Lore:['[{"text":"奇物, 珍稀","italic":true,"color":"gray"}]','[{"color":"white","italic":false,"text":"在你握持该纸时, 一位村民"},{"text":" villager ","italic":true},{"color":"white","italic":false,"text":"将会出现在你周围 10 尺内"}]','[{"color":"white","italic":false,"text":"的一处尚未被占据的区域, 直到你不握持该纸时, 它会使用以"}]','[{"color":"white","italic":false,"text":"太化"},{"text":" etherealness ","color":"white","italic":true},{"color":"white","italic":false,"text":"进入以太位面并消失。"}]','[{"color":"white","italic":false,"text":"该村民被永久的浮空术"},{"text":" levitate ","color":"white","italic":true},{"color":"white","italic":false,"text":"影响, 且持续保持在与你相同"}]','[{"color":"white","italic":false,"text":"的高度。你可以穿过它所占据的空间, 且可以与它进行交易, 不"}]','[{"color":"white","italic":false,"text":"过对它的攻击会自动失手。它会通过所有豁免检定, 并且免疫所"}]','[{"color":"white","italic":false,"text":"有的伤害和异常状态。"}]']}}
+replaceitem entity @s hotbar.8 paper{game_item:1b,display:{Name:'[{"text":"交易契约","color":"aqua","italic":false}]',Lore:['[{"text":"奇物, 珍稀","italic":true,"color":"gray"}]','[{"color":"white","italic":false,"text":"在你握持该纸时, 一位村民"},{"text":" villager ","italic":true},{"color":"white","italic":false,"text":"将会出现在你周围 10 尺内"}]','[{"color":"white","italic":false,"text":"的一处尚未被占据的区域, 直到你不握持该纸时, 它会使用以"}]','[{"color":"white","italic":false,"text":"太化"},{"text":" etherealness ","color":"white","italic":true},{"color":"white","italic":false,"text":"进入以太位面并消失。"}]','[{"color":"white","italic":false,"text":"该村民被永久的浮空术"},{"text":" levitate ","color":"white","italic":true},{"color":"white","italic":false,"text":"影响, 且持续保持在与你相同"}]','[{"color":"white","italic":false,"text":"的高度。你可以穿过它所占据的空间, 且可以与它进行交易, 不"}]','[{"color":"white","italic":false,"text":"过对它的攻击会自动失手。它会通过所有豁免检定, 并且免疫所"}]','[{"color":"white","italic":false,"text":"有的伤害和异常状态。"}]']}}

+ 1 - 0
data/mini/functions/trade/game_end.mcfunction

@@ -1,5 +1,6 @@
 # 游戏结束
 forceload remove 1000 5000 1064 5064
+worldborder set 1000000
 
 # Gamerule 调整
 gamerule doLimitedCrafting true

+ 2 - 2
data/mini/functions/trade/player_intro.mcfunction

@@ -2,8 +2,8 @@
 tp @s[team=!debugging] 1013.47 247.63 5045.62 -178.86 17.18
 worldborder set 1000000
 effect give @s[team=!debugging] night_vision 1000000 0 true
-tellraw @s ["",{"text":"\n >> 贸易专家 >>\n\n","color":"gold","bold":true}," 手持交易之纸唤出村民, 与村民交易, 尽快获取绿宝石!\n 每项交易都可以进行 2 次, 进行交易可以增加经验值, 解锁更多交易!\n"]
+tellraw @s ["",{"text":"\n >> 贸易专家 >>\n\n","color":"gold","bold":true}," 手持交易契约唤出村民, 与村民交易, 尽快获取绿宝石!\n 每项交易都可以进行 2 次, 进行交易可以增加经验值, 解锁更多交易!\n"]
 tellraw @s ["",{"text": " <积分制> ","color":"red","bold": true}, {"text":"太阳落山时游戏即会结束, 然后根据持有的绿宝石数排名。","color":"gray"}]
 tellraw @s ["",{"text": " <PVE> ","color":"light_purple","bold": true}, {"text":"无法攻击其他玩家, 死亡不掉落且能立即复活。","color":"gray"}]
-tellraw @s ["",{"text": " <早期测试> ","color":"dark_red","bold": true}, {"text":"此游戏目前还在早期测试, 什么鬼事情都有可能发生!","color":"dark_red"}]
+tellraw @s ["",{"text": " <原型> ","color":"gold","bold": true}, {"text":"此游戏目前仅用于玩法测试, 尚未进行修缮。","color":"gray"}]
 tellraw @s ""

+ 23 - 3
data/mini/loot_tables/diamond.json

@@ -14,7 +14,17 @@
     {
         "type": "minecraft:item",
         "weight": 1,
-        "name": "minecraft:diamond"
+        "name": "minecraft:diamond",
+        "functions": [
+          {
+            "function": "minecraft:set_count",
+            "count": {
+              "min": 1.0,
+              "max": 2.0,
+              "type": "minecraft:uniform"
+            }
+          }
+        ]
     },
     {
         "type": "minecraft:item",
@@ -25,7 +35,7 @@
             "function": "minecraft:set_count",
             "count": {
               "min": 2.0,
-              "max": 4.0,
+              "max": 3.0,
               "type": "minecraft:uniform"
             }
           }
@@ -34,7 +44,17 @@
     {
         "type": "minecraft:item",
         "weight": 1,
-        "name": "minecraft:book"
+        "name": "minecraft:book",
+        "functions": [
+          {
+            "function": "minecraft:set_count",
+            "count": {
+              "min": 1.0,
+              "max": 3.0,
+              "type": "minecraft:uniform"
+            }
+          }
+        ]
     }
     
 ]}]}

+ 1 - 1
data/mini/loot_tables/trade_e.json

@@ -152,7 +152,7 @@
                         },
                         {
                             "function": "set_nbt",
-                            "tag":"{sell:{id:\"nether_star\",Count:1,tag:{display:{Name:'{\"text\":\"得分 +1\",\"color\":\"white\",\"italic\":false}'}}}}"
+                            "tag":"{sell:{id:\"nether_star\",Count:2,tag:{display:{Name:'{\"text\":\"得分 +2\",\"color\":\"white\",\"italic\":false}'}}}}"
                         },
                         {
                             "function": "set_nbt",

+ 8 - 8
data/mini/loot_tables/trade_s.json

@@ -49,7 +49,7 @@
                             "functions": [
                                 {
                                     "function": "set_nbt",
-                                    "tag": "{buy:{id:\"emerald\",Count:4}}"
+                                    "tag": "{buy:{id:\"emerald\",Count:3}}"
                                 },
                                 {
                                     "function": "set_nbt",
@@ -79,7 +79,7 @@
                             "functions": [
                                 {
                                     "function": "set_nbt",
-                                    "tag": "{buy:{id:\"emerald\",Count:6}}"
+                                    "tag": "{buy:{id:\"emerald\",Count:4}}"
                                 },
                                 {
                                     "function": "set_nbt",
@@ -109,11 +109,11 @@
                             "functions": [
                                 {
                                     "function": "set_nbt",
-                                    "tag": "{buy:{id:\"emerald\",Count:4}}"
+                                    "tag": "{buy:{id:\"emerald\",Count:3}}"
                                 },
                                 {
                                     "function": "set_nbt",
-                                    "tag":"{sell:{id:\"stone\",Count:4}}"
+                                    "tag":"{sell:{id:\"stone\",Count:5}}"
                                 },
                                 {
                                     "function": "set_nbt",
@@ -139,11 +139,11 @@
                             "functions": [
                                 {
                                     "function": "set_nbt",
-                                    "tag": "{buy:{id:\"emerald\",Count:4}}"
+                                    "tag": "{buy:{id:\"emerald\",Count:3}}"
                                 },
                                 {
                                     "function": "set_nbt",
-                                    "tag":"{sell:{id:\"oak_log\",Count:4}}"
+                                    "tag":"{sell:{id:\"oak_log\",Count:5}}"
                                 },
                                 {
                                     "function": "set_nbt",
@@ -169,11 +169,11 @@
                             "functions": [
                                 {
                                     "function": "set_nbt",
-                                    "tag": "{buy:{id:\"emerald\",Count:4}}"
+                                    "tag": "{buy:{id:\"emerald\",Count:3}}"
                                 },
                                 {
                                     "function": "set_nbt",
-                                    "tag":"{sell:{id:\"cobblestone\",Count:8}}"
+                                    "tag":"{sell:{id:\"cobblestone\",Count:10}}"
                                 },
                                 {
                                     "function": "set_nbt",

+ 0 - 0
data/mini/tags/blocks/colarmatch_floor.json → data/mini/tags/blocks/colormatch_floor.json


+ 3 - 0
data/mini/tags/blocks/tntrun_floor.json

@@ -2,6 +2,9 @@
     "values": [
         "minecraft:dead_horn_coral_block",
         "minecraft:crying_obsidian",
+        "minecraft:crimson_hyphae",
+        "minecraft:warped_hyphae",
+        "minecraft:crying_obsidian",
         "minecraft:diamond_block"
     ]
 }

+ 0 - 0
data/test/functions/fast_countdown.mcfunction → data/test/functions/countdown/quick.mcfunction


+ 6 - 0
data/test/functions/countdown/slow.mcfunction

@@ -0,0 +1,6 @@
+# 测试用:将倒计时修改为永不结束
+
+scoreboard players set #start_countdown mem 999999
+scoreboard players set $countdown mem 999999
+scoreboard players set $countdown_fast mem 999999
+tellraw @a ["",{"text": ">> ","color": "aqua","bold": true}, {"text": "管理员将倒计时延长到了无限期!","color": "aqua"}]

+ 13 - 13
data/test/functions/bonus/normal.mcfunction → data/test/functions/generate/mixed.mcfunction

@@ -1,4 +1,7 @@
-# 生成普通奖励物品
+# 生成混合奖励
+
+# 传送
+tp @a[team=!debugging] 24.5 11.0 1967.5
 
 # 设置轮数
 scoreboard players set $round mem 1
@@ -9,14 +12,14 @@ kill @e[type=arrow]
 kill @e[type=trident]
 
 # 生成奖励
-execute positioned 17.5 10.2 1967.5 run function item:bonus_item/gameparty/random
-execute positioned 19.5 10.2 1962.5 run function item:bonus_item/gameparty/random
-execute positioned 24.5 10.2 1960.5 run function item:bonus_item/gameparty/random
-execute positioned 29.5 10.2 1962.5 run function item:bonus_item/gameparty/random
-execute positioned 31.5 10.2 1967.5 run function item:bonus_item/gameparty/random
-execute positioned 29.5 10.2 1972.5 run function item:bonus_item/gameparty/random
-execute positioned 24.5 10.2 1974.5 run function item:bonus_item/gameparty/random
-execute positioned 19.5 10.2 1972.5 run function item:bonus_item/gameparty/random
+execute positioned 17.5 10.2 1967.5 run function item:bonus_item/gameparty/mixed/random
+execute positioned 19.5 10.2 1962.5 run function item:bonus_item/gameparty/mixed/random
+execute positioned 24.5 10.2 1960.5 run function item:bonus_item/gameparty/mixed/random
+execute positioned 29.5 10.2 1962.5 run function item:bonus_item/gameparty/mixed/random
+execute positioned 31.5 10.2 1967.5 run function item:bonus_item/gameparty/mixed/random
+execute positioned 29.5 10.2 1972.5 run function item:bonus_item/gameparty/mixed/random
+execute positioned 24.5 10.2 1974.5 run function item:bonus_item/gameparty/mixed/random
+execute positioned 19.5 10.2 1972.5 run function item:bonus_item/gameparty/mixed/random
 
 # 生成拾取背景
 execute positioned 17.0 10.0 1967.0 run function ltw:state/6/generate_background
@@ -28,7 +31,4 @@ execute positioned 29.0 10.0 1972.0 run function ltw:state/6/generate_background
 execute positioned 24.0 10.0 1974.0 run function ltw:state/6/generate_background
 execute positioned 19.0 10.0 1972.0 run function ltw:state/6/generate_background
 
-# 传送
-tp @a[team=!debugging] 24.5 11.0 1967.5
-
-tellraw @a ["",{"text": ">> ","color": "aqua","bold": true}, {"text": "已生成测试用奖励物品!","color": "aqua"}]
+tellraw @a ["",{"text": ">> ","color": "aqua","bold": true}, {"text": "已生成测试用混合奖励!","color": "aqua"}]

+ 13 - 13
data/test/functions/bonus/score.mcfunction → data/test/functions/generate/score.mcfunction

@@ -1,4 +1,7 @@
-# 生成分数奖励物品
+# 生成分数奖励
+
+# 传送
+tp @a[team=!debugging] 24.5 11.0 1967.5
 
 # 设置轮数
 scoreboard players set $round mem 5
@@ -9,14 +12,14 @@ kill @e[type=arrow]
 kill @e[type=trident]
 
 # 生成奖励
-execute positioned 17.5 10.2 1967.5 run function item:bonus_item/gameparty/random
-execute positioned 19.5 10.2 1962.5 run function item:bonus_item/gameparty/random
-execute positioned 24.5 10.2 1960.5 run function item:bonus_item/gameparty/random
-execute positioned 29.5 10.2 1962.5 run function item:bonus_item/gameparty/random
-execute positioned 31.5 10.2 1967.5 run function item:bonus_item/gameparty/random
-execute positioned 29.5 10.2 1972.5 run function item:bonus_item/gameparty/random
-execute positioned 24.5 10.2 1974.5 run function item:bonus_item/gameparty/random
-execute positioned 19.5 10.2 1972.5 run function item:bonus_item/gameparty/random
+execute positioned 17.5 10.2 1967.5 run function item:bonus_item/gameparty/score/random
+execute positioned 19.5 10.2 1962.5 run function item:bonus_item/gameparty/score/random
+execute positioned 24.5 10.2 1960.5 run function item:bonus_item/gameparty/score/random
+execute positioned 29.5 10.2 1962.5 run function item:bonus_item/gameparty/score/random
+execute positioned 31.5 10.2 1967.5 run function item:bonus_item/gameparty/score/random
+execute positioned 29.5 10.2 1972.5 run function item:bonus_item/gameparty/score/random
+execute positioned 24.5 10.2 1974.5 run function item:bonus_item/gameparty/score/random
+execute positioned 19.5 10.2 1972.5 run function item:bonus_item/gameparty/score/random
 
 # 生成拾取背景
 execute positioned 17.0 10.0 1967.0 run function ltw:state/6/generate_background
@@ -28,7 +31,4 @@ execute positioned 29.0 10.0 1972.0 run function ltw:state/6/generate_background
 execute positioned 24.0 10.0 1974.0 run function ltw:state/6/generate_background
 execute positioned 19.0 10.0 1972.0 run function ltw:state/6/generate_background
 
-# 传送
-tp @a[team=!debugging] 24.5 11.0 1967.5
-
-tellraw @a ["",{"text": ">> ","color": "aqua","bold": true}, {"text": "已生成测试用奖励分数!","color": "aqua"}]
+tellraw @a ["",{"text": ">> ","color": "aqua","bold": true}, {"text": "已生成测试用分数奖励!","color": "aqua"}]

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

@@ -5,4 +5,6 @@ scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 4
 function mini:main/game_init
 function ltw:state/4/state_enter
-say 已开始单个测试游戏!
+say 已开始单个测试游戏!
+
+schedule function test:time/quick 20t

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

@@ -6,4 +6,6 @@ scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 6
 function mini:main/game_init
 function ltw:state/4/state_enter
-say 已开始单个测试游戏!
+say 已开始单个测试游戏!
+
+schedule function test:time/quick 20t

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

@@ -5,4 +5,6 @@ scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 3
 function mini:main/game_init
 function ltw:state/4/state_enter
-say 已开始单个测试游戏!
+say 已开始单个测试游戏!
+
+schedule function test:time/quick 20t

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

@@ -5,4 +5,6 @@ scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 1
 function mini:main/game_init
 function ltw:state/4/state_enter
-say 已开始单个测试游戏!
+say 已开始单个测试游戏!
+
+schedule function test:time/quick 20t

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

@@ -5,4 +5,6 @@ scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 5
 function mini:main/game_init
 function ltw:state/4/state_enter
-say 已开始单个测试游戏!
+say 已开始单个测试游戏!
+
+schedule function test:time/quick 20t

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

@@ -5,4 +5,6 @@ scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 2
 function mini:main/game_init
 function ltw:state/4/state_enter
-say 已开始单个测试游戏!
+say 已开始单个测试游戏!
+
+schedule function test:time/quick 20t

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

@@ -6,4 +6,6 @@ scoreboard players set $round mem 5
 scoreboard players set $mini_type mem 8
 function mini:main/game_init
 function ltw:state/4/state_enter
-say 已开始单个测试游戏!
+say 已开始单个测试游戏!
+
+schedule function test:time/quick 20t

+ 0 - 15
data/test/functions/reset/emerald.mcfunction

@@ -1,15 +0,0 @@
-
-scoreboard objectives remove green
-scoreboard objectives remove green_total
-scoreboard objectives remove shop_particle_s
-scoreboard objectives remove shop_particle_2
-scoreboard objectives remove shop_particle_3
-scoreboard objectives remove shop_particle_4
-scoreboard objectives remove shop_particle_5
-scoreboard objectives remove shop_particle_6
-scoreboard objectives remove particle_type
-scoreboard objectives remove stat_total
-scoreboard objectives remove stat_win
-advancement revoke @a everything
-function ltw:init
-tellraw @a ["",{"text": ">> ","color": "red","bold":true},{"text":"已重置绿宝石记分板记录!","color":"red"}]

+ 5 - 0
data/test/functions/start_game.mcfunction

@@ -0,0 +1,5 @@
+# 强制让所有非调试者开始正常游戏
+execute as @a[team=!debugging] run function ltw:state/0/state/join_game
+function ltw:state/0/start_game
+
+tellraw @a ["",{"text": ">> ","color": "aqua","bold": true}, {"text": "管理员已强制开始游戏!","color": "aqua"}]