//--------------------------------------------------------------------------------------------- /// <summary> /// 开始游戏 /// </summary> public void gameStart() { //判断是否有存档 PuzzlesProgressBean paramsData = new PuzzlesProgressBean(); paramsData.puzzleId = CommonData.SelectPuzzlesInfo.puzzlesInfo.id; paramsData.markFileName = CommonData.SelectPuzzlesInfo.puzzlesInfo.mark_file_name; PuzzlesProgressBean progressData = DataStorageManage.getPuzzlesProgressDSHandle().getData(paramsData); TimeBean gameTime = null; if (progressData != null) { gameTime = progressData.gameTime; GameUtil.setGameProgress(this, progressData); } else { } CommonData.IsCheating = false; CommonData.GameStatus = 1; CommonData.IsDargMove = true; Camera.main.gameObject.AddComponent <SecretCodeCpt>(); GameMainUIControl gameMainUI = uiMasterControl.getUIByType <GameMainUIControl>(UIEnum.GameMainUI); if (gameMainUI != null) { gameMainUI.startTimer(gameTime); } }
/// <summary> /// 保存并退出 /// </summary> public void saveAndExitOnClick() { if (CommonData.GameStatus == 1) { CommonData.GameStatus = 4; PuzzlesProgressBean progressBean = new PuzzlesProgressBean(); GameMainUIControl gameMainUI = mUIMasterControl.getUIByType <GameMainUIControl>(UIEnum.GameMainUI); if (gameMainUI != null) { //设置游戏时间 progressBean.gameTime = gameMainUI.getGameTimer(); } //设置ID progressBean.puzzleId = CommonData.SelectPuzzlesInfo.puzzlesInfo.id; progressBean.markFileName = CommonData.SelectPuzzlesInfo.puzzlesInfo.mark_file_name; progressBean.progress = GameUtil.getGameProgress(); DataStorageManage.getPuzzlesProgressDSHandle().saveData(progressBean); SceneUtil.jumpMainScene(); } else { DialogManager.createToastDialog().setToastText("不能进行此操作"); } }
/// <summary> /// 使用装备 /// </summary> /// <param name="content"></param> /// <param name="data"></param> /// <param name="oldObj"></param> private void useEquip(Transform content, EquipInfoBean data, GameObject oldObj) { GameConfigureBean configureBean = DataStorageManage.getGameConfigureDSHandle().getData(0); if (data.equipType == (int)EquipTypeEnum.PuzzlesShape) { configureBean.puzzlesShape = (int)data.equipTypeId; } else if (data.equipType == (int)EquipTypeEnum.BorderShape) { configureBean.borderShape = (int)data.equipTypeId; } else if (data.equipType == (int)EquipTypeEnum.BorderColor) { configureBean.borderColor = (int)data.equipTypeId; } else if (data.equipType == (int)EquipTypeEnum.Background) { configureBean.background = (int)data.equipTypeId; } DataStorageManage.getGameConfigureDSHandle().saveData(configureBean); CommonConfigure.refreshData(); refreshData(content); }
private float mAddAnimTime;//增加动画持续时间 void Awake() { mAddAnimTime = 6f; UserInfoBean userInfo = DataStorageManage.getUserInfoDSHandle().getData(0); if (userInfo != null) { mCurrentPoint = userInfo.puzzlesPoint; } }
private void deleteData() { PuzzlesProgressBean paramsData = new PuzzlesProgressBean(); paramsData.markFileName = CommonData.SelectPuzzlesInfo.puzzlesInfo.mark_file_name; paramsData.puzzleId = CommonData.SelectPuzzlesInfo.puzzlesInfo.id; ((PuzzlesProgressDSHandle)DataStorageManage .getPuzzlesProgressDSHandle()) .deleteData(paramsData); }
/// <summary> /// 语言选择 /// </summary> /// <param name="position"></param> private void languageSelection(int position) { SoundUtil.playSoundClip(AudioButtonOnClickEnum.btn_sound_3); GameConfigureBean configure = DataStorageManage.getGameConfigureDSHandle().getData(0); configure.gameLanguage = position; DataStorageManage.getGameConfigureDSHandle().saveData(configure); CommonConfigure.refreshData(); CommonData.refreshData(); mUIMasterControl.refreshAllUI(); }
/// <summary> /// 屏幕模式 /// </summary> /// <param name="position"></param> private void screenModeSelection(int position) { SoundUtil.playSoundClip(AudioButtonOnClickEnum.btn_sound_3); if (position == 0) { Screen.fullScreen = true; } else { Screen.fullScreen = false; } GameConfigureBean configure = DataStorageManage.getGameConfigureDSHandle().getData(0); configure.screenMode = position; DataStorageManage.getGameConfigureDSHandle().saveData(configure); }
/// <summary> /// 解锁所有拼图 /// </summary> private void unlockPuzzles() { List <PuzzlesInfoBean> listData = PuzzlesInfoManager.LoadAllPuzzlesData(); foreach (PuzzlesInfoBean itemData in listData) { PuzzlesCompleteStateBean completeStateBean = DataStorageManage.getPuzzlesCompleteDSHandle().getData(itemData.id); if (completeStateBean == null) { completeStateBean = new PuzzlesCompleteStateBean(); } completeStateBean.puzzleId = itemData.id; completeStateBean.puzzleType = itemData.data_type; completeStateBean.unlockState = JigsawUnlockEnum.UnLock; DataStorageManage.getPuzzlesCompleteDSHandle().saveData(completeStateBean); } }
/// <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(); }
public static void saveData() { GameConfigureBean data = new GameConfigureBean(); data.gameLanguage = (int)GameLanguage; data.isOpenBGM = (int)IsOpenBGM; data.isOpenSound = (int)IsOpenSound; data.isOpenTimeUI = (int)IsOpenTimeUI; data.screenMode = (int)SceenMode; data.puzzlesShape = (int)PuzzlesShape; data.borderShape = (int)BorderShape; data.borderColor = (int)BorderColor; data.background = (int)Background; data.bgmVolume = BGMVolume; data.soundVolume = SoundVolume; DataStorageManage.getGameConfigureDSHandle().saveData(data); }
/// <summary> /// 开始增加 /// </summary> private void startAdd() { ((UserInfoDSHandle)DataStorageManage.getUserInfoDSHandle()).increaseUserPuzzlesPoint(mAddPoint); DOTween.To(() => mCurrentPoint, newPoint => { int newPointInt = (int)newPoint; mPuzzelsPointContent.text = "" + newPointInt + " PP"; }, mAddPoint + mCurrentPoint, mAddAnimTime); mPuzzlesPointAdd.DOFade(1, mAddAnimTime / 2f).OnComplete(() => { mPuzzlesPointAdd.DOFade(0, mAddAnimTime / 2f); }); mPuzzlesPointAdd.transform.DOLocalMoveY(20, mAddAnimTime).OnComplete(() => { Destroy(gameObject); }); }
public void CreateInstallItemList(List <SteamWorkshopQueryInstallInfoBean> listData) { //删除原数据 for (int i = 0; i < transform.childCount; i++) { if (transform.GetChild(i).gameObject.activeSelf) { Destroy(transform.GetChild(i).gameObject); } } List <PuzzlesInfoBean> listPuzzlesInfo = CreateGameInfoListByInstallInfo(listData); List <PuzzlesCompleteStateBean> listCompleteData = DataStorageManage.getPuzzlesCompleteDSHandle().getAllData(); List <PuzzlesProgressBean> listProgressData = DataStorageManage.getPuzzlesProgressDSHandle().getAllData(); List <PuzzlesGameInfoBean> listGameInfoData = PuzzlesDataUtil.MergePuzzlesInfo(listPuzzlesInfo, listCompleteData, listProgressData); for (int itemPosition = 0; itemPosition < listData.Count; itemPosition++) { PuzzlesGameInfoBean itemInfo = listGameInfoData[itemPosition]; CreateInstallItem(itemInfo); } }
public static void refreshData() { GameLanguage = GameLanguageEnum.English; IsOpenBGM = EnabledEnum.ON; IsOpenSound = EnabledEnum.ON; IsOpenTimeUI = EnabledEnum.ON; SceenMode = ScreenModeEnum.Full; PuzzlesShape = JigsawStyleEnum.Def; BorderShape = GameWallEnum.Def; BorderColor = EquipColorEnum.Def; Background = EquipColorEnum.Def; SoundVolume = 1f; BGMVolume = 1f; GameConfigureBean configureBean = DataStorageManage.getGameConfigureDSHandle().getData(0); if (configureBean != null) { //游戏语言设置 GameLanguage = (GameLanguageEnum)Enum.ToObject(typeof(GameLanguageEnum), configureBean.gameLanguage); //是否开启BGM IsOpenBGM = (EnabledEnum)Enum.ToObject(typeof(EnabledEnum), configureBean.isOpenBGM); //是否开启音效 IsOpenSound = (EnabledEnum)Enum.ToObject(typeof(EnabledEnum), configureBean.isOpenSound); //是否开启计时UI IsOpenTimeUI = (EnabledEnum)Enum.ToObject(typeof(EnabledEnum), configureBean.isOpenTimeUI); //屏幕模式 SceenMode = (ScreenModeEnum)Enum.ToObject(typeof(ScreenModeEnum), configureBean.screenMode); PuzzlesShape = (JigsawStyleEnum)Enum.ToObject(typeof(JigsawStyleEnum), configureBean.puzzlesShape); BorderShape = (GameWallEnum)Enum.ToObject(typeof(GameWallEnum), configureBean.borderShape); BorderColor = (EquipColorEnum)Enum.ToObject(typeof(EquipColorEnum), configureBean.borderColor); Background = (EquipColorEnum)Enum.ToObject(typeof(EquipColorEnum), configureBean.background); SoundVolume = configureBean.soundVolume; BGMVolume = configureBean.bgmVolume; } }
/// <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="data"></param> private void unlockEquip(Transform content, EquipInfoBean data, GameObject oldObj) { SoundUtil.playSoundClip(AudioButtonOnClickEnum.btn_sound_1); long userPoint = DataStorageManage.getUserInfoDSHandle().getData(0).puzzlesPoint; if (userPoint < data.unlockPoint) { //如果没有PP则提示不足 DialogManager.createToastDialog().setToastText(CommonData.getText(16)); } else { //如果有PP则解锁 //保存信息 ((UserInfoDSHandle)DataStorageManage.getUserInfoDSHandle()).decreaseUserPuzzlesPoint(data.unlockPoint); m_EquipUIControl.refreshPuzzlesPoint(); data.unlockType = 1; DataStorageManage.getEquipDSHandle().saveData(data); createEquipItem(content, data); Destroy(oldObj); } }
/// <summary> /// 记录完成时间 /// </summary> /// <param name="selectItem"></param> /// <param name="completeTime"></param> public static void FinshSaveCompleteData(PuzzlesGameInfoBean selectItem, TimeBean completeTime) { PuzzlesInfoBean puzzlesInfo = selectItem.puzzlesInfo; PuzzlesCompleteStateBean completeStateBean = selectItem.completeStateInfo; if (completeStateBean == null) { completeStateBean = new PuzzlesCompleteStateBean(); } List <PuzzlesCompleteStateBean> listCompleteState = DataStorageManage.getPuzzlesCompleteDSHandle().getAllData(); if (listCompleteState == null || listCompleteState.Count == 0) { listCompleteState = new List <PuzzlesCompleteStateBean>(); completeStateBean.puzzleId = puzzlesInfo.id; completeStateBean.puzzleType = puzzlesInfo.data_type; completeStateBean.puzzleName = puzzlesInfo.name; completeStateBean.puzzleMarkName = puzzlesInfo.mark_file_name; completeStateBean.completeTime = completeTime; completeStateBean.unlockState = JigsawUnlockEnum.UnLock; listCompleteState.Add(completeStateBean); } else { int listCompleteSize = listCompleteState.Count; bool hasData = false; for (int i = 0; i < listCompleteSize; i++) { PuzzlesCompleteStateBean itemCompleteBean = listCompleteState[i]; bool isThisPuzzles = false; if (itemCompleteBean.puzzleType.Equals((int)JigsawResourcesEnum.Custom)) { if (itemCompleteBean.puzzleMarkName.Equals(puzzlesInfo.mark_file_name)) { isThisPuzzles = true; } } else { if (itemCompleteBean.puzzleId.Equals(puzzlesInfo.Id)) { isThisPuzzles = true; } } if (isThisPuzzles) { hasData = true; if (itemCompleteBean.completeTime.totalSeconds != 0 && !TimeUtil.isFasterTime(itemCompleteBean.completeTime, completeTime)) { //存时间更快的 } else { itemCompleteBean.puzzleId = puzzlesInfo.id; itemCompleteBean.puzzleType = puzzlesInfo.data_type; completeStateBean.puzzleName = puzzlesInfo.name; completeStateBean.puzzleMarkName = puzzlesInfo.mark_file_name; itemCompleteBean.unlockState = JigsawUnlockEnum.UnLock; itemCompleteBean.completeTime = completeTime; completeStateBean = itemCompleteBean; } break; } } if (!hasData) { completeStateBean.puzzleId = puzzlesInfo.id; completeStateBean.puzzleType = puzzlesInfo.data_type; completeStateBean.puzzleName = puzzlesInfo.name; completeStateBean.puzzleMarkName = puzzlesInfo.mark_file_name; completeStateBean.completeTime = completeTime; completeStateBean.unlockState = JigsawUnlockEnum.UnLock; listCompleteState.Add(completeStateBean); } } DataStorageManage.getPuzzlesCompleteDSHandle().saveAllData(listCompleteState); }
/// <summary> /// 刷新拼图点数 /// </summary> public void refreshPuzzlesPoint() { titleBarJigsawPointTV.text = "x" + DataStorageManage.getUserInfoDSHandle().getData(0).puzzlesPoint + " PP"; }
/// <summary> /// 游戏完成 /// </summary> public void gameFinsh() { CommonData.GameStatus = 2; CommonData.IsDargMove = false; CommonData.IsMoveCamera = false; //删除游戏进度 PuzzlesProgressBean progressTemp = new PuzzlesProgressBean(); progressTemp.puzzleId = CommonData.SelectPuzzlesInfo.puzzlesInfo.id; progressTemp.markFileName = CommonData.SelectPuzzlesInfo.puzzlesInfo.mark_file_name; ((PuzzlesProgressDSHandle)DataStorageManage.getPuzzlesProgressDSHandle()).deleteData(progressTemp); float startCameraOrthographicSize = cameraControl.startCameraOrthographicSize; //结束游戏时间 GameMainUIControl gameMainUI = uiMasterControl.getUIByType <GameMainUIControl>(UIEnum.GameMainUI); TimeBean completeTime = null; if (gameMainUI != null) { gameMainUI.endTimer(); completeTime = gameMainUI.getGameTimer(); } if (!CommonData.IsCheating) { if (CommonData.SelectPuzzlesInfo.puzzlesInfo.data_type.Equals((int)JigsawResourcesEnum.Custom)) { } else { //增加PP int addPuzzlesPoint = CommonData.SelectPuzzlesInfo.puzzlesInfo.level * 2; DialogManager.createPuzzlesPointAddDialog(addPuzzlesPoint); } //保存数据 GameUtil.FinshSaveCompleteData(CommonData.SelectPuzzlesInfo, completeTime); } //动画结束后显示排行榜 transform.DOScale(new Vector3(1, 1), gameFinshAnimTime).OnComplete(delegate() { if (CommonData.SelectPuzzlesInfo.puzzlesInfo.data_type.Equals((int)JigsawResourcesEnum.Custom)) { SceneUtil.jumpMainScene(); } else { int leaderType = 0; if (CommonData.IsCheating) { leaderType = 1; } else { //没有作弊 放烟花 //GameObject dialogObj = Instantiate(ResourcesManager.LoadData<GameObject>("Prefab/Particle/Background/GameFinshParticle")); //Canvas gameFinshCanvas = dialogObj.GetComponent<Canvas>(); //gameFinshCanvas.renderMode = RenderMode.ScreenSpaceCamera; //gameFinshCanvas.worldCamera = Camera.main; } DialogManager .createLeaderBoradDialog(leaderType, CommonData.SelectPuzzlesInfo) .setUserScore(completeTime.totalSeconds) .setCallBack(this) .setCancelButtonStr(CommonData.getText(21)) .setSubmitButtonStr(CommonData.getText(23)); } CommonData.IsCheating = false; }); //镜头移动 cameraControl.transform.DOMove(cameraControl.startCameraPosition, gameFinshAnimTime); Tween cameraTW = DOTween .To(() => Camera.main.orthographicSize, x => Camera.main.orthographicSize = x, startCameraOrthographicSize, gameFinshAnimTime); //图像归位 int containerListSize = containerList.Count; for (int i = 0; i < containerListSize; i++) { GameObject container = containerList[i]; if (container != null) { JigsawContainerCpt containerCpt = container.GetComponent <JigsawContainerCpt>(); Rigidbody2D containerRB = container.GetComponent <Rigidbody2D>(); containerRB.Sleep(); container.transform.DORotate(new Vector3(containerCpt.startRotation.x, containerCpt.startRotation.y), gameFinshAnimTime); container.transform.DOMove(containerCpt.startPosition, gameFinshAnimTime); break; } } //设置成就 List <PuzzlesCompleteStateBean> listCompleteState = ((PuzzlesCompleteDSHandle)DataStorageManage.getPuzzlesCompleteDSHandle()).getDefAllData(); if (listCompleteState != null && listCompleteState.Count != 0) { int completeNumber = 0; foreach (PuzzlesCompleteStateBean itemState in listCompleteState) { if (itemState.completeTime != null && itemState.completeTime.totalSeconds != 0) { completeNumber++; } } IUserAchievementHandle userAchievement = new UserStatsHandleImpl(); userAchievement.userCompleteNumberChange(completeNumber); } }
/// <summary> /// 创建未解锁样式 /// </summary> /// <param name="itemInfo"></param> private GameObject createLockItem(int position, PuzzlesGameInfoBean itemInfo) { PuzzlesInfoBean infoBean = itemInfo.puzzlesInfo; PuzzlesCompleteStateBean completeStateBean = itemInfo.completeStateInfo; //解锁点数处理 if (infoBean.unlock_point == 1) { infoBean.unlock_point = infoBean.level; } GameObject itemObj = Instantiate(ResourcesManager.LoadData <GameObject>(JigsawSelectLockItemPath)); Button itemBT = itemObj.GetComponent <Button>(); //设置大小 setItemSize(itemObj); itemObj.name = infoBean.Mark_file_name; itemObj.transform.SetParent(transform); //设置按键 Button unLockBT = CptUtil.getCptFormParentByName <Transform, Button>(itemObj.transform, "JigsawUnLock"); unLockBT.onClick.AddListener( delegate() { SoundUtil.playSoundClip(AudioButtonOnClickEnum.btn_sound_1); long userPoint = DataStorageManage.getUserInfoDSHandle().getData(0).puzzlesPoint; if (userPoint < infoBean.unlock_point) { //如果没有PP则提示不足 DialogManager.createToastDialog().setToastText(CommonData.getText(16)); } else { //如果有PP则解锁 //保存信息 ((UserInfoDSHandle)DataStorageManage.getUserInfoDSHandle()).decreaseUserPuzzlesPoint(infoBean.unlock_point); menuSelectUIControl.refreshPuzzlesPoint(); //解锁拼图 if (completeStateBean == null) { completeStateBean = new PuzzlesCompleteStateBean(); completeStateBean.puzzleId = infoBean.id; completeStateBean.puzzleType = infoBean.data_type; } completeStateBean.unlockState = JigsawUnlockEnum.UnLock; DataStorageManage.getPuzzlesCompleteDSHandle().saveData(completeStateBean); //menuSelectUIControl.refreshJigsawSelectData(); menuSelectUIControl.refreshItemJigsawSelectData(position, itemObj, itemInfo); //解锁成功动画 string filePath = infoBean.Data_file_path + infoBean.Mark_file_name; DialogManager.createUnlockPuzzlesDialog(infoBean.name, infoBean.mark_file_name, filePath); } }); //设置文本信息 Text jigsawUnLockText = CptUtil.getCptFormParentByName <Button, Text>(itemBT, "JigsawUnLockText"); jigsawUnLockText.text = CommonData.getText(13) + "( " + infoBean.unlock_point + "PP )"; //设置拼图等级 setLevel(itemObj, infoBean.level); return(itemObj); }
/// <summary> /// 创建obj /// </summary> /// <param name="content"></param> /// <param name="data"></param> public void createEquipItem(Transform content, EquipInfoBean data) { GameObject equipObj = Instantiate(ResourcesManager.LoadData <GameObject>(s_ResTypeSelectItemPath)); //设置大小 RectTransform itemRect = equipObj.GetComponent <RectTransform>(); float itemWith = content.GetComponent <RectTransform>().rect.height * 0.52f; float itemHight = content.GetComponent <RectTransform>().rect.height * 0.8f; itemRect.sizeDelta = new Vector2(itemWith, itemHight); TabButton tabButton = equipObj.GetComponent <TabButton>(); equipObj.transform.SetParent(content); equipObj.transform.SetSiblingIndex((int)data.equipTypeId); equipObj.name = data.equipName; equipObj.transform.localScale = new Vector3(1, 1, 1); //背景 Image backgroundImage = CptUtil.getCptFormParentByName <Transform, Image>(equipObj.transform, "Background"); //设置名字 Text equipName = CptUtil.getCptFormParentByName <Transform, Text>(equipObj.transform, "EquipName"); equipName.text = data.equipName; //设置资源图片 Image equipImage = CptUtil.getCptFormParentByName <Transform, Image>(equipObj.transform, "EquipImage"); StartCoroutine(ResourcesManager.LoadAsyncDataImage(data.equipImageUrl, equipImage)); if (data.equipImageColor != null && data.equipImageColor.Length != 0) { if (data.equipTypeId == 0) { data.equipImageColor = "#EFEFEF"; } ColorUtil.setImageColor(equipImage, data.equipImageColor); } //获取是否锁定 ((EquipDSHandle)DataStorageManage.getEquipDSHandle()).getData(data); Image equipLock = CptUtil.getCptFormParentByName <Transform, Image>(equipObj.transform, "EquipLock"); Button equipButton = CptUtil.getCptFormParentByName <Transform, Button>(equipObj.transform, "EquipButton"); Image equipButtonImage = CptUtil.getCptFormParentByName <Transform, Image>(equipObj.transform, "EquipButton"); Text equipButtonText = CptUtil.getCptFormParentByName <Transform, Text>(equipObj.transform, "EquipButtonText"); if (data.equipTypeId != 0 && data.unlockType == 0) { //未解锁处理 equipLock.enabled = true; equipButtonText.text = CommonData.getText(13) + "(" + data.unlockPoint + "PP)"; equipButton.onClick.AddListener(delegate() { unlockEquip(content, data, equipObj); }); } else { //已解锁处理 equipLock.enabled = false; int equipId = 0; if (data.equipType == (int)EquipTypeEnum.PuzzlesShape) { equipId = (int)CommonConfigure.PuzzlesShape; } else if (data.equipType == (int)EquipTypeEnum.BorderShape) { equipId = (int)CommonConfigure.BorderShape; } else if (data.equipType == (int)EquipTypeEnum.BorderColor) { equipId = (int)CommonConfigure.BorderColor; } else if (data.equipType == (int)EquipTypeEnum.Background) { equipId = (int)CommonConfigure.Background; } if (equipId == data.equipTypeId) { equipButtonText.text = CommonData.getText(90); equipButton.onClick.RemoveAllListeners(); ColorUtil.setImageColor(backgroundImage, "#CCCCCC"); ColorUtil.setImageColor(equipButtonImage, "#CCCCCC"); } else { equipButtonText.text = CommonData.getText(89); equipButton.onClick.AddListener(delegate() { useEquip(content, data, equipObj); }); } } }
/// <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); }