extends CharacterBody3D var speed: int = 5 var clumsiness: int = 0 func start(xform): transform = xform velocity = (-xform.basis.z * speed).rotated(Vector3.UP, randf_range(-PI/4, PI/4)) func _physics_process(delta): velocity.z -= speed * delta move_and_slide() func _on_area_3d_area_entered(area: Area3D) -> void: var safety = %ElevatorSafeZone if area == safety: print("Safe!")