/// <summary> /// 修改数据 /// </summary> public void changeCustomData() { if (!checkData()) { return; } this.oldInfoBean.Name = inputName.text; this.oldInfoBean.Horizontal_number = Convert.ToInt32(inputHorizontalNumber.text); this.oldInfoBean.Vertical_number = Convert.ToInt32(inputVerticalNumber.text); //修改数据 CustomPuzzlesInfoDSHandle handle = (CustomPuzzlesInfoDSHandle)DataStorageManage.getCustomPuzzlesInfoDSHandle(); handle.changeData(this.oldInfoBean); jumpSelectUI(); }
/// <summary> /// 读取拼图信息 /// </summary> /// <param name="resourcesEnum"></param> public void loadJigsaw(JigsawResourcesEnum resourcesEnum) { StopAllCoroutines(); resourcesType = resourcesEnum; //删除原数据 for (int i = 0; i < transform.childCount; i++) { Destroy(transform.GetChild(i).gameObject); } //加载该类型下所有拼图数据 List <PuzzlesInfoBean> listInfoData = null; if (resourcesEnum.Equals(JigsawResourcesEnum.Custom)) { listInfoData = DataStorageManage.getCustomPuzzlesInfoDSHandle().getAllData(); createAddItem(); } else { listInfoData = PuzzlesInfoManager.LoadAllPuzzlesDataByType(resourcesEnum); } if (listInfoData == null || listInfoData.Count == 0) { return; } listInfoData.Sort((x, y) => x.Level.CompareTo(y.Level)); List <PuzzlesCompleteStateBean> listCompleteData = DataStorageManage.getPuzzlesCompleteDSHandle().getAllData(); List <PuzzlesProgressBean> listProgressData = DataStorageManage.getPuzzlesProgressDSHandle().getAllData(); List <PuzzlesGameInfoBean> listData = PuzzlesDataUtil.MergePuzzlesInfo(listInfoData, listCompleteData, listProgressData); for (int itemPosition = 0; itemPosition < listData.Count; itemPosition++) { PuzzlesGameInfoBean itemInfo = listData[itemPosition]; createSelectItem(itemPosition, itemInfo); } }
/// <summary> /// 提交数据 /// </summary> public void submitCustomData() { if (!checkData()) { return; } SoundUtil.playSoundClip(AudioButtonOnClickEnum.btn_sound_1); string markFileName = SystemUtil.getUUID(); PuzzlesInfoBean infoBean = new PuzzlesInfoBean(); infoBean.id = -1; infoBean.Name = inputName.text; infoBean.Horizontal_number = Convert.ToInt32(inputHorizontalNumber.text); infoBean.Vertical_number = Convert.ToInt32(inputVerticalNumber.text); infoBean.Level = 1; infoBean.Data_type = (int)JigsawResourcesEnum.Custom; infoBean.Mark_file_name = markFileName; infoBean.Data_file_path = CommonInfo.Custom_Res_Save_Path + "/"; FileUtil.CreateDirectory(CommonInfo.Custom_Res_Save_Path); FileUtil.CopyFile(uploadPath, CommonInfo.Custom_Res_Save_Path + "/" + markFileName, true); List <PuzzlesInfoBean> listInfoData = DataStorageManage.getCustomPuzzlesInfoDSHandle().getAllData(); if (listInfoData == null) { listInfoData = new List <PuzzlesInfoBean>(); } listInfoData.Add(infoBean); //保存数据 CustomPuzzlesInfoDSHandle handle = (CustomPuzzlesInfoDSHandle)DataStorageManage.getCustomPuzzlesInfoDSHandle(); handle.saveAllData(listInfoData); jumpSelectUI(); }
/// <summary> /// 创建自定义样式 /// </summary> /// <param name="itemInfo"></param> private GameObject createCustomItem(PuzzlesGameInfoBean itemInfo) { PuzzlesInfoBean infoBean = itemInfo.puzzlesInfo; PuzzlesCompleteStateBean completeStateBean = itemInfo.completeStateInfo; GameObject itemObj = Instantiate(ResourcesManager.LoadData <GameObject>(JigsawSelectCustomItemPath)); //设置大小 setItemSize(itemObj); itemObj.name = infoBean.Mark_file_name; itemObj.transform.SetParent(transform); //设置背景图片 Image backImage = CptUtil.getCptFormParentByName <Transform, Image>(itemObj.transform, "JigsawPic"); string filePath = infoBean.Data_file_path + infoBean.Mark_file_name; StartCoroutine(ResourcesManager.LoadAsyncLocationImage(filePath, backImage)); //设置按键 Button startBT = CptUtil.getCptFormParentByName <Transform, Button>(itemObj.transform, "JigsawStart"); startBT.onClick.AddListener(delegate() { SoundUtil.playSoundClip(AudioButtonOnClickEnum.btn_sound_1); CommonData.SelectPuzzlesInfo = itemInfo; SceneUtil.jumpGameScene(); }); //最好分数 Transform bestScoreTF = CptUtil.getCptFormParentByName <Transform, Transform>(itemObj.transform, "JigsawBestScore"); Text bestScore = CptUtil.getCptFormParentByName <Transform, Text>(itemObj.transform, "JigsawBestScoreText"); if (completeStateBean != null && completeStateBean.completeTime != null) { bestScore.text = GameUtil.GetTimeStr(completeStateBean.completeTime.totalSeconds); } else { bestScoreTF.gameObject.SetActive(false); } //设置文本信息 Text jigsawNameText = CptUtil.getCptFormParentByName <Transform, Text>(itemObj.transform, "JigsawName"); Text startBTText = CptUtil.getCptFormParentByName <Transform, Text>(itemObj.transform, "JigsawStartText"); if (itemInfo.progressInfo != null) { startBTText.text = CommonData.getText(85); } else { startBTText.text = CommonData.getText(14); } jigsawNameText.text = infoBean.Name; //设置按钮信息 //编辑按钮 //Button editBT = CptUtil.getCptFormParentByName<Transform, Button>(itemObj.transform, "JigsawEdit"); //editBT.onClick.AddListener(delegate () //{ // SoundUtil.playSoundClip(AudioButtonOnClickEnum.btn_sound_1); // MenuCustomUpLoadUIControl upLoadUIControl = menuSelectUIControl.mUIMasterControl.getUIByType<MenuCustomUpLoadUIControl>(UIEnum.MenuCustomUpLoadUI); // upLoadUIControl.setInitData(infoBean); // menuSelectUIControl.mUIMasterControl.openUIByTypeAndCloseOther(UIEnum.MenuCustomUpLoadUI); //}); //删除按钮 Button deleteBT = CptUtil.getCptFormParentByName <Transform, Button>(itemObj.transform, "JigsawDelete"); deleteBT.onClick.AddListener(delegate() { SoundUtil.playSoundClip(AudioButtonOnClickEnum.btn_sound_1); FileUtil.DeleteFile(filePath); CustomPuzzlesInfoDSHandle handle = (CustomPuzzlesInfoDSHandle)DataStorageManage.getCustomPuzzlesInfoDSHandle(); handle.removeData(infoBean); menuSelectUIControl.setJigsawSelectData(JigsawResourcesEnum.Custom); }); return(itemObj); }