class_name Pliers extends Sprite2D signal pliers_used(top_area: Area2D) @onready var pickup_area: PickupArea = $PickupArea @onready var grab_area: Area2D = $GrabArea func _input(event): if event is InputEventMouseButton and pickup_area.is_picked_up and event.is_pressed(): var areas = grab_area.get_overlapping_areas() print("Before sorting:", areas) if not areas.is_empty(): areas.sort_custom(func(a: Area2D, b: Area2D): return a.priority > b.priority) print("After sorting:", areas) pliers_used.emit(areas[0])