public static void LoadGuideConfig()
 {
     if (!string.IsNullOrEmpty(mUserInfo.GuideGetSkillStringInfo))
     {
         byte[] bt = SGTool.stringToBytes(mUserInfo.GuideGetSkillStringInfo);
         mUserInfo.GuideGetSkill = SGTool.protobufDecode <Dictionary <string, Skill> > (bt);
     }
 }
 public static void SaveGuideConfig()
 {
     if (mUserInfo.GuideGetSkill != null)
     {
         byte[] bt = SGTool.protobufEncode <Dictionary <string, Skill> >(mUserInfo.GuideGetSkill);
         mUserInfo.GuideGetSkillStringInfo = SGTool.bytesToString(bt);
     }
 }
        public static void InitBundle()
        {
            if (!m_bInitAssetBundle)
            {
                m_bInitAssetBundle = true;

                ParserFromTxtFile <ArmorInfo>(armorInfoList);
                ParserFromTxtFile <BumperInfo>(bumperInfoList);
                ParserFromTxtFile <CarInfo>(carInfoList);
                ParserFromTxtFile <CarSkinInfo>(carskinInfoList);
                ParserFromTxtFile <NitroInfo>(nitroInfoList);
                ParserFromTxtFile <PerformanceInfo>(performanceInfoList);
                ParserFromTxtFile <WeaponInfo>(weaponInfoList);
                ParserFromTxtFile <GuideGirlInfo>(guideGirlInfoList);
                ParserFromTxtFile <SkillModel>(skillModelList);
                InitSkillBaseList();
                ParserFromTxtFile <SkillInfo>(skillInfoList);
                ParserFromTxtFile <MapInfo>(mapInfoList);
                ParserFromTxtFile <TaskInfo>(taskInfoList);
                ParserFromTxtFile <NPCInfo>(npcInfoList);
                ParserFromTxtFile <DefaultPlayerInfo>(defaultPlayerInfoList);
                ParserFromTxtFile <PropInfo>(propInfoList);
                ParserFromTxtFile <GoodInfo>(goodList);
                ParserFromTxtFile <DailyReward>(dailyRewardList);
                ParserFromTxtFile <DailyTask>(dailyTaskList);
                ParserFromTxtFile <PopupInfo>(popupInfolList);
                //加载userinfo
                LoadUserInfo();//先读取用户记录,如果没有记录,则创建新用户
                if (mUserInfo == null)
                {
                    //mUserInfo = new UserInfo(SystemInfo.deviceUniqueIdentifier + "_0");
                    mUserInfo = new UserInfo(SystemInfo.deviceUniqueIdentifier + "_1000");
                    SGTool.jsonToModel(defaultPlayerInfoList[0], mUserInfo);
                }
                else if (mUserInfo.StorySave > 0 && mUserInfo.UserID == SystemInfo.deviceUniqueIdentifier + "_0")
                {
                    int tempStroySave = mUserInfo.StorySave;
                    mUserInfo = new UserInfo(SystemInfo.deviceUniqueIdentifier + "_1000");
                    SGTool.jsonToModel(defaultPlayerInfoList[1], mUserInfo);
                    mUserInfo.StorySave = tempStroySave;
                }
                UpgradeDataInit();
                InitGuideGetSkill();
                FileManager.InitCarConfig();
            }
        }
        private static void LoadUserInfo()
        {
            string savedInfo = SGTool.getStringDataFromPrefs(SystemInfo.deviceUniqueIdentifier + "_1000");

            if (!string.IsNullOrEmpty(savedInfo))
            {
                byte[] bt = SGTool.stringToBytes(savedInfo);
                mUserInfo = SGTool.protobufDecode <UserInfo>(bt);
                LoadCarConfig();
            }

            savedInfo = SGTool.getStringDataFromPrefs(SystemInfo.deviceUniqueIdentifier + "_1000_settings");
            if (!string.IsNullOrEmpty(savedInfo))
            {
                byte[] bt = SGTool.stringToBytes(savedInfo);
                mUserInfo.UserSettings = SGTool.protobufDecode <UserSettings>(bt);
                //SGDebug.Log<UserSettings>(mUserInfo.UserSettings);
            }
        }
        public static void SaveUserInfo()
        {
            //if (BeginnerGuid.IsNeedStrength())
            //    return;
            if (mUserInfo == null)
            {
                return;
            }
            SetCarConfig();
            byte[] bt   = SGTool.protobufEncode <UserInfo>(mUserInfo);
            string save = SGTool.bytesToString(bt);

            SGTool.saveStringDataToPrefs(mUserInfo.UserID, save);

            bt = SGTool.protobufEncode <UserSettings>(mUserInfo.UserSettings);
            //SGDebug.Log<UserSettings>(mUserInfo.UserSettings);
            save = SGTool.bytesToString(bt);
            SGTool.saveStringDataToPrefs(mUserInfo.UserID + "_settings", save);
        }
 static void LoadCarConfig()
 {
     foreach (string s in mUserInfo.CarConfigs.Values)
     {
         byte[]    bt  = SGTool.stringToBytes(s);
         CarConfig car = SGTool.protobufDecode <CarConfig>(bt);
         if (mUserInfo.CarConfigDic == null)
         {
             mUserInfo.CarConfigDic = new Dictionary <int, CarConfig>();
             mUserInfo.CarConfigDic.Add(car.CarId, car);
         }
         else
         {
             if (mUserInfo.CarConfigDic.ContainsKey(car.CarId))
             {
                 mUserInfo.CarConfigDic[car.CarId] = car;
             }
             else
             {
                 mUserInfo.CarConfigDic.Add(car.CarId, car);
             }
         }
     }
 }
 static void SetCarConfig()
 {
     foreach (CarConfig car in mUserInfo.CarConfigDic.Values)
     {
         byte[] bt   = SGTool.protobufEncode <CarConfig>(car);
         string save = SGTool.bytesToString(bt);
         if (mUserInfo.CarConfigs == null)
         {
             mUserInfo.CarConfigs = new Dictionary <int, string>();
             mUserInfo.CarConfigs.Add(car.CarId, save);
         }
         else
         {
             if (mUserInfo.CarConfigs.ContainsKey(car.CarId))
             {
                 mUserInfo.CarConfigs[car.CarId] = save;
             }
             else
             {
                 mUserInfo.CarConfigs.Add(car.CarId, save);
             }
         }
     }
 }