4 Commits
1.0 ... 1.2

Author SHA1 Message Date
7838cc6eeb Added Waterlogged Rails
Added all waterlogged rail variants.
Removed Face Click option for rails, this would only use the Player Click option which was confusing.
2023-12-18 15:56:19 +00:00
3a47b0c2d6 Added Cherry Logs 2023-12-18 11:35:26 +00:00
7e53d272dc Raycast Fix 2023-12-16 22:59:48 +00:00
fba82a2f51 remove worklfow 2023-12-16 22:42:57 +00:00
9 changed files with 292 additions and 134 deletions

View File

@@ -1,22 +0,0 @@
name: Create release
on:
release:
types:
- created
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Zip Folder
run: zip -r ${{ github.event.repository.name }}.zip ./Wrench/
- name: Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: ${{ github.event.repository.name }}.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -16,5 +16,5 @@ execute as @s[scores={WrenchSuccess=1..}] run playsound minecraft:entity.item_fr
execute if score WrenchDebug WrenchConfig matches 1 run summon area_effect_cloud ~ ~ ~ {Particle:happy_villager,Radius:0.01,Duration:2}
# Advance forward and if nothing found
scoreboard players add #distance raycast 1
execute if score @s WrenchSuccess matches 0 if score #distance raycast matches ..350 positioned ^ ^ ^0.01 run function wrench:raycast/rayloop
scoreboard players add #distance WrenchRaycast 1
execute if score @s WrenchSuccess matches 0 if score #distance WrenchRaycast matches ..350 positioned ^ ^ ^0.01 run function wrench:raycast/rayloop

View File

@@ -1,7 +1,7 @@
#Setting up the raycasting data.
tag @s add raycast
scoreboard players set #distance raycast 0
scoreboard players set #distance WrenchRaycast 0
#Activating the raycast. This function will call itself until it is done.

View File

@@ -65,6 +65,27 @@ execute as @s[scores={WrenchSuccess=0}] unless score pz WrenchRaycast matches 1.
execute as @s[scores={WrenchSuccess=0}] unless score py WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_birch_wood[axis=y] replace minecraft:stripped_birch_wood
execute as @s[scores={WrenchSuccess=0}] unless score px WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_birch_wood[axis=x] replace minecraft:stripped_birch_wood
# Cherry Log
execute as @s[scores={WrenchSuccess=0}] unless score pz WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=z] replace minecraft:cherry_log
execute as @s[scores={WrenchSuccess=0}] unless score py WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=y] replace minecraft:cherry_log
execute as @s[scores={WrenchSuccess=0}] unless score px WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=x] replace minecraft:cherry_log
# Cherry Log (Stripped)
execute as @s[scores={WrenchSuccess=0}] unless score pz WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=z] replace minecraft:stripped_cherry_log
execute as @s[scores={WrenchSuccess=0}] unless score py WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=y] replace minecraft:stripped_cherry_log
execute as @s[scores={WrenchSuccess=0}] unless score px WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=x] replace minecraft:stripped_cherry_log
# Cherry Wood
execute as @s[scores={WrenchSuccess=0}] unless score pz WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=z] replace minecraft:cherry_wood
execute as @s[scores={WrenchSuccess=0}] unless score py WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=y] replace minecraft:cherry_wood
execute as @s[scores={WrenchSuccess=0}] unless score px WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=x] replace minecraft:cherry_wood
# Cherry Wood (Stripped)
execute as @s[scores={WrenchSuccess=0}] unless score pz WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=z] replace minecraft:stripped_cherry_wood
execute as @s[scores={WrenchSuccess=0}] unless score py WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=y] replace minecraft:stripped_cherry_wood
execute as @s[scores={WrenchSuccess=0}] unless score px WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=x] replace minecraft:stripped_cherry_wood
# Dark Oak Log
execute as @s[scores={WrenchSuccess=0}] unless score pz WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:dark_oak_log[axis=z] replace minecraft:dark_oak_log
execute as @s[scores={WrenchSuccess=0}] unless score py WrenchRaycast matches 1..14 store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:dark_oak_log[axis=y] replace minecraft:dark_oak_log

View File

