private void LoadLevelListContent(LevelConfig config, LevelConfig nextConfig, int i, int count) { ////设置星星数量 //if(!XPlayerPrefs.HasKey(config.LevelId.ToString()+numStar)) //{ // XPlayerPrefs.SetInt(config.LevelId.ToString() + numStar, 0); //} if (config.LevelType == 2) { return; } //新的主题 if (curTheme != config.LevelTheme) { curTheme = config.LevelTheme; curHeight += offsetMenu; menu = ResMgr.LoadGameObject(menuPath); menu.transform.SetParent(LevelContent.transform); menu.transform.localPosition = Vector3.zero - new Vector3(0, curHeight, 0); menu.transform.localScale = LevelContent.localScale; LoadMenu(menu, config.LevelTheme); themeCnt++; levelCnt = 0; } int cnt = levelCnt % 3; if (cnt == 0) { curHeight += offsetY; } levelBtn = ResMgr.LoadGameObject(levelBtnPath); levelBtn.transform.SetParent(LevelContent.transform); levelBtn.transform.localPosition = Vector3.zero - new Vector3((cnt - 1) * offsetX * -1, curHeight, 0); levelBtn.transform.localScale = LevelContent.localScale; UILevelBtn UIBtn = levelBtn.GetComponent <UILevelBtn>(); if (cnt == 1) { UIBtn.line.SetActive(true); } LoadLevelBtn(UIBtn, config.LevelId, config.LevelPicture.ToString(), levelCnt, themeCnt); UIBtn.setLevelID(config.LevelId); UIBtn.setThemeID(config.LevelTheme); //if (count > i + 1) //{ // UIBtn.setNextLevelID(config.LevelId+1); // if (config.LevelTheme != nextConfig.LevelTheme) // UIBtn.setNextThemeID(nextConfig.LevelTheme); // else // UIBtn.setNextThemeID(config.LevelTheme); //} //else //{ // UIBtn.setNextLevelID(0); // UIBtn.setNextThemeID("null"); //} levelCnt++; }
private void RefreshLevelList() { SetScrollValue(); SetTopText(); int levelCnt = 0; int themeCnt = 0; for (int i = 0; i < LevelContent.gameObject.transform.childCount; i++) { if (LevelContent.gameObject.transform.GetChild(i).name == "menu(Clone)") { themeCnt++; levelCnt = 0; } if (LevelContent.gameObject.transform.GetChild(i).name == "UILevelBtn(Clone)") { UILevelBtn uibtn = LevelContent.gameObject.transform.GetChild(i).GetComponent <UILevelBtn>(); if (levelCnt == 1) { uibtn.line.SetActive(true); } LevelConfig config = LevelMgr.GetInstance().GetLevelConfig(uibtn.levelID).Config; LoadLevelBtn(uibtn, config.LevelId, config.LevelPicture.ToString(), levelCnt, themeCnt); } } }
private void LoadLevelBtn(UILevelBtn uiLevelBtn, uint id, string picture, int levelCnt, int themeCnt) { //加载关卡名字,缩略图; //uiLevelBtn.levelText.text = themeCnt.ToString() + "-" + (levelCnt + 1).ToString(); //string picname = "level_s";//string.Format("s_{0}", picture); string altasname = AltasMgr.GetInstance().GetConfigByID(id).AltasName; UIAtlas ats = UIAtlasUtil.GetAtlas(altasname); UIAtlas ats2 = UIAtlasUtil.GetAtlas("uncomplete"); ats.Sp = uiLevelBtn.levelImg; ats2.Sp = uiLevelBtn.levelImg; if (ats != null) { if (XPlayerPrefs.GetInt(id.ToString() + isCompleted) == 1) { ats.SetSprite("s_" + picture);//ats.SetSprite("p_"+picture); ats.Sp.rectTransform.localScale = Vector3.one; uiLevelBtn.star.SetActive(true); uiLevelBtn._new.SetActive(false); //uiLevelBtn.levelText.text = LevelMgr.GetInstance().GetLevelConfig(id).Config.LevelName; //uiLevelBtn.levelText.text = themeCnt.ToString() + "-" + (levelCnt + 1).ToString(); } else if (XPlayerPrefs.GetInt(id.ToString() + isUnlock) == -1) { //Debug.Log("isunlock"); ats2.SetSprite("unknown"); ats.Sp.rectTransform.localScale = new Vector3(0.8f, 0.8f, 0.8f); uiLevelBtn._new.SetActive(true); uiLevelBtn.star.SetActive(false); //uiLevelBtn.levelText.text = (levelCnt+1).ToString(); //uiLevelBtn.levelText.text = "? ? ?"; } else { uiLevelBtn.star.SetActive(false); uiLevelBtn._new.SetActive(false); uiLevelBtn.SetGray(); //Debug.Log("islock"); //未解锁 ats2.SetSprite("lock"); ats.Sp.rectTransform.localScale = new Vector3(0.8f, 0.8f, 0.8f); } } #region starandlock ////加载星星 //if (UnpackStarNum(XPlayerPrefs.GetInt(id.ToString() + numStar)) >= 1) //{ // int stars = UnpackStarNum(XPlayerPrefs.GetInt(id.ToString() + numStar)); // Debug.Log(stars); // for (int i = 0; i < 3; i++) // { // UIAtlas starAts = ResMgr.GetAtlas("levelStar"); // starAts.Sp = uiLevelBtn.stars[i]; // if (i < stars) // { // starAts.SetSprite("guanqiaxuanzexing1"); // } // else // { // starAts.SetSprite("guanqiaxuanzexing2"); // } // } //} //else //{ // for (int i = 0; i < 3; i++) // { // uiLevelBtn.stars[i].color = new Color(255, 255, 255, 0); // } //} ////设置解锁状态; //UIAtlas unlockAts = ResMgr.GetAtlas("unlock"); //unlockAts.Sp = uiLevelBtn.unlockBtn; //switch (LevelMgr.GetInstance().GetLevelConfig(id).Config.LevelUnlock) //{ // case 0: // XPlayerPrefs.SetInt(id.ToString() + isUnlock, -1); // Destroy(uiLevelBtn.unlockBtn.gameObject); // break; // case 1: // if(XPlayerPrefs.GetInt(id.ToString()+isUnlock)==-1) // { // Destroy(uiLevelBtn.unlockBtn.gameObject); // break; // } // XPlayerPrefs.SetInt(id.ToString() + isUnlock, 1); // unlockAts.SetSprite("guanggao"); // break; // case 2: // if (XPlayerPrefs.GetInt(id.ToString() + isUnlock) == -1) // { // Destroy(uiLevelBtn.unlockBtn.gameObject); // break; // } // XPlayerPrefs.SetInt(id.ToString() + isUnlock, 2); // unlockAts.SetSprite("zuanshi"); // break; //} #endregion }