extends TextureButton class_name Card enum Category { Onion, Cabbage, Carrot, Bucket } @export var mouse_follow_speed: int = 50 @export var index : Vector2 = Global.invalid_cell_index @export var category : Category = Category.Cabbage @export var value : int = 0 @export var onion_texture : Texture2D @export var cabbage_texture : Texture2D @export var carrot_texture : Texture2D @export var bucket_texture : Texture2D var origin_pos : Vector2 var has_mouse : bool var settled : bool func setup_card(category: Category, value: int) -> void: origin_pos = global_position setup_sprite() func setup_sprite() -> void: $Value.text = str(value) match category : Category.Onion: texture_normal = onion_texture Category.Cabbage: texture_normal = cabbage_texture Category.Carrot: texture_normal = carrot_texture Category.Bucket: texture_normal = bucket_texture func _on_button_down() -> void: if !settled: has_mouse = true get_node("/root/GameRoot").emit_signal("dragging_card", self) func _on_button_up() -> void: has_mouse = false func _process(delta): pass #if has_mouse and !settled: #global_position = global_position.lerp(get_global_mouse_position(), mouse_follow_speed*delta)