IEnumerator ShowOutcomeText(string mode, float waitDelay) { showingOutcome = true; yield return(new WaitForSeconds(waitDelay)); if (mode == "classic") { scoreNumber.text = GameManager.Instance.GetPlayerPoints() + " / " + GameManager.Instance.GetTotalPoints(); if (GameManager.Instance.PlayerWon() == "W") { //Debug.Log("Game Won"); gameWonImage.SetActive(true); gameLostImage.SetActive(false); drawImage.SetActive(false); } else if (GameManager.Instance.PlayerWon() == "L") { //Debug.Log("Game Lost"); gameLostImage.SetActive(true); gameWonImage.SetActive(false); drawImage.SetActive(false); } else { //Debug.Log("Draw"); drawImage.SetActive(true); gameWonImage.SetActive(false); gameLostImage.SetActive(false); } } else if (mode == "2player") { if (GameManagerTwoPlayer.Instance.PlayerWon() == "W1") { //Debug.Log("P1 Wins"); playerOneWinsImage.SetActive(true); playerTwoWinsImage.SetActive(false); drawImage.SetActive(false); } else if (GameManagerTwoPlayer.Instance.PlayerWon() == "W2") { //Debug.Log("P2 Wins"); playerTwoWinsImage.SetActive(true); playerOneWinsImage.SetActive(false); drawImage.SetActive(false); } else { //Debug.Log("Draw"); drawImage.SetActive(true); playerOneWinsImage.SetActive(false); playerTwoWinsImage.SetActive(false); } p1ScoreNumber.text = GameManagerTwoPlayer.Instance.GetPlayerPoints("One") + " / " + GameManagerTwoPlayer.Instance.GetTotalPoints(); p2ScoreNumber.text = GameManagerTwoPlayer.Instance.GetPlayerPoints("Two") + " / " + GameManagerTwoPlayer.Instance.GetTotalPoints(); } else if (mode == "campaign") { string sceneName = SceneManager.GetActiveScene().name; string levelName = sceneName.Split('_')[1]; if (CampaignGameManager.Instance.PlayerWon() == "L") { boardFailedImage.SetActive(true); boardCompleteImage.SetActive(false); } else { boardCompleteImage.SetActive(true); boardFailedImage.SetActive(false); Debug.Log("Won"); int newStarRating = 0; Debug.Log(CampaignGameManager.Instance.PlayerWon()); if (CampaignGameManager.Instance.PlayerWon() == "S01") { star01.transform.GetChild(2).gameObject.SetActive(true); newStarRating = 1; } else if (CampaignGameManager.Instance.PlayerWon() == "S02") { star01.transform.GetChild(2).gameObject.SetActive(true); star02.transform.GetChild(2).gameObject.SetActive(true); newStarRating = 2; } else if (CampaignGameManager.Instance.PlayerWon() == "S03") { star01.transform.GetChild(2).gameObject.SetActive(true); star02.transform.GetChild(2).gameObject.SetActive(true); star03.transform.GetChild(2).gameObject.SetActive(true); newStarRating = 3; } LevelStats currentStats = CampaignData.GetLevelStats(levelName); int starChange = 0; if (!currentStats.isComplete) { currentStats.isComplete = true; } if (currentStats.starRating < newStarRating) { starChange = newStarRating - currentStats.starRating; currentStats.starRating = newStarRating; Debug.Log("New Star Rating: " + currentStats.starRating); } if (currentStats.bestScore < CampaignGameManager.Instance.GetPlayerPoints()) { currentStats.bestScore = CampaignGameManager.Instance.GetPlayerPoints(); } CampaignData.SetLevelStats(levelName, currentStats); if (levelName[0] == '1') { CampaignData.UpdateBoardStars("BoardOne", starChange); } else if (levelName[0] == '2') { CampaignData.UpdateBoardStars("BoardTwo", starChange); } else if (levelName[0] == '3') { CampaignData.UpdateBoardStars("BoardThree", starChange); } if (!didSave) { SaveLoad.Save(); didSave = true; } } scoreNumber.text = "" + CampaignGameManager.Instance.GetPlayerPoints(); if (CampaignData.GetLevelStats(levelName).isComplete) { Color temp = nextLevelButton.GetComponent <Image>().color; temp.a = 1f; nextLevelButton.GetComponent <Image>().color = temp; nextLevelButton.GetComponent <Button>().enabled = true; } else { Color temp = nextLevelButton.GetComponent <Image>().color; temp.a = 0.5f; nextLevelButton.GetComponent <Image>().color = temp; nextLevelButton.GetComponent <Button>().enabled = false; } } }