Added Hammer
Added Unbreaking tag Renamed rayloop to loop
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
## Raycast Loop
|
||||
|
||||
execute if block ~ ~ ~ minecraft:barrier run scoreboard players set @s lzt_hammer_side_raycast_hit 1
|
||||
|
||||
execute if score @s lzt_hammer_side_raycast_hit matches 1 run function lzstools_hammer:raycast_side/target_coords
|
||||
|
||||
# Advance forward and if nothing found
|
||||
scoreboard players add #distance lzt_hammer_side_raycast 1
|
||||
execute if score @s lzt_hammer_side_raycast_hit matches 0 if score #distance lzt_hammer_side_raycast matches ..451 positioned ^ ^ ^0.01 run function lzstools_hammer:raycast_side/loop
|
@@ -0,0 +1,8 @@
|
||||
## Raycast Start
|
||||
scoreboard players set #distance lzt_hammer_side_raycast 0
|
||||
scoreboard players set @s lzt_hammer_side_raycast_hit 0
|
||||
|
||||
# Raycast
|
||||
execute as @s at @s anchored eyes positioned ^ ^ ^ anchored feet run function lzstools_hammer:raycast_side/loop
|
||||
|
||||
# Clean Data
|
@@ -0,0 +1,22 @@
|
||||
## Get Raycast Target Coords
|
||||
|
||||
# Stored Value for Calc
|
||||
scoreboard players set c16 lzt_hammer_side_raycast 16
|
||||
# Summon Invisible Entity
|
||||
summon area_effect_cloud ~ ~ ~ {Radius:0.01,Duration:1,Tags:["RaycastMark"]}
|
||||
|
||||
# Pixel Calculations
|
||||
execute store result score px lzt_hammer_side_raycast run data get entity @e[tag=RaycastMark,sort=nearest,limit=1] Pos[0] 16
|
||||
scoreboard players operation px lzt_hammer_side_raycast %= c16 lzt_hammer_side_raycast
|
||||
execute if score px lzt_hammer_side_raycast matches ..-1 run scoreboard players add px lzt_hammer_side_raycast 16
|
||||
|
||||
execute store result score py lzt_hammer_side_raycast run data get entity @e[tag=RaycastMark,sort=nearest,limit=1] Pos[1] 16
|
||||
scoreboard players operation py lzt_hammer_side_raycast %= c16 lzt_hammer_side_raycast
|
||||
execute if score py lzt_hammer_side_raycast matches ..-1 run scoreboard players add py lzt_hammer_side_raycast 16
|
||||
|
||||
execute store result score pz lzt_hammer_side_raycast run data get entity @e[tag=RaycastMark,sort=nearest,limit=1] Pos[2] 16
|
||||
scoreboard players operation pz lzt_hammer_side_raycast %= c16 lzt_hammer_side_raycast
|
||||
execute if score pz lzt_hammer_side_raycast matches ..-1 run scoreboard players add pz lzt_hammer_side_raycast 16
|
||||
|
||||
# Remove Entity
|
||||
kill @e[tag=RaycastMark,sort=nearest,limit=1]
|
Reference in New Issue
Block a user