private void Pause() { pause = true; Time.timeScale = 0; if (isWin && ToolBox.GetManagersInterface(out IScoreCounter scoreCounter) && endScore != null) { endScore.text = "Score: " + scoreCounter.Score + "\nBest : " + RecordsCollector.CheckRecord(scoreCounter.Score, PlayerPrefs.GetString("LastLevel")); } Events.GamePause.Publish(pause); }
public void OpenLevelPanel(SceneSettings loadSettings) { this.loadSettings = loadSettings; godsName.text = loadSettings.GodsName; portrait.sprite = loadSettings.PortraitSprite; ratioFilter.aspectRatio = loadSettings.PortraitSprite.rect.width / loadSettings.PortraitSprite.rect.height; challengeRecord.text = RecordsCollector.GetRecord(loadSettings.name).Score.ToString(); foreach (Transform child in altDescriptionImages) { Destroy(child.gameObject); } if (loadSettings.DescriptionImages == null || loadSettings.DescriptionImages.Length == 0) { description.gameObject.SetActive(true); altDescription.gameObject.SetActive(false); description.text = loadSettings.Description; } else { description.gameObject.SetActive(false); altDescription.gameObject.SetActive(true); altDescriptionText.text = loadSettings.Description; foreach (Sprite sprite in loadSettings.DescriptionImages) { GameObject obj = new GameObject(); obj.transform.SetParent(altDescriptionImages); Image image = obj.AddComponent <Image>(); image.sprite = sprite; AspectRatioFitter filter = obj.AddComponent <AspectRatioFitter>(); filter.aspectMode = AspectRatioFitter.AspectMode.HeightControlsWidth; filter.aspectRatio = 1; obj.GetComponent <RectTransform>().localScale = new Vector3(1, 1, 1); } } levelPanel.SetActive(!levelPanel.activeSelf); }
private void OnGameWon() { if (ToolBox.GetData(out SceneData sceneData)) { if (sceneData.CanvasAnimator != null) { sceneData.CanvasAnimator.SetTrigger("Win"); isWinAnimation = true; } sceneData.PauseText.text = "Win!"; if (gameResult != null) { gameResult.text = "You beat " + sceneData.GodsName; } if (ToolBox.GetManagersInterface(out IScoreCounter scoreCounter) && endScore != null) { endScore.text = "Score: " + scoreCounter.Score + "\nBest : " + RecordsCollector.CheckRecord(scoreCounter.Score, PlayerPrefs.GetString("LastLevel")); } } Sound.PlayClip((AudioClip)Resources.Load("Sound/Win", typeof(AudioClip))); int lastLevel = PlayerPrefs.GetInt("LastChallenge"); int openLevel = PlayerPrefs.GetInt("OpenChallenge"); if (openLevel > lastLevel) { PlayerPrefs.SetInt("LastChallenge", openLevel); PlayerPrefs.Save(); } isGameEnd = true; isWin = true; }
private void GameLose() { if (ToolBox.GetData(out SceneData sceneData)) { if (!isWin) { sceneData.PauseText.text = "Lose..."; if (SceneManager.GetActiveScene().name != "Endless" && gameResult != null) { gameResult.text = sceneData.GodsName + " turned out to be stronger"; } } if (ToolBox.GetManagersInterface(out IScoreCounter scoreCounter) && endScore != null) { endScore.text = "Score: " + scoreCounter.Score + "\nBest : " + RecordsCollector.CheckRecord(scoreCounter.Score, PlayerPrefs.GetString("LastLevel")); } } Sound.PlayClip((AudioClip)Resources.Load("Sound/Lose", typeof(AudioClip))); isGameEnd = true; }
private void SetRecord() { GameResult loadedRecord = RecordsCollector.GetRecord("Endless"); record.text = loadedRecord.Score.ToString(); }