void CheckBoardsChange() { for (int i = 0; i < keyNames.Length; i++) { if (Input.GetButtonDown(keyNames [i])) { _cm.GoToBoard(i); } } }
IEnumerator DoTurnRoutine(PlayerMove move) { Logger.PrepareMove(move.start, move.end, _boards); if (ActivePlayer.PlayerType == PlayerType.AI) { _camera.GoToBoard((int)move.end.z); while (IsAnimated) { yield return(null); } } EngineResponse response = _gameEngine.DoTurn(move.start, move.end); while (IsAnimated) { yield return(null); } if (response == EngineResponse.CHECK) { _overlayManager.SetLabel(Texts.GetString("CheckText"), UnityEngine.Color.red); Logger.LogMove(true, false); } else if (response == EngineResponse.CHECK_MATE) { State = GameManagerState.FINISHED; _overlayManager.SetLabel(Texts.GetString("CheckmateText"), UnityEngine.Color.red); Logger.LogMove(false, true); } else { if (ActivePlayerColor == Color.BLACK) { _overlayManager.SetLabel(Texts.GetString("BlackTurnText"), UnityEngine.Color.black); } else { _overlayManager.SetLabel(Texts.GetString("WhiteTurnText"), UnityEngine.Color.white); } Logger.LogMove(false, false); } while (IsAnimated) { yield return(null); } _overlayManager.SetCapturedList(Logger.CapturedPieces); if (State == GameManagerState.PLAYING) { foreach (var player in _players) { if (player.Color == ActivePlayerColor) { player.DoTurn(); break; } } } }