private void HandleGameOver(GameController.GameResult hasPlayerWon) { if (poolUser != null) { poolUser.Despawn(); } else { Destroy(this.gameObject); } }
private void processGameEnd(GameController.GameResult result) { switch (result) { case GameController.GameResult.Won: //findChildGameObjectBy(name: "Winner").SetActive(true); gameWon = true; findChildGameObjectBy(name: "Stats").SetActive(false); findChildGameObjectBy(name: "LevelSummary").SetActive(true); break; case GameController.GameResult.Lost: findChildGameObjectBy(name: "GameOver").SetActive(true); break; } }
private IEnumerator GameOverRoutine(GameController.GameResult playerHasWon) { var gc = ManagerLocator.TryGet <GameController>(); gc.PauseGame(true); if (playerHasWon != GameController.GameResult.PlayerQuit) { var playerWon = playerHasWon == GameController.GameResult.PlayerWon; var context = new ConfirmationContext(); gameOverPopup.Show(playerWon, context); while (!context.IsFinished) { yield return(null); } } gc.AbortGameServices(); ShowMainMenu(); }
private bool CheckGameOver() { GameController.GameResult result = CheckWin(Field); if (result == GameController.GameResult.Win) { GameController.Instance.UserWin(); return(true); } if (result == GameController.GameResult.Lose) { GameController.Instance.UserLose(); return(true); } if (result == GameController.GameResult.Draw) { GameController.Instance.DrawGame(); return(true); } return(false); }
public int NextStep(Cell[] field, Cell start, GameController.GameFigure figeru) { field[start.X * 3 + start.Y].Figure = figeru; GameController.GameResult result = CheckWin(field); switch (result) { case GameController.GameResult.Win: return(-10); case GameController.GameResult.Draw: return(5); case GameController.GameResult.Lose: return(10); case GameController.GameResult.None: GameController.GameFigure enemyFigure = figeru == GameController.GameFigure.Circle ? GameController.GameFigure.Cross : GameController.GameFigure.Circle; List <Cell> openPos = GetOpenPositions(field); int[] scores = new int[openPos.Count]; for (int i = 1; i < openPos.Count; i++) { scores[i] = NextStep(Cell.DeepClone(field), openPos[i], enemyFigure); } int sumScore = 0; foreach (int score in scores) { sumScore += score; } return(sumScore); default: return(0); } }
private void SetTexts(GameController.GameResult userResult) { switch (userResult) { case GameController.GameResult.Draw: Status.text = "DRAW"; Status.color = Color.red; break; case GameController.GameResult.Win: Status.text = "WIN"; Status.color = Color.green; Owner.text = "User"; break; case GameController.GameResult.Lose: Status.text = "WIN"; Status.color = Color.red; Owner.text = "AI"; break; } gameObject.SetActive(true); }
private void HandleGameOver(GameController.GameResult hasPlayerWon) { _shakeCancelToken = true; _isActive = false; }
public void EndRoundState(GameController.GameResult userResult) { SetState(State.EndRound); EndRoundStart.Invoke(userResult); }
private void HandleGameOver(GameController.GameResult gameResult) { StartCoroutine(GameOverRoutine(gameResult)); }
public void OnScoreChange(GameController.GameResult result) { WinCounter.text = GameController.Instance.Win.ToString(); LoseCounter.text = GameController.Instance.Lose.ToString(); DrawCounter.text = GameController.Instance.Draw.ToString(); }
private void HandleGameOver(GameController.GameResult hasPlayerWon) { _isActive = false; }