#godot #gdscript
#godot #gdscript
Вопрос:
Моя цель состоит в том, что если я введу «points», он покажет мне содержимое переменной, но если я добавлю после нее значение int, это изменит значение переменной
Это то, что у меня есть прямо сейчас:
func add_message(text):
chatLog.bbcode_text = 'n'
chatLog.bbcode_text = text
func text_entered(text):
if text == "points":
chatLog.bbcode_text = ''
add_message("Current value of [color=yellow]Points: [/color]" str("[color=fuchsia]" str(points) "[/color]"))
inputField.text = ''
Ответ №1:
Вы можете взять входной текст и разделить его на слова с split
помощью . Затем возьмите их один за другим:
func text_entered(text):
var tokens = text.split(" ")
var count = tokens.size()
if count == 0:
# (empty input)
return # or whatever
if count > 0 and tokens[0] == "points":
if count > 1 and tokens[1].is_valid_integer():
# points int
var integer = tokens[1].to_int()
points = points integer # or whatever
elif count > 1:
# points invalid_int
pass # or whatever
else:
# points
pass # or whatever
else:
pass # not_points
В приведенном выше коде мы is_valid_integer
проверяем, что текущее слово является целым числом, и если это так, мы можем преобразовать его с to_int
помощью .