У меня есть две сцены (Профиль и Логин), и я хочу использовать переменную new_profile из Профиля и использовать ее в Логине, но когда я автоматически загружаю Профиль и помечаю его как одноэлементный, это не позволяет мне запустить программу и выдает ошибку индекса и говорит, что узлы, на которые есть ссылки в моих переменных, не существуют, хотя до того, как я его автозагрузил, он работал отлично
Использование переменных из других сцен (Годо)
comment
Привет, добро пожаловать в SO! Не забудьте включить свой код и минимальный воспроизводимый пример stackoverflow.com/help/minimal-reproducible-example
- person Joshua   schedule 22.12.2020
Ответы (1)
Для решения этой задачи вы должны использовать синглтон. Годо называет это автозагрузкой. Перейти к проекту - ›Настройки проекта -› Автозагрузка. Щелкните значок папки. Добавьте свой файл gdscript с необходимыми переменными. Это автоматически заполнит поле справа. Вы можете редактировать это имя по своему усмотрению. Затем нажмите «Добавить». Когда вы играете в свою программу, эти переменные будут доступны любому скрипту через этот код. Официальное объяснение и код Godot доступны здесь.
PlayerVariables (добавлено в автозагрузку)
var player_vars = get_node("/root/PlayerVariables")
player_vars.health -= 10
Or
PlayerVariables.health -= 10
person
Derek Z
schedule
04.01.2021