Refactoring: Verschlankung der Fassade durchgeführt.
parent
fead586452
commit
95297fd480
|
@ -1,6 +1,6 @@
|
|||
package de.hs_mannheim.informatik.games.kniffel.domain;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class Spiel {
|
||||
private Spieler[] spieler;
|
||||
|
@ -8,7 +8,7 @@ public class Spiel {
|
|||
private int aktuellerSpieler;
|
||||
private Würfelbecher becher;
|
||||
|
||||
public Spiel(ArrayList<String> spielernamen) {
|
||||
public Spiel(List<String> spielernamen) {
|
||||
spieleranzahl = spielernamen.size();
|
||||
spieler = new Spieler[spieleranzahl];
|
||||
|
||||
|
@ -22,8 +22,8 @@ public class Spiel {
|
|||
becher.würfle();
|
||||
}
|
||||
|
||||
public Gewinnkarte getGewinnkarteAktuellerSpieler() {
|
||||
return spieler[aktuellerSpieler].getGewinnkarte();
|
||||
public String getGewinnkartentextAktuellerSpieler() {
|
||||
return spieler[aktuellerSpieler].getGewinnkarte().toString();
|
||||
}
|
||||
|
||||
public String getNameAktuellerSpieler() {
|
||||
|
|
|
@ -1,32 +1,14 @@
|
|||
package de.hs_mannheim.informatik.games.kniffel.facade;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import de.hs_mannheim.informatik.games.kniffel.domain.Gewinnkarte;
|
||||
import de.hs_mannheim.informatik.games.kniffel.domain.Spiel;
|
||||
|
||||
public class KniffelApi {
|
||||
private Spiel spiel;
|
||||
|
||||
public void starteSpiel(ArrayList<String> spielernamen, boolean starWarsModus) {
|
||||
|
||||
public Spiel starteSpiel(List<String> spielernamen, boolean starWarsModus) {
|
||||
// TODO: StarWars über Vererbung einbauen?
|
||||
spiel = new Spiel(spielernamen);
|
||||
return new Spiel(spielernamen);
|
||||
}
|
||||
|
||||
public Gewinnkarte getGewinnkarte() {
|
||||
return spiel.getGewinnkarteAktuellerSpieler();
|
||||
}
|
||||
|
||||
public String getNameAktuellerSpieler() {
|
||||
return spiel.getNameAktuellerSpieler();
|
||||
}
|
||||
|
||||
public int[] wurfDurchführen(String... würfel) {
|
||||
return spiel.wurfDurchführen(würfel);
|
||||
}
|
||||
|
||||
public boolean punkteEintragen(int kategorie) {
|
||||
return spiel.punkteEintragen(kategorie);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,11 +3,13 @@ package de.hs_mannheim.informatik.games.kniffel.tui;
|
|||
import java.util.ArrayList;
|
||||
import java.util.Scanner;
|
||||
|
||||
import de.hs_mannheim.informatik.games.kniffel.domain.Spiel;
|
||||
import de.hs_mannheim.informatik.games.kniffel.facade.KniffelApi;
|
||||
|
||||
public class SpielStart {
|
||||
private Scanner kb;
|
||||
private KniffelApi api;
|
||||
private Spiel spiel;
|
||||
|
||||
public SpielStart(Scanner kb, KniffelApi api) {
|
||||
this.kb = kb;
|
||||
|
@ -41,9 +43,9 @@ public class SpielStart {
|
|||
|
||||
String sw = kb.nextLine();
|
||||
|
||||
api.starteSpiel(spielernamen, sw.toLowerCase().equals("j"));
|
||||
spiel = api.starteSpiel(spielernamen, sw.toLowerCase().equals("j"));
|
||||
|
||||
new SpielrundeSpielen(kb, api).verarbeiteEingabe();
|
||||
new SpielrundeSpielen(kb, spiel).verarbeiteEingabe();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -2,15 +2,15 @@ package de.hs_mannheim.informatik.games.kniffel.tui;
|
|||
|
||||
import java.util.Scanner;
|
||||
|
||||
import de.hs_mannheim.informatik.games.kniffel.facade.KniffelApi;
|
||||
import de.hs_mannheim.informatik.games.kniffel.domain.Spiel;
|
||||
|
||||
public class SpielrundeSpielen {
|
||||
private Scanner kb;
|
||||
private KniffelApi api;
|
||||
private Spiel spiel;
|
||||
|
||||
public SpielrundeSpielen(Scanner kb, KniffelApi api) {
|
||||
public SpielrundeSpielen(Scanner kb, Spiel spiel) {
|
||||
this.kb = kb;
|
||||
this.api = api;
|
||||
this.spiel = spiel;
|
||||
}
|
||||
|
||||
public void verarbeiteEingabe() {
|
||||
|
@ -19,7 +19,7 @@ public class SpielrundeSpielen {
|
|||
String[] zuWürfeln = new String[0];
|
||||
|
||||
for (int i = 1; i <= 3; i++) {
|
||||
int[] würfelwerte = api.wurfDurchführen(zuWürfeln);
|
||||
int[] würfelwerte = this.spiel.wurfDurchführen(zuWürfeln);
|
||||
System.out.print(i + ". Wurf: ");
|
||||
for (int w : würfelwerte) {
|
||||
System.out.print(w + " ");
|
||||
|
@ -50,7 +50,7 @@ public class SpielrundeSpielen {
|
|||
System.out.print("> ");
|
||||
int kategorie= Integer.parseInt(kb.nextLine());
|
||||
|
||||
if (!api.punkteEintragen(kategorie))
|
||||
if (!this.spiel.punkteEintragen(kategorie))
|
||||
System.out.println("Kategorie bereits belegt, bitte andere wählen.");
|
||||
else
|
||||
break;
|
||||
|
@ -62,8 +62,8 @@ public class SpielrundeSpielen {
|
|||
private void gewinnkarteAusgeben() {
|
||||
System.out.println();
|
||||
System.out.println("##################################################");
|
||||
System.out.println("Gewinnkarte von " + api.getNameAktuellerSpieler());
|
||||
System.out.println(api.getGewinnkarte().toString());
|
||||
System.out.println("Gewinnkarte von " + this.spiel.getNameAktuellerSpieler());
|
||||
System.out.println(this.spiel.getGewinnkartentextAktuellerSpieler());
|
||||
System.out.println("##################################################");
|
||||
System.out.println();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue