Kartenvariable zu Wert geändert, dementsprechend methoden und Tests angepasst
parent
fedf21b3e4
commit
8689110670
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||||
|
}
|
|
@ -20,8 +20,8 @@ public class Magierkarte extends Karte {
|
||||||
private static int magierkartenanzahl = 0;
|
private static int magierkartenanzahl = 0;
|
||||||
// Konstruktoren
|
// Konstruktoren
|
||||||
|
|
||||||
public Magierkarte() {
|
public Magierkarte(int id) {
|
||||||
super();
|
super(id);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@ public class Zahlenkarte extends Karte {
|
||||||
// Attribute jedes Objektes
|
// Attribute jedes Objektes
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
private Kartenfarbe farbe;
|
private Kartenfarbe farbe;
|
||||||
private int kartenNummer;
|
private int wert;
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Konstruktoren (default und spezifische)
|
// Konstruktoren (default und spezifische)
|
||||||
|
@ -31,10 +31,10 @@ public class Zahlenkarte extends Karte {
|
||||||
super();
|
super();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Zahlenkarte(Kartenfarbe farbe, int kartenNummer) {
|
public Zahlenkarte(Kartenfarbe farbe, int wert) {
|
||||||
super();
|
super();
|
||||||
setFarbe(farbe);
|
setFarbe(farbe);
|
||||||
setKartenNummer(kartenNummer);
|
setWert(wert);
|
||||||
|
|
||||||
}
|
}
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
@ -52,12 +52,12 @@ public class Zahlenkarte extends Karte {
|
||||||
return farbe;
|
return farbe;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setKartenNummer(int kartenNummer) {
|
public void setWert(int kartenNummer) {
|
||||||
this.kartenNummer = kartenNummer;
|
this.wert = kartenNummer;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getKartenNummer() {
|
public int getWert() {
|
||||||
return kartenNummer;
|
return wert;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
|
|
@ -6,6 +6,11 @@ written on: 05 / 10 / 2023 at: 23:42
|
||||||
*/
|
*/
|
||||||
package Domain;
|
package Domain;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
import Domain.Enums.Kartenfarbe;
|
||||||
import Domain.Karten.*;
|
import Domain.Karten.*;
|
||||||
|
|
||||||
public class Kartenstapel {
|
public class Kartenstapel {
|
||||||
|
@ -21,6 +26,12 @@ public class Kartenstapel {
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Attribute jedes Objektes
|
// Attribute jedes Objektes
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
private boolean[][] belegung = {
|
||||||
|
{ false, false, false, false, false, false, false, false, false, false, false, false, false, false, false },
|
||||||
|
{ false, false, false, false, false, false, false, false, false, false, false, false, false, false, false },
|
||||||
|
{ false, false, false, false, false, false, false, false, false, false, false, false, false, false, false },
|
||||||
|
{ false, false, false, false, false, false, false, false, false, false, false, false, false, false, false }
|
||||||
|
};
|
||||||
|
|
||||||
private Karte[] kartenStapel = new Karte[60];
|
private Karte[] kartenStapel = new Karte[60];
|
||||||
|
|
||||||
|
@ -29,6 +40,7 @@ public class Kartenstapel {
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
|
||||||
public Kartenstapel() {
|
public Kartenstapel() {
|
||||||
|
mischen();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -74,6 +86,37 @@ public class Kartenstapel {
|
||||||
// Hilfsmethoden (privat)
|
// Hilfsmethoden (privat)
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
|
||||||
|
private void Kartenverteilung() {
|
||||||
|
|
||||||
|
Random r = new Random();
|
||||||
|
List<Karte> karten = new ArrayList<>();
|
||||||
|
while (karten.size() < 60) {
|
||||||
|
int high = 4;
|
||||||
|
int low = 1;
|
||||||
|
int ultra_high = 15;
|
||||||
|
int x = r.nextInt(high - low) + low;
|
||||||
|
int y = r.nextInt(ultra_high - low) + low;
|
||||||
|
if (!belegung[x - 1][y - 1]) {
|
||||||
|
if (y == 1) {
|
||||||
|
karten.add(new Narrenkarte(x * y));
|
||||||
|
} else if (y == 15) {
|
||||||
|
karten.add(new Magierkarte(x * y));
|
||||||
|
} else {
|
||||||
|
if (x == 1) {
|
||||||
|
karten.add(new Zahlenkarte(Kartenfarbe.ZWERG, y));
|
||||||
|
} else if (x == 2) {
|
||||||
|
|
||||||
|
} else if (x == 3) {
|
||||||
|
|
||||||
|
} else if (x == 4) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,6 +55,7 @@ public class Spiel implements Serializable {
|
||||||
this.istBeendet = false;
|
this.istBeendet = false;
|
||||||
this.spielerAmZug = null;
|
this.spielerAmZug = null;
|
||||||
this.runde = 0;
|
this.runde = 0;
|
||||||
|
this.kartenstapel = new Kartenstapel();
|
||||||
};
|
};
|
||||||
/*--------------------------------------------------------*/
|
/*--------------------------------------------------------*/
|
||||||
// statische Methoden
|
// statische Methoden
|
||||||
|
@ -167,6 +168,26 @@ public class Spiel implements Serializable {
|
||||||
System.out.println("Es fehlen " + (3 - this.spieler.size()) + " spieler");
|
System.out.println("Es fehlen " + (3 - this.spieler.size()) + " spieler");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
while (!this.istSpielBeendet()) {
|
||||||
|
System.out.println("Das Spiel wurde gestartet.");
|
||||||
|
|
||||||
|
// Beginn der Runde
|
||||||
|
// Stiche erstellen
|
||||||
|
erstelleStiche(this.runde);
|
||||||
|
// Karten verteilen
|
||||||
|
|
||||||
|
// Runde erhöhen
|
||||||
|
runde++;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Die Karten sind verteilt
|
||||||
|
|
||||||
|
// Für jeden Spieler Karten ausspielen und im Stich speichern
|
||||||
|
|
||||||
|
// ermitteln welcher Spieler gewonnen hat
|
||||||
|
|
||||||
|
// Stich beim Spieler speichern
|
||||||
|
|
||||||
// Gameloop?
|
// Gameloop?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -232,6 +253,8 @@ public class Spiel implements Serializable {
|
||||||
private void updateSpielerAmZug() {
|
private void updateSpielerAmZug() {
|
||||||
if (this.spieler.size() >= 1) {
|
if (this.spieler.size() >= 1) {
|
||||||
this.spielerAmZug = (Spieler) this.spieler.values().toArray()[0];
|
this.spielerAmZug = (Spieler) this.spieler.values().toArray()[0];
|
||||||
|
} else {
|
||||||
|
this.spielerAmZug = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
/*
|
||||||
|
============================================================
|
||||||
|
This is the "RendomTest" file from Author: Philipp Kotte
|
||||||
|
written on: 20 / 10 / 2023 at: 08:26
|
||||||
|
============================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
public class RendomTest {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Random r = new Random();
|
||||||
|
int high = 10;
|
||||||
|
int low = 1;
|
||||||
|
System.out.println(r.nextInt(high - low) + low);
|
||||||
|
}
|
||||||
|
}
|
|
@ -38,10 +38,10 @@ public class ZahlenkarteTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
assertEquals(zm.get(7).getFarbe(), Kartenfarbe.MENSCH);
|
assertEquals(zm.get(7).getFarbe(), Kartenfarbe.MENSCH);
|
||||||
assertEquals(zm.get(7).getKartenNummer(), 7);
|
assertEquals(zm.get(7).getWert(), 7);
|
||||||
|
|
||||||
assertEquals(zm.get(4).getFarbe(), Kartenfarbe.MENSCH);
|
assertEquals(zm.get(4).getFarbe(), Kartenfarbe.MENSCH);
|
||||||
assertEquals(zm.get(4).getKartenNummer(), 4);
|
assertEquals(zm.get(4).getWert(), 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -54,10 +54,10 @@ public class ZahlenkarteTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
assertEquals(ze.get(7).getFarbe(), Kartenfarbe.ELF);
|
assertEquals(ze.get(7).getFarbe(), Kartenfarbe.ELF);
|
||||||
assertEquals(ze.get(7).getKartenNummer(), 7);
|
assertEquals(ze.get(7).getWert(), 7);
|
||||||
|
|
||||||
assertEquals(ze.get(4).getFarbe(), Kartenfarbe.ELF);
|
assertEquals(ze.get(4).getFarbe(), Kartenfarbe.ELF);
|
||||||
assertEquals(ze.get(4).getKartenNummer(), 4);
|
assertEquals(ze.get(4).getWert(), 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -70,10 +70,10 @@ public class ZahlenkarteTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
assertEquals(zz.get(7).getFarbe(), Kartenfarbe.ZWERG);
|
assertEquals(zz.get(7).getFarbe(), Kartenfarbe.ZWERG);
|
||||||
assertEquals(zz.get(7).getKartenNummer(), 7);
|
assertEquals(zz.get(7).getWert(), 7);
|
||||||
|
|
||||||
assertEquals(zz.get(4).getFarbe(), Kartenfarbe.ZWERG);
|
assertEquals(zz.get(4).getFarbe(), Kartenfarbe.ZWERG);
|
||||||
assertEquals(zz.get(4).getKartenNummer(), 4);
|
assertEquals(zz.get(4).getWert(), 4);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -87,9 +87,9 @@ public class ZahlenkarteTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
assertEquals(zr.get(9).getFarbe(), Kartenfarbe.RIESE);
|
assertEquals(zr.get(9).getFarbe(), Kartenfarbe.RIESE);
|
||||||
assertEquals(zr.get(9).getKartenNummer(), 9);
|
assertEquals(zr.get(9).getWert(), 9);
|
||||||
|
|
||||||
assertEquals(zr.get(2).getFarbe(), Kartenfarbe.RIESE);
|
assertEquals(zr.get(2).getFarbe(), Kartenfarbe.RIESE);
|
||||||
assertEquals(zr.get(2).getKartenNummer(), 2);
|
assertEquals(zr.get(2).getWert(), 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue