Alles fertig.

master
s.eser 2024-03-26 10:40:01 +01:00
parent 08373a3a95
commit 84a56c9db9
7 changed files with 52 additions and 39 deletions

View File

@ -1,17 +0,0 @@
package de.hs_mannheim.informatik.blackjack;
public class BlackJackSpiel {
Kartenstapel ks;
public Hand spieler;
public BlackJackSpiel(){
this.ks = new Kartenstapel();
}
public void getNeueHand(Kartenstapel ks){
this.spieler = new Hand(ks);
}
public Kartenstapel getKs(){
return this.ks;
}
}

View File

@ -1,4 +1,4 @@
package de.hs_mannheim.informatik.blackjack; package de.hs_mannheim.informatik.domain;
import java.util.ArrayList; import java.util.ArrayList;
@ -7,13 +7,13 @@ public class Hand {
private ArrayList<Karte> hand = new ArrayList<>(); private ArrayList<Karte> hand = new ArrayList<>();
Hand(Karte... karte){ public Hand(Karte... karte){
for(int i = 0; i<karte.length; i++){ for(int i = 0; i<karte.length; i++){
hand.add(karte[i]); hand.add(karte[i]);
} }
} }
Hand(Kartenstapel ks){ public Hand(Kartenstapel ks){
hand.add(ks.getKarte()); hand.add(ks.getKarte());
hand.add(ks.getKarte()); hand.add(ks.getKarte());
} }

View File

@ -1,6 +1,4 @@
package de.hs_mannheim.informatik.blackjack; package de.hs_mannheim.informatik.domain;
import java.util.ArrayList;
public class Karte { public class Karte {
@ -9,7 +7,7 @@ public class Karte {
Karte(String farbe, String karte){ public Karte(String farbe, String karte){
this.farbe=farbe; this.farbe=farbe;
this.karte=karte; this.karte=karte;

View File

@ -1,11 +1,11 @@
package de.hs_mannheim.informatik.blackjack; package de.hs_mannheim.informatik.domain;
import java.util.ArrayList; import java.util.ArrayList;
public class Kartenstapel { public class Kartenstapel {
private ArrayList<Karte> kartenstapel = new ArrayList<>(); private ArrayList<Karte> kartenstapel = new ArrayList<>();
Kartenstapel(){ public Kartenstapel(){
for(int i = 2; i< 11; i++){ for(int i = 2; i< 11; i++){
kartenstapel.add(new Karte("Kreuz", ""+i)); kartenstapel.add(new Karte("Kreuz", ""+i));

View File

@ -0,0 +1,32 @@
package de.hs_mannheim.informatik.facade;
import de.hs_mannheim.informatik.domain.Hand;
import de.hs_mannheim.informatik.domain.Kartenstapel;
public class BlackJackSpiel {
Kartenstapel ks;
public Hand spieler;
public BlackJackSpiel(){
this.ks = new Kartenstapel();
}
public void getNeueHand(){
this.spieler = new Hand(this.ks);
}
public Kartenstapel getKs(){
return this.ks;
}
public String getHand(){
return spieler.toString();
}
public boolean isBlackJackHand() {
return spieler.isBlackJack();
}
public int getPunkte(){
return spieler.getPunkte();
}
public void addKarte(){
spieler.addKarte(this.ks);
}
}

View File

@ -1,6 +1,6 @@
package de.hs_mannheim.informatik.ui; package de.hs_mannheim.informatik.ui;
import de.hs_mannheim.informatik.blackjack.BlackJackSpiel; import de.hs_mannheim.informatik.facade.BlackJackSpiel;
import java.util.Scanner; import java.util.Scanner;
@ -17,36 +17,36 @@ public class TUI {
Scanner sc = new Scanner(System.in); Scanner sc = new Scanner(System.in);
if (sc.nextLine().equalsIgnoreCase("Ja")) { if (sc.nextLine().equalsIgnoreCase("Ja")) {
bj.getNeueHand(bj.getKs()); bj.getNeueHand();
System.out.println("Ihre Hand: "+bj.spieler); System.out.println("Ihre Hand: "+bj.getHand());
if (bj.spieler.isBlackJack()) { if (bj.isBlackJackHand()) {
System.out.println("Sie haben einen BlackJack!"); System.out.println("Sie haben einen BlackJack!");
} else { } else {
while(bj.spieler.getPunkte()<22) { while(bj.getPunkte()<22) {
if(t>1) if(t>1)
System.out.println("Ihre Hand: "+bj.spieler); System.out.println("Ihre Hand: "+bj.getHand());
if(bj.spieler.getPunkte()==21) { if(bj.getPunkte()==21) {
System.out.println("Ihre Endpunktzahl von diesem Spiel beträgt: 21"); System.out.println("Ihre Endpunktzahl von diesem Spiel beträgt: 21");
eingabe = "Nein"; eingabe = "Nein";
break; break;
} }
int punkte = bj.spieler.getPunkte(); int punkte = bj.getPunkte();
System.out.println("Ihre Hand ergibt zurzeit: " + punkte + " Punkte."); System.out.println("Ihre Hand ergibt zurzeit: " + punkte + " Punkte.");
System.out.println("Möchten Sie noch eine Karte ziehen? (Ja/Nein)"); System.out.println("Möchten Sie noch eine Karte ziehen? (Ja/Nein)");
t++; t++;
eingabe = sc.nextLine(); eingabe = sc.nextLine();
if (eingabe.equalsIgnoreCase("Ja")) if (eingabe.equalsIgnoreCase("Ja"))
bj.spieler.addKarte(bj.getKs()); bj.addKarte();
else { else {
System.out.println("Ihre Endpunktzahl von diesem Spiel beträgt: " + bj.spieler.getPunkte()); System.out.println("Ihre Endpunktzahl von diesem Spiel beträgt: " + bj.getPunkte());
break; break;
} }
} }
if(eingabe.equalsIgnoreCase("Ja")) { if(eingabe.equalsIgnoreCase("Ja")) {
System.out.println("Ihre Hand: " + bj.spieler); System.out.println("Ihre Hand: " + bj.getHand());
System.out.println("Ihre Endpunktzahl von diesem Spiel beträgt: " + bj.spieler.getPunkte()); System.out.println("Ihre Endpunktzahl von diesem Spiel beträgt: " + bj.getPunkte());
System.out.println("Damit haben Sie 21 überschritten und verloren."); System.out.println("Damit haben Sie 21 überschritten und verloren.");
} }
} }

View File

@ -1,4 +1,4 @@
package de.hs_mannheim.informatik.blackjack; package de.hs_mannheim.informatik.domain;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;