Система уровней Unity C # Char несколько сцен - PullRequest
0 голосов
/ 30 марта 2019

В настоящее время я пытаюсь добавить систему повышения уровня в свою игру, система уровней работает в игровой сцене.Тем не менее, у меня есть несколько сцен.Как я мог бы добавить сцену повышения уровня, где игрок сам выбирает, какие навыки повышать, что происходит в сценах.Нужно ли сделать статическую систему уровней?

Ответы [ 3 ]

1 голос
/ 31 марта 2019

Вы можете использовать метод DontDestroyOnLoad для переноса объектов между сценами, таким образом вы можете гарантировать, что объект Player или объект, содержащий данные вашего игрока, попадут в другую сцену, заполненную предыдущей информацией.

Подробнее о Документация по Unity API

0 голосов
/ 31 марта 2019

Вы можете сделать свою переменную уровня переменной static, что делает ее универсальным значением для всех сценариев / сцен.Я думаю, это то, что лучше для вас.PlayerPrefs неплохо, однако, вам может понадобиться PlayerPrefs.DeleteKey, повторно применить новое и обновить старое.Слишком сложно, используйте статические переменные.

Взгляните на эту ссылку Unity - https://unity3d.com/learn/tutorials/topics/scripting/statics

Разъясняет, что именно я пытаюсь сказать, но более детально проработано.

0 голосов
/ 30 марта 2019

Вы можете использовать PlayerPrefs, чтобы сохранить свои уровни в нескольких сценах. Вы просто присваиваете значение в своей сцене повышения уровня и получаете доступ к значению во время загрузки нового.

PlayerPrefs.GetInt(string key) получает значение переменной в «ключе».

PlayerPrefs.SetInt(string key, int value) сохраняет значение в переменной в ключе

Уровень выше

// Access the previous value
int speed = PlayerPrefs.GetInt("Speed");

// Increment the value
speed++;

/// Store the value
PlayerPrefs.SetInt("Speed", speed);

Уровень нагрузки

void Start
{
    // Load stats
    int speed = PlayerPrefs.GetInt("Speed");
    int strength = PlayerPrefs.GetInt("Strength");
    int health = PlayerPrefs.GetInt("Health");
    int stamina = PlayerPrefs.GetInt("Stamina");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...