import { ryw_Event } from "../../FrameWork/Event/EventEnum";
import EventMgr from "../../FrameWork/Event/EventMgr";
import GameMgr from "../../FrameWork/Mgr/GameMgr";
import User from "../../FrameWork/User/User";
import Common5 from "../../Platform/th/Common5";
import PrefabManage, { GameType } from "../PrefabManager/PrefabManage";

export default class UserManager{
    public static onlineTime = 0
    public static lastTime = 0
    public static delayTime = 0

    public static clearProvideMoneyArray(){
        
    }
    

    public static addMoneyPercent(percent){     
        let money = User.getMoney()*percent
        User.setMoney(User.getMoney() + money);
 
        Common5.playRemoteAudioEffect('sound/common/钱币入账')
        EventMgr.emitEvent_custom(ryw_Event.updateMoney,money, true);
    }

    public static addMoney(money,startNode?,endNode?){   
        if(money>0){
            Common5.playRemoteAudioEffect('sound/common/钱币入账')
        }

        User.setMoney(User.getMoney() + money);
        EventMgr.emitEvent_custom(ryw_Event.updateMoney,money,true);
        if(startNode){
            PrefabManage.showMoneyFlyEffect(startNode,endNode)
        } 
       
    }

    public static addMoney2(money){   
    
        User.setMoney(User.getMoney() + money);
        EventMgr.emitEvent_custom(ryw_Event.updateMoney,0,true);
     
    }


    public static subMoney(money){
        User.setMoney(Math.max(User.getMoney()-money,0));
        EventMgr.emitEvent_custom(ryw_Event.updateMoney,-money,true);
    }

    public static subMoneyChanye(money){
        User.setMoney(Math.max(User.getMoney()-money,0));
        EventMgr.emitEvent_custom(ryw_Event.updateMoney,money,true);
    }


    public static getCurMoney(){        
        let money = User.getMoney()
        return money
    }
    

    public static addYuanBao(yuanBao,startNode?,endNode?){   
        let num = User.getYuanBao() + yuanBao
        User.setYuanBao(num);
        EventMgr.emitEvent_custom(ryw_Event.updateYuanBao,0);
      

    }


    public static subYuanBao(yuanBao){
        User.setYuanBao(Math.max(User.getYuanBao()-yuanBao,0));
        EventMgr.emitEvent_custom(ryw_Event.updateYuanBao,-yuanBao);
    }

    public static getCurYuanBao(){        
        let yuanBao = User.getYuanBao()
        return yuanBao
    }

    public static getName(){        
      
    }

    public static setCanInterGameList(gametype, isAdd=true){        
        User.setCanInterGameList(gametype)
        //预加载玩法
        PrefabManage.preloadPrefabByType(gametype)
        // let config = PrefabManage.getPrefabInfoByGameType(gametype)
        // if(config.cityNodeName && isAdd){
        //     User.addUnLockGameNameTab(config.cityNodeName)
        // }
    }
    public static getCanInterGameList(){        
        return User.getCanInterGameList()
    }

    public static setCanInterGameListArray(array){        
        User.setCanInterGameListArray(array)
    }
    public static getCurDay(){        
        let day = User.getDay()
        return day
    }
 
    public static setCurDay(day){        
        User.setDay(day)
    }

    
    

