public void ShowCampaignBoard(string boardToShow) { levelsCommonAssets.SetActive(true); GameObject currentBoard = levelsGroup.transform.Find(boardToShow).gameObject; currentBoard.SetActive(true); currentBoard.transform.Find("StarsInfo").transform.Find("StarsObtained").GetComponent <Text>().text = CampaignData.GetBoardStars(currentBoard.name).ToString(); currentBoardLevels = currentBoard.transform.Find("LevelSlider").transform.GetChild(0).transform.GetChild(0).gameObject; List <GameObject> levelButtons = new List <GameObject>(); foreach (Transform child in currentBoardLevels.transform) { levelButtons.Add(child.gameObject); } for (int i = 0; i < levelButtons.Count; i++) { GameObject btn = levelButtons[i]; //Handle Transparency string lvlNum = btn.name.Substring(6, btn.name.Length - 6); int prevLevel = (int.Parse(lvlNum.Substring(2, lvlNum.Length - 2))) - 1; string prevLevelName = lvlNum.Substring(0, 1) + "-" + prevLevel; int levelStarRating = CampaignData.GetLevelStats(lvlNum).starRating; //Debug.Log(lvlNum + " Stars: " + levelStarRating); //If level completed if (CampaignData.GetLevelStats(lvlNum).isComplete) { btn.transform.Find("CheckMark").gameObject.SetActive(true); if (levelStarRating == 1) { btn.transform.Find("1Star").gameObject.SetActive(true); } else if (levelStarRating == 2) { btn.transform.Find("2Stars").gameObject.SetActive(true); } else if (levelStarRating == 3) { btn.transform.Find("3Stars").gameObject.SetActive(true); } else { btn.transform.Find("1Star").gameObject.SetActive(false); btn.transform.Find("2Stars").gameObject.SetActive(false); btn.transform.Find("3Stars").gameObject.SetActive(false); } } if (prevLevel != 0 && !CampaignData.GetLevelStats(prevLevelName).isComplete || (lvlNum == "2-1" && !CampaignData.GetHeroBoardStats(HeroManager.Hero.Multiplier).isComplete) || (lvlNum == "3-1" && !CampaignData.GetHeroBoardStats(HeroManager.Hero.Demolition).isComplete)) { btn.GetComponent <Button>().enabled = false; Color temp = btn.GetComponent <Image>().color; temp.a = 0.5f; btn.GetComponent <Image>().color = temp; Color textTemp = btn.transform.Find("LevelText").GetComponent <Text>().color; textTemp.a = 0.5f; btn.transform.Find("LevelText").GetComponent <Text>().color = textTemp; } else if (prevLevel != 0 && CampaignData.GetLevelStats(prevLevelName).isComplete) { btn.GetComponent <Button>().enabled = true; Color temp = btn.GetComponent <Image>().color; temp.a = 1f; btn.GetComponent <Image>().color = temp; Color textTemp = btn.transform.Find("LevelText").GetComponent <Text>().color; textTemp.a = 1f; btn.transform.Find("LevelText").GetComponent <Text>().color = textTemp; } } //If completed all previous level, unlocked hero board (later add check for # of stars required) string lastLevelName = levelButtons[levelButtons.Count - 1].name.Split('_')[1]; if (CampaignData.GetLevelStats(lastLevelName).isComplete&& CampaignData.EnoughBoardStars(currentBoard.name)) { //Debug.Log("Star Count: " + CampaignData.GetBoardStars(currentBoard.name)); currentBoard.transform.Find("Locked").gameObject.SetActive(false); } //Debug.Log("Star Count: " + CampaignData.GetBoardStars(currentBoard.name)); boardSelectMenu.SetActive(false); }