Изменение пользовательского интерфейса панели условно - PullRequest
0 голосов
/ 06 марта 2019

Пытался найти ответ на этот вопрос уже более недели.Я пробовал несколько разных способов, и я должен делать что-то не так.Вот сценарий.У меня настроена игра.Это 2d игра, похожая на Merge Planes.У меня есть код, который управляет всеми игроками, такими как xp, gold и leveling (он называется LevelManager).У меня также есть панель интерфейса, которая загружается при нажатии кнопки на главном экране игры.Это как инвентарь, так сказать.То, что я пытаюсь сделать, это.Когда кнопка нажата, я бы хотел, чтобы панель загружала другой спрайт в зависимости от уровня игрока.Представьте, что если игрок уровня 1, спрайт bg на панели должен показывать изображение со всеми, кроме первого, затемненными предметами.Тогда, если игрок уровня 2, второй разблокирован и теперь виден.Я перепробовал все, например 1) спрайтовые массивы 2) использование статики 3) создание панели 4) использование прослушивателя onclick даже на кнопке.Если кто-нибудь сможет помочь мне в достижении этого, я был бы очень благодарен.Пожалуйста, помогите мне разобраться, чтобы я поняла, что происходит.Мне нужно знать, какая строка кода лучше, к каким объектам я применяю код и все такое хорошее.Давайте вернемся к основам, пожалуйста.Заранее спасибо.Neil

1 Ответ

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

Трудно помочь вам, не видя код, но я предлагаю вам сделать следующее:
Предполагая, что у вас есть разные фоновые изображения для каждого уровня, отсортируйте их в списке или массиве и загрузите их в соответствии с уровнем игрока. Это будет что-то вроде этого: private void Start{ //backgrounds = your backgrounds array / list Instantiate(backgrounds[player.level-1], transform.position, transform.rotation); }

Но, опять же, трудно понять, не увидев ваш код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...