    public static sendDataToUrl() {
        let moneyStr = 'money:'+User.getMoney()+';'//钱
        let userIQ = 'userIQ:'+User.getUserIQ()+';'//智商值
        let dayStr = 'day:'+User.getDay()+';'//天数
     
        //背包
        let bagList = User.getBagGoodsList()
        let bagGoodIdStr = ''
        for(let i=0;i<bagList.length;i++){
            let data = bagList[i]
            if(i==bagList.length-1){
                bagGoodIdStr = bagGoodIdStr+data.goodId+','+data.goodNum+''
            
            }else{

                bagGoodIdStr = bagGoodIdStr+data.goodId+','+data.goodNum+'?'
                
            }
        }
        let bagGoodIdStrA =  'bagGood:'+bagGoodIdStr+';'

        //房间状态
        let roomGoodStatus = User.getRoomGoodStatus()
        let roomGoodStatusA = 'roomGoodStatus:' + roomGoodStatus +';'


        //风味酒店
        let fengweiList = User.getFengWeiHotelList()
        let fengweiStr = ''
    
        for(let i=0;i<fengweiList.length;i++){
            let data = fengweiList[i]
            if(i==fengweiList.length-1){
                if(data.isLock == false){
                    fengweiStr=fengweiStr+data.levelNum+','+data.zhuangxiuTime+''
                }else{
                    fengweiStr=fengweiStr+'0'+','+data.zhuangxiuTime+''
                }
                
            }else{
                if(data.isLock == false){
                    fengweiStr=fengweiStr+data.levelNum+','+data.zhuangxiuTime+'?'
                }else{
                    fengweiStr=fengweiStr+'0,'+data.zhuangxiuTime+'?'
                }
                
            }
            
        }
        let fengweiStrA = 'fengweiHotel:'+fengweiStr+';'

        //允许进入的玩法
        let canInterStr = ''
        let canInterGameList = User.getCanInterGameList()
        for(let i=0;i<canInterGameList.length;i++){
            let data = canInterGameList[i]
            canInterStr = canInterStr+data+'?'
        }
        let canInterStrA = 'canInterGameList:'+canInterStr+';'


        let hetongData = User.getUserHeTong()
        let hetongDataA = 'HeTong:'+hetongData.buyChiTang+'?'+hetongData.buyKuaiDiZhan+'?'+hetongData.buyXiaShuiDao+'?'+
        hetongData.buyJiuGuan+'?'+hetongData.buyJiTuan+'?'+hetongData.chongHuiSuJia+'?'+
        hetongData.BuyWangHongJD+'?'+hetongData.TianYanJingQu+'?'+hetongData.RenleiJinQu+'?'+hetongData.ZhiZhunDian
        +'?'+hetongData.buyMeiShiJie+'?'+hetongData.buyYangZhiChang+'?'+hetongData.buyZhanLanGuan+'?'+hetongData.buyJiaGongCang
        +'?'+hetongData.buyYeLianChang +'?'+hetongData.buyYuChuan+'?'+hetongData.buyChaChang+'?'+hetongData.buyJiaoShiQu+'?'+hetongData.buyQiZhenYuan+';'


        //剧情
        let curJuQingUnLockIndexStr = 'curJuQingUnLockIndex:'+User.getCurJuQingUnLockIndex()+';'

        let mainTaskData = User.getCurUnLockMainTaskInfo()
        let curUnLockMainTaskInfo = ''
        if(mainTaskData && mainTaskData['Id']!=null){
            curUnLockMainTaskInfo = 'curUnLockMainTaskInfo:'+mainTaskData['Id']+'?'+mainTaskData['StartDay']+'?'+mainTaskData['EndDay']+'?'+mainTaskData['IsFinish']+';'
        }
        let subTaskData = User.getCurUnLockSubTaskInfo()
        let curUnLockSubTaskInfo = ''
        if(subTaskData && subTaskData['Id']!=null){
            curUnLockSubTaskInfo = 'curUnLockSubTaskInfo:'+subTaskData['Id']+'?'+subTaskData['curProgressNum']+'?'+subTaskData['targetProgressNum']+'?'+subTaskData['IsFinish']+';'
        }

        
        
        let firstStepIndex = User.getFirstStepIndex()
        let firstStepIndexStr = 'firstStepIndex:'+firstStepIndex+';'


        let taofenArray = User.getTaofenArray()
        let taofenStr = 'taofen:'+taofenArray.tanhuang+'?'+taofenArray.xichen+';'


        let SLCGongJianAd = User.getSLCGongJianAd()
        let SLCLieQiangAd = User.getSLCLieQiangAd()
        let SLCWangAd = User.getSLCWangAd()
        let shoulieStr = 'shoulie:'+SLCGongJianAd+'?'+SLCLieQiangAd+'?'+SLCWangAd+';'

        let diaoyuStr = 'diaoyu1;'
        let diaoyuList = User.getDiaoyuData()
        if(diaoyuList.length == 0){

        }else{
            diaoyuStr = 'diaoyu:'
            let dataVal = diaoyuList[0].dataVal
            let qiuyin = dataVal[1].unlock+'?'+dataVal[1].spTimes+'?'+dataVal[1].freeTimes+'?'
            let yuer = dataVal[2].unlock+'?'+dataVal[2].spTimes+'?'+dataVal[2].freeTimes+'?'
            let zhugan = dataVal[3].unlock+'?'+dataVal[3].spTimes+'?'+dataVal[3].freeTimes
            diaoyuStr = qiuyin+yuer+zhugan
        }

        let ditanList = User.getDitanData()
        let ditanStr = 'ditan1;'
        if(ditanList.length == 0){

        }else{
            ditanStr = 'ditan:'
            let ditan = ditanList[0].dataVal+'?'+ditanList[1].dataVal+'?'+ditanList[2].dataVal+';'
            ditanStr = ditanStr+ditan
        }

        let ChatRecordData = User.getAllChatRecordData()
        let chatStr = 'ChatRecordData:'
        Object.keys(ChatRecordData).forEach((key) => {
            //console.log(key + ':', ChatRecordData[key]);
            let chat1 = key+'&'
            let data = ChatRecordData[key]
            for(let i = 0; i<data.length;i++){
                if(i==data.length-1){
                    chat1 = chat1+data[i].indexStr+','+data[i].isFinish+'#'
                }else{
                    chat1 = chat1+data[i].indexStr+','+data[i].isFinish+'|'
                }
            }
            chatStr = chatStr+chat1
        });
        chatStr += ';'

        let gameGuideStepIndex = User.getGameGuideStepIndex()
        let GameGuideStepIndexStr = 'GameGuideStepIndex:'+gameGuideStepIndex+';'

        let myStockData = User.getMyStockData()
        let myStockDataStr = 'myStockData:'
        Object.keys(myStockData).forEach((key) => {
            let data = myStockData[key].stockName+'&'+myStockData[key].buyPrice+'&'+myStockData[key].prossess
            myStockDataStr += data + '?'
        });
        myStockDataStr += ';'
        


        //美食街合同
        let baoweiData = User.getBaoweiData()
        let meiShiJieHetongData = 'MeiShiHeTong:'+baoweiData.isQianYue+';'

        //玩法收益
        let shouYiMoneyCount = User.getAllGameShouYi()
        let wanFaShouYiStr = 'wanFaShouYiData:'
        Object.keys(shouYiMoneyCount).forEach((key) => {
            let data = key+'&'+shouYiMoneyCount[key]
            wanFaShouYiStr += data + '?'
        });
        wanFaShouYiStr += ';'

        //美食街摊位
        let industryList = User.getIndustryList()
        let meiShiJieListStr = 'meiShiJieListData:'
        Object.keys(industryList).forEach((key) => {
            let data = industryList[key].IndustryId+'&'+industryList[key].isLock+'&'+industryList[key].IndustryNum+'&'+industryList[key].levelNum
            +'&'+industryList[key].levelUpMoney+'&'+industryList[key].earnMoneyTime+'&'+industryList[key].earnMoney+'&'+industryList[key].timeAdd
            meiShiJieListStr += data + '?'
        });
        meiShiJieListStr += ';'

        //玩法解锁的基础IQ值
        let jieSuoBaseIQ = User.getALlJieSuoBaseIQ()
        let jieSuoBaseIQStr = 'jieSuoBaseIQData:'
        Object.keys(jieSuoBaseIQ).forEach((key) => {
            let data = key+'&'+jieSuoBaseIQ[key]
            jieSuoBaseIQStr += data + '?'
        });
        jieSuoBaseIQStr += ';'

        //倒爷物品单
        let daoyeGoodList = User.getDaoyeGoodList()
        let daoyeGoodListStr = 'daoyeGoodList:'
        Object.keys(daoyeGoodList).forEach((key) => {
            let data = daoyeGoodList[key].goodId+'&'+daoyeGoodList[key].buyNum+'&'+daoyeGoodList[key].buyPercent+'&'+daoyeGoodList[key].gameType
            daoyeGoodListStr += data + '?'
        });
        daoyeGoodListStr += ';'

        //文字关卡解锁
        let levelNum_Array = User.getLevelAryy_custom()
        let wenZiUnLockListStr = 'wenZiUnLockList:'
        Object.keys(levelNum_Array).forEach((key) => {
            wenZiUnLockListStr += levelNum_Array[key] + '?'
        });
        wenZiUnLockListStr += ';'

        //文字关卡过关
        let successLevels = User.getSuccessLevels()
        let successLevelsStr = 'successLevels:'
        Object.keys(successLevels).forEach((key) => {
            successLevelsStr += successLevels[key] + '?'
        });
        successLevelsStr += ';'

        //倒爷索引
        let daoYeIndex = User.getDaoyeIndex()
        let daoYeIndexA = 'daoYeIndex:' + daoYeIndex +';'
        //倒爷订单名
        let daoyeListName = User.getDaoyeListName()
        let daoyeListNameA = 'daoyeListName:' + daoyeListName +';'

        //古玩市场索引
        let guWanShiChangIndex = User.getGuWanShiChangIndex()
        let guWanShiChangIndexA = 'guWanShiChangIndex:' + guWanShiChangIndex +';'

        //元宝
        let yuanBaoStr = 'yuanBao:'+User.getYuanBao()+';'
        //元宝自动合成剩余时间
        let yuanBaoLeftTime = 'YBLeftTime:'+User.getAutoHeChangLeftTime()+';'

        //元宝自动合成剩余时间
        let haomendaojishiStr = 'haomendaojishi:'+User.getChongFanHaoMenTimes()+';'

        //是否重返豪门
        let isChongFanHaoMen = 'isChongFanHaoMen:'+User.getIsChongFanHaoMen()+';'
        


        let ysArray = User.getYinShiTouZiArray()
        let yinshitouziArray = 'yinshitouziArray:'+ysArray[0]+'?'+ysArray[1]+'?'+ysArray[2]+'?'+ysArray[3]+'?'+ysArray[4]+';'


        let arrayTask = User.getCurTaskId()
        let finishTaskId = 'finishTaskId:'+arrayTask[0]+'?'+arrayTask[1]+';'   

        let levelArray = User.getkaiGongSiLevelArray()
        let kaiGongSiLevelArrayStr = 'kaiGongSiLevelArray:'+levelArray[0]+'&'+levelArray[1]+'&'+levelArray[2]+'&'+levelArray[3]+'&'+levelArray[4]+';'

        
        let gongSiLockArray = User.getKaiGongSiLockArray()
        let kaiGongSiLockArrayStr = 'gongSiLockArray:'+gongSiLockArray[0]+'&'+gongSiLockArray[1]+'&'+gongSiLockArray[2]+'&'+gongSiLockArray[3]+'&'+gongSiLockArray[4]+';'
        //

        let taskIndexStr = 'TaskIndex:' + User.getCurTaskIndex()+ ';'

        let unlockIndexStr = 'unlockIndex:'+User.getTreeUnlockIndex()+';'

        let leitaiIndex = 'leitaiIndex:'+User.getLeitaiIndex()+';'
        //1.0.2
        //打螺丝

        //黄金渔夫和展览馆
        let huangjinGouTimeStr = 'huangjinGouTime:' + User.getHuangjinGouTime()+ ';'
        let showFishQuantityStr = 'showFishQuantity:' + User.getShowFishQuantity()+ ';'

        let listArray = User.getShowFishDataList()
        let ShowFishDataListStr = 'ShowFishDataList:'
        Object.keys(listArray).forEach((key) => {
            ShowFishDataListStr += listArray[key] + '?'
        });
        ShowFishDataListStr += ';'
        //硝烟战场
        let xiaoYanZhanChangStatus = 'xiaoYanZhanChangStatus:' + User.getXiaoYanZhanChangStatus() +';'
        let AddDesk = 'AddDesk:'+ User.getAddDesk() +';'

        //新添加
        let shouyiFanbeiNum = 'shouyiFanbeiNum:'+ User.getShouyiFanbeiNum() +';'
        let shouyiFanbeiTime = 'shouyiFanbeiTime:'+ User.getShouyiFanbeiTime() +';'
        let autoClickTime = 'autoClickTime:'+ User.getAutoClickTime() +';'
        let clickIncomeNum = 'clickIncomeNum:'+ User.getClickIncomeNum() +';'

        let curChallengeId = 'curChallengeId:'+ User.getCurChallengeId() +';'
        let mishuPeiXunLevel = 'mishuPeiXunLevel:'+ User.getMishuPeiXunLevel() +';'
        let duiyouPeiXunLevel = 'duiyouPeiXunLevel:'+ User.getDuiyouPeiXunLevel() +';'
        let myLevel = 'myLevel:'+ User.getMyLevel() +';'
      
        let FangchanList = User.getFangchanList()
        let FangchanListStr = 'FangchanListStr:'
        Object.keys(FangchanList).forEach((key) => {
            FangchanListStr += FangchanList[key] + '?'
        });
        FangchanListStr += ';'


        let FangchanShouyi = User.getFangchanShouyi()
        let FangchanShouyiStr = 'FangchanShouyiStr:'
        Object.keys(FangchanShouyi).forEach((key) => {
            FangchanShouyiStr += FangchanShouyi[key] + '?'
        });
        FangchanShouyiStr += ';'

        let SignList = User.getSignList()
        let SignListStr = 'SignListStr:'
        Object.keys(SignList).forEach((key) => {
            SignListStr += SignList[key] + '?'
        });
        SignListStr += ';'

        let MishuList = User.getMishuList()
        let MishuListStr = 'MishuListStr:'
        Object.keys(MishuList).forEach((key) => {
            let data = MishuList[key].mishuId+'&'+MishuList[key].mishuLevel+'&'+MishuList[key].isLock
            MishuListStr += data + '?'
        });
        MishuListStr += ';'

        let DuiyouList = User.getDuiyouList()
        let DuiyouListStr = 'DuiyouListStr:'
        Object.keys(DuiyouList).forEach((key) => {
            let data = DuiyouList[key].mishuId+'&'+DuiyouList[key].mishuLevel+'&'+DuiyouList[key].isLock
            DuiyouListStr += data + '?'
        });
        DuiyouListStr += ';'

        let ShiPuArray = User.getShiPuArray()
        let ShiPuArrayStr = 'ShiPuArrayStr:'
        Object.keys(ShiPuArray).forEach((key) => {
            let data = ShiPuArray[key].id+'&'+ShiPuArray[key].isLock+'&'+ShiPuArray[key].level
            ShiPuArrayStr += data + '?'
        });
        ShiPuArrayStr += ';'


        let TanweiArray = User.getTanweiArray()
        let TanweiArrayStr = 'TanweiArrayStr:'
        Object.keys(TanweiArray).forEach((key) => {
            let data = TanweiArray[key].id+'&'+TanweiArray[key].isLock+'&'+TanweiArray[key].level
            TanweiArrayStr += data + '?'
        });
        TanweiArrayStr += ';'

        let FirstInNew = 'FirstInNew:'+ User.getFirstInNew() +';'


        let showAdNum = 'showAdNum:'+ User.getShowAdNum() +';'
        let dengLuDayNum = 'dengLuDayNum:'+ User.getDengLuDayNum() +';'
        let saveDay = 'saveDay:'+ User.getSaveDay() +';'
        let ziChanData = User.getZiChanData()
        let ziChanData_1 = 'ziChanData:'+ziChanData.curshouyi+'?'+ziChanData.getnum+'?'+ziChanData.shouyi+';'
        let ziChanData_unLockNum = 'ziChanData_unLockNum:'
        Object.keys(ziChanData.unLockNum).forEach((key) => {
            ziChanData_unLockNum += ziChanData.unLockNum[key] + '?'
        });
        ziChanData_unLockNum += ';'
        console.log(ziChanData_1)
        console.log(ziChanData_unLockNum)
        let curGameLevelIndex = 'curGameLevelIndex:'+ User.getCurGameLevelIndex() +';'
        let ChuShiXieHuiLevel = User.getChuShiXieHuiLevel()
        let ChuShiXieHuiLevelStr = 'ChuShiXieHuiLevel:'
        Object.keys(ChuShiXieHuiLevel).forEach((key) => {
            ChuShiXieHuiLevelStr += ChuShiXieHuiLevel[key] + '?'
        });
        ChuShiXieHuiLevelStr += ';'
        let DiaoLuoAllGet = 'DiaoLuoAllGet:'+ User.getDiaoLuoAllGet() +';'
        let zhuanPanFree = 'zhuanPanFree:'+ User.getZhuanPanFree() +';'
      

        let newStr = shouyiFanbeiNum+shouyiFanbeiTime+autoClickTime+clickIncomeNum+
        curChallengeId+mishuPeiXunLevel+duiyouPeiXunLevel+myLevel+FangchanListStr+FangchanShouyiStr+SignListStr+
        MishuListStr+DuiyouListStr+ShiPuArrayStr+TanweiArrayStr
        +showAdNum+dengLuDayNum+saveDay+ziChanData_1+ziChanData_unLockNum+curGameLevelIndex+ChuShiXieHuiLevelStr+DiaoLuoAllGet+zhuanPanFree

        let sendData = moneyStr+userIQ+dayStr+bagGoodIdStrA+roomGoodStatusA+fengweiStrA+canInterStrA+hetongDataA+curJuQingUnLockIndexStr+
        curUnLockMainTaskInfo+curUnLockSubTaskInfo+firstStepIndexStr+taofenStr+shoulieStr+ditanStr+GameGuideStepIndexStr+chatStr
        +myStockDataStr+meiShiJieHetongData+wanFaShouYiStr+meiShiJieListStr+jieSuoBaseIQStr+daoyeGoodListStr+wenZiUnLockListStr+successLevelsStr
        +daoYeIndexA+daoyeListNameA+guWanShiChangIndexA+yuanBaoStr+haomendaojishiStr+yuanBaoLeftTime+isChongFanHaoMen
        +yinshitouziArray+finishTaskId+kaiGongSiLevelArrayStr+kaiGongSiLockArrayStr+taskIndexStr+unlockIndexStr+leitaiIndex
        +huangjinGouTimeStr+showFishQuantityStr+ShowFishDataListStr+xiaoYanZhanChangStatus+AddDesk+newStr+FirstInNew

        console.log('数据保存——++++===',sendData)
        return sendData
    }
    
