necra-prototypes/pliers.gd

18 lines
533 B
GDScript

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])