Esempio n. 1
0
    protected override void LoadSaves(string key, System.Action <Dictionary <string, object>, System.Exception> complete)
    {
        StringBuilder sb = new StringBuilder();

        using (StreamReader sr = new StreamReader(GetFileByName(key).ToString())) {
            String line;
            while ((line = sr.ReadLine()) != null)
            {
                sb.AppendLine(line);
            }
            sr.Close();
        }
        string allines = sb.ToString();

        if (complete != null)
        {
            if (string.IsNullOrEmpty(allines))
            {
                complete(null, null);
            }
            else
            {
                complete(JSONUtuls.Deserialize(allines), null);
            }
        }
    }
Esempio n. 2
0
    protected override void LoadSaves(string key, Action <Dictionary <string, object>, Exception> complete)
    {
        StringBuilder sb       = new StringBuilder();
        string        allLines = null;

        //GetFileByName(key).Open(FileMode.OpenOrCreate);
        using (BinaryReader br = new BinaryReader((GetFileByName(key).Open(FileMode.OpenOrCreate)))) {
            if (br.BaseStream.Length > 0)
            {
                allLines = br.ReadString();
                br.ReadInt32();
            }
        }
        if (complete != null)
        {
            if (string.IsNullOrEmpty(allLines))
            {
                complete(null, null);
            }
            else
            {
                complete(JSONUtuls.Deserialize(allLines), null);
            }
        }
    }
        public static Dictionary <string, Dictionary <string, string> > Import(GoogleSpreadsheetDocumentPageDBEntry page)
        {
            ServicePointManager.ServerCertificateValidationCallback += allowCertificate;
            string docFormat        = "csv";
            string gDocsDownloadURL = "http://spreadsheets.google.com/feeds/download/spreadsheets/Export?key={0}&gid={1}&exportFormat={2}";
            string downloadUrl      = string.Format(gDocsDownloadURL, page.document.documentId, page.pageId, docFormat);

            Debug.Log(downloadUrl);

            HttpWebRequest  aRequest  = (HttpWebRequest)WebRequest.Create(downloadUrl);
            HttpWebResponse aResponse = (HttpWebResponse)aRequest.GetResponse();

            WebHeaderCollection header = aResponse.Headers;

            var encoding = ASCIIEncoding.UTF8;

            var parsedPage = new Dictionary <string, Dictionary <string, string> >();

            using (var reader = new StreamReader(aResponse.GetResponseStream(), encoding)) {
                string localizationsString = reader.ReadToEnd();

                var stringRows = localizationsString.Split('\r', '\n');


                Debug.Log(localizationsString);
                Debug.Log(stringRows.ToPlainString());

                string[] keyColumns = null;
                for (int r = 0; r < stringRows.Length; r++)
                {
                    var row        = stringRows[r];
                    var stringCols = row.Split(',');
                    if (r == 0)
                    {
                        keyColumns = stringCols;
                        Debug.Log(keyColumns.ToPlainString());
                        for (int l = 1; l < keyColumns.Length; l++)
                        {
                            var lang = keyColumns[l];
                            if (!string.IsNullOrEmpty(lang))
                            {
                                parsedPage.AddOrSet(lang, new Dictionary <string, string>());
                            }
                        }
                    }
                    else
                    {
                        for (int c = 1; c < stringCols.Length; c++)
                        {
                            parsedPage[keyColumns[c]].AddOrSet(stringCols[0], stringCols[c]);
                        }
                    }
                }
            }

            ServicePointManager.ServerCertificateValidationCallback -= allowCertificate;

            Debug.Log(JSONUtuls.Serialize(parsedPage));
            return(parsedPage);
        }
Esempio n. 4
0
        public T LoadISavable <T>(string key, T savable) where T : ISaveble
        {
            string json = LoadString(key);
            var    hash = JSONUtuls.Deserialize(json);

            savable.FromJSON(hash);
            return(savable);
        }
