forked from 2211945/WIZARD_PR2_DOP
105 lines
2.2 KiB
Java
105 lines
2.2 KiB
Java
/*
|
|
============================================================
|
|
This is the "Zahlenkarte" file from Author: Philipp Kotte
|
|
written on: 05 / 10 / 2023 at: 23:30
|
|
============================================================
|
|
*/
|
|
package Domain.Karten;
|
|
|
|
import Domain.Enums.Kartenfarbe;
|
|
|
|
public class Zahlenkarte extends Karte {
|
|
|
|
// Statische Konstanten
|
|
private final static String NAME = "Charakterkarte";
|
|
// 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;
|
|
private String name;
|
|
// 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;
|
|
}
|
|
|
|
public void setName() {
|
|
this.name = NAME;
|
|
}
|
|
// Overrides
|
|
|
|
// Public Methoden
|
|
|
|
// Private Methoden
|
|
private void setNeueMenschKarte(Kartenfarbe farbe) {
|
|
setCharakter(farbe);
|
|
setKartenwert(menschID);
|
|
setName();
|
|
menschID++;
|
|
}
|
|
|
|
private void setNeueElfKarte(Kartenfarbe farbe) {
|
|
setCharakter(farbe);
|
|
setKartenwert(elfID);
|
|
setName();
|
|
elfID++;
|
|
}
|
|
|
|
private void setNeueRieseKarte(Kartenfarbe farbe) {
|
|
setCharakter(farbe);
|
|
setKartenwert(rieseID);
|
|
setName();
|
|
rieseID++;
|
|
}
|
|
|
|
private void setNeueZwergKarte(Kartenfarbe farbe) {
|
|
setCharakter(farbe);
|
|
setKartenwert(zwergID);
|
|
setName();
|
|
zwergID++;
|
|
}
|
|
|
|
@Override
|
|
public String getName() {
|
|
// TODO Auto-generated method stub
|
|
return this.name;
|
|
}
|
|
}
|