@@ -42,6 +42,26 @@ execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_birch_wood[axis=y] replace minecraft:stripped_birch_wood[axis=x]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_birch_wood[axis=x] replace minecraft:stripped_birch_wood[axis=z]
# Cherry Log
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=z] replace minecraft:cherry_log[axis=y]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=y] replace minecraft:cherry_log[axis=x]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=x] replace minecraft:cherry_log[axis=z]
# Cherry Log (Stripped)
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=z] replace minecraft:stripped_cherry_log[axis=y]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=y] replace minecraft:stripped_cherry_log[axis=x]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=x] replace minecraft:stripped_cherry_log[axis=z]
# Cherry Wood
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=z] replace minecraft:cherry_wood[axis=y]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=y] replace minecraft:cherry_wood[axis=x]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=x] replace minecraft:cherry_wood[axis=z]
# Cherry Wood (Stripped)
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=z] replace minecraft:stripped_cherry_wood[axis=y]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=y] replace minecraft:stripped_cherry_wood[axis=x]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=x] replace minecraft:stripped_cherry_wood[axis=z]
# Dark Oak Log
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:dark_oak_log[axis=z] replace minecraft:dark_oak_log[axis=y]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:dark_oak_log[axis=y] replace minecraft:dark_oak_log[axis=x]

View File

