class_name TypedLetter extends Control # https://freesound.org/people/edschaefer/sounds/343097/ @onready var label: Label = $Label var letter_size := Vector2.ZERO func _ready() ->void: pass func get_width() -> float: return letter_size.x func add_label(text: String) -> void: label.text = text letter_size = label.get_theme_font("font").get_string_size(label.text, HORIZONTAL_ALIGNMENT_LEFT, -1, label.get_theme_font_size("font_size")) label.pivot_offset = letter_size / 2 $AnimationPlayer.play("spawn") func delete_label() -> void: # todo => delete letter animation queue_free()