Непонятный NullReferenceException [РЕШЕНО]

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Непонятный NullReferenceException [РЕШЕНО]

Сообщение Vefery 28 авг 2018, 06:09

Еще вчера код работал нормально, сегодня включаю и выкидывает NullReferenceException, в чем проблема?
Сам код:
Синтаксис:
Используется csharp
void Awake() {
                for (int i = 0; i < labels.Length; i++) {
                        if (PlayerPrefs.GetString ("Language") == "en_EN") {
                                labels [i].font = fonts [0];
                        } else {
                                labels [i].font = fonts [1];
                        }
                }
                presets.options [0].text = LangSys.lng.menu [10];
                presets.options [1].text = LangSys.lng.menu [11];
                presets.options [2].text = LangSys.lng.menu [12];
                presets.options [3].text = LangSys.lng.menu [13];
                textQuality.options [0].text = LangSys.lng.menu [14];
                textQuality.options [1].text = LangSys.lng.menu [15];
                textQuality.options [2].text = LangSys.lng.menu [16];
                textQuality.options [3].text = LangSys.lng.menu [17];
                anisotropic.options [0].text = LangSys.lng.menu [19];
                anisotropic.options [1].text = LangSys.lng.menu [18];
                antialiasing.options [0].text = LangSys.lng.menu [19];
                vSync.options [0].text = LangSys.lng.menu [19];
                vSync.options [1].text = LangSys.lng.menu [18];
                for (int i = 0; i < transText.Length; i++) {
                        if (PlayerPrefs.GetString ("Language") == "en_EN") {
                                transText [i].font = fonts [0];
                                transText [i].text = LangSys.lng.menu [i];
                        } else {
                                transText [i].font = fonts [1];
                                transText [i].text = LangSys.lng.menu [i];
                        }
                }
        }

Ошибка происходит в строке "presets.options [0].text = LangSys.lng.menu [10];", если комментирую ее то появляется в следующей строки итд, в итоге выяснил что это происходит во всех строках с LangSys.lng.menu [*], хотя до этого работало нормально
Код LangSys:
Синтаксис:
Используется csharp
public class LangSys : MonoBehaviour {
        private string json;
        public static Lang lng = new Lang();

        void Awake () {
                if (!PlayerPrefs.HasKey ("Language")) {
                        if (Application.systemLanguage == SystemLanguage.Russian || Application.systemLanguage == SystemLanguage.Ukrainian || Application.systemLanguage == SystemLanguage.Belarusian) {
                                PlayerPrefs.SetString ("Language", "ru_RU");
                                PlayerPrefs.Save ();
                        } else {
                                PlayerPrefs.SetString ("Language", "en_EN");
                                PlayerPrefs.Save ();
                        }
                }
                LangLoad ();
        }

        void LangLoad () {
                #if UNITY_ANDROID && !UNITY_EDITOR
                string path = Path.Combine (Application.streamingAssetsPath, "/Languages/" + PlayerPrefs.GetString ("Language") + ".json");
                WWW reader = new WWW (path);
                while (!reader.isDone) {}
                json = reader.text;
                #endif
                #if UNITY_EDITOR
                json = File.ReadAllText (Application.streamingAssetsPath + "/Languages/" + PlayerPrefs.GetString ("Language") + ".json");
                lng = JsonUtility.FromJson<Lang> (json);
                print (lng.menu[9]);//Без всяких ошибок выводит то что нужно в консоль
                print (lng.menu[10]);//Тут тоже
                #endif
        }
}
public class Lang {
        public string[] menu;
}
Последний раз редактировалось Vefery 28 авг 2018, 09:58, всего редактировалось 1 раз.
Vefery
UNIт
 
Сообщения: 136
Зарегистрирован: 20 фев 2018, 16:47

Re: Непонятный NullReferenceException

Сообщение Friend123 28 авг 2018, 08:23

Аватара пользователя
Friend123
Старожил
 
Сообщения: 701
Зарегистрирован: 26 фев 2012, 22:12
Откуда: Тверь
  • ICQ

Re: Непонятный NullReferenceException

Сообщение Vefery 28 авг 2018, 09:58


Спасибо!
Vefery
UNIт
 
Сообщения: 136
Зарегистрирован: 20 фев 2018, 16:47


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5