Skip to content

Method: sameAs(IDilemmaMove)

1: package de.fhdw.gaming.ipspiel23.dilemma.moves.internals;
2:
3: import de.fhdw.gaming.ipspiel23.dilemma.domain.DilemmaAnswerType;
4: import de.fhdw.gaming.ipspiel23.dilemma.moves.IDilemmaMove;
5: import de.fhdw.gaming.ipspiel23.dilemma.moves.IDilemmaMoveFactory;
6:
7: // no shit sherlock
8: /**
9: * implements {@link IDilemmaMoveFactory}.
10: */
11: public class DilemmaDefaultMoveFactory implements IDilemmaMoveFactory {
12:
13: @Override
14: public DilemmaDefectMove createDefectMove() {
15: return new DilemmaDefectMove();
16: }
17:
18: @Override
19: public DilemmaCooperateMove createCooperateMove() {
20: return new DilemmaCooperateMove();
21: }
22:
23: @Override
24: public IDilemmaMove sameAs(final IDilemmaMove move) {
25:• return move.getAnswer().equals(DilemmaAnswerType.COOPERATE)
26: ? createCooperateMove()
27: : createDefectMove();
28: }
29:
30: @Override
31: public IDilemmaMove oppositeOf(final IDilemmaMove move) {
32: return move.getAnswer().equals(DilemmaAnswerType.COOPERATE)
33: ? createDefectMove()
34: : createCooperateMove();
35: }
36:
37: @Override
38: public IDilemmaMove fromAnswer(final DilemmaAnswerType answer) {
39: return answer.equals(DilemmaAnswerType.COOPERATE)
40: ? createCooperateMove()
41: : createDefectMove();
42: }
43: }