Beschrifftung und getestets game
parent
dc18083541
commit
92c854e0aa
|
|
@ -7,30 +7,36 @@ public class BlackJackSpiel {
|
|||
|
||||
private Hand hand;
|
||||
|
||||
//erstellt ein neues spiel
|
||||
public BlackJackSpiel(){
|
||||
this.hand=new Hand(new Kartenspiel());
|
||||
}
|
||||
|
||||
//erstellt eine neue hand
|
||||
public Hand getNeueHand(){
|
||||
return this.hand=new Hand(new Kartenspiel());
|
||||
}
|
||||
|
||||
//zeigt den aktuellen spielstand
|
||||
public void Showspielstand(){
|
||||
System.out.println("Ihre Karten: ");
|
||||
System.out.println(hand.toString());
|
||||
System.out.println("Punkte: "+hand.getPunkte());
|
||||
}
|
||||
|
||||
//chekct ein spielende
|
||||
public boolean isgameend(){
|
||||
if(hand.isBlackJack())return true;
|
||||
else if(hand.getPunkte()>21)return true;
|
||||
else return false;
|
||||
}
|
||||
|
||||
//gibt dir die hand
|
||||
public Hand getHand() {
|
||||
return hand;
|
||||
}
|
||||
|
||||
//end logic
|
||||
public boolean gameend(){
|
||||
if(hand.isBlackJack())System.out.println("BlackJack! sie haben gewonnen");
|
||||
else if(hand.getPunkte()>21)System.out.println("Sie haben verloren");
|
||||
|
|
|
|||
|
|
@ -1,32 +0,0 @@
|
|||
package org.example.Logic;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class utilitys {
|
||||
|
||||
//creiere ein neues carktendeck
|
||||
public static ArrayList<String> getDeck(){
|
||||
//nur für den fall das man mehr kartentypen brauch
|
||||
ArrayList<String> kartentypen = new ArrayList<>(){{
|
||||
add("♠");
|
||||
add("♣");
|
||||
add("♥");
|
||||
add("♦");
|
||||
}};
|
||||
return new ArrayList<>(){{
|
||||
kartentypen.forEach(s ->{
|
||||
for (int i = 1; i <= 13; i++)add(i+";"+s);
|
||||
});
|
||||
}};
|
||||
}
|
||||
|
||||
//karte deelen
|
||||
public static void printcard(ArrayList<String> symbole, ArrayList<String> nummern){
|
||||
|
||||
String[] symboleArray = {};
|
||||
|
||||
for (int i = 0; i < symbole.size(); i++) {
|
||||
symboleArray[i] = symbole.get(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -12,10 +12,12 @@ public class Main {
|
|||
while (true){
|
||||
//zeigt den spielstand
|
||||
blackJackSpiel.Showspielstand();
|
||||
//überprüft ob das spiel zu ende ist
|
||||
if (blackJackSpiel.isgameend()){
|
||||
if (!blackJackSpiel.gameend())return;
|
||||
else blackJackSpiel.getNeueHand();
|
||||
} else {
|
||||
//fragt nach ernetem spielen
|
||||
System.out.println("Wollen sie eine Karte ziehen? (j/n)");
|
||||
if (System.console().readLine().equals("j"))blackJackSpiel.getHand().addKarte();
|
||||
else {
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ public class Hand {
|
|||
private ArrayList<Karte> karten;
|
||||
private Kartenspiel ks;
|
||||
|
||||
//creaiert eine neue hand
|
||||
public Hand(Kartenspiel ks){
|
||||
this.ks=ks;
|
||||
//nimm 2 karten aus dem deck
|
||||
|
|
@ -19,20 +20,24 @@ public class Hand {
|
|||
punkte=karten.stream().mapToInt(Karte::getPunkte).sum();
|
||||
}
|
||||
|
||||
//guckt ob blackjack
|
||||
public boolean isBlackJack(){
|
||||
return karten.size()==2 && punkte==21;
|
||||
}
|
||||
|
||||
//fereint alle karten in der hand zu einem ausgebaren string
|
||||
public String toString(){
|
||||
String allthekarten="";
|
||||
for (Karte karte : karten)allthekarten+=karte.toString()+", ";
|
||||
return allthekarten;
|
||||
}
|
||||
|
||||
//gibt dir die gesamtpunkte deiner ahnd
|
||||
public int getPunkte() {
|
||||
return this.punkte;
|
||||
}
|
||||
|
||||
//fügt eine karte der hand hinzu
|
||||
public void addKarte(){
|
||||
//nimm eine karte aus dem deck und füge sie der hand hinzu
|
||||
karten.add(ks.getKarte());
|
||||
|
|
|
|||
|
|
@ -5,15 +5,18 @@ public class Karte {
|
|||
private String farbe;
|
||||
private String karte;
|
||||
|
||||
//erstellt die karte
|
||||
public Karte(String farbe, String karte){
|
||||
this.farbe=farbe;
|
||||
this.karte=karte;
|
||||
}
|
||||
|
||||
//erstellt einen ausgebarhen string der karte
|
||||
public String toString(){
|
||||
return farbe+" "+karte;
|
||||
}
|
||||
|
||||
//gibt dir die punkte der karte
|
||||
public int getPunkte(){
|
||||
switch (this.karte){
|
||||
case "A":
|
||||
|
|
|
|||
Loading…
Reference in New Issue