class_name SpringCast extends RayCast3D ## Raycast which places its children at the collision point (if any) @export var normal_offset := 0.0 func _process(_delta: float) -> void: if is_colliding(): for child: Node3D in get_children(): child.global_position = get_collision_point() + get_collision_normal() * normal_offset visible = true else: visible = false