1
0
Fork 0

Änderung von Zugriff und Attribute

main
Kai Sellmann 2023-10-23 14:22:39 +02:00
parent 876c43babc
commit 4ac36d3b07
3 changed files with 120 additions and 5 deletions

View File

@ -6,8 +6,6 @@ written on: 05 / 10 / 2023 at: 23:41
*/ */
package Domain.Karten; package Domain.Karten;
import Domain.Enums.Kartenfarbe;
public class Magierkarte extends Karte { public class Magierkarte extends Karte {
// Statische Konstanten // Statische Konstanten
@ -27,7 +25,7 @@ public class Magierkarte extends Karte {
setMkAnzahl(); setMkAnzahl();
} }
else { else {
throw new RuntimeException("Es darf nur vier Zauberer-(Trumpf)-Karten geben!"); throw new RuntimeException("Es darf nur 4 Zaubererkarten im Spiel geben.");
} }
} }
@ -36,11 +34,11 @@ public class Magierkarte extends Karte {
// Getter und Setter // Getter und Setter
public static int getMkAnzahl() { public int getMkAnzahl() {
return mkAnzahl; return mkAnzahl;
} }
public static void setMkAnzahl() { public void setMkAnzahl() {
mkAnzahl++; mkAnzahl++;
} }

View File

@ -8,4 +8,43 @@ package Domain.Karten;
public class Narrenkarte extends Karte { public class Narrenkarte extends Karte {
// Statische Konstanten
private final static String KARTE_NAME = "Narr";
// Statische Attribute
private static int nkAnzahl = 1;
// Attribute der Objekte
private String name;
// Konstruktoren
public Narrenkarte() {
super();
if (getNkAnzahl() <= 4) {
setName(KARTE_NAME);
setNkAnzahl();
}
else {
throw new RuntimeException("Es darf nur 4 Narrenkarten im Spiel geben.");
}
}
// Statische Methoden
// Getter und Setter
private void setName(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
private void setNkAnzahl() {
nkAnzahl++;
}
public int getNkAnzahl() {
return nkAnzahl;
}
// Overrides
// Public Methoden
// Private Methoden
} }

View File

@ -6,6 +6,84 @@ written on: 05 / 10 / 2023 at: 23:30
*/ */
package Domain.Karten; package Domain.Karten;
import Domain.Enums.Kartenfarbe;
public class Zahlenkarte extends Karte { public class Zahlenkarte extends Karte {
// Statische Konstanten
// Statische Attribute
private static int menschID = 1;
private static int elfID = 1;
private static int rieseID = 1;
private static int zwergID = 1;
// Attribute der Objekte
private int kartenwert;
private Kartenfarbe charakter;
// Konstruktoren
public Zahlenkarte(Kartenfarbe farbe) {
super();
if (farbe == Kartenfarbe.MENSCH && menschID <=13) {
setNeueMenschKarte(farbe);
}
else if (farbe == Kartenfarbe.ELF && elfID <= 13) {
setNeueElfKarte(farbe);
}
else if (farbe == Kartenfarbe.RIESE && rieseID <= 13) {
setNeueRieseKarte(farbe);
}
else if (farbe == Kartenfarbe.ZWERG && zwergID <= 13) {
setNeueZwergKarte(farbe);
}
else {
throw new RuntimeException("Es darf von jedem Charakter nur 13 Karten im Spiel geben.");
}
}
// Statische Methoden
// Getter und Setter
public int getKartenwert() {
return kartenwert;
}
public void setKartenwert(int kartenwert) {
this.kartenwert = kartenwert;
}
public Kartenfarbe getCharakter() {
return charakter;
}
public void setCharakter(Kartenfarbe charakter) {
this.charakter = charakter;
}
// Overrides
// Public Methoden
// Private Methoden
private void setNeueMenschKarte(Kartenfarbe farbe) {
setCharakter(farbe);
setKartenwert(menschID);
menschID++;
}
private void setNeueElfKarte(Kartenfarbe farbe) {
setCharakter(farbe);
setKartenwert(elfID);
elfID++;
}
private void setNeueRieseKarte(Kartenfarbe farbe) {
setCharakter(farbe);
setKartenwert(rieseID);
rieseID++;
}
private void setNeueZwergKarte(Kartenfarbe farbe) {
setCharakter(farbe);
setKartenwert(zwergID);
zwergID++;
}
} }