WIZARD_PR2_DOP/Domain/Stich.java

90 lines
2.5 KiB
Java
Raw Normal View History

/*
============================================================
This is the "Stich" file from Author: Philipp Kotte
written on: 11 / 10 / 2023 at: 20:25
============================================================
*/
package Domain;
import Domain.Karten.Karte;
public class Stich {
/*------------------------------------------*/
// statische Konstanten
/*------------------------------------------*/
/*------------------------------------------*/
// statische Attribute(zB. zähler)
/*------------------------------------------*/
/*------------------------------------------*/
// Attribute jedes Objektes
/*------------------------------------------*/
private Karte[] karten;
private int[] spielerID;
private int kartenCount = 0;
/*------------------------------------------*/
// Konstruktoren (default und spezifische)
/*------------------------------------------*/
public Stich() {
}
public Stich(int spielerAnzahl) {
setSpielerAnzahl(spielerAnzahl);
}
/*------------------------------------------*/
// statische Methoden
/*------------------------------------------*/
/*------------------------------------------*/
// Getter und Setter
/*------------------------------------------*/
public void setSpielerAnzahl(int spielerAnzahl) {
this.karten = new Karte[spielerAnzahl];
this.spielerID = new int[spielerAnzahl];
}
public int getSpielerAnzahl(){
return spielerID.length;
}
public Karte[] getKarten() {
return this.karten;
}
public void addKarte(int spielerID, Karte karte) {
if (kartenCount > getSpielerAnzahl()){
throw new IndexOutOfBoundsException("Karten-Index überschreitet die Anzahl der Spieler");
}else {
this.karten[kartenCount] = karte;
this.spielerID[kartenCount] = spielerID;
kartenCount++;
}
}
/*------------------------------------------*/
// @Overrides
/*------------------------------------------*/
@Override
public String toString() {
String text = "";
for (int i = 0; i < this.karten.length; i++) {
text += this.karten[i].toString();
}
return text;
}
/*------------------------------------------*/
// öffentliche Methodes
/*------------------------------------------*/
/*------------------------------------------*/
// Hilfsmethoden (privat)
/*------------------------------------------*/
}