Ден115
Профи
(645)
8 месяцев назад
В вашем коде есть логическая ошибка, связанная с условием проверки и установкой значения в PlayerPrefs.
В вышей текущей логике утверждается: "Если уже существует ключ 'Game Level', установи для него значение 1". Это означает, что после первого запуска игры, когда ключ "Game Level" уже будет создан, его значение всегда будет устанавливаться в 1 при старте сцены. Из-за этого уровни не переключаются, потому что каждый раз при запуске сцены активируется только первый уровень.
using System.Collections.Generic;
using UnityEngine;
public class SelectLevel : MonoBehaviour
{
public GameObject[] levels;
void Start()
{
if(PlayerPrefs.HasKey("Game Level")) PlayerPrefs.SetInt("Game Level", 1);
levels[PlayerPrefs.GetInt("Game Level") - 1].SetActive(true);
}
}
Помогите пожалуйста!!!! почему то не переключаются уравни в юнити. я уже всё проверил, не знаю в чём причина!!!!!!