Rudimentär spielbare Version fertig gestellt.
Nun ist es möglich, mehrfach zu würfeln und Würfel festzuhalten, sowie in den Kategorien 1 bis 6 Punkte eintragen zu lassen.refactoringFassade
parent
eb75d9f924
commit
6e48020484
|
@ -29,4 +29,9 @@ public class Gewinnkarte {
|
||||||
return sb.toString();
|
return sb.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void punkteEintragen(int kategorie, Würfel[] würfel) {
|
||||||
|
kategorien[kategorie].punkteEintragen(würfel);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,7 @@ public class Kategorie {
|
||||||
this.punkte = -1;
|
this.punkte = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int punkteErmitteln(Würfel[] würfel) {
|
public int punkteEintragen(Würfel[] würfel) {
|
||||||
int punkte = 0;
|
int punkte = 0;
|
||||||
|
|
||||||
for (Würfel w : würfel) {
|
for (Würfel w : würfel) {
|
||||||
|
@ -19,6 +19,8 @@ public class Kategorie {
|
||||||
punkte += AUGEN;
|
punkte += AUGEN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.punkte = punkte;
|
||||||
|
|
||||||
return punkte;
|
return punkte;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -26,4 +26,21 @@ public class Spiel {
|
||||||
return spieler[aktuellerSpieler].getGewinnkarte();
|
return spieler[aktuellerSpieler].getGewinnkarte();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getNameAktuellerSpieler() {
|
||||||
|
return spieler[aktuellerSpieler].getName();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int[] wurfDurchführen(String... würfel) {
|
||||||
|
if (würfel.length != 0)
|
||||||
|
for (String w : würfel) {
|
||||||
|
becher.würfleBestimmtenWürfel(Integer.parseInt(w) - 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
return becher.getWürfelwerte();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void punkteEintragen(int kategorie) {
|
||||||
|
spieler[aktuellerSpieler].getGewinnkarte().punkteEintragen(kategorie - 1, becher.getWürfel());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,5 +17,23 @@ public class Würfelbecher {
|
||||||
würfel[i].würfle();
|
würfel[i].würfle();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void würfleBestimmtenWürfel(int würfelNummer) {
|
||||||
|
würfel[würfelNummer].würfle();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int[] getWürfelwerte() {
|
||||||
|
int[] würfelwerte = new int[WÜRFELANZAHL];
|
||||||
|
|
||||||
|
for (int i = 0; i < WÜRFELANZAHL; i++) {
|
||||||
|
würfelwerte[i] = würfel[i].getAugen();
|
||||||
|
}
|
||||||
|
|
||||||
|
return würfelwerte;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Würfel[] getWürfel() {
|
||||||
|
return würfel;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,4 +18,15 @@ public class KniffelApi {
|
||||||
return spiel.getGewinnkarteAktuellerSpieler();
|
return spiel.getGewinnkarteAktuellerSpieler();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getNameAktuellerSpieler() {
|
||||||
|
return spiel.getNameAktuellerSpieler();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int[] wurfDurchführen(String... würfel) {
|
||||||
|
return spiel.wurfDurchführen(würfel);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void punkteEintragen(int kategorie) {
|
||||||
|
spiel.punkteEintragen(kategorie);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,15 +7,51 @@ import de.hs_mannheim.informatik.games.kniffel.facade.KniffelApi;
|
||||||
public class SpielrundeSpielen {
|
public class SpielrundeSpielen {
|
||||||
private Scanner kb;
|
private Scanner kb;
|
||||||
private KniffelApi api;
|
private KniffelApi api;
|
||||||
|
|
||||||
public SpielrundeSpielen(Scanner kb, KniffelApi api) {
|
public SpielrundeSpielen(Scanner kb, KniffelApi api) {
|
||||||
this.kb = kb;
|
this.kb = kb;
|
||||||
this.api = api;
|
this.api = api;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void verarbeiteEingabe() {
|
public void verarbeiteEingabe() {
|
||||||
System.out.println("Gewinnkarte");
|
System.out.println("Gewinnkarte von " + api.getNameAktuellerSpieler());
|
||||||
|
System.out.println(api.getGewinnkarte().toString());
|
||||||
|
|
||||||
|
String[] zuWürfeln = new String[0];
|
||||||
|
|
||||||
|
for (int i = 1; i <= 3; i++) {
|
||||||
|
int[] würfelwerte = api.wurfDurchführen(zuWürfeln);
|
||||||
|
System.out.print(i + ". Wurf: ");
|
||||||
|
for (int w : würfelwerte) {
|
||||||
|
System.out.print(w + " ");
|
||||||
|
}
|
||||||
|
System.out.println();
|
||||||
|
System.out.println(" 1 2 3 4 5");
|
||||||
|
System.out.println();
|
||||||
|
|
||||||
|
if (i == 3)
|
||||||
|
break;
|
||||||
|
|
||||||
|
System.out.println("Welche Würfel sollen noch einmal geworfen werden? ");
|
||||||
|
System.out.println("Nr. des/der Würfel durch Leerzeichen getrennt eingeben.");
|
||||||
|
System.out.println("Leere Eingabe, um gar nicht mehr zu würfeln.");
|
||||||
|
System.out.print("Eingabe: ");
|
||||||
|
|
||||||
|
String eingabe = kb.nextLine();
|
||||||
|
if (eingabe.isEmpty())
|
||||||
|
break;
|
||||||
|
|
||||||
|
zuWürfeln = eingabe.split(" ");
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.println("In welcher Kategorie sollen die Punkte eingetragen werden?");
|
||||||
|
System.out.print("> ");
|
||||||
|
|
||||||
|
int kategorie = Integer.parseInt(kb.nextLine());
|
||||||
|
|
||||||
|
api.punkteEintragen(kategorie);
|
||||||
|
|
||||||
System.out.println(api.getGewinnkarte().toString());
|
System.out.println(api.getGewinnkarte().toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue