Beschrifftung und getestets game
parent
dc18083541
commit
92c854e0aa
|
|
@ -7,30 +7,36 @@ public class BlackJackSpiel {
|
||||||
|
|
||||||
private Hand hand;
|
private Hand hand;
|
||||||
|
|
||||||
|
//erstellt ein neues spiel
|
||||||
public BlackJackSpiel(){
|
public BlackJackSpiel(){
|
||||||
this.hand=new Hand(new Kartenspiel());
|
this.hand=new Hand(new Kartenspiel());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//erstellt eine neue hand
|
||||||
public Hand getNeueHand(){
|
public Hand getNeueHand(){
|
||||||
return this.hand=new Hand(new Kartenspiel());
|
return this.hand=new Hand(new Kartenspiel());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//zeigt den aktuellen spielstand
|
||||||
public void Showspielstand(){
|
public void Showspielstand(){
|
||||||
System.out.println("Ihre Karten: ");
|
System.out.println("Ihre Karten: ");
|
||||||
System.out.println(hand.toString());
|
System.out.println(hand.toString());
|
||||||
System.out.println("Punkte: "+hand.getPunkte());
|
System.out.println("Punkte: "+hand.getPunkte());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//chekct ein spielende
|
||||||
public boolean isgameend(){
|
public boolean isgameend(){
|
||||||
if(hand.isBlackJack())return true;
|
if(hand.isBlackJack())return true;
|
||||||
else if(hand.getPunkte()>21)return true;
|
else if(hand.getPunkte()>21)return true;
|
||||||
else return false;
|
else return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//gibt dir die hand
|
||||||
public Hand getHand() {
|
public Hand getHand() {
|
||||||
return hand;
|
return hand;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//end logic
|
||||||
public boolean gameend(){
|
public boolean gameend(){
|
||||||
if(hand.isBlackJack())System.out.println("BlackJack! sie haben gewonnen");
|
if(hand.isBlackJack())System.out.println("BlackJack! sie haben gewonnen");
|
||||||
else if(hand.getPunkte()>21)System.out.println("Sie haben verloren");
|
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){
|
while (true){
|
||||||
//zeigt den spielstand
|
//zeigt den spielstand
|
||||||
blackJackSpiel.Showspielstand();
|
blackJackSpiel.Showspielstand();
|
||||||
|
//überprüft ob das spiel zu ende ist
|
||||||
if (blackJackSpiel.isgameend()){
|
if (blackJackSpiel.isgameend()){
|
||||||
if (!blackJackSpiel.gameend())return;
|
if (!blackJackSpiel.gameend())return;
|
||||||
else blackJackSpiel.getNeueHand();
|
else blackJackSpiel.getNeueHand();
|
||||||
} else {
|
} else {
|
||||||
|
//fragt nach ernetem spielen
|
||||||
System.out.println("Wollen sie eine Karte ziehen? (j/n)");
|
System.out.println("Wollen sie eine Karte ziehen? (j/n)");
|
||||||
if (System.console().readLine().equals("j"))blackJackSpiel.getHand().addKarte();
|
if (System.console().readLine().equals("j"))blackJackSpiel.getHand().addKarte();
|
||||||
else {
|
else {
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ public class Hand {
|
||||||
private ArrayList<Karte> karten;
|
private ArrayList<Karte> karten;
|
||||||
private Kartenspiel ks;
|
private Kartenspiel ks;
|
||||||
|
|
||||||
|
//creaiert eine neue hand
|
||||||
public Hand(Kartenspiel ks){
|
public Hand(Kartenspiel ks){
|
||||||
this.ks=ks;
|
this.ks=ks;
|
||||||
//nimm 2 karten aus dem deck
|
//nimm 2 karten aus dem deck
|
||||||
|
|
@ -19,20 +20,24 @@ public class Hand {
|
||||||
punkte=karten.stream().mapToInt(Karte::getPunkte).sum();
|
punkte=karten.stream().mapToInt(Karte::getPunkte).sum();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//guckt ob blackjack
|
||||||
public boolean isBlackJack(){
|
public boolean isBlackJack(){
|
||||||
return karten.size()==2 && punkte==21;
|
return karten.size()==2 && punkte==21;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//fereint alle karten in der hand zu einem ausgebaren string
|
||||||
public String toString(){
|
public String toString(){
|
||||||
String allthekarten="";
|
String allthekarten="";
|
||||||
for (Karte karte : karten)allthekarten+=karte.toString()+", ";
|
for (Karte karte : karten)allthekarten+=karte.toString()+", ";
|
||||||
return allthekarten;
|
return allthekarten;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//gibt dir die gesamtpunkte deiner ahnd
|
||||||
public int getPunkte() {
|
public int getPunkte() {
|
||||||
return this.punkte;
|
return this.punkte;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//fügt eine karte der hand hinzu
|
||||||
public void addKarte(){
|
public void addKarte(){
|
||||||
//nimm eine karte aus dem deck und füge sie der hand hinzu
|
//nimm eine karte aus dem deck und füge sie der hand hinzu
|
||||||
karten.add(ks.getKarte());
|
karten.add(ks.getKarte());
|
||||||
|
|
|
||||||
|
|
@ -5,15 +5,18 @@ public class Karte {
|
||||||
private String farbe;
|
private String farbe;
|
||||||
private String karte;
|
private String karte;
|
||||||
|
|
||||||
|
//erstellt die karte
|
||||||
public Karte(String farbe, String karte){
|
public Karte(String farbe, String karte){
|
||||||
this.farbe=farbe;
|
this.farbe=farbe;
|
||||||
this.karte=karte;
|
this.karte=karte;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//erstellt einen ausgebarhen string der karte
|
||||||
public String toString(){
|
public String toString(){
|
||||||
return farbe+" "+karte;
|
return farbe+" "+karte;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//gibt dir die punkte der karte
|
||||||
public int getPunkte(){
|
public int getPunkte(){
|
||||||
switch (this.karte){
|
switch (this.karte){
|
||||||
case "A":
|
case "A":
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue