Explorar el Código

跑酷:刷出额外宝藏

龙腾猫跃 hace 3 años
padre
commit
a01447d0c0

+ 0 - 1
data/item/functions/tick20.mcfunction

@@ -3,5 +3,4 @@
 function item:container/check/call
 
 # 物品特效
-execute as @e[tag=item_gray] at @s run particle minecraft:wax_on ~ ~0.3 ~ 0.15 0.15 0.15 0 2 normal
 execute as @e[tag=item_white] at @s run particle minecraft:end_rod ~ ~0.6 ~ 0.15 0.15 0.15 0 1 normal

+ 1 - 0
data/item/functions/tick5.mcfunction

@@ -1,2 +1,3 @@
 # 物品特效
+execute as @e[tag=item_gray] at @s run particle minecraft:wax_on ~ ~0.3 ~ 0.2 0.2 0.2 0 1 normal
 execute as @e[tag=item_green] at @s run particle minecraft:glow ~ ~0.3 ~ 0.2 0.2 0.2 0 1 normal

+ 1 - 1
data/lib/functions/tempo_block/tempo_sound.mcfunction

@@ -2,5 +2,5 @@
 execute if score $state mem matches 0 run function ltw:state/0/parkour/tempo_sound
 execute if score $state mem matches 5 if score $mini_type mem matches 1 run function mini:parkour/game/tempo_sound
 
-# Debug调用
+# Debug 调用
 execute if score $tempo_debug mem matches 1 run function lib:tempo_block/debug_sound

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

@@ -11,6 +11,7 @@ gamerule doFireTick false
 gamerule doMobSpawning false
 gamerule keepInventory true
 gamerule doWeatherCycle false
+gamerule reducedDebugInfo true
 gamerule doImmediateRespawn true
 gamerule mobGriefing false
 gamerule randomTickSpeed 0

+ 3 - 3
data/mini/functions/parkour/document.txt

@@ -9,12 +9,12 @@
 红柱:
 1023.5 24.2 1030.5 
 1023.5 27.5 1026.5 
-1030.5 25.2 1020.5
+1030.5 25.2 1020.5 
 1018.5 12.5 1025.5 S
 活板:
-1028.5 19.2 1036.5
+1028.5 19.2 1036.5 
 1025.5 09.5 1040.5 S
-1020.5 19.5 1041.5
+1020.5 19.5 1041.5 
 落日:
 1026.5 23.2 1059.5 
 1023.5 11.5 1053.5 S

+ 10 - 0
data/mini/functions/parkour/game/generate_1.mcfunction

@@ -0,0 +1,10 @@
+# 随机选择一个宝藏点生成
+tag @e[tag=treasure] add cangen
+
+# 旁边 3 格没有其他奖励物品
+execute as @e[tag=bonus_item] at @s run tag @e[tag=treasure,distance=..3] remove cangen
+# 旁边 8 格没有玩家
+execute as @a[tag=mini_running] at @s run tag @e[tag=treasure,distance=..8] remove cangen
+
+# 生成奖励物品
+execute as @e[tag=cangen,sort=random,limit=1] at @s run function item:bonus_item/gameparty/auto/low3

+ 3 - 0
data/mini/functions/parkour/game/generate_loop.mcfunction

@@ -0,0 +1,3 @@
+scoreboard players remove #item_count mem 1
+function mini:parkour/game/generate_1
+execute if score #item_count mem matches 1.. run function mini:parkour/game/generate_loop

+ 41 - 4
data/mini/functions/parkour/game/marker_spawn.mcfunction

