La-Torreta-del-Drac/scenes/dragon_editor/line_edit.gd
2025-04-09 01:16:47 +02:00

33 lines
931 B
GDScript

extends LineEdit
func _ready() -> void:
connect("text_changed", _text_to_upper)
func _text_to_upper(new_text: String):
var ascii_map := {
"á":"a", "à":"a", "â":"a", "ä":"a", "ã":"a", "å":"a",
"é":"e", "è":"e", "ê":"e", "ë":"e",
"í":"i", "ì":"i", "î":"i", "ï":"i",
"ó":"o", "ò":"o", "ô":"o", "ö":"o", "õ":"o",
"ú":"u", "ù":"u", "û":"u", "ü":"u",
"ñ":"n", "ç":"c",
"Á":"A", "À":"A", "Â":"A", "Ä":"A", "Ã":"A", "Å":"A",
"É":"E", "È":"E", "Ê":"E", "Ë":"E",
"Í":"I", "Ì":"I", "Î":"I", "Ï":"I",
"Ó":"O", "Ò":"O", "Ô":"O", "Ö":"O", "Õ":"O",
"Ú":"U", "Ù":"U", "Û":"U", "Ü":"U",
"Ñ":"N", "Ç":"C"
}
var filtered_text := ""
for c in new_text:
if ascii_map.has(c):
filtered_text += ascii_map[c]
elif c.unicode_at(0) <= 127:
filtered_text += c
var last_caret_column = caret_column
text = filtered_text.to_upper()
caret_column = last_caret_column