@@ -66,6 +66,38 @@ execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=135..-135
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=45..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_birch_wood[axis=x] replace minecraft:stripped_birch_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=-135..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_birch_wood[axis=x] replace minecraft:stripped_birch_wood
# Cherry Log
execute as @s[scores={WrenchSuccess=0}, x_rotation=45..90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=y] replace minecraft:cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-90..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=y] replace minecraft:cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=-45..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=z] replace minecraft:cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=135..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=z] replace minecraft:cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=45..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=x] replace minecraft:cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=-135..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_log[axis=x] replace minecraft:cherry_log
# Cherry Log (Stripped)
execute as @s[scores={WrenchSuccess=0}, x_rotation=45..90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=y] replace minecraft:stripped_cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-90..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=y] replace minecraft:stripped_cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=-45..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=z] replace minecraft:stripped_cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=135..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=z] replace minecraft:stripped_cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=45..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=x] replace minecraft:stripped_cherry_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=-135..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_log[axis=x] replace minecraft:stripped_cherry_log
# Cherry Wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=45..90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=y] replace minecraft:cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-90..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=y] replace minecraft:cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=-45..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=z] replace minecraft:cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=135..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=z] replace minecraft:cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=45..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=x] replace minecraft:cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=-135..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:cherry_wood[axis=x] replace minecraft:cherry_wood
# Cherry Wood (Stripped)
execute as @s[scores={WrenchSuccess=0}, x_rotation=45..90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=y] replace minecraft:stripped_cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-90..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=y] replace minecraft:stripped_cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=-45..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=z] replace minecraft:stripped_cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=135..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=z] replace minecraft:stripped_cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=45..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=x] replace minecraft:stripped_cherry_wood
execute as @s[scores={WrenchSuccess=0}, x_rotation=-45..45, y_rotation=-135..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:stripped_cherry_wood[axis=x] replace minecraft:stripped_cherry_wood
# Dark Oak Log
execute as @s[scores={WrenchSuccess=0}, x_rotation=45..90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:dark_oak_log[axis=y] replace minecraft:dark_oak_log
execute as @s[scores={WrenchSuccess=0}, x_rotation=-90..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:dark_oak_log[axis=y] replace minecraft:dark_oak_log

View File

@@ -2,5 +2,4 @@
# Rotate Based on Wrench Mode
execute as @s[scores={WrenchSuccess=0},nbt={SelectedItem:{tag:{display:{Lore:['{"text":"Face Player"}']}}}}] run function wrench:rotate/rails_player
execute as @s[scores={WrenchSuccess=0},nbt={SelectedItem:{tag:{display:{Lore:['{"text":"Face Click"}']}}}}] run function wrench:rotate/rails_player
execute as @s[scores={WrenchSuccess=0}] run function wrench:rotate/rails_cycle

View File

@@ -3,75 +3,127 @@
## Normal Rails
# Convert to Sloped
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_west] replace minecraft:rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_east] replace minecraft:rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_east] replace minecraft:rail[shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_north] replace minecraft:rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_south] replace minecraft:rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_south] replace minecraft:rail[shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_west] replace minecraft:rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_east] replace minecraft:rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_east] replace minecraft:rail[waterlogged=true,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_north] replace minecraft:rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_south] replace minecraft:rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_south] replace minecraft:rail[waterlogged=true,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=ascending_west] replace minecraft:rail[waterlogged=false,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=ascending_east] replace minecraft:rail[waterlogged=false,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=ascending_east] replace minecraft:rail[waterlogged=false,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=ascending_north] replace minecraft:rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=ascending_south] replace minecraft:rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=ascending_south] replace minecraft:rail[waterlogged=false,shape=ascending_north]
# Convert to Non-Sloped
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=east_west] replace minecraft:rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_south] replace minecraft:rail[shape=north_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_west] replace minecraft:rail[shape=north_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_east] replace minecraft:rail[shape=south_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_west] replace minecraft:rail[shape=south_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_east] replace minecraft:rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=east_west] replace minecraft:rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=north_south] replace minecraft:rail[waterlogged=true,shape=north_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=north_west] replace minecraft:rail[waterlogged=true,shape=north_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=north_east] replace minecraft:rail[waterlogged=true,shape=south_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=south_west] replace minecraft:rail[waterlogged=true,shape=south_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=south_east] replace minecraft:rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=east_west] replace minecraft:rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=north_south] replace minecraft:rail[waterlogged=false,shape=north_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=north_west] replace minecraft:rail[waterlogged=false,shape=north_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=north_east] replace minecraft:rail[waterlogged=false,shape=south_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=south_west] replace minecraft:rail[waterlogged=false,shape=south_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=south_east] replace minecraft:rail[waterlogged=false,shape=east_west]
# Convert Sloped to Non-Sloped
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=east_west] replace minecraft:rail[shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=east_west] replace minecraft:rail[shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_east] replace minecraft:rail[shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_east] replace minecraft:rail[shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=east_west] replace minecraft:rail[waterlogged=true,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=east_west] replace minecraft:rail[waterlogged=true,shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=south_east] replace minecraft:rail[waterlogged=true,shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=south_east] replace minecraft:rail[waterlogged=true,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=east_west] replace minecraft:rail[waterlogged=false,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=east_west] replace minecraft:rail[waterlogged=false,shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=south_east] replace minecraft:rail[waterlogged=false,shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=false,shape=south_east] replace minecraft:rail[waterlogged=false,shape=ascending_west]
## Powered Rails
# Convert to Sloped
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_west] replace minecraft:powered_rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_east] replace minecraft:powered_rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_east] replace minecraft:powered_rail[shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_north] replace minecraft:powered_rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_south] replace minecraft:powered_rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_south] replace minecraft:powered_rail[shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_west] replace minecraft:powered_rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_east] replace minecraft:powered_rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_east] replace minecraft:powered_rail[waterlogged=true,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_north] replace minecraft:powered_rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_south] replace minecraft:powered_rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_south] replace minecraft:powered_rail[waterlogged=true,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=ascending_west] replace minecraft:powered_rail[waterlogged=false,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=ascending_east] replace minecraft:powered_rail[waterlogged=false,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=ascending_east] replace minecraft:powered_rail[waterlogged=false,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=ascending_north] replace minecraft:powered_rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=ascending_south] replace minecraft:powered_rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=ascending_south] replace minecraft:powered_rail[waterlogged=false,shape=ascending_north]
# Convert to Non-Sloped
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=east_west] replace minecraft:powered_rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=north_south] replace minecraft:powered_rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=east_west] replace minecraft:powered_rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=north_south] replace minecraft:powered_rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=east_west] replace minecraft:powered_rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=north_south] replace minecraft:powered_rail[waterlogged=false,shape=east_west]
# Convert Sloped to Non-Sloped
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=east_west] replace minecraft:powered_rail[shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=east_west] replace minecraft:powered_rail[shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=north_south] replace minecraft:powered_rail[shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=north_south] replace minecraft:powered_rail[shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=east_west] replace minecraft:powered_rail[waterlogged=true,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=east_west] replace minecraft:powered_rail[waterlogged=true,shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=north_south] replace minecraft:powered_rail[waterlogged=true,shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=north_south] replace minecraft:powered_rail[waterlogged=true,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=east_west] replace minecraft:powered_rail[waterlogged=false,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=east_west] replace minecraft:powered_rail[waterlogged=false,shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=north_south] replace minecraft:powered_rail[waterlogged=false,shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=false,shape=north_south] replace minecraft:powered_rail[waterlogged=false,shape=ascending_west]
## Activator Rails
# Convert to Sloped
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_west] replace minecraft:activator_rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_east] replace minecraft:activator_rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_east] replace minecraft:activator_rail[shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_north] replace minecraft:activator_rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_south] replace minecraft:activator_rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_south] replace minecraft:activator_rail[shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_west] replace minecraft:activator_rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_east] replace minecraft:activator_rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_east] replace minecraft:activator_rail[waterlogged=true,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_north] replace minecraft:activator_rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_south] replace minecraft:activator_rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_south] replace minecraft:activator_rail[waterlogged=true,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=ascending_west] replace minecraft:activator_rail[waterlogged=false,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=ascending_east] replace minecraft:activator_rail[waterlogged=false,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=ascending_east] replace minecraft:activator_rail[waterlogged=false,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=ascending_north] replace minecraft:activator_rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=ascending_south] replace minecraft:activator_rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=ascending_south] replace minecraft:activator_rail[waterlogged=false,shape=ascending_north]
# Convert to Non-Sloped
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=east_west] replace minecraft:activator_rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=north_south] replace minecraft:activator_rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=east_west] replace minecraft:activator_rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=north_south] replace minecraft:activator_rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=east_west] replace minecraft:activator_rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=north_south] replace minecraft:activator_rail[waterlogged=false,shape=east_west]
# Convert Sloped to Non-Sloped
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=east_west] replace minecraft:activator_rail[shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=east_west] replace minecraft:activator_rail[shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=north_south] replace minecraft:activator_rail[shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=north_south] replace minecraft:activator_rail[shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=east_west] replace minecraft:activator_rail[waterlogged=true,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=east_west] replace minecraft:activator_rail[waterlogged=true,shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=north_south] replace minecraft:activator_rail[waterlogged=true,shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=north_south] replace minecraft:activator_rail[waterlogged=true,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=east_west] replace minecraft:activator_rail[waterlogged=false,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=east_west] replace minecraft:activator_rail[waterlogged=false,shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=north_south] replace minecraft:activator_rail[waterlogged=false,shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=false,shape=north_south] replace minecraft:activator_rail[waterlogged=false,shape=ascending_west]
## Detector Rails
# Convert to Sloped
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_west] replace minecraft:detector_rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_east] replace minecraft:detector_rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_east] replace minecraft:detector_rail[shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_north] replace minecraft:detector_rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_south] replace minecraft:detector_rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_south] replace minecraft:detector_rail[shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_west] replace minecraft:detector_rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_east] replace minecraft:detector_rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_east] replace minecraft:detector_rail[waterlogged=true,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_north] replace minecraft:detector_rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_south] replace minecraft:detector_rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_south] replace minecraft:detector_rail[waterlogged=true,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=ascending_west] replace minecraft:detector_rail[waterlogged=false,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=ascending_east] replace minecraft:detector_rail[waterlogged=false,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=ascending_east] replace minecraft:detector_rail[waterlogged=false,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=ascending_north] replace minecraft:detector_rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=ascending_south] replace minecraft:detector_rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=ascending_south] replace minecraft:detector_rail[waterlogged=false,shape=ascending_north]
# Convert to Non-Sloped
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=east_west] replace minecraft:detector_rail[shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=north_south] replace minecraft:detector_rail[shape=east_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=east_west] replace minecraft:detector_rail[waterlogged=true,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=north_south] replace minecraft:detector_rail[waterlogged=true,shape=east_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=east_west] replace minecraft:detector_rail[waterlogged=false,shape=north_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=north_south] replace minecraft:detector_rail[waterlogged=false,shape=east_west]
# Convert Sloped to Non-Sloped
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=east_west] replace minecraft:detector_rail[shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=east_west] replace minecraft:detector_rail[shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=north_south] replace minecraft:detector_rail[shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=north_south] replace minecraft:detector_rail[shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=east_west] replace minecraft:detector_rail[waterlogged=true,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=east_west] replace minecraft:detector_rail[waterlogged=true,shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=north_south] replace minecraft:detector_rail[waterlogged=true,shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=north_south] replace minecraft:detector_rail[waterlogged=true,shape=ascending_west]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=east_west] replace minecraft:detector_rail[waterlogged=false,shape=ascending_north]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=east_west] replace minecraft:detector_rail[waterlogged=false,shape=ascending_south]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=north_south] replace minecraft:detector_rail[waterlogged=false,shape=ascending_east]
execute as @s[scores={WrenchSuccess=0}] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=false,shape=north_south] replace minecraft:detector_rail[waterlogged=false,shape=ascending_west]

