Compare commits

...
7 Commits
Author SHA1 Message Date
lzstealth 2db087f220 Terracotta rotate error
Draft Release / deploy-prod (push) Successful in 26s
2026-08-13 17:19:31 +01:00
lzstealth 2813e4c92a Revert terracotta offhand mode change 2026-08-13 00:19:36 +01:00
lzstealth 1d278003e2 Update pack format for latest Minecraft 2026-08-12 23:00:36 +01:00
lzstealth 3dc3212863 Fix wrench mode predicates 2026-08-12 22:54:25 +01:00
lzstealth a43955e36d Update Hammer Damage
Draft Release / deploy-prod (push) Successful in 3s
2026-02-25 13:36:06 +00:00
lzstealth 0e84867f0a Alphabetized tags
Added waterlogged predicate
Added Chain Variants
Added Copper Golems
Added Shelves
Shrunk Ender Chest hitbox

Moved partial box items into their own folder
2025-10-01 16:49:48 +01:00
lzstealth dec09d4a44 Resolved Chisel Block Place durability AGAIN 2025-05-22 22:46:18 +01:00
164 changed files with 1198 additions and 846 deletions
@@ -1 +1 @@
give @s minecraft:iron_pickaxe[minecraft:item_name={"text":"Hammer","color":"light_purple"},minecraft:custom_model_data={strings:["lzstools:hammer"]},minecraft:custom_data={"lzstools":["hammer"]},minecraft:max_damage=2400]
give @s minecraft:iron_pickaxe[minecraft:item_name={"text":"Hammer","color":"light_purple"},minecraft:custom_model_data={strings:["lzstools:hammer"]},minecraft:custom_data={"lzstools":["hammer"]},minecraft:max_damage=3200]
@@ -1 +1 @@
give @s minecraft:carrot_on_a_stick[minecraft:item_name={"text":"Rotator Wrench","color":"aqua"},minecraft:lore=["Default"],minecraft:custom_model_data={strings:["lzstools:wrench_default"]},minecraft:custom_data={"lzstools":["wrench"]},minecraft:unbreakable={},minecraft:enchantment_glint_override=false,minecraft:tooltip_display={hidden_components:["minecraft:unbreakable"]}]
give @s minecraft:carrot_on_a_stick[minecraft:item_name={"text":"Rotator Wrench","color":"aqua"},minecraft:lore=[{"text":"Default"}],minecraft:custom_model_data={strings:["lzstools:wrench_default"]},minecraft:custom_data={"lzstools":["wrench"]},minecraft:unbreakable={},minecraft:enchantment_glint_override=false,minecraft:tooltip_display={hidden_components:["minecraft:unbreakable"]}]
+8
View File
@@ -0,0 +1,8 @@
{
"condition": "minecraft:location_check",
"predicate": {
"fluid": {
"fluids": "#minecraft:water"
}
}
}
+3 -3
View File
@@ -1,10 +1,10 @@
{
"replace": false,
"values": [
"minecraft:furnace",
"minecraft:smoker",
"minecraft:blast_furnace",
"minecraft:carved_pumpkin",
"minecraft:jack_o_lantern"
"minecraft:furnace",
"minecraft:jack_o_lantern",
"minecraft:smoker"
]
}
+19 -17
View File
@@ -1,27 +1,29 @@
{
"replace": false,
"values": [
"#minecraft:rails",
"#minecraft:trapdoors",
"#minecraft:fence_gates",
"#minecraft:campfires",
"#minecraft:all_signs",
"#minecraft:anvil",
"minecraft:hopper",
"minecraft:repeater",
"minecraft:comparator",
"minecraft:calibrated_sculk_sensor",
"#minecraft:campfires",
"#minecraft:chains",
"#minecraft:copper_golem_statues",
"#minecraft:fence_gates",
"#minecraft:lightning_rods",
"#minecraft:rails",
"#minecraft:slabs",
"#minecraft:stairs",
"minecraft:end_rod",
"minecraft:chain",
"minecraft:piston",
"minecraft:sticky_piston",
"minecraft:decorated_pot",
"minecraft:lightning_rod",
"minecraft:stonecutter",
"minecraft:ender_chest",
"#minecraft:trapdoors",
"#minecraft:wooden_shelves",
"minecraft:bell",
"minecraft:grindstone"
"minecraft:calibrated_sculk_sensor",
"minecraft:comparator",
"minecraft:decorated_pot",
"minecraft:end_rod",
"minecraft:ender_chest",
"minecraft:grindstone",
"minecraft:hopper",
"minecraft:piston",
"minecraft:repeater",
"minecraft:sticky_piston",
"minecraft:stonecutter"
]
}
+3 -3
View File
@@ -1,11 +1,11 @@
{
"replace": false,
"values": [
"minecraft:player_head",
"minecraft:zombie_head",
"minecraft:creeper_head",
"minecraft:dragon_head",
"minecraft:player_head",
"minecraft:skeleton_skull",
"minecraft:wither_skeleton_skull",
"minecraft:dragon_head"
"minecraft:zombie_head"
]
}
+10 -10
View File
@@ -2,20 +2,20 @@
"replace": false,
"values": [
"minecraft:bedrock",
"minecraft:structure_block",
"minecraft:structure_void",
"minecraft:jigsaw",
"minecraft:command_block",
"minecraft:chain_command_block",
"minecraft:repeating_command_block",
"minecraft:test_instance_block",
"minecraft:test_block",
"minecraft:light",
"minecraft:command_block",
"minecraft:end_portal",
"minecraft:end_portal_frame",
"minecraft:jigsaw",
"minecraft:lava",
"minecraft:light",
"minecraft:nether_portal",
"minecraft:reinforced_deepslate",
"minecraft:water",
"minecraft:lava"
"minecraft:repeating_command_block",
"minecraft:structure_block",
"minecraft:structure_void",
"minecraft:test_block",
"minecraft:test_instance_block",
"minecraft:water"
]
}
+2 -2
View File
@@ -1,8 +1,8 @@
{
"replace": false,
"values": [
"minecraft:repeater",
"minecraft:comparator",
"minecraft:hopper"
"minecraft:hopper",
"minecraft:repeater"
]
}
+6 -6
View File
@@ -2,13 +2,13 @@
"replace": false,
"values": [
"#minecraft:logs",
"minecraft:quartz_pillar",
"minecraft:purpur_pillar",
"minecraft:hay_block",
"minecraft:bone_block",
"minecraft:basalt",
"minecraft:polished_basalt",
"minecraft:bone_block",
"minecraft:deepslate",
"minecraft:muddy_mangrove_roots"
"minecraft:hay_block",
"minecraft:muddy_mangrove_roots",
"minecraft:polished_basalt",
"minecraft:purpur_pillar",
"minecraft:quartz_pillar"
]
}
@@ -1,3 +1,5 @@
tag @s add lzstools_chisel_mainhand
# Raycast from player's position
function lzstools_chisel:raycast/start
function lzstools_chisel:raycast/start
swing @s mainhand
@@ -0,0 +1,6 @@
# No Shulkers
$execute if items entity @s hotbar.$(chosen_slot) #minecraft:shulker_boxes run return fail
$setblock ~ -64 ~ $(temp_id)
setblock ~ -64 ~ bedrock
$data modify storage lzstools:chisel chosen_block set value "$(temp_id)"
@@ -1,6 +1,2 @@
# No Shulkers
$execute if items entity @s hotbar.$(chosen_slot) #minecraft:shulker_boxes run return fail
$execute if items entity @s hotbar.$(chosen_slot) #minecraft:air run return fail
$setblock ~ -64 ~ $(chosen_block)
setblock ~ -64 ~ bedrock
function lzstools_chisel:select/block_macro with storage lzstools:chisel
data remove storage lzstools:chisel temp_id
@@ -1,2 +1,4 @@
$data modify storage lzstools:chisel chosen_block set from entity @s Inventory[{Slot:$(chosen_slot)b}].id
function lzstools_chisel:select/check_block with storage lzstools:chisel
$data modify storage lzstools:chisel temp_id set from entity @s Inventory[{Slot:$(chosen_slot)b}].id
function lzstools_chisel:select/check_block with storage lzstools:chisel
setblock ~ -64 ~ bedrock
@@ -12,11 +12,11 @@ clone ~ ~ ~ ~ ~ ~ ~ -64 ~ replace
setblock ~ ~ ~ minecraft:air replace
# Break
gamerule doTileDrops false
gamerule minecraft:block_drops false
clone ~ -64 ~ ~ -64 ~ ~ ~ ~ replace
setblock ~ -64 ~ minecraft:bedrock replace
setblock ~ ~ ~ minecraft:air destroy
gamerule doTileDrops true
gamerule minecraft:block_drops true
# Durability
function lzstools_hammer:durability/handle
+1 -1
View File
@@ -15,7 +15,7 @@
"id": "minecraft:iron_pickaxe",
"count": 1,
"components": {
"minecraft:max_damage": 2400,
"minecraft:max_damage": 3200,
"minecraft:item_name": {
"text": "Hammer",
"color": "light_purple",
@@ -1,3 +1,5 @@
tag @s add lzstools_trowel_mainhand
# Raycast from player's position
function lzstools_trowel:raycast/start
function lzstools_trowel:raycast/start
swing @s mainhand
@@ -1,3 +1,5 @@
tag @s add lzstools_trowel_offhand
# Raycast from player's position
function lzstools_trowel:raycast/start
function lzstools_trowel:raycast/start
swing @s offhand
@@ -6,25 +6,27 @@ function lzstools_wrench:raycast/target_coords
# Partial Boxes
execute if block ~ ~ ~ #lzstools:banners run function lzstools_wrench:raycast/partialbox/banners
execute if block ~ ~ ~ #lzstools:skulls run function lzstools_wrench:raycast/partialbox/skulls
execute if block ~ ~ ~ #minecraft:rails run function lzstools_wrench:raycast/partialbox/rails
execute if block ~ ~ ~ #minecraft:trapdoors run function lzstools_wrench:raycast/partialbox/trapdoors
execute if block ~ ~ ~ #minecraft:slabs run function lzstools_wrench:raycast/partialbox/slabs
execute if block ~ ~ ~ #minecraft:stairs run function lzstools_wrench:raycast/partialbox/stairs
execute if block ~ ~ ~ #minecraft:fence_gates run function lzstools_wrench:raycast/partialbox/fence_gates
execute if block ~ ~ ~ #minecraft:campfires run function lzstools_wrench:raycast/partialbox/campfires
execute if block ~ ~ ~ #minecraft:all_signs run function lzstools_wrench:raycast/partialbox/signs
execute if block ~ ~ ~ #minecraft:anvil run function lzstools_wrench:raycast/partialbox/anvils
execute if block ~ ~ ~ minecraft:repeater run function lzstools_wrench:raycast/partialbox/repeater
execute if block ~ ~ ~ minecraft:comparator run function lzstools_wrench:raycast/partialbox/comparator
execute if block ~ ~ ~ minecraft:calibrated_sculk_sensor run function lzstools_wrench:raycast/partialbox/calibrated_sculk_sensor
execute if block ~ ~ ~ minecraft:piston run function lzstools_wrench:raycast/partialbox/pistons
execute if block ~ ~ ~ minecraft:sticky_piston run function lzstools_wrench:raycast/partialbox/pistons
execute if block ~ ~ ~ minecraft:hopper run function lzstools_wrench:raycast/partialbox/hopper
execute if block ~ ~ ~ minecraft:end_rod run function lzstools_wrench:raycast/partialbox/end_rod
execute if block ~ ~ ~ minecraft:lightning_rod run function lzstools_wrench:raycast/partialbox/lightning_rod
execute if block ~ ~ ~ minecraft:chain run function lzstools_wrench:raycast/partialbox/chain
execute if block ~ ~ ~ minecraft:decorated_pot run function lzstools_wrench:raycast/partialbox/decorated_pot
execute if block ~ ~ ~ minecraft:stonecutter run function lzstools_wrench:raycast/partialbox/stonecutter
execute if block ~ ~ ~ minecraft:ender_chest run function lzstools_wrench:raycast/partialbox/ender_chest
execute if block ~ ~ ~ #minecraft:campfires run function lzstools_wrench:raycast/partialbox/campfires
execute if block ~ ~ ~ #minecraft:chains run function lzstools_wrench:raycast/partialbox/chains
execute if block ~ ~ ~ #minecraft:copper_golem_statues run function lzstools_wrench:raycast/partialbox/copper_golem_statues
execute if block ~ ~ ~ #minecraft:fence_gates run function lzstools_wrench:raycast/partialbox/fence_gates
execute if block ~ ~ ~ #minecraft:lightning_rods run function lzstools_wrench:raycast/partialbox/lightning_rods
execute if block ~ ~ ~ #minecraft:rails run function lzstools_wrench:raycast/partialbox/rails
execute if block ~ ~ ~ #minecraft:slabs run function lzstools_wrench:raycast/partialbox/slabs
execute if block ~ ~ ~ #minecraft:stairs run function lzstools_wrench:raycast/partialbox/stairs
execute if block ~ ~ ~ #minecraft:trapdoors run function lzstools_wrench:raycast/partialbox/trapdoors
execute if block ~ ~ ~ #minecraft:wooden_shelves run function lzstools_wrench:raycast/partialbox/wooden_shelves
execute if block ~ ~ ~ minecraft:bell run function lzstools_wrench:raycast/partialbox/bell
execute if block ~ ~ ~ minecraft:calibrated_sculk_sensor run function lzstools_wrench:raycast/partialbox/calibrated_sculk_sensor
execute if block ~ ~ ~ minecraft:comparator run function lzstools_wrench:raycast/partialbox/comparator
execute if block ~ ~ ~ minecraft:decorated_pot run function lzstools_wrench:raycast/partialbox/decorated_pot
execute if block ~ ~ ~ minecraft:end_rod run function lzstools_wrench:raycast/partialbox/end_rod
execute if block ~ ~ ~ minecraft:ender_chest run function lzstools_wrench:raycast/partialbox/ender_chest
execute if block ~ ~ ~ minecraft:grindstone run function lzstools_wrench:raycast/partialbox/grindstone
execute if block ~ ~ ~ minecraft:hopper run function lzstools_wrench:raycast/partialbox/hopper
execute if block ~ ~ ~ minecraft:piston run function lzstools_wrench:raycast/partialbox/pistons
execute if block ~ ~ ~ minecraft:repeater run function lzstools_wrench:raycast/partialbox/repeater
execute if block ~ ~ ~ minecraft:sticky_piston run function lzstools_wrench:raycast/partialbox/pistons
execute if block ~ ~ ~ minecraft:stonecutter run function lzstools_wrench:raycast/partialbox/stonecutter
@@ -1,2 +1,2 @@
# Banners
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 run function lzstools_wrench:rotate/banners/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 run function lzstools_wrench:rotate/partialbox/banners/rotate
@@ -1,2 +1,2 @@
# Calibrated Sculk Sensor
execute if block ~ ~ ~ minecraft:calibrated_sculk_sensor if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/unique_blocks/calibrated_sculk_sensor/rotate
execute if block ~ ~ ~ minecraft:calibrated_sculk_sensor if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/nesw/rotate
@@ -1,2 +1,2 @@
# Campfires
execute if block ~ ~ ~ #minecraft:campfires if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/unique_blocks/campfires/rotate
execute if block ~ ~ ~ #minecraft:campfires if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/partialbox/campfires/rotate
@@ -1,4 +0,0 @@
# Chain
execute if block ~ ~ ~ minecraft:chain[axis=x] if score py lzt_wrench_raycast matches 7..8 if score pz lzt_wrench_raycast matches 7..8 run function lzstools_wrench:rotate/xyz/rotate
execute if block ~ ~ ~ minecraft:chain[axis=y] if score px lzt_wrench_raycast matches 7..8 if score pz lzt_wrench_raycast matches 7..8 run function lzstools_wrench:rotate/xyz/rotate
execute if block ~ ~ ~ minecraft:chain[axis=z] if score px lzt_wrench_raycast matches 7..8 if score py lzt_wrench_raycast matches 7..8 run function lzstools_wrench:rotate/xyz/rotate
@@ -0,0 +1,4 @@
# Chain
execute if block ~ ~ ~ #minecraft:chains[axis=x] if score py lzt_wrench_raycast matches 7..8 if score pz lzt_wrench_raycast matches 7..8 run function lzstools_wrench:rotate/xyz/rotate
execute if block ~ ~ ~ #minecraft:chains[axis=y] if score px lzt_wrench_raycast matches 7..8 if score pz lzt_wrench_raycast matches 7..8 run function lzstools_wrench:rotate/xyz/rotate
execute if block ~ ~ ~ #minecraft:chains[axis=z] if score px lzt_wrench_raycast matches 7..8 if score py lzt_wrench_raycast matches 7..8 run function lzstools_wrench:rotate/xyz/rotate
@@ -1,2 +1,2 @@
# Redstone Comprator
execute if block ~ ~ ~ minecraft:comparator if score py lzt_wrench_raycast matches ..1 run function lzstools_wrench:rotate/unique_blocks/comparator/rotate
execute if block ~ ~ ~ minecraft:comparator if score py lzt_wrench_raycast matches ..1 run function lzstools_wrench:rotate/partialbox/comparator/rotate
@@ -0,0 +1,2 @@
# Signs
execute if score px lzt_wrench_raycast matches 3..12 if score pz lzt_wrench_raycast matches 3..12 if block ~ ~ ~ #minecraft:copper_golem_statues run function lzstools_wrench:rotate/partialbox/copper_golem_statues/rotate
@@ -1,2 +1,2 @@
# Ender Chest
execute if score px lzt_wrench_raycast matches 1..14 if score pz lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches ..14 run function lzstools_wrench:rotate/nesw/rotate
execute if score px lzt_wrench_raycast matches 1..14 if score pz lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches ..14 run function lzstools_wrench:rotate/partialbox/ender_chest/rotate
@@ -1,64 +1,64 @@
# Grindstone
# Floor
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4..15 if score pz lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4..15 if score px lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4..15 if score pz lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4..15 if score px lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4..15 if score pz lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4..15 if score px lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4..15 if score pz lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4..15 if score px lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 7..12 if score pz lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 7..12 if score px lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 7..12 if score pz lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 7..12 if score px lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 7..12 if score pz lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 7..12 if score px lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 7..12 if score pz lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 7..12 if score px lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=floor,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
# Wall
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 2..13 if score pz lzt_wrench_raycast matches 0..11 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 2..13 if score px lzt_wrench_raycast matches 4..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 2..13 if score pz lzt_wrench_raycast matches 4..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 2..13 if score px lzt_wrench_raycast matches 0..11 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 2..13 if score pz lzt_wrench_raycast matches 0..11 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 2..13 if score px lzt_wrench_raycast matches 4..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 2..13 if score pz lzt_wrench_raycast matches 4..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 2..13 if score px lzt_wrench_raycast matches 0..11 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 5..10 if score pz lzt_wrench_raycast matches 3..8 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 5..10 if score px lzt_wrench_raycast matches 7..12 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 5..10 if score pz lzt_wrench_raycast matches 7..12 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 5..10 if score px lzt_wrench_raycast matches 3..8 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 5..10 if score pz lzt_wrench_raycast matches 3..8 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 5..10 if score px lzt_wrench_raycast matches 7..12 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 5..10 if score pz lzt_wrench_raycast matches 7..12 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 5..10 if score px lzt_wrench_raycast matches 3..8 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 9..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 0..6 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 0..6 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 9..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 0..6 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 0..6 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 6..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 9..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 0..6 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 0..6 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 9..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 9..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 0..6 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score pz lzt_wrench_raycast matches 0..6 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 0..6 if score px lzt_wrench_raycast matches 9..15 if block ~ ~ ~ minecraft:grindstone[face=wall,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
# Ceiling
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 0..11 if score pz lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 0..11 if score px lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 0..11 if score pz lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 0..11 if score px lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 0..11 if score pz lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 0..11 if score px lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 0..11 if score pz lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 0..11 if score px lzt_wrench_raycast matches 2..13 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 3..8 if score pz lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 3..8 if score px lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 3..8 if score pz lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 3..8 if score px lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 3..8 if score pz lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 3..8 if score px lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 3..8 if score pz lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..13 if score py lzt_wrench_raycast matches 3..8 if score px lzt_wrench_raycast matches 5..10 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 9..15 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 9..15 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 9..15 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 9..15 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 9..15 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 9..15 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 9..15 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 2..3 if score py lzt_wrench_raycast matches 9..15 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 9..15 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=north] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 9..15 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=east] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 9..15 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=south] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 9..15 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=west] run function lzstools_wrench:rotate/unique_blocks/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 9..15 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=north] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 9..15 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=east] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score px lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 9..15 if score pz lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=south] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
execute if score pz lzt_wrench_raycast matches 12..13 if score py lzt_wrench_raycast matches 9..15 if score px lzt_wrench_raycast matches 6..9 if block ~ ~ ~ minecraft:grindstone[face=ceiling,facing=west] run function lzstools_wrench:rotate/partialbox/grindstone/rotate
@@ -1,8 +1,8 @@
# Hopper
execute if block ~ ~ ~ minecraft:hopper[facing=down] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches ..3 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/unique_blocks/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper[facing=south] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches 4..7 if score pz lzt_wrench_raycast matches 12.. run function lzstools_wrench:rotate/unique_blocks/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper[facing=north] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches 4..7 if score pz lzt_wrench_raycast matches ..3 run function lzstools_wrench:rotate/unique_blocks/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper[facing=east] if score px lzt_wrench_raycast matches 12.. if score py lzt_wrench_raycast matches 4..7 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/unique_blocks/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper[facing=west] if score px lzt_wrench_raycast matches ..3 if score py lzt_wrench_raycast matches 4..7 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/unique_blocks/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4.. if score pz lzt_wrench_raycast matches 4..11 run function lzstools_wrench:rotate/unique_blocks/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper if score py lzt_wrench_raycast matches 10.. run function lzstools_wrench:rotate/unique_blocks/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper[facing=down] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches ..3 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/partialbox/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper[facing=south] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches 4..7 if score pz lzt_wrench_raycast matches 12.. run function lzstools_wrench:rotate/partialbox/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper[facing=north] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches 4..7 if score pz lzt_wrench_raycast matches ..3 run function lzstools_wrench:rotate/partialbox/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper[facing=east] if score px lzt_wrench_raycast matches 12.. if score py lzt_wrench_raycast matches 4..7 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/partialbox/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper[facing=west] if score px lzt_wrench_raycast matches ..3 if score py lzt_wrench_raycast matches 4..7 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/partialbox/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper if score px lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches 4.. if score pz lzt_wrench_raycast matches 4..11 run function lzstools_wrench:rotate/partialbox/hopper/rotate
execute if block ~ ~ ~ minecraft:hopper if score py lzt_wrench_raycast matches 10.. run function lzstools_wrench:rotate/partialbox/hopper/rotate
@@ -1,7 +0,0 @@
# Lightning Rod
execute if block ~ ~ ~ minecraft:lightning_rod[facing=up] if score px lzt_wrench_raycast matches 6..9 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ minecraft:lightning_rod[facing=down] if score px lzt_wrench_raycast matches 6..9 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ minecraft:lightning_rod[facing=south] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ minecraft:lightning_rod[facing=north] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ minecraft:lightning_rod[facing=east] if score py lzt_wrench_raycast matches 6..9 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ minecraft:lightning_rod[facing=west] if score py lzt_wrench_raycast matches 6..9 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
@@ -0,0 +1,7 @@
# Lightning Rod
execute if block ~ ~ ~ #minecraft:lightning_rods[facing=up] if score px lzt_wrench_raycast matches 6..9 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ #minecraft:lightning_rods[facing=down] if score px lzt_wrench_raycast matches 6..9 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ #minecraft:lightning_rods[facing=south] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ #minecraft:lightning_rods[facing=north] if score px lzt_wrench_raycast matches 6..9 if score py lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ #minecraft:lightning_rods[facing=east] if score py lzt_wrench_raycast matches 6..9 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
execute if block ~ ~ ~ #minecraft:lightning_rods[facing=west] if score py lzt_wrench_raycast matches 6..9 if score pz lzt_wrench_raycast matches 6..9 run function lzstools_wrench:rotate/neswud/rotate
@@ -1,6 +1,6 @@
# Rails
execute if block ~ ~ ~ #minecraft:rails if score py lzt_wrench_raycast matches ..1 run function lzstools_wrench:rotate/rails/rotate
execute if block ~ ~ ~ #minecraft:rails[shape=ascending_west] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/rails/rotate
execute if block ~ ~ ~ #minecraft:rails[shape=ascending_east] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/rails/rotate
execute if block ~ ~ ~ #minecraft:rails[shape=ascending_north] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/rails/rotate
execute if block ~ ~ ~ #minecraft:rails[shape=ascending_south] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/rails/rotate
execute if block ~ ~ ~ #minecraft:rails if score py lzt_wrench_raycast matches ..1 run function lzstools_wrench:rotate/partialbox/rails/rotate
execute if block ~ ~ ~ #minecraft:rails[shape=ascending_west] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/partialbox/rails/rotate
execute if block ~ ~ ~ #minecraft:rails[shape=ascending_east] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/partialbox/rails/rotate
execute if block ~ ~ ~ #minecraft:rails[shape=ascending_north] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/partialbox/rails/rotate
execute if block ~ ~ ~ #minecraft:rails[shape=ascending_south] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/partialbox/rails/rotate
@@ -1,2 +1,2 @@
# Redstone Repeater
execute if block ~ ~ ~ minecraft:repeater if score py lzt_wrench_raycast matches ..1 run function lzstools_wrench:rotate/unique_blocks/repeater/rotate
execute if block ~ ~ ~ minecraft:repeater if score py lzt_wrench_raycast matches ..1 run function lzstools_wrench:rotate/partialbox/repeater/rotate
@@ -1,23 +1,23 @@
# Signs
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:standing_signs run function lzstools_wrench:rotate/signs/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=1] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=2] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=3] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=5] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=6] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=7] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=9] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=10] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=11] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=13] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=14] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=15] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=1] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=2] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=3] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=5] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=6] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=7] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=9] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=10] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=11] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=13] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=14] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=15] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches 0..9 if score pz lzt_wrench_raycast matches 7..8 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=0] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches 0..9 if score pz lzt_wrench_raycast matches 7..8 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=8] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score pz lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches 0..9 if score px lzt_wrench_raycast matches 7..8 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=4] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score pz lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches 0..9 if score px lzt_wrench_raycast matches 7..8 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=12] run function lzstools_wrench:rotate/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches 0..9 if score pz lzt_wrench_raycast matches 7..8 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=0] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score px lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches 0..9 if score pz lzt_wrench_raycast matches 7..8 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=8] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score pz lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches 0..9 if score px lzt_wrench_raycast matches 7..8 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=4] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
execute if score pz lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches 0..9 if score px lzt_wrench_raycast matches 7..8 if block ~ ~ ~ #minecraft:ceiling_hanging_signs[rotation=12] run function lzstools_wrench:rotate/partialbox/signs_hanging/rotate
# Wall hanging signs can't be defined with the current method of getting the block ID so these fail as it's updated to the standard hanging sign
# execute if score px lzt_wrench_raycast matches 1..14 if score py lzt_wrench_raycast matches 0..9 if score pz lzt_wrench_raycast matches 7..8 if block ~ ~ ~ #minecraft:wall_hanging_signs[facing=north] run function lzstools_wrench:rotate/signs_wall/rotate
@@ -1,2 +1,2 @@
# Skulls
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/skulls/rotate
execute if score px lzt_wrench_raycast matches 4..11 if score pz lzt_wrench_raycast matches 4..11 if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/partialbox/skulls/rotate
@@ -1,3 +1,3 @@
# Slabs
execute if block ~ ~ ~ #minecraft:slabs[type=top] if score py lzt_wrench_raycast matches 8.. run function lzstools_wrench:rotate/slabs/rotate
execute if block ~ ~ ~ #minecraft:slabs[type=bottom] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/slabs/rotate
execute if block ~ ~ ~ #minecraft:slabs[type=top] if score py lzt_wrench_raycast matches 8.. run function lzstools_wrench:rotate/partialbox/slabs/rotate
execute if block ~ ~ ~ #minecraft:slabs[type=bottom] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/partialbox/slabs/rotate
@@ -3,18 +3,18 @@
execute if block ~ ~ ~ #minecraft:stairs[half=bottom] if score py lzt_wrench_raycast matches ..7 run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs[half=top] if score py lzt_wrench_raycast matches 8.. run function lzstools_wrench:rotate/stairs/rotate
# -x-z
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches ..7 unless block ~ ~ ~ #minecraft:stairs[facing=west,shape=outer_left] unless block ~ ~ ~ #minecraft:stairs[facing=north,shape=outer_right] unless block ~ ~ ~ #minecraft:stairs[facing=east] unless block ~ ~ ~ #minecraft:stairs[facing=south] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches ..7 if block ~ ~ ~ #minecraft:stairs[facing=east,shape=inner_left] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches ..7 if block ~ ~ ~ #minecraft:stairs[facing=south,shape=inner_right] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches ..7 unless block ~ ~ ~ #minecraft:stairs[facing=west,shape=outer_left] unless block ~ ~ ~ #minecraft:stairs[facing=north,shape=outer_right] unless block ~ ~ ~ #minecraft:stairs[facing=east] unless block ~ ~ ~ #minecraft:stairs[facing=south] run function lzstools_wrench:rotate/partialbox/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches ..7 if block ~ ~ ~ #minecraft:stairs[facing=east,shape=inner_left] run function lzstools_wrench:rotate/partialbox/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches ..7 if block ~ ~ ~ #minecraft:stairs[facing=south,shape=inner_right] run function lzstools_wrench:rotate/partialbox/stairs/rotate
# -x+z
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches 8.. unless block ~ ~ ~ #minecraft:stairs[facing=south,shape=outer_left] unless block ~ ~ ~ #minecraft:stairs[facing=west,shape=outer_right] unless block ~ ~ ~ #minecraft:stairs[facing=north] unless block ~ ~ ~ #minecraft:stairs[facing=east] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches 8.. if block ~ ~ ~ #minecraft:stairs[facing=north,shape=inner_left] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches 8.. if block ~ ~ ~ #minecraft:stairs[facing=east,shape=inner_right] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches 8.. unless block ~ ~ ~ #minecraft:stairs[facing=south,shape=outer_left] unless block ~ ~ ~ #minecraft:stairs[facing=west,shape=outer_right] unless block ~ ~ ~ #minecraft:stairs[facing=north] unless block ~ ~ ~ #minecraft:stairs[facing=east] run function lzstools_wrench:rotate/partialbox/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches 8.. if block ~ ~ ~ #minecraft:stairs[facing=north,shape=inner_left] run function lzstools_wrench:rotate/partialbox/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches ..7 if score pz lzt_wrench_raycast matches 8.. if block ~ ~ ~ #minecraft:stairs[facing=east,shape=inner_right] run function lzstools_wrench:rotate/partialbox/stairs/rotate
# +x+z
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches 8.. unless block ~ ~ ~ #minecraft:stairs[facing=east,shape=outer_left] unless block ~ ~ ~ #minecraft:stairs[facing=south,shape=outer_right] unless block ~ ~ ~ #minecraft:stairs[facing=west] unless block ~ ~ ~ #minecraft:stairs[facing=north] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches 8.. if block ~ ~ ~ #minecraft:stairs[facing=west,shape=inner_left] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches 8.. if block ~ ~ ~ #minecraft:stairs[facing=north,shape=inner_right] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches 8.. unless block ~ ~ ~ #minecraft:stairs[facing=east,shape=outer_left] unless block ~ ~ ~ #minecraft:stairs[facing=south,shape=outer_right] unless block ~ ~ ~ #minecraft:stairs[facing=west] unless block ~ ~ ~ #minecraft:stairs[facing=north] run function lzstools_wrench:rotate/partialbox/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches 8.. if block ~ ~ ~ #minecraft:stairs[facing=west,shape=inner_left] run function lzstools_wrench:rotate/partialbox/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches 8.. if block ~ ~ ~ #minecraft:stairs[facing=north,shape=inner_right] run function lzstools_wrench:rotate/partialbox/stairs/rotate
# +x-z
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches ..7 unless block ~ ~ ~ #minecraft:stairs[facing=north,shape=outer_left] unless block ~ ~ ~ #minecraft:stairs[facing=east,shape=outer_right] unless block ~ ~ ~ #minecraft:stairs[facing=south] unless block ~ ~ ~ #minecraft:stairs[facing=west] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches ..7 if block ~ ~ ~ #minecraft:stairs[facing=south,shape=inner_left] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches ..7 if block ~ ~ ~ #minecraft:stairs[facing=west,shape=inner_right] run function lzstools_wrench:rotate/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches ..7 unless block ~ ~ ~ #minecraft:stairs[facing=north,shape=outer_left] unless block ~ ~ ~ #minecraft:stairs[facing=east,shape=outer_right] unless block ~ ~ ~ #minecraft:stairs[facing=south] unless block ~ ~ ~ #minecraft:stairs[facing=west] run function lzstools_wrench:rotate/partialbox/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches ..7 if block ~ ~ ~ #minecraft:stairs[facing=south,shape=inner_left] run function lzstools_wrench:rotate/partialbox/stairs/rotate
execute if block ~ ~ ~ #minecraft:stairs if score px lzt_wrench_raycast matches 8.. if score pz lzt_wrench_raycast matches ..7 if block ~ ~ ~ #minecraft:stairs[facing=west,shape=inner_right] run function lzstools_wrench:rotate/partialbox/stairs/rotate
@@ -1,13 +1,13 @@
# Trapdoors
execute if block ~ ~ ~ #minecraft:trapdoors[open=false,half=top] if score py lzt_wrench_raycast matches 13.. run function lzstools_wrench:rotate/trapdoors/rotate
execute if block ~ ~ ~ #minecraft:trapdoors[open=false,half=bottom] if score py lzt_wrench_raycast matches ..2 run function lzstools_wrench:rotate/trapdoors/rotate
execute if block ~ ~ ~ #minecraft:trapdoors[open=false,half=top] if score py lzt_wrench_raycast matches 13.. run function lzstools_wrench:rotate/partialbox/trapdoors/rotate
execute if block ~ ~ ~ #minecraft:trapdoors[open=false,half=bottom] if score py lzt_wrench_raycast matches ..2 run function lzstools_wrench:rotate/partialbox/trapdoors/rotate
# North
execute if block ~ ~ ~ #minecraft:trapdoors[open=true,facing=north] if score pz lzt_wrench_raycast matches 13.. run function lzstools_wrench:rotate/trapdoors/rotate
execute if block ~ ~ ~ #minecraft:trapdoors[open=true,facing=north] if score pz lzt_wrench_raycast matches 13.. run function lzstools_wrench:rotate/partialbox/trapdoors/rotate
# East
execute if block ~ ~ ~ #minecraft:trapdoors[open=true,facing=east] if score px lzt_wrench_raycast matches ..2 run function lzstools_wrench:rotate/trapdoors/rotate
execute if block ~ ~ ~ #minecraft:trapdoors[open=true,facing=east] if score px lzt_wrench_raycast matches ..2 run function lzstools_wrench:rotate/partialbox/trapdoors/rotate
# South
execute if block ~ ~ ~ #minecraft:trapdoors[open=true,facing=south] if score pz lzt_wrench_raycast matches ..2 run function lzstools_wrench:rotate/trapdoors/rotate
execute if block ~ ~ ~ #minecraft:trapdoors[open=true,facing=south] if score pz lzt_wrench_raycast matches ..2 run function lzstools_wrench:rotate/partialbox/trapdoors/rotate
# West
execute if block ~ ~ ~ #minecraft:trapdoors[open=true,facing=west] if score px lzt_wrench_raycast matches 13.. run function lzstools_wrench:rotate/trapdoors/rotate
execute if block ~ ~ ~ #minecraft:trapdoors[open=true,facing=west] if score px lzt_wrench_raycast matches 13.. run function lzstools_wrench:rotate/partialbox/trapdoors/rotate
@@ -0,0 +1,18 @@
# Wooden Shelves
# North
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=north] if score pz lzt_wrench_raycast matches 13.. run function lzstools_wrench:rotate/nesw/rotate
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=north] if score py lzt_wrench_raycast matches ..3 if score pz lzt_wrench_raycast matches 11.. run function lzstools_wrench:rotate/nesw/rotate
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=north] if score py lzt_wrench_raycast matches 12.. if score pz lzt_wrench_raycast matches 11.. run function lzstools_wrench:rotate/nesw/rotate
# East
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=east] if score px lzt_wrench_raycast matches ..2 run function lzstools_wrench:rotate/nesw/rotate
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=east] if score py lzt_wrench_raycast matches ..3 if score px lzt_wrench_raycast matches ..4 run function lzstools_wrench:rotate/nesw/rotate
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=east] if score py lzt_wrench_raycast matches 12.. if score px lzt_wrench_raycast matches ..4 run function lzstools_wrench:rotate/nesw/rotate
# South
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=south] if score pz lzt_wrench_raycast matches ..2 run function lzstools_wrench:rotate/nesw/rotate
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=south] if score py lzt_wrench_raycast matches ..3 if score pz lzt_wrench_raycast matches ..4 run function lzstools_wrench:rotate/nesw/rotate
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=south] if score py lzt_wrench_raycast matches 12.. if score pz lzt_wrench_raycast matches ..4 run function lzstools_wrench:rotate/nesw/rotate
# West
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=west] if score px lzt_wrench_raycast matches 13.. run function lzstools_wrench:rotate/nesw/rotate
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=west] if score py lzt_wrench_raycast matches ..3 if score px lzt_wrench_raycast matches 11.. run function lzstools_wrench:rotate/nesw/rotate
execute if block ~ ~ ~ #minecraft:wooden_shelves[facing=west] if score py lzt_wrench_raycast matches 12.. if score px lzt_wrench_raycast matches 11.. run function lzstools_wrench:rotate/nesw/rotate
@@ -1,3 +1,3 @@
## Unique Items
execute if block ~ ~ ~ minecraft:crafter run function lzstools_wrench:rotate/unique_blocks/crafter/rotate
execute if block ~ ~ ~ minecraft:crafter run function lzstools_wrench:rotate/partialbox/crafter/rotate
@@ -1,7 +0,0 @@
## Banners
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:lore":["Flip"]}}}] run function lzstools_wrench:rotate/banners/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:lore":["Face Player"]}}}] run function lzstools_wrench:rotate/banners/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:lore":["Face Click"]}}}] run function lzstools_wrench:rotate/banners/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/banners/cycle with storage lzstools:wrench
@@ -2,3 +2,4 @@
execute as @s[nbt={SelectedItem:{components:{"minecraft:lore":["Terracotta"]}}}] run function lzstools_wrench:rotate/glazed_terracotta/mode with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/glazed_terracotta/cycle with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/glazed_terracotta/cycle with storage lzstools:wrench
@@ -1,7 +1,12 @@
## NESW
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:lore":["Flip"]}}}] run function lzstools_wrench:rotate/nesw/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:lore":["Face Player"]}}}] run function lzstools_wrench:rotate/nesw/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:lore":["Face Click"]}}}] run function lzstools_wrench:rotate/nesw/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/nesw/cycle with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run execute if predicate lzstools:waterlogged run function lzstools_wrench:rotate/nesw/waterlogged_flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run execute if predicate lzstools:waterlogged run function lzstools_wrench:rotate/nesw/waterlogged_player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run execute if predicate lzstools:waterlogged run function lzstools_wrench:rotate/nesw/waterlogged_click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run execute if predicate lzstools:waterlogged run function lzstools_wrench:rotate/nesw/waterlogged_cycle with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run execute unless predicate lzstools:waterlogged run function lzstools_wrench:rotate/nesw/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run execute unless predicate lzstools:waterlogged run function lzstools_wrench:rotate/nesw/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run execute unless predicate lzstools:waterlogged run function lzstools_wrench:rotate/nesw/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run execute unless predicate lzstools:waterlogged run function lzstools_wrench:rotate/nesw/cycle with storage lzstools:wrench
@@ -0,0 +1,12 @@
## Click NESW
# Get Raycast Target Coords
function lzstools_wrench:raycast/target_coords
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 0 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 15 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 15 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 0 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/nesw/waterlogged_flip with storage lzstools:wrench
@@ -0,0 +1,6 @@
## Cycle NESW
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=west] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=north] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=east] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=south] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
@@ -0,0 +1,6 @@
## Flip NESW
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=north] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=south] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=east] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=west] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
@@ -0,0 +1,9 @@
## Face Player NESW
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/nesw/waterlogged_flip with storage lzstools:wrench
@@ -1,7 +1,13 @@
## NESW UD
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:lore":["Flip"]}}}] run function lzstools_wrench:rotate/neswud/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:lore":["Face Player"]}}}] run function lzstools_wrench:rotate/neswud/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:lore":["Face Click"]}}}] run function lzstools_wrench:rotate/neswud/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/neswud/cycle with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run execute if predicate lzstools:waterlogged run function lzstools_wrench:rotate/neswud/waterlogged_flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run execute if predicate lzstools:waterlogged run function lzstools_wrench:rotate/neswud/waterlogged_player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run execute if predicate lzstools:waterlogged run function lzstools_wrench:rotate/neswud/waterlogged_click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run execute if predicate lzstools:waterlogged run function lzstools_wrench:rotate/neswud/waterlogged_cycle with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run execute unless predicate lzstools:waterlogged run function lzstools_wrench:rotate/neswud/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run execute unless predicate lzstools:waterlogged run function lzstools_wrench:rotate/neswud/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run execute unless predicate lzstools:waterlogged run function lzstools_wrench:rotate/neswud/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run execute unless predicate lzstools:waterlogged run function lzstools_wrench:rotate/neswud/cycle with storage lzstools:wrench
@@ -0,0 +1,14 @@
## Face Click NESWUD
# Get Raycast Target Coords
function lzstools_wrench:raycast/target_coords
$execute as @s[scores={lzt_wrench_success=0}] if score py lzt_wrench_raycast matches 15 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=up] replace
$execute as @s[scores={lzt_wrench_success=0}] if score py lzt_wrench_raycast matches 0 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=down] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 0 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 15 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 15 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 0 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/neswud/waterlogged_flip with storage lzstools:wrench
@@ -0,0 +1,8 @@
## Cycle NESWUD
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=up] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=down] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=down] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=north] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=east] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=south] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=west] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=up] replace
@@ -0,0 +1,8 @@
## Flip NESWUD
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=up] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=down] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=down] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=up] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=north] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=south] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=east] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[facing=west] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
@@ -0,0 +1,11 @@
## Face Player NESWUD
$execute as @s[scores={lzt_wrench_success=0}, x_rotation=45..90] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=up] replace
$execute as @s[scores={lzt_wrench_success=0}, x_rotation=-90..-45] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=down] replace
$execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=-45..45] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=45..135] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=135..-135] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/neswud/waterlogged_flip with storage lzstools:wrench
@@ -10,4 +10,4 @@ $execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast mat
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 4 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[rotation=4] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/banners/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/banners/flip with storage lzstools:wrench
@@ -18,4 +18,4 @@ $execute as @s[scores={lzt_wrench_success=0}, y_rotation=-56.25..-33.75] store r
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-33.75..-11.25] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[rotation=7] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/banners/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/banners/flip with storage lzstools:wrench
@@ -0,0 +1,7 @@
## Banners
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run function lzstools_wrench:rotate/partialbox/banners/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/banners/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run function lzstools_wrench:rotate/partialbox/banners/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/banners/cycle with storage lzstools:wrench
@@ -0,0 +1,16 @@
## Campfires Cycle
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=west] run setblock ~ ~ ~ $(block)[waterlogged=true,lit=false,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=north] run setblock ~ ~ ~ $(block)[waterlogged=true,lit=false,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=east] run setblock ~ ~ ~ $(block)[waterlogged=true,lit=false,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=south] run setblock ~ ~ ~ $(block)[waterlogged=true,lit=false,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[lit=true,facing=west] run setblock ~ ~ ~ $(block)[lit=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[lit=true,facing=north] run setblock ~ ~ ~ $(block)[lit=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[lit=true,facing=east] run setblock ~ ~ ~ $(block)[lit=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[lit=true,facing=south] run setblock ~ ~ ~ $(block)[lit=true,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[lit=false,facing=west] run setblock ~ ~ ~ $(block)[lit=false,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[lit=false,facing=north] run setblock ~ ~ ~ $(block)[lit=false,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[lit=false,facing=east] run setblock ~ ~ ~ $(block)[lit=false,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[lit=false,facing=south] run setblock ~ ~ ~ $(block)[lit=false,facing=west] replace
@@ -1,3 +1,3 @@
## Campfires
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/unique_blocks/campfires/cycle with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/campfires/cycle with storage lzstools:wrench
@@ -15,4 +15,4 @@ $execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast mat
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 0 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[mode=subtract] run setblock ~ ~ ~ $(block)[mode=subtract,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/unique_blocks/comparator/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/comparator/flip with storage lzstools:wrench
@@ -12,4 +12,4 @@ $execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success unless block ~ ~ ~ $(block)[facing=west] run execute if block ~ ~ ~ $(block)[mode=subtract] run setblock ~ ~ ~ $(block)[mode=subtract,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/unique_blocks/comparator/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/comparator/flip with storage lzstools:wrench
@@ -0,0 +1,7 @@
## Comparator
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run function lzstools_wrench:rotate/partialbox/comparator/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/comparator/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run function lzstools_wrench:rotate/partialbox/comparator/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/comparator/cycle with storage lzstools:wrench
@@ -0,0 +1,47 @@
## Click Copper Golems
# Get Raycast Target Coords
function lzstools_wrench:raycast/target_coords
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 12 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 3 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/copper_golem_statues/flip with storage lzstools:wrench
@@ -0,0 +1,41 @@
## Cycle NESW
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=west] replace
@@ -0,0 +1,41 @@
## Flip Copper Golems
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=north] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=south] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=east] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star,facing=west] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=east] replace
@@ -0,0 +1,44 @@
## Face Player Copper Golems
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=north,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=east,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=south,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=west,waterlogged=true] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=standing] run setblock ~ ~ ~ $(block)[copper_golem_pose=standing,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=sitting] run setblock ~ ~ ~ $(block)[copper_golem_pose=sitting,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=running] run setblock ~ ~ ~ $(block)[copper_golem_pose=running,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[copper_golem_pose=star] run setblock ~ ~ ~ $(block)[copper_golem_pose=star,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/copper_golem_statues/flip with storage lzstools:wrench
@@ -0,0 +1,7 @@
## Copper Golems
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run function lzstools_wrench:rotate/partialbox/copper_golem_statues/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/copper_golem_statues/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run function lzstools_wrench:rotate/partialbox/copper_golem_statues/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/copper_golem_statues/cycle with storage lzstools:wrench
@@ -17,4 +17,4 @@ $execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast mat
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 0 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[orientation=west_up] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/unique_blocks/crafter/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/crafter/flip with storage lzstools:wrench
@@ -14,4 +14,4 @@ $execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=135
$execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[orientation=west_up] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/unique_blocks/crafter/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/crafter/flip with storage lzstools:wrench
@@ -0,0 +1,7 @@
## Crafter
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run function lzstools_wrench:rotate/partialbox/crafter/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/crafter/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run function lzstools_wrench:rotate/partialbox/crafter/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/crafter/cycle with storage lzstools:wrench
@@ -0,0 +1,17 @@
## Click NESW
# Get Raycast Target Coords
function lzstools_wrench:raycast/target_coords
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 1 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 14 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 14 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 1 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 1 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 14 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 14 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 1 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/ender_chest/flip with storage lzstools:wrench
@@ -0,0 +1,11 @@
## Cycle Ender Chest
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=west] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=north] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=east] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=south] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=west] run setblock ~ ~ ~ $(block)[facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=north] run setblock ~ ~ ~ $(block)[facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=east] run setblock ~ ~ ~ $(block)[facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=south] run setblock ~ ~ ~ $(block)[facing=west] replace
@@ -0,0 +1,11 @@
## Flip Ender Chest
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=north] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=south] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=east] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=west] run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=north] run setblock ~ ~ ~ $(block)[facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=south] run setblock ~ ~ ~ $(block)[facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=east] run setblock ~ ~ ~ $(block)[facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[facing=west] run setblock ~ ~ ~ $(block)[facing=east] replace
@@ -0,0 +1,14 @@
## Face Player Ender Chest
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,facing=west] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-45..45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=north] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=45..135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=east] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=south] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/ender_chest/flip with storage lzstools:wrench
@@ -0,0 +1,7 @@
## Ender Chest
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run function lzstools_wrench:rotate/partialbox/ender_chest/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/ender_chest/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run function lzstools_wrench:rotate/partialbox/ender_chest/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/ender_chest/cycle with storage lzstools:wrench
@@ -14,4 +14,4 @@ $execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=135
$execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=-135..-45] store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[face=floor,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/unique_blocks/grindstone/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/grindstone/flip with storage lzstools:wrench
@@ -0,0 +1,6 @@
## Grindstone
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run function lzstools_wrench:rotate/partialbox/grindstone/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/grindstone/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/grindstone/cycle with storage lzstools:wrench
@@ -16,4 +16,4 @@ $execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast mat
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 0 store result score @s lzt_wrench_success unless block ~ ~ ~ $(block)[facing=west] run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/unique_blocks/hopper/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/hopper/flip with storage lzstools:wrench
@@ -9,4 +9,4 @@ $execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=135
$execute as @s[scores={lzt_wrench_success=0}, x_rotation=-45..45, y_rotation=-135..-45] store result score @s lzt_wrench_success unless block ~ ~ ~ $(block)[facing=west] run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/unique_blocks/hopper/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/hopper/flip with storage lzstools:wrench
@@ -0,0 +1,7 @@
## Hopper
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run function lzstools_wrench:rotate/partialbox/hopper/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/hopper/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run function lzstools_wrench:rotate/partialbox/hopper/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/hopper/cycle with storage lzstools:wrench
@@ -0,0 +1,5 @@
## Rails
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/rails/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/rails/cycle with storage lzstools:wrench
@@ -25,4 +25,4 @@ $execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast mat
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 0 store result score @s lzt_wrench_success run execute if block ~ ~ ~ $(block)[delay=4] run setblock ~ ~ ~ $(block)[delay=4,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/unique_blocks/repeater/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/repeater/flip with storage lzstools:wrench
@@ -22,4 +22,4 @@ $execute as @s[scores={lzt_wrench_success=0}, y_rotation=135..-135] store result
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-135..-45] store result score @s lzt_wrench_success unless block ~ ~ ~ $(block)[facing=west] run execute if block ~ ~ ~ $(block)[delay=4] run setblock ~ ~ ~ $(block)[delay=4,facing=west] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/unique_blocks/repeater/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/repeater/flip with storage lzstools:wrench
@@ -0,0 +1,7 @@
## Repeater
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run function lzstools_wrench:rotate/partialbox/repeater/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/repeater/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run function lzstools_wrench:rotate/partialbox/repeater/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/repeater/cycle with storage lzstools:wrench
@@ -0,0 +1,18 @@
## Face Click Signs
# Get Raycast Target Coords
function lzstools_wrench:raycast/target_coords
# Signs and Banners don't have full hitboxes, nothing else uses numeric rotation
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 4 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=8] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 11 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=12] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 11 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=0] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 4 store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=4] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 4 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=8] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 11 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=12] replace
$execute as @s[scores={lzt_wrench_success=0}] if score pz lzt_wrench_raycast matches 11 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=0] replace
$execute as @s[scores={lzt_wrench_success=0}] if score px lzt_wrench_raycast matches 4 store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=4] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/signs/flip with storage lzstools:wrench
@@ -0,0 +1,35 @@
## Cycle Signs
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=0] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=1] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=1] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=2] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=2] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=3] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=3] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=4] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=4] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=5] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=5] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=6] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=6] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=7] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=7] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=8] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=8] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=9] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=9] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=10] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=10] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=11] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=11] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=12] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=12] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=13] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=13] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=14] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=14] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=15] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=15] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=0] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=0] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=1] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=1] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=2] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=2] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=3] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=3] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=4] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=4] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=5] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=5] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=6] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=6] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=7] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=7] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=8] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=8] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=9] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=9] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=10] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=10] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=11] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=11] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=12] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=12] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=13] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=13] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=14] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=14] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=15] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=15] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=0] replace
@@ -0,0 +1,35 @@
## Flip Signs
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=0] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=8] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=1] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=9] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=2] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=10] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=3] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=11] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=4] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=12] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=5] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=13] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=6] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=14] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=7] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=15] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=8] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=0] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=9] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=1] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=10] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=2] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=11] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=3] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=12] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=4] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=13] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=5] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=14] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=6] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=15] run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=7] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=0] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=8] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=1] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=9] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=2] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=10] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=3] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=11] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=4] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=12] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=5] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=13] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=6] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=14] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=7] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=15] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=8] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=0] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=9] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=1] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=10] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=2] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=11] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=3] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=12] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=4] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=13] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=5] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=14] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=6] replace
$execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block)[rotation=15] run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=7] replace
@@ -0,0 +1,38 @@
## Face Player Signs
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-11.25..11.25] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=8] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=11.25..33.75] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=9] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=33.75..56.25] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=10] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=56.25..78.75] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=11] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=78.75..101.25] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=12] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=101.25..123.75] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=13] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=123.75..146.25] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=14] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=146.25..168.75] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=15] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=168.75..-168.75] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=0] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-168.75..-146.25] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=1] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-146.25..-123.75] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=2] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-123.75..-101.25] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=3] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-101.25..-78.75] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=4] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-78.75..-56.25] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=5] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-56.25..-33.75] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=6] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-33.75..-11.25] store result score @s lzt_wrench_success run execute if predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=true,rotation=7] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-11.25..11.25] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=8] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=11.25..33.75] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=9] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=33.75..56.25] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=10] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=56.25..78.75] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=11] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=78.75..101.25] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=12] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=101.25..123.75] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=13] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=123.75..146.25] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=14] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=146.25..168.75] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=15] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=168.75..-168.75] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=0] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-168.75..-146.25] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=1] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-146.25..-123.75] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=2] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-123.75..-101.25] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=3] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-101.25..-78.75] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=4] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-78.75..-56.25] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=5] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-56.25..-33.75] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=6] replace
$execute as @s[scores={lzt_wrench_success=0}, y_rotation=-33.75..-11.25] store result score @s lzt_wrench_success run execute unless predicate lzstools:waterlogged run execute if block ~ ~ ~ $(block) run setblock ~ ~ ~ $(block)[waterlogged=false,rotation=7] replace
# Otherwise, Flip
execute as @s[scores={lzt_wrench_success=0}] store result score @s lzt_wrench_success run function lzstools_wrench:rotate/partialbox/signs/flip with storage lzstools:wrench
@@ -0,0 +1,7 @@
## Signs
# Rotate Based on Wrench Mode
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_flip"]}}}}] run function lzstools_wrench:rotate/partialbox/signs/flip with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_player"]}}}}] run function lzstools_wrench:rotate/partialbox/signs/player with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0},nbt={SelectedItem:{components:{"minecraft:custom_model_data":{"strings":["lzstools:wrench_face_click"]}}}}] run function lzstools_wrench:rotate/partialbox/signs/click with storage lzstools:wrench
execute as @s[scores={lzt_wrench_success=0}] run function lzstools_wrench:rotate/partialbox/signs/cycle with storage lzstools:wrench

Some files were not shown because too many files have changed in this diff Show More