Skip to content
Snippets Groups Projects

Resolve "format trivia"

Merged Colin DAMON requested to merge 26-format-trivia into master
26 files
+ 971
986
Compare changes
  • Side-by-side
  • Inline
Files
26
package com.adaptionsoft.games.uglytrivia;
public class Answer {
private final Notifications notifications;
private final AnswerRandomSimulator answerRandom;
public Answer(Notifications notifications, AnswerRandomSimulator answerRandom) {
this.notifications = notifications;
this.answerRandom = answerRandom;
}
private final Notifications notifications;
private final AnswerRandomSimulator answerRandom;
public Player answer(Player player) {
if (!answerRandom.isRight()) {
return wrongAnswer(player);
}
public Answer(Notifications notifications, AnswerRandomSimulator answerRandom) {
this.notifications = notifications;
this.answerRandom = answerRandom;
}
return goodAnswer(player);
public Player answer(Player player) {
if (!answerRandom.isRight()) {
return wrongAnswer(player);
}
private Player goodAnswer(Player player) {
if (!player.isInPenaltyBox()) {
notifications.correctAnswer();
player = player.addCoin();
notifications.actualGoldCoins(player.getName(), player.getPurse());
}
return player;
}
return goodAnswer(player);
}
private Player wrongAnswer(Player player) {
notifications.incorrectlyAnswered();
notifications.sendInPenaltyBox(player.getName());
return player.inPenaltyBox();
private Player goodAnswer(Player player) {
if (!player.isInPenaltyBox()) {
notifications.correctAnswer();
player = player.addCoin();
notifications.actualGoldCoins(player.getName(), player.getPurse());
}
return player;
}
private Player wrongAnswer(Player player) {
notifications.incorrectlyAnswered();
notifications.sendInPenaltyBox(player.getName());
return player.inPenaltyBox();
}
}
Loading