public bool Load(string path, AssetBundle nonLocalizedBundle, AssetBundle localizedBundle, string locale) { string str = string.Concat(new string[] { path, locale, "/Item_", locale, ".txt" }); if (this.m_records.Count > 0) { Debug.Log(string.Concat("Already loaded static db ", str)); return(false); } TextAsset textAsset = localizedBundle.LoadAsset <TextAsset>(str); if (textAsset == null) { Debug.Log(string.Concat("Unable to load static db ", str)); return(false); } string str1 = textAsset.ToString(); int num = 0; int num1 = 0; do { num = str1.IndexOf('\n', num1); if (num < 0) { continue; } string str2 = str1.Substring(num1, num - num1 + 1).Trim(); ItemRec itemRec = new ItemRec(); itemRec.Deserialize(str2); this.m_records.Add(itemRec.ID, itemRec); num1 = num + 1; }while (num > 0); return(true); }
public bool Load(string path, AssetBundle nonLocalizedBundle, AssetBundle localizedBundle, string locale) { string text = string.Concat(new string[] { path, locale, "/Item_", locale, ".txt" }); if (this.m_records != null) { Debug.Log("Already loaded static db " + text); return(false); } TextAsset textAsset = localizedBundle.LoadAsset <TextAsset>(text); if (textAsset == null) { Debug.Log("Unable to load static db " + text); return(false); } string text2 = textAsset.ToString(); this.m_records = new Hashtable(); int num = 0; int num2; do { num2 = text2.IndexOf('\n', num); if (num2 >= 0) { string valueLine = text2.Substring(num, num2 - num + 1).Trim(); ItemRec itemRec = new ItemRec(); itemRec.Deserialize(valueLine); this.m_records.Add(itemRec.ID, itemRec); num = num2 + 1; } }while (num2 > 0); return(true); }
public void EnumRecords(Predicate <ItemRec> callback) { IEnumerator enumerator = this.m_records.get_Values().GetEnumerator(); try { while (enumerator.MoveNext()) { ItemRec itemRec = (ItemRec)enumerator.get_Current(); if (!callback.Invoke(itemRec)) { break; } } } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } }