Need help with raycast

I want it to check if its air and has the score of 0 and below and then it force tps the player.

# Remove one from the limit
scoreboard players remove .limit raycast 1

# If the raycast has hit a block, do something
execute unless block ~ ~ ~ #magic:pass_through run tp @s ^ ^ ^-0.1

# If the raycast hasn't hit a block, continue, but only if the limit is 1 or more (1..)
execute if block ~ ~ ~ #magic:pass_through positioned ^ ^ ^0.1 if score .limit raycast matches 1.. run function raycast:teleport
execute if block ~ ~ ~ #magic:pass_through positioned ^ ^ ^0.1 if score .limit raycast matches ..0 run tp @s ^ ^ ^-0.1```
Continue to help post