Esempio n. 5
0
 public static Dictionary <string, object> GetDataNode(string key)
 {
     CheckLoading();
     return(_playerPrefsLocalData.ContainsKey(key)
         ? _playerPrefsLocalData[key] is string
            ?JSONUtuls.Deserialize(_playerPrefsLocalData[key].ToString())
             : (Dictionary <string, object>)_playerPrefsLocalData[key]
            : new Dictionary <string, object>());
 }
Esempio n. 6
0
 void OnApplicationQuit()
 {
     if (_saveOnQuit)
     {
         if (_saveData != null)
         {
             _currentMethod.Save(_saveKey, JSONUtuls.Serialize(_saveData), (b, e) => { });
         }
         else
         {
             Debug.Log("Nothing to save");
         }
     }
 }
        private void StoreLocalization(Dictionary <string, Dictionary <string, string> > localization)
        {
            foreach (KeyValuePair <string, Dictionary <string, string> > kvp in localization)
            {
                var lang = DB.Get <LanguageItem>(kvp.Key);
                if (lang == null)
                {
                    lang = AssetDBUtils.CreateScriptableObject <LanguageItem>(PathUtils.Combine("Assets", "Localization", "Resources", "Languages"), kvp.Key);
                }
                var json = JSONUtuls.Serialize(kvp.Value).DecodeEncodedNonAscii();
                FileUtils.SaveTextToFile(PathUtils.Combine(Application.dataPath, "Localization", "Resources", "Languages", kvp.Key + "@text.txt"), json);
            }

            Debug.Log(JSONUtuls.Serialize(localization).DecodeEncodedNonAscii());
        }
Esempio n. 8
0
 private static void CheckLoading()
 {
     if (_playerPrefsLocalData == null)
     {
         var settingsJson = PlayerPrefs.GetString(editorSettingsKey);
         if (string.IsNullOrEmpty(settingsJson))
         {
             _playerPrefsLocalData = new Dictionary <string, object>();
         }
         else
         {
             _playerPrefsLocalData = JSONUtuls.Deserialize(settingsJson);
         }
     }
 }
 private static void CheckLoading()
 {
     if (_editorSettingsData == null || _editorSettingsData.Count == 0)
     {
         var settingsJson = EditorPrefs.GetString(editorSettingsKey);
         if (string.IsNullOrEmpty(settingsJson))
         {
             _editorSettingsData = new Dictionary <string, object>();
         }
         else
         {
             var deserialized = JSONUtuls.Deserialize(settingsJson);
             if (deserialized != null)
             {
                 _editorSettingsData.AddOrSetRange(deserialized);
             }
         }
     }
 }
        private static void Init()
        {
            if (!_inited)
            {
                _settingsDBEntry = DB.Get <LocalizationSettingsDBEntry>();

                _defaultLanguage = DB.Get <LanguageItem>(_defaultSystemLanguage.ToString());

                var localizationSettingsData = PlayerPrefsLocalData.GetDataNode(LOCALIZATION_SETTINGS_KEY);

                _settings = JSONUtuls.Deserialize <Settings>(localizationSettingsData);

                if (_settings == null)
                {
                    _settings = new Settings();
                }

                if (string.IsNullOrEmpty(_settings.savedLanguage))
                {
                    ChangeLanguage(_currentSystemLanguage.ToString());
                }
                else
                {
                    var savedLanguage = DB.Get <LanguageItem>(_settings.savedLanguage);
                    if (savedLanguage != null)
                    {
                        ChangeLanguage(savedLanguage);
                    }
                    else
                    {
                        Debug.LogWarning(string.Format("Language not found: {0}", _settings.savedLanguage));
                    }
                }

                _inited = true;
            }
        }
Esempio n. 11
0
 public static void Save()
 {
     PlayerPrefs.SetString(editorSettingsKey, JSONUtuls.Serialize(_playerPrefsLocalData));
 }
 public static void Save()
 {
     EditorPrefs.SetString(editorSettingsKey, JSONUtuls.Serialize(_editorSettingsData));
 }
        public static T Get <T>(string key) where T : IJsonDeserializable
        {
            var node = GetDataNode(key);

            return(JSONUtuls.Deserialize <T>(node));
        }