// 讀檔. public bool Load() { SaveReward Temp = null; if (PlayerPrefs.HasKey(GameDefine.szSaveReward)) { Temp = Json.ToObject <SaveReward>(PlayerPrefs.GetString(GameDefine.szSaveReward)); } if (Temp != null) { MemberLooks = new HashSet <int>(Temp.MemberLooks); MemberInits = new HashSet <int>(Temp.MemberInits); foreach (string Itor in Temp.WeaponLevel) { string[] szTemp = Itor.Split(new char[] { '_' }); if (szTemp.Length >= 2) { WeaponLevel.Add(System.Convert.ToInt32(szTemp[0]), System.Convert.ToInt32(szTemp[1])); } } //for iInitCurrency = Temp.iInitCurrency; iInitBattery = Temp.iInitBattery; iInitLightAmmo = Temp.iInitLightAmmo; iInitHeavyAmmo = Temp.iInitHeavyAmmo; iInitBomb = Temp.iInitBomb; iCrystal = Temp.iCrystal; } else { MemberLooks = new HashSet <int>(GameInit.InitMemberLooks); MemberInits = new HashSet <int>(); WeaponLevel = new Dictionary <int, int>(); iInitCurrency = GameInit.iInitCurrency; iInitBattery = GameInit.iInitBattery; iInitLightAmmo = GameInit.iInitLightAmmo; iInitHeavyAmmo = GameInit.iInitHeavyAmmo; iInitBomb = GameInit.iInitBomb; iCrystal = 0; } //if return(true); }
// 存檔. public void Save() { List <string> WeaponLevelTemp = new List <string>(); foreach (KeyValuePair <int, int> Itor in WeaponLevel) { WeaponLevelTemp.Add(Itor.Key + "_" + Itor.Value); } SaveReward Temp = new SaveReward(); Temp.MemberLooks = MemberLooks.ToList().ToArray(); Temp.MemberInits = MemberInits.ToList().ToArray(); Temp.WeaponLevel = WeaponLevelTemp.ToArray(); Temp.iInitCurrency = iInitCurrency; Temp.iInitBattery = iInitBattery; Temp.iInitLightAmmo = iInitLightAmmo; Temp.iInitHeavyAmmo = iInitHeavyAmmo; Temp.iInitBomb = iInitBomb; Temp.iCrystal = iCrystal; PlayerPrefs.SetString(GameDefine.szSaveReward, Json.ToString(Temp)); }