public override void GuessCode(CodeBreakerBoardState currentBoardState)
    {
        var colors = new List <CodeColor>();

        for (int i = 0; i < codeLength; i++)
        {
            colors.Add(availableColors[i % availableColors.Count]);
        }
        Code guess = new Code(colors);

        CodeGuessReadyEvent(guess);
    }
    private void PlayRound()
    {
        var boardState = new CodeBreakerBoardState(board);

        codeBreaker.GuessCode(boardState);
    }
 public abstract void GuessCode(CodeBreakerBoardState currentBoardState);