Compare commits
2 Commits
main
...
kts.deskto
Author | SHA1 | Date |
---|---|---|
Kai Sellmann | 90541ef089 | |
Kai Sellmann | 909fd7c2ca |
|
@ -22,11 +22,11 @@ public abstract class Karte {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Statische Methoden
|
// Statische Methoden
|
||||||
public static int getId_card() {
|
|
||||||
|
// Getter und Setter
|
||||||
|
public int getId_card() {
|
||||||
return id_card;
|
return id_card;
|
||||||
}
|
}
|
||||||
// Getter und Setter
|
|
||||||
|
|
||||||
|
|
||||||
// @Overrides
|
// @Overrides
|
||||||
|
|
||||||
|
|
|
@ -9,34 +9,34 @@ package Domain.Karten;
|
||||||
public class Magierkarte extends Karte {
|
public class Magierkarte extends Karte {
|
||||||
|
|
||||||
// Statische Konstanten
|
// Statische Konstanten
|
||||||
private static String TRUMPF_NAME = "Zauberer";
|
private static String KARTENNAME = "Zauberer";
|
||||||
// Statische Attribute
|
// Statische Attribute
|
||||||
|
|
||||||
// Attribute des Objekts
|
// Attribute des Objekts
|
||||||
private String bezeichnung;
|
private String name;
|
||||||
// Konstruktoren
|
// Konstruktoren
|
||||||
|
|
||||||
public Magierkarte() {
|
public Magierkarte() {
|
||||||
super();
|
super();
|
||||||
setBezeichnung(TRUMPF_NAME);
|
setName(KARTENNAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Statische Methoden
|
// Statische Methoden
|
||||||
|
|
||||||
// Getter und Setter
|
// Getter und Setter
|
||||||
|
|
||||||
public void setBezeichnung(String bezeichnung) {
|
public void setName(String name) {
|
||||||
this.bezeichnung = bezeichnung;
|
this.name = name;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getBezeichnung() {
|
public String getName() {
|
||||||
return this.bezeichnung;
|
return this.name;
|
||||||
}
|
}
|
||||||
|
|
||||||
// @Overrides
|
// @Overrides
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return this.getBezeichnung();
|
return this.getName();
|
||||||
}
|
}
|
||||||
// Public Methoden
|
// Public Methoden
|
||||||
|
|
||||||
|
|
|
@ -9,34 +9,34 @@ package Domain.Karten;
|
||||||
public class Narrenkarte extends Karte {
|
public class Narrenkarte extends Karte {
|
||||||
|
|
||||||
// Statische Konstanten
|
// Statische Konstanten
|
||||||
private static String TRUMPF_NAME = "Narr";
|
private static String KARTENNAME = "Narr";
|
||||||
// Statische Attribute
|
// Statische Attribute
|
||||||
|
|
||||||
// Attribute des Objekts
|
// Attribute des Objekts
|
||||||
private String bezeichnung;
|
private String name;
|
||||||
// Konstruktoren
|
// Konstruktoren
|
||||||
|
|
||||||
public Narrenkarte() {
|
public Narrenkarte() {
|
||||||
super();
|
super();
|
||||||
setBezeichnung(TRUMPF_NAME);
|
setName(KARTENNAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Statische Methoden
|
// Statische Methoden
|
||||||
|
|
||||||
// Getter und Setter
|
// Getter und Setter
|
||||||
|
|
||||||
public void setBezeichnung(String bezeichnung) {
|
public void setName(String name) {
|
||||||
this.bezeichnung = bezeichnung;
|
this.name = name;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getBezeichnung() {
|
public String getName() {
|
||||||
return this.bezeichnung;
|
return this.name;
|
||||||
}
|
}
|
||||||
|
|
||||||
// @Overrides
|
// @Overrides
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return this.getBezeichnung();
|
return this.getName();
|
||||||
}
|
}
|
||||||
// Public Methoden
|
// Public Methoden
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ public class Zahlenkarte extends Karte {
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// statische Konstanten
|
// statische Konstanten
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
private final static String KARTENNAME = "Charakterkarte";
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// statische Attribute(zB. zähler)
|
// statische Attribute(zB. zähler)
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
@ -23,6 +23,7 @@ public class Zahlenkarte extends Karte {
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
private Kartenfarbe kartenfarbe;
|
private Kartenfarbe kartenfarbe;
|
||||||
private int kartenNummer;
|
private int kartenNummer;
|
||||||
|
private String name;
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Konstruktoren (default und spezifische)
|
// Konstruktoren (default und spezifische)
|
||||||
|
@ -35,6 +36,7 @@ public class Zahlenkarte extends Karte {
|
||||||
super();
|
super();
|
||||||
setKartenfarbe(kartenfarbe);
|
setKartenfarbe(kartenfarbe);
|
||||||
setKartenNummer(kartenNummer);
|
setKartenNummer(kartenNummer);
|
||||||
|
setName(KARTENNAME);
|
||||||
|
|
||||||
}
|
}
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
@ -59,6 +61,12 @@ public class Zahlenkarte extends Karte {
|
||||||
public int getKartenNummer() {
|
public int getKartenNummer() {
|
||||||
return kartenNummer;
|
return kartenNummer;
|
||||||
}
|
}
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
public String getName() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// @Overrides
|
// @Overrides
|
||||||
|
|
|
@ -6,7 +6,14 @@ written on: 05 / 10 / 2023 at: 23:42
|
||||||
*/
|
*/
|
||||||
package Domain;
|
package Domain;
|
||||||
|
|
||||||
import Domain.Karten.*;
|
import java.util.Collection;
|
||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
|
import Domain.Enums.Kartenfarbe;
|
||||||
|
import Domain.Karten.Karte;
|
||||||
|
import Domain.Karten.Magierkarte;
|
||||||
|
import Domain.Karten.Narrenkarte;
|
||||||
|
import Domain.Karten.Zahlenkarte;
|
||||||
|
|
||||||
public class Kartenstapel {
|
public class Kartenstapel {
|
||||||
|
|
||||||
|
@ -17,21 +24,51 @@ public class Kartenstapel {
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// statische Attribute(zB. zähler)
|
// statische Attribute(zB. zähler)
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
private static int kartenzähler = 1;
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Attribute jedes Objektes
|
// Attribute jedes Objektes
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
/**
|
||||||
private Karte[] kartenStapel = new Karte[60];
|
* Die beiden HashMaps repräsentieren das Kartendeck einmal
|
||||||
|
* sortiert und gemischt
|
||||||
|
*/
|
||||||
|
private HashMap<Integer, Karte> kartensortiert = new HashMap<>();
|
||||||
|
private HashMap<Integer, Karte> kartengemischt = new HashMap<>();
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Konstruktoren (default und spezifische)
|
// Konstruktoren (default und spezifische)
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
|
||||||
|
// Der Konstruktor PRIVATE? Weil darf nur von Spiel aufgerufen werden?
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Bei jedem Aufruf des Konstruktors wird die HashMap gelöscht und
|
||||||
|
* sortiert neu befüllt.
|
||||||
|
* Die tatsächliche Reihenfolge spielt keine Rolle, da die Karten selbst
|
||||||
|
* NUR über den KEY identifiziert werden.
|
||||||
|
*/
|
||||||
public Kartenstapel() {
|
public Kartenstapel() {
|
||||||
|
kartensortiert.clear();
|
||||||
|
// Erstelle Magierkarten
|
||||||
|
for (int i = 1; i <= 4; i++) {
|
||||||
|
kartensortiert.put(i, new Magierkarte());
|
||||||
|
}
|
||||||
|
for (int i = 5; i <= 8; i++) {
|
||||||
|
kartensortiert.put(i, new Narrenkarte());
|
||||||
|
}
|
||||||
|
for (int i = 9; i <= 21; i++) {
|
||||||
|
kartensortiert.put(i, new Zahlenkarte(Kartenfarbe.MENSCH, i));
|
||||||
|
}
|
||||||
|
for (int i = 22; i <= 34; i++) {
|
||||||
|
kartensortiert.put(i, new Zahlenkarte(Kartenfarbe.ELF, i));
|
||||||
|
}
|
||||||
|
for (int i = 35; i <= 47; i++) {
|
||||||
|
kartensortiert.put(i, new Zahlenkarte(Kartenfarbe.RIESE, i));
|
||||||
|
}
|
||||||
|
for (int i = 48; i <= 60; i++) {
|
||||||
|
kartensortiert.put(i, new Zahlenkarte(Kartenfarbe.ZWERG, i));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// statische Methoden
|
// statische Methoden
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
@ -40,24 +77,6 @@ public class Kartenstapel {
|
||||||
// Getter und Setter
|
// Getter und Setter
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
|
||||||
/**
|
|
||||||
* Ausgabe des ersten Elements des Stapels.
|
|
||||||
*
|
|
||||||
* @return erstes Element
|
|
||||||
*/
|
|
||||||
public Karte getObersteKarte() {
|
|
||||||
return kartenStapel[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Ausgabe der Stapelgroesse.
|
|
||||||
*
|
|
||||||
* @return laenge des Kartenstapels-Arrays
|
|
||||||
*/
|
|
||||||
public int getAnzahlKarten() {
|
|
||||||
return kartenStapel.length;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// @Overrides
|
// @Overrides
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
@ -66,6 +85,26 @@ public class Kartenstapel {
|
||||||
// öffentliche Methoden
|
// öffentliche Methoden
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Die BEIDEN Collections dienen zu TESTZWECKEN
|
||||||
|
*/
|
||||||
|
public Collection<Karte> getKartensortiert() {
|
||||||
|
return kartensortiert.values();
|
||||||
|
}
|
||||||
|
public Collection<Karte> getKartengemischt() {
|
||||||
|
return kartengemischt.values();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Methode: mischen()
|
||||||
|
* Eine ArrayList mit 60 Nummern wird erzeugt.
|
||||||
|
* Eine for-Schleife zieht jeweils eine Nummer.
|
||||||
|
* Diese wird aus 'kartensortiert' gezogen und
|
||||||
|
* in 'kartengemischt' einsortiert.
|
||||||
|
* Danach wird die Nummer aus der ArrayList gelöscht
|
||||||
|
* und es wird erneut eine Nummer aus den verblieben Zahlen
|
||||||
|
* gezogen.
|
||||||
|
*/
|
||||||
public void mischen() {
|
public void mischen() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,7 @@ public class Spieler implements Serializable {
|
||||||
/**
|
/**
|
||||||
* Default Konstruktor des Spieler - Klasse
|
* Default Konstruktor des Spieler - Klasse
|
||||||
*/
|
*/
|
||||||
public Spieler() {
|
Spieler() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ public class Spieler implements Serializable {
|
||||||
* @param name String
|
* @param name String
|
||||||
* @param geschlecht Geschlecht
|
* @param geschlecht Geschlecht
|
||||||
*/
|
*/
|
||||||
public Spieler(int id, String name, Geschlecht geschlecht) {
|
Spieler(int id, String name, Geschlecht geschlecht) {
|
||||||
this();
|
this();
|
||||||
if (id < 6) {
|
if (id < 6) {
|
||||||
setId(id);
|
setId(id);
|
||||||
|
@ -75,7 +75,7 @@ public class Spieler implements Serializable {
|
||||||
* @param geschlecht Geschlecht
|
* @param geschlecht Geschlecht
|
||||||
* @param vorhersage int
|
* @param vorhersage int
|
||||||
*/
|
*/
|
||||||
public Spieler(int id, String name, Geschlecht geschlecht, int vorhersage) {
|
Spieler(int id, String name, Geschlecht geschlecht, int vorhersage) {
|
||||||
this(id, name, geschlecht);
|
this(id, name, geschlecht);
|
||||||
setVorhersage(vorhersage);
|
setVorhersage(vorhersage);
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,14 +29,14 @@ public class MagierkarteTest {
|
||||||
Magierkarte m4 = new Magierkarte();
|
Magierkarte m4 = new Magierkarte();
|
||||||
|
|
||||||
|
|
||||||
assertEquals("Zauberer", m1.getBezeichnung());
|
assertEquals("Zauberer", m1.getName());
|
||||||
|
|
||||||
|
|
||||||
assertEquals("Zauberer", m2.getBezeichnung());
|
assertEquals("Zauberer", m2.getName());
|
||||||
|
|
||||||
assertEquals("Zauberer", m3.getBezeichnung());
|
assertEquals("Zauberer", m3.getName());
|
||||||
|
|
||||||
assertEquals("Zauberer", m4.getBezeichnung());
|
assertEquals("Zauberer", m4.getName());
|
||||||
|
|
||||||
|
|
||||||
assertEquals("Zauberer: MENSCH (BLAU).", m1.toString());
|
assertEquals("Zauberer: MENSCH (BLAU).", m1.toString());
|
||||||
|
|
|
@ -20,10 +20,10 @@ public class NarrenkarteTest {
|
||||||
Narrenkarte n3 = new Narrenkarte();
|
Narrenkarte n3 = new Narrenkarte();
|
||||||
Narrenkarte n4 = new Narrenkarte();
|
Narrenkarte n4 = new Narrenkarte();
|
||||||
|
|
||||||
assertEquals(n1.getBezeichnung(), "Narr");
|
assertEquals(n1.getName(), "Narr");
|
||||||
assertEquals(n2.getBezeichnung(), "Narr");
|
assertEquals(n2.getName(), "Narr");
|
||||||
assertEquals(n3.getBezeichnung(), "Narr");
|
assertEquals(n3.getName(), "Narr");
|
||||||
assertEquals(n4.getBezeichnung(), "Narr");
|
assertEquals(n4.getName(), "Narr");
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue