Inital commit
This commit is contained in:
commit
b5089257c5
1005 changed files with 23476 additions and 0 deletions
|
@ -0,0 +1,21 @@
|
|||
data modify entity @s Item.components.minecraft:bundle_contents append from entity @s Item
|
||||
data modify entity @s Item.components.minecraft:bundle_contents prepend from entity @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1] Item
|
||||
data modify entity @s PickupDelay set value 0s
|
||||
execute if items entity @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1] contents minecraft:netherite_chestplate run item modify entity @s contents armored_elytra:armor/netherite
|
||||
execute if items entity @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1] contents minecraft:diamond_chestplate run item modify entity @s contents armored_elytra:armor/diamond
|
||||
execute if items entity @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1] contents minecraft:iron_chestplate run item modify entity @s contents armored_elytra:armor/iron
|
||||
execute if items entity @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1] contents minecraft:golden_chestplate run item modify entity @s contents armored_elytra:armor/gold
|
||||
execute if items entity @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1] contents minecraft:chainmail_chestplate run item modify entity @s contents armored_elytra:armor/chain
|
||||
execute if items entity @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1] contents minecraft:leather_chestplate run item modify entity @s contents armored_elytra:armor/leather
|
||||
execute store success score #success armEly.dummy if items entity @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1] contents *[minecraft:custom_name]
|
||||
execute if score #success armEly.dummy matches 1 run item modify entity @s contents armored_elytra:named_lore
|
||||
execute unless score #success armEly.dummy matches 1 run item modify entity @s contents armored_elytra:lore
|
||||
execute store result score #elytraValue armEly.dummy run data get entity @s Item.components.minecraft:repair_cost
|
||||
data modify storage armored_elytra:storage enchantments set value []
|
||||
function armored_elytra:parse_enchantments/start with entity @s Item.components.minecraft:enchantments
|
||||
data modify storage armored_elytra:storage elytraEnch set from storage armored_elytra:storage enchantments
|
||||
execute as @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1] run function armored_elytra:store_chestplate_values
|
||||
execute store result entity @s Item.components.minecraft:repair_cost int 1 run scoreboard players operation #elytraValue armEly.dummy += #chestplateValue armEly.dummy
|
||||
function armored_elytra:merge_enchantments/start
|
||||
kill @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..2,limit=1]
|
||||
playsound minecraft:block.anvil.use block @a
|
|
@ -0,0 +1,8 @@
|
|||
advancement revoke @s only armored_elytra:break_armored_elytra
|
||||
tag @s add armored_elytra.subject
|
||||
data modify storage armored_elytra:storage item set from entity @s Inventory[{Slot:102b}]
|
||||
data modify storage armored_elytra:storage item.components.minecraft:damage set value 431
|
||||
function armored_elytra:separate_enchantments/start
|
||||
execute as @e[type=minecraft:item,tag=armored_elytra.separated] run function armored_elytra:set_owner
|
||||
item replace entity @s armor.chest with minecraft:air
|
||||
tag @s remove armored_elytra.subject
|
|
@ -0,0 +1,5 @@
|
|||
tag @s add armored_elytra.subject
|
||||
data modify storage armored_elytra:storage item set from entity @s Item
|
||||
function armored_elytra:separate_enchantments/start
|
||||
execute as @e[type=minecraft:item,tag=armored_elytra.separated] run function armored_elytra:copy_burning_elytra_tags
|
||||
kill @s
|
|
@ -0,0 +1,4 @@
|
|||
tag @s add armored_elytra.elytra
|
||||
scoreboard players set #found_chestplate armEly.dummy 0
|
||||
execute align xyz as @e[type=minecraft:item,dx=0,dy=0,dz=0,sort=nearest] if items entity @s contents #armored_elytra:chestplates run function armored_elytra:try_to_armor_elytra
|
||||
tag @s remove armored_elytra.elytra
|
|
@ -0,0 +1,2 @@
|
|||
execute if items entity @s contents minecraft:elytra[minecraft:custom_data~{armored_elytra:{armored:true}}] at @s run function armored_elytra:burn_elytra
|
||||
tag @s add armored_elytra.checked_for_elytra_on_fire
|
|
@ -0,0 +1,4 @@
|
|||
execute unless data storage armored_elytra:storage enchantments[0] run return 0
|
||||
function armored_elytra:construct_levels_compound/process_enchantment with storage armored_elytra:storage enchantments[0]
|
||||
data remove storage armored_elytra:storage enchantments[0]
|
||||
function armored_elytra:construct_levels_compound/next_enchantment
|
|
@ -0,0 +1 @@
|
|||
$data modify storage armored_elytra:storage levels."$(id)" set value $(lvl)
|
|
@ -0,0 +1,2 @@
|
|||
data modify storage armored_elytra:storage levels set value {}
|
||||
function armored_elytra:construct_levels_compound/next_enchantment
|
|
@ -0,0 +1,6 @@
|
|||
data modify storage armored_elytra:storage temp set from entity @e[type=minecraft:item,tag=armored_elytra.subject,limit=1] {}
|
||||
data modify entity @s Motion set from storage armored_elytra:storage temp.Motion
|
||||
data modify entity @s Fire set from storage armored_elytra:storage temp.Fire
|
||||
data modify entity @s PickupDelay set from storage armored_elytra:storage temp.PickupDelay
|
||||
data modify entity @s Owner set from storage armored_elytra:storage temp.Owner
|
||||
tag @s remove armored_elytra.separated
|
|
@ -0,0 +1,4 @@
|
|||
playsound minecraft:block.grindstone.use block @a
|
||||
data modify storage armored_elytra:storage item set from entity @s Item
|
||||
function armored_elytra:separate_enchantments/start
|
||||
kill @s
|
2
datapacks/armored-elytra/data/armored_elytra/function/load.mcfunction
Executable file
2
datapacks/armored-elytra/data/armored_elytra/function/load.mcfunction
Executable file
|
@ -0,0 +1,2 @@
|
|||
scoreboard objectives add armEly.dummy dummy
|
||||
advancement revoke @a only armored_elytra:break_armored_elytra
|
|
@ -0,0 +1,2 @@
|
|||
data modify storage armored_elytra:storage finalEnch append from storage armored_elytra:storage chestplateEnch[0]
|
||||
data remove storage armored_elytra:storage chestplateEnch[0]
|
|
@ -0,0 +1,4 @@
|
|||
data modify storage armored_elytra:storage finalEnch append from storage armored_elytra:storage elytraEnch[-1]
|
||||
data remove storage armored_elytra:storage elytraEnch[-1]
|
||||
scoreboard players remove #elytraTotal armEly.dummy 1
|
||||
execute unless score #elytraTotal armEly.dummy matches 0 run function armored_elytra:merge_enchantments/add_enchantment_from_elytra
|
|
@ -0,0 +1,4 @@
|
|||
data modify storage armored_elytra:storage temp set from storage armored_elytra:storage elytraEnch[0].id
|
||||
execute store success score #success armEly.dummy run data modify storage armored_elytra:storage temp set from storage armored_elytra:storage chestplateEnch[0].id
|
||||
execute if score #success armEly.dummy matches 0 run function armored_elytra:merge_enchantments/compare_levels
|
||||
execute if score #found armEly.dummy matches 0 run function armored_elytra:merge_enchantments/rotate_elytra_enchantment
|
|
@ -0,0 +1,8 @@
|
|||
execute store result score #elytraValue armEly.dummy run data get storage armored_elytra:storage elytraEnch[0].lvl
|
||||
execute store result score #chestplateValue armEly.dummy run data get storage armored_elytra:storage chestplateEnch[0].lvl
|
||||
execute if score #chestplateValue armEly.dummy > #elytraValue armEly.dummy run data modify storage armored_elytra:storage finalEnch append from storage armored_elytra:storage chestplateEnch[0]
|
||||
execute unless score #chestplateValue armEly.dummy > #elytraValue armEly.dummy run data modify storage armored_elytra:storage finalEnch append from storage armored_elytra:storage elytraEnch[0]
|
||||
data remove storage armored_elytra:storage elytraEnch[0]
|
||||
scoreboard players remove #elytraTotal armEly.dummy 1
|
||||
data remove storage armored_elytra:storage chestplateEnch[0]
|
||||
scoreboard players set #found armEly.dummy 1
|
|
@ -0,0 +1,4 @@
|
|||
data modify storage armored_elytra:storage elytraEnch append from storage armored_elytra:storage elytraEnch[0]
|
||||
data remove storage armored_elytra:storage elytraEnch[0]
|
||||
scoreboard players remove #elytraRemaining armEly.dummy 1
|
||||
execute unless score #elytraRemaining armEly.dummy matches 0 run function armored_elytra:merge_enchantments/check_elytra_enchantment
|
|
@ -0,0 +1,6 @@
|
|||
scoreboard players set #found armEly.dummy 0
|
||||
scoreboard players operation #elytraRemaining armEly.dummy = #elytraTotal armEly.dummy
|
||||
execute unless score #elytraTotal armEly.dummy matches 0 run function armored_elytra:merge_enchantments/check_elytra_enchantment
|
||||
execute if score #found armEly.dummy matches 0 run function armored_elytra:merge_enchantments/add_enchantment_from_chestplate
|
||||
scoreboard players remove #chestplateRemaining armEly.dummy 1
|
||||
execute unless score #chestplateRemaining armEly.dummy matches 0 run function armored_elytra:merge_enchantments/shift_chestplate_enchantment
|
|
@ -0,0 +1,8 @@
|
|||
data modify storage armored_elytra:storage finalEnch set value []
|
||||
execute store result score #chestplateRemaining armEly.dummy run data get storage armored_elytra:storage chestplateEnch
|
||||
execute store result score #elytraTotal armEly.dummy run data get storage armored_elytra:storage elytraEnch
|
||||
execute unless score #chestplateRemaining armEly.dummy matches 0 run function armored_elytra:merge_enchantments/shift_chestplate_enchantment
|
||||
execute unless score #elytraTotal armEly.dummy matches 0 run function armored_elytra:merge_enchantments/add_enchantment_from_elytra
|
||||
data modify storage armored_elytra:storage enchantments set from storage armored_elytra:storage finalEnch
|
||||
function armored_elytra:construct_levels_compound/start
|
||||
data modify entity @s Item.components.minecraft:enchantments.levels set from storage armored_elytra:storage levels
|
|
@ -0,0 +1 @@
|
|||
$data modify storage armored_elytra:storage id set value "$(id)$(char)"
|
|
@ -0,0 +1 @@
|
|||
$data modify storage armored_elytra:storage lvl set value $(lvl)$(char)
|
|
@ -0,0 +1,5 @@
|
|||
data modify storage armored_elytra:storage enchantments append value {}
|
||||
data modify storage armored_elytra:storage enchantments[-1].id set from storage armored_elytra:storage id
|
||||
data modify storage armored_elytra:storage enchantments[-1].lvl set from storage armored_elytra:storage lvl
|
||||
data modify storage armored_elytra:storage id set value ""
|
||||
data modify storage armored_elytra:storage lvl set value ""
|
|
@ -0,0 +1,6 @@
|
|||
data remove storage armored_elytra:storage char
|
||||
execute store success score #success armEly.dummy run data modify storage armored_elytra:storage char set string storage armored_elytra:storage levels_string 0 1
|
||||
execute unless score #success armEly.dummy matches 1 run return 0
|
||||
function armored_elytra:parse_enchantments/process_char
|
||||
data modify storage armored_elytra:storage levels_string set string storage armored_elytra:storage levels_string 1
|
||||
function armored_elytra:parse_enchantments/next_char
|
|
@ -0,0 +1,7 @@
|
|||
execute if data storage armored_elytra:storage {char:'"'} store success score #in_id armEly.dummy unless score #in_id armEly.dummy matches 1
|
||||
execute if data storage armored_elytra:storage {char:'"'} run return 0
|
||||
execute if score #in_id armEly.dummy matches 1 run return run function armored_elytra:parse_enchantments/append_char_to_id with storage armored_elytra:storage
|
||||
execute if data storage armored_elytra:storage {char:':'} run return 0
|
||||
execute if data storage armored_elytra:storage {char:','} run return run function armored_elytra:parse_enchantments/append_enchantment
|
||||
execute if data storage armored_elytra:storage {char:'}'} run return run function armored_elytra:parse_enchantments/append_enchantment
|
||||
function armored_elytra:parse_enchantments/append_digit_to_lvl with storage armored_elytra:storage
|
|
@ -0,0 +1,10 @@
|
|||
# Thanks Darukshock for drafting this algorithm!
|
||||
$data modify storage armored_elytra:storage levels_string set value '$(levels)'
|
||||
data modify storage armored_elytra:storage enchantments set value []
|
||||
data modify storage armored_elytra:storage id set value ""
|
||||
data modify storage armored_elytra:storage lvl set value ""
|
||||
scoreboard players set #in_id armEly.dummy 0
|
||||
function armored_elytra:parse_enchantments/next_char
|
||||
data remove storage armored_elytra:storage id
|
||||
data remove storage armored_elytra:storage lvl
|
||||
data remove storage armored_elytra:storage levels_string
|
|
@ -0,0 +1,3 @@
|
|||
schedule function armored_elytra:schedule 1s
|
||||
execute as @e[type=minecraft:item] if items entity @s contents minecraft:elytra[minecraft:damage~{durability:{min:2}},!minecraft:custom_data~{armored_elytra:{armored:true}}] at @s if block ~ ~-0.01 ~ #minecraft:anvil run function armored_elytra:check_for_chestplate
|
||||
execute as @e[type=minecraft:item] if items entity @s contents minecraft:elytra[minecraft:custom_data~{armored_elytra:{armored:true}}] at @s if block ~ ~-0.01 ~ minecraft:grindstone positioned ~ ~-0.01 ~ align xyz positioned ~0.5 ~0.5 ~0.5 run function armored_elytra:grind_elytra
|
|
@ -0,0 +1,3 @@
|
|||
data modify storage armored_elytra:storage chestplateFinalEnch append from storage armored_elytra:storage chestplateEnch[0]
|
||||
data remove storage armored_elytra:storage chestplateEnch[0]
|
||||
scoreboard players remove #chestplateTotal armEly.dummy 1
|
|
@ -0,0 +1,3 @@
|
|||
data modify storage armored_elytra:storage elytraFinalEnch append from storage armored_elytra:storage elytraEnch[0]
|
||||
data remove storage armored_elytra:storage elytraEnch[0]
|
||||
scoreboard players remove #elytraTotal armEly.dummy 1
|
|
@ -0,0 +1,4 @@
|
|||
scoreboard players set #found armEly.dummy 1
|
||||
data modify storage armored_elytra:storage chestplateFinalEnch append from storage armored_elytra:storage enchantments[0]
|
||||
data remove storage armored_elytra:storage chestplateEnch[0]
|
||||
scoreboard players remove #chestplateTotal armEly.dummy 1
|
|
@ -0,0 +1,4 @@
|
|||
data modify storage armored_elytra:storage temp set from storage armored_elytra:storage enchantments[0].id
|
||||
execute store success score #success armEly.dummy run data modify storage armored_elytra:storage temp set from storage armored_elytra:storage chestplateEnch[0].id
|
||||
execute if score #success armEly.dummy matches 0 run function armored_elytra:separate_enchantments/add_enchantment_to_chestplate
|
||||
execute if score #found armEly.dummy matches 0 run function armored_elytra:separate_enchantments/rotate_chestplate_enchantment_2
|
|
@ -0,0 +1,2 @@
|
|||
scoreboard players operation #chestplateRemaining armEly.dummy = #chestplateTotal armEly.dummy
|
||||
function armored_elytra:separate_enchantments/check_chestplate_enchantment
|
|
@ -0,0 +1,4 @@
|
|||
execute store result score #elytraValue armEly.dummy run data get storage armored_elytra:storage elytraEnch[0].lvl
|
||||
execute store result score #chestplateValue armEly.dummy run data get storage armored_elytra:storage chestplateEnch[0].lvl
|
||||
execute if score #chestplateValue armEly.dummy > #elytraValue armEly.dummy run function armored_elytra:separate_enchantments/add_elytra_enchantment
|
||||
execute unless score #chestplateValue armEly.dummy > #elytraValue armEly.dummy run function armored_elytra:separate_enchantments/add_chestplate_enchantment
|
|
@ -0,0 +1,4 @@
|
|||
data modify storage armored_elytra:storage temp set from storage armored_elytra:storage elytraEnch[0].id
|
||||
execute store success score #success armEly.dummy run data modify storage armored_elytra:storage temp set from storage armored_elytra:storage chestplateEnch[0].id
|
||||
execute if score #success armEly.dummy matches 0 run function armored_elytra:separate_enchantments/compare_levels
|
||||
execute unless score #success armEly.dummy matches 0 run function armored_elytra:separate_enchantments/rotate_chestplate_enchantment
|
|
@ -0,0 +1,3 @@
|
|||
scoreboard players operation #chestplateRemaining armEly.dummy = #chestplateTotal armEly.dummy
|
||||
function armored_elytra:separate_enchantments/iterate_chestplate_enchantments
|
||||
execute unless score #elytraTotal armEly.dummy matches 0 unless score #chestplateTotal armEly.dummy matches 0 run function armored_elytra:separate_enchantments/rotate_elytra_enchantment
|
|
@ -0,0 +1,4 @@
|
|||
data modify storage armored_elytra:storage chestplateEnch append from storage armored_elytra:storage chestplateEnch[0]
|
||||
data remove storage armored_elytra:storage chestplateEnch[0]
|
||||
scoreboard players remove #chestplateRemaining armEly.dummy 1
|
||||
execute unless score #chestplateRemaining armEly.dummy matches 0 run function armored_elytra:separate_enchantments/iterate_chestplate_enchantments
|
|
@ -0,0 +1,4 @@
|
|||
data modify storage armored_elytra:storage chestplateEnch append from storage armored_elytra:storage chestplateEnch[0]
|
||||
data remove storage armored_elytra:storage chestplateEnch[0]
|
||||
scoreboard players remove #chestplateRemaining armEly.dummy 1
|
||||
execute unless score #chestplateRemaining armEly.dummy matches 0 run function armored_elytra:separate_enchantments/check_chestplate_enchantment
|
|
@ -0,0 +1,4 @@
|
|||
data modify storage armored_elytra:storage elytraEnch append from storage armored_elytra:storage elytraEnch[0]
|
||||
data remove storage armored_elytra:storage elytraEnch[0]
|
||||
scoreboard players remove #elytraRemaining armEly.dummy 1
|
||||
execute unless score #elytraRemaining armEly.dummy matches 0 run function armored_elytra:separate_enchantments/iterate_elytra_enchantments
|
|
@ -0,0 +1,6 @@
|
|||
scoreboard players set #found armEly.dummy 0
|
||||
execute unless score #chestplateTotal armEly.dummy matches 0 run function armored_elytra:separate_enchantments/check_chestplate_enchantments
|
||||
execute if score #found armEly.dummy matches 0 run data modify storage armored_elytra:storage elytraFinalEnch append from storage armored_elytra:storage enchantments[0]
|
||||
data remove storage armored_elytra:storage enchantments[0]
|
||||
scoreboard players remove #remaining armEly.dummy 1
|
||||
execute unless score #remaining armEly.dummy matches 0 run function armored_elytra:separate_enchantments/shift_enchantment
|
|
@ -0,0 +1,37 @@
|
|||
summon minecraft:item ~ ~ ~ {Tags:["armored_elytra.separated","armored_elytra.elytra"],Item:{id:"minecraft:elytra"}}
|
||||
summon minecraft:item ~ ~ ~ {Tags:["armored_elytra.separated","armored_elytra.chestplate"],Item:{id:"minecraft:chainmail_chestplate"}}
|
||||
data modify storage armored_elytra:storage chestplate set from storage armored_elytra:storage item.components.minecraft:bundle_contents[0]
|
||||
data modify storage armored_elytra:storage elytra set from storage armored_elytra:storage item.components.minecraft:bundle_contents[1]
|
||||
data modify storage armored_elytra:storage enchantments set value []
|
||||
function armored_elytra:parse_enchantments/start with storage armored_elytra:storage elytra.components.minecraft:enchantments
|
||||
data modify storage armored_elytra:storage elytraEnch set from storage armored_elytra:storage enchantments
|
||||
data modify storage armored_elytra:storage enchantments set value []
|
||||
function armored_elytra:parse_enchantments/start with storage armored_elytra:storage chestplate.components.minecraft:enchantments
|
||||
data modify storage armored_elytra:storage chestplateEnch set from storage armored_elytra:storage enchantments
|
||||
data modify storage armored_elytra:storage enchantments set value []
|
||||
function armored_elytra:parse_enchantments/start with storage armored_elytra:storage item.components.minecraft:enchantments
|
||||
execute store result score #elytraTotal armEly.dummy run data get storage armored_elytra:storage elytraEnch
|
||||
execute store result score #chestplateTotal armEly.dummy run data get storage armored_elytra:storage chestplateEnch
|
||||
execute unless score #elytraTotal armEly.dummy matches 0 unless score #chestplateTotal armEly.dummy matches 0 run function armored_elytra:separate_enchantments/start_to_iterate
|
||||
execute store result score #remaining armEly.dummy run data get storage armored_elytra:storage enchantments
|
||||
execute unless score #remaining armEly.dummy matches 0 run function armored_elytra:separate_enchantments/shift_enchantment
|
||||
data modify storage armored_elytra:storage enchantments set from storage armored_elytra:storage elytraFinalEnch
|
||||
function armored_elytra:construct_levels_compound/start
|
||||
data modify storage armored_elytra:storage elytra.components.minecraft:enchantments.levels set from storage armored_elytra:storage levels
|
||||
data modify storage armored_elytra:storage enchantments set from storage armored_elytra:storage chestplateFinalEnch
|
||||
function armored_elytra:construct_levels_compound/start
|
||||
data modify storage armored_elytra:storage chestplate.components.minecraft:enchantments.levels set from storage armored_elytra:storage levels
|
||||
execute store success score #success armEly.dummy if data storage armored_elytra:storage item.components.minecraft:damage
|
||||
execute if score #success armEly.dummy matches 1 run data modify storage armored_elytra:storage elytra.components.minecraft:damage set from storage armored_elytra:storage item.components.minecraft:damage
|
||||
execute unless score #success armEly.dummy matches 1 run data remove storage armored_elytra:storage elytra.components.minecraft:damage
|
||||
execute store success score #success armEly.dummy if data storage armored_elytra:storage item.components.minecraft:custom_name
|
||||
execute if score #success armEly.dummy matches 1 run data modify storage armored_elytra:storage elytra.components.minecraft:custom_name set from storage armored_elytra:storage item.components.minecraft:custom_name
|
||||
execute unless score #success armEly.dummy matches 1 run data remove storage armored_elytra:storage elytra.components.minecraft:custom_name
|
||||
data modify entity @e[type=minecraft:item,tag=armored_elytra.elytra,distance=..0.01,limit=1] Item set from storage armored_elytra:storage elytra
|
||||
data modify entity @e[type=minecraft:item,tag=armored_elytra.chestplate,distance=..0.01,limit=1] Item set from storage armored_elytra:storage chestplate
|
||||
data remove storage armored_elytra:storage elytraFinalEnch
|
||||
data remove storage armored_elytra:storage chestplateFinalEnch
|
||||
data remove storage armored_elytra:storage elytra
|
||||
data remove storage armored_elytra:storage chestplate
|
||||
tag @e[type=minecraft:item,distance=..0.01] remove armored_elytra.elytra
|
||||
tag @e[type=minecraft:item,distance=..0.01] remove armored_elytra.chestplate
|
|
@ -0,0 +1,2 @@
|
|||
scoreboard players operation #elytraRemaining armEly.dummy = #elytraTotal armEly.dummy
|
||||
function armored_elytra:separate_enchantments/iterate_elytra_enchantments
|
|
@ -0,0 +1,2 @@
|
|||
data modify entity @s Owner set from entity @a[tag=armored_elytra.subject,limit=1] UUID
|
||||
tag @s remove armored_elytra.separated
|
|
@ -0,0 +1,4 @@
|
|||
execute store result score #chestplateValue armEly.dummy run data get entity @s Item.components.minecraft:repair_cost
|
||||
data modify storage armored_elytra:storage enchantments set value []
|
||||
function armored_elytra:parse_enchantments/start with entity @s Item.components.minecraft:enchantments
|
||||
data modify storage armored_elytra:storage chestplateEnch set from storage armored_elytra:storage enchantments
|
2
datapacks/armored-elytra/data/armored_elytra/function/tick.mcfunction
Executable file
2
datapacks/armored-elytra/data/armored_elytra/function/tick.mcfunction
Executable file
|
@ -0,0 +1,2 @@
|
|||
schedule function armored_elytra:tick 1t
|
||||
execute as @e[type=minecraft:item,tag=!armored_elytra.checked_for_elytra_on_fire,predicate=armored_elytra:on_fire] run function armored_elytra:check_for_elytra_on_fire
|
|
@ -0,0 +1,5 @@
|
|||
execute if score #found_chestplate armEly.dummy matches 1 run return 0
|
||||
scoreboard players set #found_chestplate armEly.dummy 1
|
||||
tag @s add armored_elytra.chestplate
|
||||
execute as @e[type=minecraft:item,tag=armored_elytra.elytra,dx=0,dy=0,dz=0,limit=1] at @s run function armored_elytra:armor_elytra
|
||||
tag @s remove armored_elytra.chestplate
|
|
@ -0,0 +1,9 @@
|
|||
schedule clear armored_elytra:tick
|
||||
scoreboard objectives remove armEly.dummy
|
||||
data remove storage armored_elytra:storage elytraEnch
|
||||
data remove storage armored_elytra:storage chestplateEnch
|
||||
data remove storage armored_elytra:storage finalEnch
|
||||
data remove storage armored_elytra:storage enchantments
|
||||
data remove storage armored_elytra:storage levels
|
||||
data remove storage armored_elytra:storage item
|
||||
data remove storage armored_elytra:storage temp
|
Loading…
Add table
Add a link
Reference in a new issue