    public static readDataByUrl(GameData) {
        let ceshiData = GameData
  
        let arr1=ceshiData.split(";");
        //console.log(arr1)
        for(let value of arr1){
            let arr2=value.split(":");
            let keyName = arr2[0]
            let keyValue = arr2[1]
            if(keyName == 'money'){
                let moneyData = Number(keyValue)
                //console.log(moneyData,'moneyData')
                User.setMoney(moneyData,false)
            }else if(keyName == 'userIQ'){
                let userIQ = Number(keyValue)
                User.setUserIQ(userIQ,false)
            }else if(keyName == 'day'){
                let dayData = Number(keyValue)
                User.setDay(dayData,false)
            }else if(keyName == 'showAdNum'){
                let showAdNum = Number(keyValue)
                User.setShowAdNum(showAdNum)
            }else if(keyName == 'dengLuDayNum'){
                let dengLuDayNum = Number(keyValue)
                User.setDengLuDayNum(dengLuDayNum)
            }else if(keyName == 'saveDay'){
                let saveDay = keyValue
                User.setSaveDay(saveDay)
            }else if(keyName == 'ziChanData'){
                let ziChanData = User.getZiChanData()
                let ziChanData_1 = keyValue.split("?");
                ziChanData.curshouyi = ziChanData_1[0]
                ziChanData.getnum = ziChanData_1[1]
                ziChanData.shouyi = ziChanData_1[2]
                User.setZiChanData(ziChanData)
            }else if(keyName == 'ziChanData_unLockNum'){
                let ziChanData = User.getZiChanData()
                let ziChanData_unLockNum = keyValue.split("?");
                ziChanData.unLockNum[0] = ziChanData_unLockNum[0]
                ziChanData.unLockNum[1] = ziChanData_unLockNum[1]
                ziChanData.unLockNum[2] = ziChanData_unLockNum[2]
                ziChanData.unLockNum[3] = ziChanData_unLockNum[3]
                User.setZiChanData(ziChanData)
            }else if(keyName == 'curGameLevelIndex'){
                let curGameLevelIndex = Number(keyValue)
                User.setCurGameLevelIndex(curGameLevelIndex)
            }else if(keyName == 'ChuShiXieHuiLevel'){
                let ChuShiXieHuiLevel = User.getChuShiXieHuiLevel()
                let ChuShiXieHuiLevelStr = keyValue.split("?");
                ChuShiXieHuiLevel[0] = ChuShiXieHuiLevelStr[0]
                ChuShiXieHuiLevel[1] = ChuShiXieHuiLevelStr[1]
                ChuShiXieHuiLevel[2] = ChuShiXieHuiLevelStr[2]
                ChuShiXieHuiLevel[3] = ChuShiXieHuiLevelStr[3]
                ChuShiXieHuiLevel[4] = ChuShiXieHuiLevelStr[4]
                ChuShiXieHuiLevel[5] = ChuShiXieHuiLevelStr[5]
                ChuShiXieHuiLevel[6] = ChuShiXieHuiLevelStr[6]
                ChuShiXieHuiLevel[7] = ChuShiXieHuiLevelStr[7]
                User.setChuShiXieHuiLevel(ChuShiXieHuiLevel)
            }else if(keyName == 'DiaoLuoAllGet'){
                let DiaoLuoAllGet = Number(keyValue)
                User.setDiaoLuoAllGet(DiaoLuoAllGet)
            }else if (keyName == 'allStatistics') {
                if(keyValue != ''){
                    let list = keyValue.split("#");
                    User.setAllStatistics(list)
                    // console.log('所有数据统计list===',list)
                }
            } else if(keyName == 'zhuanPanFree'){
                let zhuanPanFree = Boolean(keyValue)
                User.setZhuanPanFree(zhuanPanFree)
            }else if(keyName == 'canInterGameList'){
     
                let array1 = keyValue.split("?");
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        User.setCanInterGameList(Number(array1[i]),false)
                    }
                }
            }else if(keyName == 'HeTong'){
                let array1 = keyValue.split("?");
                let hetongData = User.getUserHeTong()
                if(array1[0] == 'false'){
                    hetongData.buyChiTang = false
                }else if(array1[0] == 'true'){
                    hetongData.buyChiTang = true
                }
                if(array1[1] == 'false'){
                    hetongData.buyKuaiDiZhan = false
                }else if(array1[1] == 'true'){
                    hetongData.buyKuaiDiZhan = true
                }
                if(array1[2] == 'false'){
                    hetongData.buyXiaShuiDao = false
                }else if(array1[2] == 'true'){
                    hetongData.buyXiaShuiDao = true
                }
                if(array1[3] == 'false'){
                    hetongData.buyJiuGuan = false
                }else if(array1[3] == 'true'){
                    hetongData.buyJiuGuan = true
                }
                if(array1[4] == 'false'){
                    hetongData.buyJiTuan = false
                }else if(array1[4] == 'true'){
                    hetongData.buyJiTuan = true
                }
         

                if(array1[5] == 'false'){
                    hetongData.chongHuiSuJia = false
                }else if(array1[5] == 'true'){
                    hetongData.chongHuiSuJia = true
                }
         
                if(array1[6] == 'false'){
                    hetongData.BuyWangHongJD = false
                }else if(array1[6] == 'true'){
                    hetongData.BuyWangHongJD = true
                }
            
                
                if(array1[7] == 'false'){
                    hetongData.TianYanJingQu = false
                }else if(array1[7] == 'true'){
                    hetongData.TianYanJingQu = true
                }

                if(array1[8] == 'false'){
                    hetongData.RenleiJinQu = false
                }else if(array1[8] == 'true'){
                    hetongData.RenleiJinQu = true
                }

                if(array1[9] == 'false'){
                    hetongData.ZhiZhunDian = false
                }else if(array1[9] == 'true'){
                    hetongData.ZhiZhunDian = true
                }

                if(array1[10] == 'false'){
                    hetongData.buyMeiShiJie = false
                }else if(array1[10] == 'true'){
                    hetongData.buyMeiShiJie = true
                }
                if(array1[11] == 'false'){
                    hetongData.buyYangZhiChang = false
                }else if(array1[11] == 'true'){
                    hetongData.buyYangZhiChang = true
                }
                if(array1[12] == 'false'){
                    hetongData.buyZhanLanGuan = false
                }else if(array1[12] == 'true'){
                    hetongData.buyZhanLanGuan = true
                }
                if(array1[13] == 'false'){
                    hetongData.buyJiaGongCang = false
                }else if(array1[13] == 'true'){
                    hetongData.buyJiaGongCang = true
                }
                if(array1[14] == 'false'){
                    hetongData.buyYeLianChang = false
                }else if(array1[14] == 'true'){
                    hetongData.buyYeLianChang = true
                }
                if(array1[15] == 'false'){
                    hetongData.buyYuChuan = false
                }else if(array1[15] == 'true'){
                    hetongData.buyYuChuan = true
                }
             
                if(array1[16] == 'false'){
                    hetongData.buyChaChang = false
                }else if(array1[16] == 'true'){
                    hetongData.buyChaChang = true
                }
                if(array1[17] == 'false'){
                    hetongData.buyJiaoShiQu = false
                }else if(array1[17] == 'true'){
                    hetongData.buyJiaoShiQu = true
                }
                if(array1[18] == 'false'){
                    hetongData.buyQiZhenYuan = false
                }else if(array1[18] == 'true'){
                    hetongData.buyQiZhenYuan = true
                }
                User.setUserHeTong(hetongData,false)
            }else if(keyName == 'fengweiHotel'){
        

            }else if(keyName == 'NaiNaiStatus'){
                User.setNaiNaiStatus(Number(keyValue),false)

            }else if(keyName == 'roomGoodStatus'){
                User.setRoomGoodStatus(Number(keyValue),false)

            }else if(keyName == 'bagGood'){
                let array1 = keyValue.split("?");
                let bagList = []
                for(let i = 0;i<array1.length;i++){
                    let urlData = array1[i].split(",");
                    if(urlData==''){
                        continue
                    }
                    let bagData = {goodId:0,goodNum:0,leftTimelinessNum:0 }
                    bagData.goodId = Number(urlData[0])
                    bagData.goodNum = Number(urlData[1])
                    bagList.push(bagData)
                }

                //console.log(bagList, 'bagGood')
                User.setBagGoodsList(bagList,false)

            }else if(keyName == 'curJuQingUnLockIndex'){
                User.setCurJuQingUnLockIndex(keyValue,false)
            }else if(keyName == 'curUnLockMainTaskInfo'){
                let array1 = keyValue.split("?");
                let IsFinish = false
                if(array1[3] == 'false'){
                    IsFinish = false
                }else{
                    IsFinish = true
                }
                let taskInfo = {
                    Id:Number(array1[0]),
                    StartDay:Number(array1[1]),
                    EndDay:Number(array1[2]),
                    IsFinish:IsFinish
            
                }
                User.setCurUnLockMainTaskInfo(taskInfo,false)
            }else if(keyName == 'curUnLockSubTaskInfo'){

                let array1 = keyValue.split("?");
                let IsFinish = false
                if(array1[3] == 'false'){
                    IsFinish = false
                }else{
                    IsFinish = true
                }
                let taskInfo = {
                    Id:Number(array1[0]),
                    curProgressNum:Number(array1[1]),
                    targetProgressNum:Number(array1[2]),
                    IsFinish:IsFinish
              
                }
                User.setCurUnLockSubTaskInfo(taskInfo,false)
            }else if(keyName == 'ChatRecordData'){
                // ChatRecordData:

                // DH_NaiNai&DH_1,false
                // RiJiBen&RJB_1,true#
                // DH_XiaoMaiBu&  DH_2,false|DH_3,false
                // WX_YiSheng&WX_1,false#
                let array1 = keyValue.split("#");
                if(array1.length>0){
                    for(let i = 0; i<array1.length;i++){
                        let data = array1[i]
                        let array2 = data.split("&");
                        if(array2.length>1){
                            let key = array2[0]
                            let array3 = array2[1].split("|");
                            for(let j=0;j<array3.length;j++){
                                let value4 = array3[j].split(",");
                                if(value4[1] == 'false'){
                                    User.setChatRecordData(key,value4[0],false,false)
                                }else{
                                    User.setChatRecordData(key,value4[0],true,false)
                                }
                                
                            }
                        }
                    }
                }
                
            }else if(keyName == 'nianHuoExistIdTab'){
                let array1 = keyValue.split("?");
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        User.setNianHuoExistIdTab(Number(array1[i]),false)
                    }
                }
            }else if(keyName == 'firstStepIndex'){
                if(Number(keyValue)){
                    User.setFirstStepIndex(Number(keyValue),false)
                }
     
            }else if(keyName == 'GameGuideStepIndex'){
                if(Number(keyValue)){
                    User.setGameGuideStepIndex(Number(keyValue),false)
                }
            }else if(keyName == 'taofen'){
                let taofenArray = User.getTaofenArray()
                let array1 = keyValue.split("?");
                taofenArray.tanhuang =  Number(array1[0]) || 0
                taofenArray.xichen = Number(array1[1]) || 0

                User.setTaofenArray(taofenArray,false)
            }else if(keyName == 'shoulie'){
                
                let array1 = keyValue.split("?");
                User.setSLCGongJianAd(Number(array1[0]) || 0,false)
                User.setSLCLieQiangAd(Number(array1[1]) || 0,false)
                User.setSLCWangAd(Number(array1[2]) || 0,false)
            }else if(keyName == 'diaoyu'){
             
            }else if(keyName == 'ditan'){
                let array1 = keyValue.split("?");
                let ditanList = User.getDitanData()
                if(ditanList.length == 0){
        
                }else{
                  
                    if(array1[0] == 'false'){
                        ditanList[0].dataVal = false
                    }else{
                        ditanList[0].dataVal = true
                    }
                    if(array1[1] == 'false'){
                        ditanList[1].dataVal = false
                    }else{
                        ditanList[1].dataVal = true
                    }
                    if(array1[2] == 'false'){
                        ditanList[2].dataVal = false
                    }else{
                        ditanList[2].dataVal = true
                    }
                    // if(array1[3] == 'false'){
                    //     ditanList[3].dataVal = false
                    // }else{
                    //     ditanList[3].dataVal = true
                    // }
                    User.setDitanData(ditanList,false)

                }
            }else if(keyName == 'myStockData'){
                let array1 = keyValue.split("?");
                let tempTab = {}
                let isHaveData = false
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                   
                        let array2 = array1[i].split("&")
                        let stockName = array2[0]
                        let buyPrice = array2[1]
                        let prossess = array2[2]
                        if(stockName != 'undefined'){
                            isHaveData = true
                            tempTab[stockName] = {}
                            tempTab[stockName].stockName = stockName
                            tempTab[stockName].buyPrice = Number(buyPrice||0)
                            tempTab[stockName].prossess = prossess
                        }
                    
                    }
                }
                if(isHaveData){
                    User.setMyStockDatCovre(tempTab,false)
                }
                
            }else if(keyName == 'myFangChanData'){
             
                
            }else if(keyName == 'MeiShiHeTong'){
                let b = true
                if(keyValue == 'false'){
                    b = false
                }else{
                    b = true
                }
                let BaoweiData = {isQianYue:b}
                User.setBaoweiData(BaoweiData,false)
            }else if(keyName == 'wanFaShouYiData'){
                let array1 = keyValue.split("?");
                let tempTab = {}
                let isHaveData = false
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        isHaveData = true
                        let array2 = array1[i].split("&")
                        let gameName = array2[0]
                        let num = Number(array2[1] ||0)
                        tempTab[gameName] = num
                    }
                }
                if(isHaveData){
                    User.setAllGameShouYi(tempTab,false)
                }
                
            }else if(keyName == 'meiShiJieListData'){
                let array1 = keyValue.split("?");
                let tempArr = []
                let isHaveData = false
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        isHaveData = true
                        let array2 = array1[i].split("&")
                        let IndustryId = Number(array2[0] ||0)
                        let isLock = true
                        if(array2[1] == 'false'){
                            isLock = false
                        }else{
                            isLock = true
                        }
                        let IndustryNum = Number(array2[2] ||0)
                        let levelNum = Number(array2[3] ||0)
                        let levelUpMoney = Number(array2[4] ||0)
                        let earnMoneyTime = Number(array2[5] ||0)
                        let earnMoney = Number(array2[6] ||0)
                        let timeAdd = Number(array2[7] ||0)
                        // tempTab[gameName] = num
                        let tempTab = {IndustryId:IndustryId,isLock:isLock,IndustryNum:IndustryNum,levelNum:levelNum,
                            levelUpMoney:levelUpMoney,earnMoneyTime:earnMoneyTime,earnMoney:earnMoney,timeAdd:timeAdd}
                        tempArr.push(tempTab)
                    }
                }
                if(isHaveData){
                    User.setIndustryList(tempArr)
                }
                
            }else if(keyName == 'jieSuoBaseIQData'){
                let array1 = keyValue.split("?");
                let tempTab = {}
                let isHaveData = false
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        isHaveData = true
                        let array2 = array1[i].split("&")
                        let gameName = array2[0]
                        let num = Number(array2[1] ||0)
                        tempTab[gameName] = num
                    }
                }
                if(isHaveData){
                    User.setALlJieSuoBaseIQ(tempTab,false)
                }
            }else if(keyName == 'daoyeGoodList'){
                let array1 = keyValue.split("?");
                let tempArr = []
                let isHaveData = false
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        isHaveData = true
                        let array2 = array1[i].split("&")
                        let goodId = Number(array2[0] ||0)
                        let buyNum = Number(array2[1] ||0)
                        let buyPercent = Number(array2[2] ||0)
                        let gameType = array2[3]
                        
                        let tempTab = {goodId:goodId,buyNum:buyNum,buyPercent:buyPercent,gameType:gameType}
                        tempArr.push(tempTab)
                    }
                }
                if(isHaveData){
                    User.setDaoyeGoodList(tempArr,false)
                }
                
            }else if(keyName == 'wenZiUnLockList'){
                let array1 = keyValue.split("?");
                let tempArr = []
                
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        tempArr.push(Number(array1[i]))
                    }
                }
                if(tempArr.length > 0){
                    User.setLevelAryy_Cover(tempArr,false)
                }
                
            }else if(keyName == 'successLevels'){
                let array1 = keyValue.split("?");
                let tempArr = []
                
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        tempArr.push(Number(array1[i]))
                    }
                }
                if(tempArr.length > 0){
                    User.setSuccessLevelsCover(tempArr,false)
                }
                
            }else if(keyName == 'daoYeIndex'){
                if(Number(keyValue)){
                    User.setDaoyeIndex(Number(keyValue),false)
                }
            }else if(keyName == 'daoyeListName'){
                User.setDaoyeListName(keyValue)
            }else if(keyName == 'guWanShiChangIndex'){
                if(Number(keyValue)){
                    User.setGuWanShiChangIndex(Number(keyValue),false)
                }
            }else if(keyName == 'yuanBao'){
                let yuanBao = Number(keyValue)
                User.setYuanBao(yuanBao,false)
            }else if(keyName == 'haomendaojishi'){
                let daojishi = Number(keyValue)
                User.setChongFanHaoMenTimes(daojishi,false)
            }else if(keyName == 'YBLeftTime'){
                let leftTime = Number(keyValue)
                User.setAutoHeChangLeftTime(leftTime,false)
            }else if(keyName == 'jinBiYuanBaoShowStatus'){
                // let status = Number(keyValue)
                // User.setJinBiYuanBaoShowStatus(status,false)
            }else if(keyName == 'isChongFanHaoMen'){
                let b = true
                if(keyValue == 'false'){
                    b = false
                }else{
                    b = true
                }
                User.setIsChongFanHaoMen(b,false)
            }else if(keyName == 'yinshitouziArray'){
                let ysArray = User.getYinShiTouZiArray()
                let array1 = keyValue.split("?");
                Object.keys(ysArray).forEach((key) => {
                    ysArray[key] = Number(array1[key])
                });

                User.setYinShiTouZiArray(ysArray)


            }else if(keyName == 'finishTaskId'){
                let arrayTask = User.getCurTaskId()
                let array1 = keyValue.split("?");
                arrayTask[0] =  Number(array1[0])
                arrayTask[1] =  Number(array1[1])
                User.setCurTaskId(arrayTask)
            }else if(keyName == 'kaiGongSiLevelArray'){
                let levelArray = User.getkaiGongSiLevelArray()
                let array1 = keyValue.split("&");
                levelArray[0] = Number(array1[0])
                levelArray[1] = Number(array1[1])
                levelArray[2] = Number(array1[2])
                levelArray[3] = Number(array1[3])
                levelArray[4] = Number(array1[4])
                User.setkaiGongSiLevelArray(levelArray)
            }else if(keyName == 'gongSiLockArray'){
                let gongSiLockArray = User.getKaiGongSiLockArray()
                let array1 = keyValue.split("&");
                gongSiLockArray[0] = Number(array1[0])
                gongSiLockArray[1] = Number(array1[1])
                gongSiLockArray[2] = Number(array1[2])
                gongSiLockArray[3] = Number(array1[3])
                gongSiLockArray[4] = Number(array1[4])
                User.setKaiGongSiLockArray(gongSiLockArray)          
            }else if(keyName == 'TaskIndex'){

                let index = Number(keyValue)
                User.setCurTaskIndex(index)
            }else if(keyName == 'unlockIndex'){

                let index = Number(keyValue)
                User.setTreeUnlockIndex(index)
            }else if(keyName == 'leitaiIndex'){
                let index = Number(keyValue)
                User.setLeitaiIndex(index)
            }else if(keyName == 'showFishQuantity'){
                let index = Number(keyValue)
                User.setShowFishQuantity(index, false)
            }else if(keyName == 'ShowFishDataList'){
                let array1 = keyValue.split("?");
                let tempArr = []
                
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        tempArr.push(Number(array1[i]))
                    }
                }
                if(tempArr.length > 0){
                    User.setShowFishDataList(tempArr,false)
                }

            }else if(keyName == 'huangjinGouTime'){
                let index = Number(keyValue)
                User.setHuangjinGouTime(index)
            }else if(keyName == 'xiaoYanZhanChangStatus'){
                let index = Number(keyValue)
                User.setXiaoYanZhanChangStatus(index)
            }else if(keyName == 'AddDesk'){
                if(keyValue == 'false'){
                    User.setAddDesk(false)
                }else if(keyValue == 'true'){
                    User.setAddDesk(true)
                }
             
            }else if(keyName == 'shouyiFanbeiNum'){
                User.setShouyiFanbeiNum(Number(keyValue))
            }else if(keyName == 'shouyiFanbeiTime'){
                User.setShouyiFanbeiTime(Number(keyValue))
            }else if(keyName == 'autoClickTime'){
                User.setAutoClickTime(Number(keyValue))
            }else if(keyName == 'clickIncomeNum'){
                User.setClickIncomeNum(Number(keyValue))
            }else if(keyName == 'curChallengeId'){
                User.setCurChallengeId(Number(keyValue))
            }else if(keyName == 'mishuPeiXunLevel'){
                User.setMishuPeiXunLevel(Number(keyValue))
            }else if(keyName == 'duiyouPeiXunLevel'){
                User.setDuiyouPeiXunLevel(Number(keyValue))
            }else if(keyName == 'myLevel'){
                User.setMyLevel(Number(keyValue))
            }else if(keyName == 'FangchanListStr'){
                let array1 = keyValue.split("?");
                let tempArr = []
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        tempArr.push(Number(array1[i]))
                    }
                }
                if(tempArr.length > 0){
                    User.setFangchanList(tempArr) 
                }
            }else if(keyName == 'FangchanShouyiStr'){
                let array1 = keyValue.split("?");
                let tempArr = []
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        tempArr.push(Number(array1[i]))
                    }
                }
                if(tempArr.length > 0){
                    User.setFangchanShouyi(tempArr) 
                }
            }else if(keyName == 'SignListStr'){
                let array1 = keyValue.split("?");
                let tempArr = []
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        tempArr.push(Number(array1[i]))
                    }
                }
                if(tempArr.length > 0){
                    User.setSignList(tempArr) 
                }
            }else if(keyName == 'MishuListStr'){
                let array1 = keyValue.split("?");
                let tempArr = []
                let isHaveData = false
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        isHaveData = true
                        let array2 = array1[i].split("&")
                        let mishuId = Number(array2[0] ||0)
                        let mishuLevel = Number(array2[1] ||0)
                        let isLock = (array2[2] == 'true')?true:false
                    
                        let tempTab = {mishuId:mishuId,mishuLevel:mishuLevel,isLock:isLock}
                        tempArr.push(tempTab)
                    }
                }
                if(isHaveData){
                    User.setMishuList(tempArr)
                }

            }else if(keyName == 'DuiyouListStr'){
                let array1 = keyValue.split("?");
                let tempArr = []
                let isHaveData = false
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        isHaveData = true
                        let array2 = array1[i].split("&")
                        let mishuId = Number(array2[0] ||0)
                        let mishuLevel = Number(array2[1] ||0)
                        let isLock = (array2[2] == 'true')?true:false
                    
                        let tempTab = {mishuId:mishuId,mishuLevel:mishuLevel,isLock:isLock}
                        tempArr.push(tempTab)
                    }
                }
                if(isHaveData){
                    User.setDuiyouList(tempArr)
                }
            }else if(keyName == 'ShiPuArrayStr'){
                let array1 = keyValue.split("?");
                let tempArr = []
                let isHaveData = false
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        isHaveData = true
                        let array2 = array1[i].split("&")
                        let id = Number(array2[0] ||0)
                        let isLock = (array2[1] == 'true')?true:false
                        let level = Number(array2[2] ||0)
                        let tempTab = {id:id,isLock:isLock,level:level}
                        tempArr.push(tempTab)
                    }
                }
                if(isHaveData){
                    User.setShiPuArray(tempArr)
                }
            }else if(keyName == 'TanweiArrayStr'){
                let array1 = keyValue.split("?");
                let tempArr = []
                let isHaveData = false
                for(let i = 0; i <array1.length;i++){
                    if(array1[i]!=''){
                        isHaveData = true
                        let array2 = array1[i].split("&")
                        let id = Number(array2[0] ||0)
                        let isLock = (array2[1] == 'true')?true:false
                        let level = Number(array2[2] ||0)
                        let tempTab = {id:id,isLock:isLock,level:level}
                        tempArr.push(tempTab)
                    }
                }
                if(isHaveData){
                    User.setTanweiArray(tempArr)
                }
            }else if(keyName == 'FirstInNew'){
                if(keyValue == 'false'){
                    User.setFirstInNew(false)
                }else if(keyValue == 'true'){
                    User.setFirstInNew(true)
                }
            }

            
        }
        GameMgr.getInstance_custom().saveGameData_custom();

        setTimeout(() => {
            console.warn('再次load++==MainScene')
            cc.director.loadScene("MainScene");
        },  3000);
 

    }

    
    //获取还剩多少任务解锁
    public static getDisTaskNumByGameType(gameType){
        let gameTaskIndex = 0
        let curTaskIndex = User.getCurTaskIndex()
       
        return gameTaskIndex-curTaskIndex
    }


    public static getXiaomaibuAllBuy(){
        let list = User.getKuaiDiList()
        let isAllBuy = true
        for(let i = 0; i<list.length; i++){
            if(list[i].saveNum > 0 ){
                isAllBuy = false
                break
            }
        }
        return isAllBuy

    }
    
}