aqupa 4 年 前
親
コミット
d91371c579

+ 1 - 0
data/mini/functions/rgb/game/check_conditions.mcfunction

@@ -16,6 +16,7 @@ execute as @e[type=marker,tag=rgb_rule,nbt={data:{enable:1b,conditions:[{type:"p
 execute as @e[type=marker,tag=rgb_rule,nbt={data:{enable:1b,conditions:[{type:"destroy_rule"}]}}] run function mini:rgb/game/conditions/destroy_rule
 execute as @e[type=marker,tag=rgb_rule,nbt={data:{enable:1b,conditions:[{type:"dig_ice"}]}}] run function mini:rgb/game/conditions/dig_ice
 execute as @e[type=marker,tag=rgb_rule,nbt={data:{enable:1b,conditions:[{type:"take_damage"}]}}] run function mini:rgb/game/conditions/take_damage
+execute as @e[type=marker,tag=rgb_rule,nbt={data:{enable:1b,conditions:[{type:"on_fire"}]}}] run function mini:rgb/game/conditions/on_fire
 
 # 分数相关
 execute as @e[type=marker,tag=rgb_rule,nbt={data:{enable:1b,conditions:[{type:"red_ge"}]}}] run function mini:rgb/game/conditions/red_ge

+ 13 - 0
data/mini/functions/rgb/game/conditions/on_fire.mcfunction

@@ -0,0 +1,13 @@
+# as rule marker
+# 着火 value/4 秒
+# 未着火自动归零
+
+execute store result score #temp_scr rgb_sys run data get entity @s data.player.conditions.on_fire
+scoreboard players set #temp rgb_sys 0
+execute store success score #temp rgb_sys unless entity @a[tag=rgb_op,nbt={Fire:-20s}] run scoreboard players add #temp_scr rgb_sys 1
+execute if score #temp rgb_sys matches 0 run scoreboard players set #temp_scr rgb_sys 0
+
+execute store result score #temp rgb_sys run data get entity @s data.conditions[{type:"on_fire"}].value
+execute if score #temp_scr rgb_sys < #temp rgb_sys run data modify entity @s data.enable set value 0
+
+execute store result entity @s data.player.conditions.on_fire short 1 run scoreboard players get #temp_scr rgb_sys

+ 1 - 0
data/mini/functions/rgb/game/give_random_rule.mcfunction

@@ -32,6 +32,7 @@ data modify block 0 0 0 RecordItem.tag.EntityTag.Small set value 1b
 data modify block 0 0 0 RecordItem.tag.EntityTag.ArmorItems set value [{id:"minecraft:stone",Count:1s},{}]
 data modify block 0 0 0 RecordItem.tag.EntityTag.ArmorItems[0].tag.conditions set from block 0 0 0 RecordItem.tag.conditions
 data modify block 0 0 0 RecordItem.tag.EntityTag.ArmorItems[0].tag.events set from block 0 0 0 RecordItem.tag.events
+data modify block 0 0 1 RecordItem.tag.EntityTag.CustomNameVisible set value 1b
 setblock 0 0 0 air destroy
 tag @s add rgb_temp
 execute as @e[nbt={"Item":{"tag":{"rgb_newrule":1b}}},limit=1] run function mini:rgb/game/tp_new_item

+ 1 - 1
data/mini/functions/rgb/game/summon_new_rule.mcfunction

@@ -15,7 +15,7 @@ data modify block 0 1 0 Text1 set value '[{"nbt":"Text1","block":"0 1 0","interp
 function mini:rgb/game/gen_rule_text_2
 
 # 生成实体
-summon armor_stand ~ ~ ~ {Tags:["rgb_new_rule"],Small:1b,ArmorItems:[{id:"minecraft:stone",Count:1b},{}]}
+summon armor_stand ~ ~ ~ {Tags:["rgb_new_rule"],Small:1b,ArmorItems:[{id:"minecraft:stone",Count:1b},{}],CustomNameVisible:1b}
 data modify entity @e[tag=rgb_new_rule,limit=1] CustomName set from block 0 1 0 Text1
 data modify entity @e[tag=rgb_new_rule,limit=1] ArmorItems[0].tag.conditions set from block 0 0 1 Items[0].tag.conditions
 data modify entity @e[tag=rgb_new_rule,limit=1] ArmorItems[0].tag.events set from block 0 0 1 Items[0].tag.events

+ 2 - 2
data/mini/loot_tables/rgb/harmful.json

@@ -76,7 +76,7 @@
                     "functions": [
                         {
                             "function": "minecraft:set_nbt",
-                            "tag": "{conditions:[{name:'{\"text\":\"G≥10\",\"color\":\"green\"}',type:'green_ge',value:10s}],events:[{name:'{\"text\":\"上升5米\",\"color\":\"yellow\"}',type:'tp',direction:'up',value:2s},{name:'{\"text\":\"G-2\",\"color\":\"blue\"}',type:'add_green',value:-2s}]}"
+                            "tag": "{conditions:[{name:'{\"text\":\"G≥10\",\"color\":\"green\"}',type:'green_ge',value:10s}],events:[{name:'{\"text\":\"上升5米\",\"color\":\"yellow\"}',type:'tp',direction:'up',value:2s},{name:'{\"text\":\"G-2\",\"color\":\"green\"}',type:'add_green',value:-2s}]}"
                         }
                     ]
                 },
@@ -87,7 +87,7 @@
                     "functions": [
                         {
                             "function": "minecraft:set_nbt",
-                            "tag": "{conditions:[{name:'{\"text\":\"G≥10\",\"color\":\"green\"}',type:'green_ge',value:10s}],events:[{name:'{\"text\":\"生成苦力怕\",\"color\":\"yellow\"}',type:'summon_creeper'},{name:'{\"text\":\"G-2\",\"color\":\"blue\"}',type:'add_green',value:-2s}]}"
+                            "tag": "{conditions:[{name:'{\"text\":\"G≥10\",\"color\":\"green\"}',type:'green_ge',value:10s}],events:[{name:'{\"text\":\"生成苦力怕\",\"color\":\"yellow\"}',type:'summon_creeper'},{name:'{\"text\":\"G-2\",\"color\":\"green\"}',type:'add_green',value:-2s}]}"
                         }
                     ]
                 }