public void ShowPawnPromotionModalBox(ChessGameplayManager game) { isPromotionModalBoxOpen = true; CreatePawnPromotionModalBox(); justBeenPromoted = true; myGame = game; myGame.SetPromotionInProcess(); }
// Start is called before the first frame update void Start() { LoadGlobalData(); string[] playerNames = new string[2] { currentPlayers.players[0].playerName, currentPlayers.players[1].playerName }; SetSquareColorSet(gameData.boardThemeColors[0], gameData.boardThemeColors[1]); chessBoard = FindObjectOfType <ChessBoard>(); chessBoard.CreateNewBoard(squareColors); CreateChessPlayers(gameData.playerColorTags, playerNames, gameData.timeControl, gameData.incrementValue, gameData.gameType); CreateChessSets(gameData.pieceSetColors, gameData.pieceSpriteSet); game = FindObjectOfType <ChessGameplayManager>(); game.InitializeGame(chessSets, chessBoard, chessPlayers); }
public void SetMyGame(ChessGameplayManager theGame) { myGame = theGame; }
// Update is called once per frame void Update() { if (myGame.HasGameEnded()) { return; } if (mySetColorTag == "Light" && !hasGameStarted) { return; } if (tag != "Active") { return; } if (myGameType == "Unlimited") { return; } remainingTime -= Time.deltaTime; if (remainingTime <= 0.0f && myEnemy.tag == "Waiting") { hasGameStarted = false; remainingTime = 0.0f; bool isADraw = IsItADrawByTimeoutVsInsufficientMaterial(); if (isADraw) { tag = "Remi"; myEnemy.tag = "Remi"; Debug.Log($"Game over: {mySetColorTag} colored player flagged! But it is a draw by timeout vs insufficient material!"); } else { tag = "Lost"; myEnemy.tag = "Won"; ChessGameplayManager manager = FindObjectOfType <ChessGameplayManager>(); manager.terminationString = "won on time"; Debug.Log($"Game over: {mySetColorTag} colored player flagged! {myEnemy.GetMyChosenColor()} colored player won!"); } myChessClockAndPlayerTextObject.transform.GetChild(0).transform.GetChild(0).gameObject.GetComponent <Text>().color = flagedColor; string winner = (isADraw) ? "None" : myEnemy.GetMyChosenColor(); myGame.SetFlaggingEndScore(winner, isADraw); } TimeSpan currentTime = TimeSpan.FromSeconds(remainingTime); if (remainingTime <= 5.0f) { myChessClockAndPlayerTextObject.transform.GetChild(0).transform.GetChild(0).gameObject.GetComponent <Text>().text = currentTime.ToString("mm':'ss'.'fff"); } else if (remainingTime <= 20.0f) { myChessClockAndPlayerTextObject.transform.GetChild(0).transform.GetChild(0).gameObject.GetComponent <Text>().text = currentTime.ToString("mm':'ss'.'ff"); } else { myChessClockAndPlayerTextObject.transform.GetChild(0).transform.GetChild(0).gameObject.GetComponent <Text>().text = currentTime.ToString("mm':'ss"); } }