Ein Raycast2D hat die Methode is_colliding() welche true zurückgibt wenn der Ray etwas trifft.
extends CharacterBody2D
var raycast_length = 10.0
var raycast: RayCast2D
func _ready():
raycast = RayCast2D.new()
raycast.target_position = Vector2(0, raycast_length)
raycast.enabled = true
add_child(raycast)
func is_on_ground():
return raycast.is_colliding()
func _physics_process(delta):
if is_on_ground():
print("Der Spieler steht auf dem Boden.")
else:
print("Der Spieler ist in der Luft.")