@@ -1,24 +1,61 @@
+
+# 物品
+
+kill @e[tag=treasure]
+summon area_effect_cloud 1004.5 08.5 1016.5 {Tags: ["treasure","treasure_secret"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1006.5 08.5 1007.0 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1007.5 14.5 1007.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1017.5 13.2 1002.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1026.5 19.2 1009.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1012.5 17.5 1017.5 {Tags: ["treasure","treasure_secret"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1020.5 18.5 1008.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1023.5 24.2 1030.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1023.5 27.5 1026.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1030.5 25.2 1020.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1018.5 12.5 1025.5 {Tags: ["treasure","treasure_secret"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1028.5 19.2 1036.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1025.5 09.5 1040.5 {Tags: ["treasure","treasure_secret"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1020.5 19.5 1041.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1026.5 23.2 1059.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1023.5 11.5 1053.5 {Tags: ["treasure","treasure_secret"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1020.5 22.2 1051.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1030.5 22.2 1054.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1027.5 09.5 1054.5 {Tags: ["treasure","treasure_secret"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1016.5 27.5 1029.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1009.0 32.0 1020.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1001.5 27.5 1016.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1002.5 27.5 1025.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1010.5 30.0 1031.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1011.5 21.5 1061.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1001.5 11.5 1048.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1014.5 15.5 1048.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1011.5 17.5 1051.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1021.5 31.2 1033.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1010.5 28.0 1043.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1015.0 28.0 1033.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1019.5 28.0 1053.5 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1015.0 14.5 1030.0 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+summon area_effect_cloud 1013.5 14.5 1038.0 {Tags: ["treasure"], Age:-2147483648, Duration:-1, WaitTime:-2147483648}
+
+# 节奏方块
+
 # 清除之前的as
 kill @e[type=armor_stand,tag=parkour_tempo]
-
 # 生成节奏方块实体
 summon armor_stand 1004 16.6 1050 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_red"]}
 summon armor_stand 1009 15.6 1051 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_red"]}
-
 summon armor_stand 1012 7.6 1039 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_red"]}
 summon armor_stand 1015 8.6 1037 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_red"]}
 summon armor_stand 1009 9.6 1036 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_red"]}
 summon armor_stand 1014 9.6 1033 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_red"]}
 summon armor_stand 1010 9.6 1033 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_red"]}
 summon armor_stand 1010 11.6 1030 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_red"]}
-
 summon armor_stand 1010 10.6 1030 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_blue"]}
 summon armor_stand 1012 10.6 1032 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_blue"]}
 summon armor_stand 1009 8.6 1036 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_blue"]}
 summon armor_stand 1015 9.6 1035 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_blue"]}
 summon armor_stand 1012 7.6 1036 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_blue"]}
 summon armor_stand 1014 8.6 1039 {Marker:1b,Invisible:1b,Invulnerable:1b,Small:1b,NoGravity:1b,Tags:["parkour_tempo","tempo_blue"]}
-
 # 显示as
 item replace entity @e[type=armor_stand,tag=tempo_red,tag=parkour_tempo] armor.head with red_stained_glass
 item replace entity @e[type=armor_stand,tag=tempo_blue,tag=parkour_tempo] armor.head with blue_stained_glass

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

@@ -23,4 +23,4 @@ team modify playing collisionRule never
 team modify playing deathMessageVisibility never
 gamerule fallDamage false
 
-schedule function mini:parkour/game_init2 12t replace
+schedule function mini:parkour/game_init2 15t replace

+ 10 - 3
data/mini/functions/parkour/game_init2.mcfunction

@@ -1,10 +1,9 @@
 
 # 清理残余实体
 kill @e[type=falling_block,tag=parkour_block]
-kill @e[tag=treasure_item]
 function mini:main/kill_entity
 
-# 生成节奏方块实体
+# 生成节奏方块与物品刷新标记实体
 function mini:parkour/game/marker_spawn
 
 # 生成传送门实体
@@ -15,8 +14,16 @@ summon minecraft:falling_block 1014 22 1056 {Time:1,NoGravity:1b,BlockState:{Nam
 summon minecraft:falling_block 1014 23 1057 {Time:1,NoGravity:1b,BlockState:{Name:"nether_portal",Properties:{axis:z}},Tags:["parkour_block"]}
 summon minecraft:falling_block 1014 23 1056 {Time:1,NoGravity:1b,BlockState:{Name:"nether_portal",Properties:{axis:z}},Tags:["parkour_block"]}
 
-# 生成物品
+# 生成奖励物品
 execute positioned 1014.50 19.50 1024.50 run function item:bonus_item/gameparty/auto/low
 execute positioned 1015.50 12.00 1019.50 run function item:bonus_item/gameparty/auto/low2
 execute positioned 1024.50 30.50 1038.50 run function item:bonus_item/gameparty/auto/low2
 execute positioned 1004.50 18.50 1043.50 run function item:bonus_item/gameparty/auto/low2
+
+# 生成秘密宝藏
+execute as @e[tag=treasure_secret] at @s run function item:bonus_item/gameparty/auto/low3
+
+# 生成随机宝藏(4 奖励物品,6 秘密宝藏,15 随机宝藏)
+scoreboard players set #item_count mem 25
+execute as @e[tag=bonus_item,x=1000,y=0,z=1000,dx=100,dy=100,dz=100] run scoreboard players remove #item_count mem 1
+execute if score #item_count mem matches 1.. run function mini:parkour/game/generate_loop

+ 7 - 0
data/mini/functions/parkour/tick20.mcfunction

@@ -12,3 +12,10 @@ execute if score $countdown mem matches ..10 as @a at @s run function lib:sounds
 
 # 0s:游戏结束
 execute if score $countdown mem matches 0 run function mini:main/game_end
+
+# 如果当前宝藏不足 14 个,补充宝藏到 20 个
+scoreboard players set #item_count mem 20
+execute as @e[tag=bonus_item,x=1000,y=0,z=1000,dx=100,dy=100,dz=100] run scoreboard players remove #item_count mem 1
+execute if score #item_count mem matches 6.. run tellraw @a ["",{"text": ">> ","color":"gold","bold":true},{"score": {"name": "#item_count","objective": "mem"},"color":"gold"},{"text": " 处新的宝藏已出现!","color":"gold"}]
+execute if score #item_count mem matches 6.. run playsound block.amethyst_block.hit player @a 0 1000000 0 1000000 1
+execute if score #item_count mem matches 6.. run function mini:parkour/game/generate_loop