Question about gravity and collisions w/ point-and-click movement

Yes, currently I don’t have access to my computer, but I will send the code asap.

extends CharacterBody3D

@onready var camera := $"Camera-z"

const SPEED = 5.0

var tween
var dur = 0.3

@onready var rayfront := $RayFront
@onready var rayback := $RayBack

var target_position : Vector3
var direction := target_position

@onready var audio: AudioStreamPlayer2D = $"../../../../../SoundEffects" 

func _ready() -> void:
	target_position = position

func _physics_process(delta: float) -> void:
	if not is_on_floor():
		velocity += get_gravity() * delta
	pass
	
	if tween and tween.is_valid():
		if tween.is_running():
			return
		
	var difference := target_position - position
	direction = difference	
			
	velocity.x = direction.x * SPEED
	velocity.z = direction.z * SPEED		
	
	move_and_slide()	
	
func _on_button_up_pressed() -> void:
	target_position += -camera.get_global_transform().basis.z*SPEED
func _on_button_right_pressed() -> void:
	target_position += camera.get_global_transform().basis.x*SPEED	
func _on_button_left_pressed() -> void:
	target_position += -camera.get_global_transform().basis.x*SPEED
func _on_button_down_pressed() -> void:
	target_position += camera.get_global_transform().basis.z*SPEED	
func _on_button_cam_move_pressed() -> void:
	tween = create_tween()
	tween.tween_property(self,"transform:basis", transform.basis.rotated(Vector3.UP, PI/2),dur)