Compare commits
No commits in common. "kts.des" and "main" have entirely different histories.
|
@ -1,8 +0,0 @@
|
||||||
package Domain.Exceptions;
|
|
||||||
|
|
||||||
public class KartenNichtGemischtException extends SpielException {
|
|
||||||
|
|
||||||
public KartenNichtGemischtException(String e) {
|
|
||||||
super(30, e);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,16 +0,0 @@
|
||||||
package Domain.Exceptions;
|
|
||||||
|
|
||||||
public class SpielNotFoundException extends SpielException {
|
|
||||||
|
|
||||||
|
|
||||||
public SpielNotFoundException() {
|
|
||||||
super();
|
|
||||||
}
|
|
||||||
public SpielNotFoundException(String e) {
|
|
||||||
super(20, e);
|
|
||||||
}
|
|
||||||
|
|
||||||
public SpielNotFoundException(int id, String e) {
|
|
||||||
super(id, e);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -12,7 +12,6 @@ import java.util.List;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import Domain.Enums.Kartenfarbe;
|
import Domain.Enums.Kartenfarbe;
|
||||||
import Domain.Exceptions.KartenNichtGemischtException;
|
|
||||||
import Domain.Karten.*;
|
import Domain.Karten.*;
|
||||||
|
|
||||||
|
|
||||||
|
@ -21,7 +20,7 @@ public class Kartenstapel {
|
||||||
// Statische Konstanten
|
// Statische Konstanten
|
||||||
|
|
||||||
// Statische Attribute
|
// Statische Attribute
|
||||||
|
private static int kartenzählen = 1;
|
||||||
// Attribute der Objekte
|
// Attribute der Objekte
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -31,7 +30,6 @@ public class Kartenstapel {
|
||||||
private HashMap<Integer, Karte> kartensortiert = new HashMap<>();
|
private HashMap<Integer, Karte> kartensortiert = new HashMap<>();
|
||||||
|
|
||||||
private HashMap<Integer, Karte> kartengemischt = new HashMap<>();
|
private HashMap<Integer, Karte> kartengemischt = new HashMap<>();
|
||||||
|
|
||||||
|
|
||||||
// Konstruktoren
|
// Konstruktoren
|
||||||
public Kartenstapel() {
|
public Kartenstapel() {
|
||||||
|
@ -111,7 +109,6 @@ public class Kartenstapel {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public void mischen() {
|
public void mischen() {
|
||||||
kartengemischt.clear();
|
|
||||||
ArrayList<Integer> zahlen = new ArrayList<>();
|
ArrayList<Integer> zahlen = new ArrayList<>();
|
||||||
for (int i = 1; i <= 60; i++) {
|
for (int i = 1; i <= 60; i++) {
|
||||||
zahlen.add(i);
|
zahlen.add(i);
|
||||||
|
@ -123,6 +120,10 @@ public class Kartenstapel {
|
||||||
kartengemischt.put(i + 1, kartensortiert.get(schlüsselzahl));
|
kartengemischt.put(i + 1, kartensortiert.get(schlüsselzahl));
|
||||||
zahlen.remove(index);
|
zahlen.remove(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for(Karte k : kartengemischt.values()) {
|
||||||
|
System.out.println(k.toString());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -130,20 +131,11 @@ public class Kartenstapel {
|
||||||
* an den Spieler verteilt, bzw. am Ende des Verteilens der Trumpf gezogen,
|
* an den Spieler verteilt, bzw. am Ende des Verteilens der Trumpf gezogen,
|
||||||
* falls noch eine Karte auf dem Stapel liegen sollte. Hierzu wird die Runde,
|
* falls noch eine Karte auf dem Stapel liegen sollte. Hierzu wird die Runde,
|
||||||
* als Ausgangswert genommen.
|
* als Ausgangswert genommen.
|
||||||
* @return Immer die oberste Karte
|
|
||||||
* @throws KartenNichtGemischtException
|
|
||||||
*/
|
*/
|
||||||
public Object getObersteKarte() throws KartenNichtGemischtException {
|
public Object getObersteKarte() {
|
||||||
if (!kartengemischt.isEmpty()) {
|
Object k = kartengemischt.values().toArray()[0];
|
||||||
// Die Prüfung, dass NICHT MEHR als 60 Karten gezogen werden
|
kartengemischt.remove(k);
|
||||||
// geschieht in der Spiellogik
|
return k;
|
||||||
Object k = kartengemischt.values().toArray()[0];
|
|
||||||
kartengemischt.remove(k);
|
|
||||||
return k;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
throw new KartenNichtGemischtException("Der Kartenstapel wurde nicht gemischt.");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -7,12 +7,10 @@ written on: 05 / 10 / 2023 at: 23:48
|
||||||
package Domain;
|
package Domain;
|
||||||
|
|
||||||
import Domain.Enums.Geschlecht;
|
import Domain.Enums.Geschlecht;
|
||||||
import Domain.Exceptions.SpielNotFoundException;
|
|
||||||
import Facade.Spiel;
|
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
public class Spieler implements Serializable {
|
public class Spieler extends Object implements Serializable {
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// statische Konstanten
|
// statische Konstanten
|
||||||
|
@ -29,7 +27,6 @@ public class Spieler implements Serializable {
|
||||||
private String name;
|
private String name;
|
||||||
private int vorhersage;
|
private int vorhersage;
|
||||||
private Geschlecht geschlecht;
|
private Geschlecht geschlecht;
|
||||||
private Spiel spielexsist;
|
|
||||||
//
|
//
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
@ -38,19 +35,9 @@ public class Spieler implements Serializable {
|
||||||
// Default
|
// Default
|
||||||
/**
|
/**
|
||||||
* Default Konstruktor des Spieler - Klasse
|
* Default Konstruktor des Spieler - Klasse
|
||||||
* @throws SpielNotFoundException
|
|
||||||
*/
|
*/
|
||||||
public Spieler() throws SpielNotFoundException {
|
public Spieler() {
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public Spieler(Spiel spiel) throws SpielNotFoundException {
|
|
||||||
if(spiel == null) {
|
|
||||||
throw new SpielNotFoundException("Es ist kein Spiel vorhanden.");
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
setSpielexsist(spiel);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -59,10 +46,9 @@ public class Spieler implements Serializable {
|
||||||
* @param id int
|
* @param id int
|
||||||
* @param name String
|
* @param name String
|
||||||
* @param geschlecht Geschlecht
|
* @param geschlecht Geschlecht
|
||||||
* @throws SpielNotFoundException
|
|
||||||
*/
|
*/
|
||||||
public Spieler(Spiel spiel, int id, String name, Geschlecht geschlecht) throws SpielNotFoundException {
|
public Spieler(int id, String name, Geschlecht geschlecht) {
|
||||||
this(spiel);
|
this();
|
||||||
if (id < 6) {
|
if (id < 6) {
|
||||||
setId(id);
|
setId(id);
|
||||||
} else {
|
} else {
|
||||||
|
@ -86,10 +72,9 @@ public class Spieler implements Serializable {
|
||||||
* @param name String
|
* @param name String
|
||||||
* @param geschlecht Geschlecht
|
* @param geschlecht Geschlecht
|
||||||
* @param vorhersage int
|
* @param vorhersage int
|
||||||
* @throws SpielNotFoundException
|
|
||||||
*/
|
*/
|
||||||
public Spieler(Spiel spiel, int id, String name, Geschlecht geschlecht, int vorhersage) throws SpielNotFoundException {
|
public Spieler(int id, String name, Geschlecht geschlecht, int vorhersage) {
|
||||||
this(spiel, id, name, geschlecht);
|
this(id, name, geschlecht);
|
||||||
setVorhersage(vorhersage);
|
setVorhersage(vorhersage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -100,18 +85,6 @@ public class Spieler implements Serializable {
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Getter und Setter
|
// Getter und Setter
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// spielexsist
|
|
||||||
/**
|
|
||||||
* Prüft und setzt Spiel als Ganzes.
|
|
||||||
* Nur dann dürfen Spieler erstellt werden
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
private void setSpielexsist(Spiel spiel) {
|
|
||||||
this.spielexsist = spiel;
|
|
||||||
}
|
|
||||||
public Spiel getSpielexsist() {
|
|
||||||
return this.spielexsist;
|
|
||||||
}
|
|
||||||
// id
|
// id
|
||||||
/**
|
/**
|
||||||
* Setzt die ID des Spielers
|
* Setzt die ID des Spielers
|
||||||
|
@ -209,14 +182,9 @@ public class Spieler implements Serializable {
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// öffentliche Methodes
|
// öffentliche Methodes
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Hilfsmethoden (privat)
|
// Hilfsmethoden (privat)
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
|
||||||
private boolean getSpielStatus() {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,6 @@ import Domain.Stich;
|
||||||
import Domain.Block.Block;
|
import Domain.Block.Block;
|
||||||
import Domain.Enums.Geschlecht;
|
import Domain.Enums.Geschlecht;
|
||||||
import Domain.Exceptions.EmptyListException;
|
import Domain.Exceptions.EmptyListException;
|
||||||
import Domain.Exceptions.SpielNotFoundException;
|
|
||||||
import Domain.Exceptions.SpielerNotFoundException;
|
import Domain.Exceptions.SpielerNotFoundException;
|
||||||
import Domain.Karten.Karte;
|
import Domain.Karten.Karte;
|
||||||
|
|
||||||
|
@ -58,7 +57,6 @@ public class Spiel implements Serializable {
|
||||||
this.spielerAmZug = null;
|
this.spielerAmZug = null;
|
||||||
this.runde = 0;
|
this.runde = 0;
|
||||||
this.kartenstapel = new Kartenstapel();
|
this.kartenstapel = new Kartenstapel();
|
||||||
|
|
||||||
};
|
};
|
||||||
/*--------------------------------------------------------*/
|
/*--------------------------------------------------------*/
|
||||||
// statische Methoden
|
// statische Methoden
|
||||||
|
@ -124,13 +122,13 @@ public class Spiel implements Serializable {
|
||||||
// öffentliche Methodes
|
// öffentliche Methodes
|
||||||
/*--------------------------------------------------------*/
|
/*--------------------------------------------------------*/
|
||||||
|
|
||||||
public void addSpieler(String name, Geschlecht geschlecht) throws SpielNotFoundException {
|
public void addSpieler(String name, Geschlecht geschlecht) {
|
||||||
int id = 1;
|
int id = 1;
|
||||||
while (id_check[id - 1]) {
|
while (id_check[id - 1]) {
|
||||||
id++;
|
id++;
|
||||||
}
|
}
|
||||||
id_check[id - 1] = true;
|
id_check[id - 1] = true;
|
||||||
Spieler temp = new Spieler(this, id, name, geschlecht);
|
Spieler temp = new Spieler(id, name, geschlecht);
|
||||||
this.spieler.put(id, temp);
|
this.spieler.put(id, temp);
|
||||||
System.out.println(this.spieler.get(id));
|
System.out.println(this.spieler.get(id));
|
||||||
if (this.spielerAmZug == null) {
|
if (this.spielerAmZug == null) {
|
||||||
|
|
12
Main.java
12
Main.java
|
@ -4,16 +4,10 @@ import UI.SpielCLI;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
import Domain.Exceptions.SpielNotFoundException;
|
|
||||||
|
|
||||||
public class Main {
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
|
||||||
public static void main(String[] args) throws SpielNotFoundException {
|
|
||||||
String name = "Wizard";
|
String name = "Wizard";
|
||||||
Spiel spiel = null;
|
Spiel spiel = null;
|
||||||
|
|
||||||
|
|
||||||
if (Persistenz.sindDatenVorhanden(name)) {
|
if (Persistenz.sindDatenVorhanden(name)) {
|
||||||
try {
|
try {
|
||||||
|
@ -36,7 +30,6 @@ public class Main {
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
spiel = new Spiel();
|
spiel = new Spiel();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
new SpielCLI(spiel);
|
new SpielCLI(spiel);
|
||||||
|
@ -46,8 +39,5 @@ public class Main {
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
System.out.println("Konnte Daten nicht speicher!");
|
System.out.println("Konnte Daten nicht speicher!");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,33 +7,21 @@ written on: 10 / 10 / 2023 at: 20:27
|
||||||
package Test.Domain;
|
package Test.Domain;
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.jupiter.api.BeforeAll;
|
|
||||||
|
|
||||||
import Domain.Spieler;
|
import Domain.Spieler;
|
||||||
import Domain.Enums.Geschlecht;
|
import Domain.Enums.Geschlecht;
|
||||||
import Domain.Exceptions.SpielNotFoundException;
|
|
||||||
import Facade.Spiel;
|
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertThrows;
|
import static org.junit.Assert.assertThrows;
|
||||||
|
|
||||||
public class SpielerTest {
|
public class SpielerTest {
|
||||||
|
|
||||||
Spieler spieler, spieler2, spieler3, spieler4, spieler5, spieler6;
|
Spieler spieler = new Spieler(0, "Herbert", Geschlecht.M, 0);
|
||||||
Spiel spiel;
|
Spieler spieler2 = new Spieler(1, "Heinz", Geschlecht.M, 0);
|
||||||
|
Spieler spieler3 = new Spieler(2, "Ulrike", Geschlecht.W, 0);
|
||||||
@BeforeAll
|
Spieler spieler4 = new Spieler(3, "HerrFrau", Geschlecht.D, 0);
|
||||||
public void immer() throws SpielNotFoundException {
|
Spieler spieler5 = new Spieler(4, "", Geschlecht.KI, 0);
|
||||||
spiel = new Spiel();
|
Spieler spieler6 = new Spieler(5, "", Geschlecht.KI, 0);
|
||||||
|
|
||||||
spieler = new Spieler(spiel, 0, "Herbert", Geschlecht.M);
|
|
||||||
spieler2 = new Spieler(spiel, 1, "Heinz", Geschlecht.M);
|
|
||||||
spieler3 = new Spieler(spiel, 2, "Ulrike", Geschlecht.W);
|
|
||||||
spieler4 = new Spieler(spiel, 3, "HerrFrau", Geschlecht.D);
|
|
||||||
spieler5 = new Spieler(spiel, 4, "", Geschlecht.KI);
|
|
||||||
spieler6 = new Spieler(spiel, 5, "", Geschlecht.KI, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void idTest() {
|
public void idTest() {
|
||||||
|
@ -66,7 +54,6 @@ public class SpielerTest {
|
||||||
}
|
}
|
||||||
@Test
|
@Test
|
||||||
public void exceptionsTest() {
|
public void exceptionsTest() {
|
||||||
|
assertThrows(RuntimeException.class, () -> new Spieler(6, "", Geschlecht.KI, 0));
|
||||||
assertThrows(RuntimeException.class, () -> new Spieler(spiel, 7, "Hugo", Geschlecht.M));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,6 @@ import Facade.Spiel;
|
||||||
import Domain.Spieler;
|
import Domain.Spieler;
|
||||||
import Domain.Enums.Geschlecht;
|
import Domain.Enums.Geschlecht;
|
||||||
import Domain.Exceptions.EmptyListException;
|
import Domain.Exceptions.EmptyListException;
|
||||||
import Domain.Exceptions.SpielNotFoundException;
|
|
||||||
import Domain.Exceptions.SpielerNotFoundException;
|
import Domain.Exceptions.SpielerNotFoundException;
|
||||||
|
|
||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
|
@ -26,12 +25,12 @@ public class SpielCLI {
|
||||||
Scanner sc = new Scanner(System.in);
|
Scanner sc = new Scanner(System.in);
|
||||||
private Spiel spiel;
|
private Spiel spiel;
|
||||||
|
|
||||||
public SpielCLI(Spiel spiel) throws SpielNotFoundException {
|
public SpielCLI(Spiel spiel) {
|
||||||
this.spiel = spiel;
|
this.spiel = spiel;
|
||||||
hauptmenue();
|
hauptmenue();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void hauptmenue() throws SpielNotFoundException {
|
public void hauptmenue() {
|
||||||
System.out.println("Hallo Wanderer");
|
System.out.println("Hallo Wanderer");
|
||||||
mainloop: while (true) {
|
mainloop: while (true) {
|
||||||
print("");
|
print("");
|
||||||
|
@ -77,7 +76,7 @@ public class SpielCLI {
|
||||||
System.out.println("Noch nicht implementiert.");
|
System.out.println("Noch nicht implementiert.");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addSpieler() throws SpielNotFoundException {
|
private void addSpieler() {
|
||||||
int spieler_anzahl = this.spiel.getAlleSpieler().length;
|
int spieler_anzahl = this.spiel.getAlleSpieler().length;
|
||||||
if (spieler_anzahl <= 5) {
|
if (spieler_anzahl <= 5) {
|
||||||
System.out.println("Gib den Namen des Spielers an");
|
System.out.println("Gib den Namen des Spielers an");
|
||||||
|
|
Loading…
Reference in New Issue