private async Task<AnswerCallBackViewModel> ProcessAnswer(string answer, IGame game, string userId) { var answerCallbackVM = new AnswerCallBackViewModel(); var previousQuestion = game.AnswerForCurrentQuestion(answer); answerCallbackVM.wasLastQuestionRightAnswer = previousQuestion.QuestionResult.Value; answerCallbackVM.lastQuestionRightAnswer = previousQuestion.RightAnswer; if (game.HasFinished()) { await ProcessFinishedGame(game, userId, answerCallbackVM); return answerCallbackVM; } answerCallbackVM.nextQuestion = GetNextQuestion(game); answerCallbackVM.hasNextQuestion = true; return answerCallbackVM; }