void OnGameOver(int result, Definitions.ResultType type) { gameOver = true; SetVisibilityUIElements(false, notationInputSmall, clocks, showBoardButton.gameObject); SetVisibilityUIElements(true, reviewGameButton); string resultString = "Game over"; if (result == -1) { resultStringShorthand = "0-1"; resultString = "Black wins"; } else if (result == 1) { resultStringShorthand = "1-0"; resultString = "White wins"; } if (result != 0) // someone has won { if (type == Definitions.ResultType.Checkmate) { resultString += " by checkmate"; } else if (type == Definitions.ResultType.Resignation) { resultString += " by resignation"; } else if (type == Definitions.ResultType.Timeout) { resultString += " on time"; } } else // draw { resultStringShorthand = "1/2-1/2"; resultString = "Game drawn"; if (type == Definitions.ResultType.Repetition) { resultString += " by repetition"; } else if (type == Definitions.ResultType.InsufficientMaterial) { resultString += "; insufficient mating material"; } else if (type == Definitions.ResultType.FiftyMoveRule) { resultString += "; 50 move rule"; } else if (type == Definitions.ResultType.Stalemate) { resultString += " by stalemate"; } } SetMessage(resultString, 10, false); }
void GameOver(int result, Definitions.ResultType resultType = Definitions.ResultType.NA) { if (!gameOver) { gameOver = true; if (OnGameOver != null) { OnGameOver(result, resultType); } whitePlayer.Deactivate(); blackPlayer.Deactivate(); } }
void HandleOnGameOver(int result, Definitions.ResultType type) { active = false; }