View File

@@ -3,82 +3,138 @@
## Normal Rails
# Sloped up
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_south] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_west] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_north] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_east] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_south] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_west] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_north] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_east] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_south] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_west] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_north] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_east] replace minecraft:rail[waterlogged=false]
# Sloped down
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_north] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_east] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_south] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_west] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_north] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_east] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_south] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=ascending_west] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_north] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_east] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_south] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=ascending_west] replace minecraft:rail[waterlogged=false]
# Straight
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_south] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=east_west] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_south] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=east_west] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=north_south] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=east_west] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=north_south] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=east_west] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_south] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=east_west] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_south] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=east_west] replace minecraft:rail[waterlogged=false]
# Curved
execute as @s[scores={WrenchSuccess=0}, y_rotation=0..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_west] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_east] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=90..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_east] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..180] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_west] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=180..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_east] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_west] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-90..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_west] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..-0] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_east] replace minecraft:rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=0..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=north_west] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=south_east] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=90..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=north_east] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..180] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=south_west] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=180..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=south_east] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=north_west] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-90..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=south_west] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..-0] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[waterlogged=true,shape=north_east] replace minecraft:rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=0..45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_west] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_east] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=90..135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_east] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..180] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_west] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=180..-135] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_east] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-90] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_west] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-90..-45] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=south_west] replace minecraft:rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..-0] store result score @s WrenchSuccess run fill ~ ~ ~ ~ ~ ~ minecraft:rail[shape=north_east] replace minecraft:rail[waterlogged=false]
## Powered Rails
# Sloped up
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_south] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_west] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_north] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_east] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_south] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_west] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_north] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_east] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_south] replace minecraft:powered_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_west] replace minecraft:powered_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_north] replace minecraft:powered_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_east] replace minecraft:powered_rail[waterlogged=false]
# Sloped down
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_north] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_east] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_south] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_west] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_north] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_east] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_south] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=ascending_west] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_north] replace minecraft:powered_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_east] replace minecraft:powered_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_south] replace minecraft:powered_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=ascending_west] replace minecraft:powered_rail[waterlogged=false]
# Straight
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=north_south] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=east_west] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=north_south] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=east_west] replace minecraft:powered_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=north_south] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=east_west] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=north_south] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[waterlogged=true,shape=east_west] replace minecraft:powered_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=north_south] replace minecraft:powered_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=east_west] replace minecraft:powered_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=north_south] replace minecraft:powered_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:powered_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:powered_rail[shape=east_west] replace minecraft:powered_rail[waterlogged=false]
## Activator Rails
# Sloped up
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_south] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_west] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_north] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_east] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_south] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_west] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_north] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_east] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_south] replace minecraft:activator_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_west] replace minecraft:activator_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_north] replace minecraft:activator_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_east] replace minecraft:activator_rail[waterlogged=false]
# Sloped down
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_north] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_east] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_south] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_west] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_north] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_east] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_south] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=ascending_west] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_north] replace minecraft:activator_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_east] replace minecraft:activator_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_south] replace minecraft:activator_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=ascending_west] replace minecraft:activator_rail[waterlogged=false]
# Straight
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=north_south] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=east_west] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=north_south] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=east_west] replace minecraft:activator_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=north_south] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=east_west] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=north_south] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[waterlogged=true,shape=east_west] replace minecraft:activator_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=north_south] replace minecraft:activator_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=east_west] replace minecraft:activator_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=north_south] replace minecraft:activator_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:activator_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:activator_rail[shape=east_west] replace minecraft:activator_rail[waterlogged=false]
## Detector Rails
# Sloped up
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_south] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_west] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_north] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_east] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_south] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_west] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_north] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_east] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_south] replace minecraft:detector_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_west] replace minecraft:detector_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_north] replace minecraft:detector_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_east] replace minecraft:detector_rail[waterlogged=false]
# Sloped down
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_north] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_east] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_south] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_west] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_north] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_east] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_south] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=ascending_west] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] if block ~ ~1 ~-1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_north] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_north] replace minecraft:detector_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] if block ~1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_east] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_east] replace minecraft:detector_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] if block ~ ~1 ~1 #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_south] replace minecraft:detector_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] if block ~-1 ~1 ~ #minecraft:rails store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=ascending_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=ascending_west] replace minecraft:detector_rail[waterlogged=false]
# Straight
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=north_south] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=east_west] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=north_south] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=east_west] replace minecraft:detector_rail
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=north_south] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=east_west] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=north_south] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[waterlogged=true,shape=east_west] replace minecraft:detector_rail[waterlogged=true]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-45..45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=north_south] replace minecraft:detector_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=45..135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=east_west] replace minecraft:detector_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=135..-135] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=north_south] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=north_south] replace minecraft:detector_rail[waterlogged=false]
execute as @s[scores={WrenchSuccess=0}, y_rotation=-135..-45] store result score @s WrenchSuccess unless block ~ ~ ~ minecraft:detector_rail[shape=east_west] run fill ~ ~ ~ ~ ~ ~ minecraft:detector_rail[shape=east_west] replace minecraft:detector_rail[waterlogged=false]
## Non-processed