
# -> If rain can't pass through then return and set new value
execute unless block ~ ~ ~ #overly_realistic:rain_passes_through run \
    scoreboard players set #or.global OverlyRealistic.General.ArbitraryData 1

# -> Debug particles
#particle flame ~ ~ ~ 0 0 0 0.001 1 force @a

# -> Increment steps
scoreboard players add #or.Raycast.RayRange OverlyRealistic.General.ArbitraryData 1

# -> Recursive loop
execute unless score #or.Raycast.RayRange OverlyRealistic.General.ArbitraryData matches 30.. \
    unless score #or.global OverlyRealistic.General.ArbitraryData matches 1 \
    positioned ~ ~1 ~ run \
        function overly_realistic:mobs_general/sky_check/ray_travel
