Versuch Anwendung und Spielerdaten

This commit is contained in:
akarkout
2020-12-09 09:09:46 +01:00
8 changed files with 572 additions and 73 deletions

View File

@@ -1,5 +1,5 @@
package de.jaujau.daten;
public enum Ablageort {
SPIELER, COMPUTER, ABLAGESTAPEL, ZIESTAPEL
SPIELER, COMPUTER, ABLAGESTAPEL, ZIEHSTAPEL
}

View File

@@ -2,11 +2,67 @@ package de.jaujau.daten;
/**
* Class Karte
* Klasse Karte
* Verwaltet die Daten einer Spielkarte
* @author Sebastian Kacza
*/
public class Karte {
private Farbe FARBE;
private Wert WERT;
private Ablageort Ablageort;
/**
* Konstruktor für die Klasse Karte
* Ablageort dird Standartmäßig auf Zielstapel gestezt
* @param f Farbe der Karte
* @param w Wert der Karte
*/
public Karte(Farbe f, Wert w) {
FARBE = f;
WERT = w;
Ablageort = de.jaujau.daten.Ablageort.ZIEHSTAPEL;
}
/**
* Gibt die Farbe der Karte zurück
* @return Farbe der Karte
*/
public Farbe getFARBE() {
return FARBE;
}
/**
* Gibt den Wert einer Karte zurück
* @return Wert der Karte
*/
public Wert getWERT() {
return WERT;
}
/**
* Gibt den Ablageort der Karte zurück
* @return Ablageort der Karte
*/
public Ablageort getAblageort() {
return Ablageort;
}
/**
* Ändert den Ablageoert der Karte
* @param ablageort Neuer Ablageort der Karte
*/
public void setAblageort(Ablageort ablageort) {
Ablageort = ablageort;
}
/**
* Gibt die Eigenschaften der Karte aus Text aus
* !!!Diese Methode ist nur für Debug-Ausgaben notwendig und kann Später entfernt werden!!!
* @return String mit den Karten Eigenschaften
*/
@Override
public String toString() {
return "Karte [FARBE=" + FARBE + ", WERT=" + WERT + ", Ablageort=" + Ablageort + "]";
}
}

View File

@@ -1,12 +1,225 @@
package de.jaujau.daten;
import java.util.ArrayList;
import java.util.Random;
/**
* Class Kartensatz
* Diese Klasse Verwaltet den Kartensatz
* @author Sebastian Kacza
*/
public class Kartensatz {
public Karte kartensatz[];
int letztekarte;
/**
* Konstruktor für den Kartensatz
* Erstellt einen Neuen Kartensatz mit 32 Karten in einem Array
* Die Karten haben dabei die Reihenfolge eines Standart Skat Blattes
*/
public Kartensatz() {
letztekarte = 0;
kartensatz = new Karte[32];
//Standart Skat Kartensatz erstellen
kartensatz[0] = new Karte(Farbe.KARO, Wert.SIEBEN);
kartensatz[1] = new Karte(Farbe.KARO, Wert.ACHT);
kartensatz[2] = new Karte(Farbe.KARO, Wert.NEUN);
kartensatz[3] = new Karte(Farbe.KARO, Wert.ZEHN);
kartensatz[4] = new Karte(Farbe.KARO, Wert.BUBE);
kartensatz[5] = new Karte(Farbe.KARO, Wert.DAME);
kartensatz[6] = new Karte(Farbe.KARO, Wert.KOENING);
kartensatz[7] = new Karte(Farbe.KARO, Wert.ASS);
kartensatz[8] = new Karte(Farbe.HERZ, Wert.SIEBEN);
kartensatz[9] = new Karte(Farbe.HERZ, Wert.ACHT);
kartensatz[10] = new Karte(Farbe.HERZ, Wert.NEUN);
kartensatz[11] = new Karte(Farbe.HERZ, Wert.ZEHN);
kartensatz[12] = new Karte(Farbe.HERZ, Wert.BUBE);
kartensatz[13] = new Karte(Farbe.HERZ, Wert.DAME);
kartensatz[14] = new Karte(Farbe.HERZ, Wert.KOENING);
kartensatz[15] = new Karte(Farbe.HERZ, Wert.ASS);
kartensatz[16] = new Karte(Farbe.PIK, Wert.SIEBEN);
kartensatz[17] = new Karte(Farbe.PIK, Wert.ACHT);
kartensatz[18] = new Karte(Farbe.PIK, Wert.NEUN);
kartensatz[19] = new Karte(Farbe.PIK, Wert.ZEHN);
kartensatz[20] = new Karte(Farbe.PIK, Wert.BUBE);
kartensatz[21] = new Karte(Farbe.PIK, Wert.DAME);
kartensatz[22] = new Karte(Farbe.PIK, Wert.KOENING);
kartensatz[23] = new Karte(Farbe.PIK, Wert.ASS);
kartensatz[24] = new Karte(Farbe.KREUZ, Wert.SIEBEN);
kartensatz[25] = new Karte(Farbe.KREUZ, Wert.ACHT);
kartensatz[26] = new Karte(Farbe.KREUZ, Wert.NEUN);
kartensatz[27] = new Karte(Farbe.KREUZ, Wert.ZEHN);
kartensatz[28] = new Karte(Farbe.KREUZ, Wert.BUBE);
kartensatz[29] = new Karte(Farbe.KREUZ, Wert.DAME);
kartensatz[30] = new Karte(Farbe.KREUZ, Wert.KOENING);
kartensatz[31] = new Karte(Farbe.KREUZ, Wert.ASS);
}
//!!!Es kann noch zu fehler kommen
/**
* Zieht eine Zufällige karte aus dem Ziehstapel für einen bestimmten Spieler und gibt den Karten dem Spieler auf die Hand
* Wenn keine Karten mehr auf dem Ziehstapel sind werden alle Karten vom Ablagestabel auf den Ziehstapel verschoben
* @param spieler Spieler der die Karte auf die Hand bekommen soll
*/
public boolean ziehen(Spieler spieler) {
//System.out.println("Start Ziehen");
//Ziehstapel Prüfen
int ZiehstapelAnzahl = getZiehstapelAnzahl();
if(ZiehstapelAnzahl < 1) {
//Alle Karten vom Ablagestapel ausßer letze auf den Ziehstapel verschieben
for(int i = 0; i < 32; i++) {
if((kartensatz[i].getAblageort() == Ablageort.ABLAGESTAPEL) && (i != letztekarte)) {
kartensatz[i].setAblageort(Ablageort.ZIEHSTAPEL);
}
}
}
ZiehstapelAnzahl = getZiehstapelAnzahl();
//System.out.println("ZiehStapel Anzahl " + ZiehstapelAnzahl);
if(ZiehstapelAnzahl > 0) {
//Ziekarte bestimmen und
//Zienummer auswählen
//System.out.println("Nummer wählen");
Random random = new Random();
int auswahl = random.nextInt(ZiehstapelAnzahl);
//System.out.println("Karte Ziehen " + auswahl);
//Wenn Karten auf dem Ziehspabel verfügbar sind
int ZiehstapelIndex = 0;
for(int i = 0; i < 32; i++) {
//System.out.println("ZielStapelIndex " + ZiehstapelIndex);
if(kartensatz[i].getAblageort() == Ablageort.ZIEHSTAPEL) {
//System.out.println("Suche " + auswahl + " ZieIndex " + ZiehstapelIndex + " KartenIndex " + i);
if(auswahl == ZiehstapelIndex) {
//System.out.println("Ziehe Karte " + i + " " + kartensatz[i].toString());
//Karte im Ziehstaple ist die die Ausgewählt wurde
if(spieler == Spieler.SPIELER) {
kartensatz[i].setAblageort(Ablageort.SPIELER);
}
if(spieler == Spieler.COMPUTER) {
kartensatz[i].setAblageort(Ablageort.COMPUTER);
}
return true;
}
ZiehstapelIndex++;
}
}
}
else {
System.out.println("Keine Karten zum ziehen verfügbar!");
return false;
}
return false;
}
/**
* legt die Karte mit der KartenID x auf den Ablagestapel
* Speicher die KartenID der zuletzgelegt Karte in "letztekarte"
* @param kartenid ID der Karte die Abgeget werden Soll
*/
public void ablegen(int kartenID) {
if((kartenID >= 0) && (kartenID < 32)){
kartensatz[kartenID].setAblageort(Ablageort.ABLAGESTAPEL);
letztekarte = kartenID;
}
}
//Funktion geprüft
/**
* gibt die ID der Kartezurück die als letztes auf dem Ablagestabel gelegt wurde
* @return ID der zuletzt gelegten Karte
*/
public int getletzteKarte() {
return letztekarte;
}
//Funktion geprüft
/**
* Gibt die Karten Indexe einer Spieler Hand zuück
* Wenn keine Karten auf der Hand liegen wird eine Leere ArrayList zurückgegeben
* @param spieler Spieler
* @return ArrayList von Integer welche die KatrenIndexe enthält,
*/
public ArrayList<Integer> getHand(Spieler spieler) {
ArrayList<Integer> hand = new ArrayList<Integer>();
for(int i = 0; i < 32; i++) {
//Für Spieler
if(spieler == Spieler.SPIELER) {
if(kartensatz[i].getAblageort() == Ablageort.SPIELER) {
hand.add(i);
}
}
//Für Computer
if(spieler == Spieler.COMPUTER) {
if(kartensatz[i].getAblageort() == Ablageort.COMPUTER) {
hand.add(i);
}
}
}
return hand;
}
//Funktion geprüft
/**
* Gibt eine Karte aus dem Kartensatz zurück
* @param kartenid ID Der Karte (0 - 31)
* @return Karte auf dem Kartensatz mit der ID x
*/
public Karte getKarte(int kartenID) {
if((kartenID >= 0) && (kartenID < 32)){
return kartensatz[kartenID];
}
else {
return null;
}
}
//Funktion geprüft
/**
* Legt die Farbe fest die als nächstes auf den Ablagestapel gelegt werden muss
* Dafür wird der "Wünscher" (Bube) der jeweiligen Farbe als letze Karte auf dem Ablegestabel eingetragen
* @param farbe Farbe die sich gewünscht wird
*/
public void SetWunschfarbe(Farbe farbe) {
if(farbe == Farbe.KARO) {
letztekarte = 4; //Karo Bube
}
else if (farbe == Farbe.HERZ) {
letztekarte = 12; //Kerz Bube
}
else if (farbe == Farbe.PIK) {
letztekarte = 20; //Pik Bube
}
else if (farbe == Farbe.KREUZ) {
letztekarte = 28; //Kreuz Bube
}
}
//Funktion geprüft
/**
* Dies Funktion Prüft ob sich auf dem Ziehstapel noch mindestes eine Karte Befindet
* Wird nur Klassenintern Verwendet
* @return true wenn keine Karten Vorhanden, false wenn kein Karte vorhanden
*/
private int getZiehstapelAnzahl() {
int anzahl = 0;
for(Karte karte: kartensatz) {
if(karte.getAblageort() == Ablageort.ZIEHSTAPEL) {
anzahl++;
}
}
return anzahl;
}
}

View File

@@ -6,8 +6,17 @@ package de.jaujau.daten;
public class Spielerverwaltung {
private int level;
private Spielerdaten spieler;
private String name = "Mark Zuckerberg"; //Testeintrag
/**
* arraylist von Spieler
*/
//
// Constructors
//
//
// Methods
//
@@ -28,6 +37,16 @@ public class Spielerverwaltung {
return level;
}
/**
* Get the value of level
* @return the value of level
*/
public String getName () {
return name;
}
/**
* Set the value of spieler
* arraylist von Spieler
@@ -65,7 +84,7 @@ public class Spielerverwaltung {
throw new UnsupportedOperationException();
}
public Spielerverwaltung () {
//Implementieren
public Spielerverwaltung() {
//Implementieren
};
}

View File

@@ -1,22 +1,33 @@
package de.jaujau.gui;
import java.util.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
/**
* Class GUI
*/
public class GUI {
public class GUI extends JFrame implements ActionListener{
//
// Fields
//
private static final long serialVersionUID = 1L;
//
// Constructors
//
public GUI () { };
public GUI () { }
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
}
//
// Methods

View File

@@ -16,6 +16,12 @@ import java.awt.Dimension;
import javax.swing.JLabel;
import javax.swing.ImageIcon;
import javax.swing.SwingConstants;
import javax.swing.SwingUtilities;
import de.jaujau.daten.Spielerverwaltung;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.image.BufferedImage;
@@ -25,51 +31,46 @@ import java.net.URL;
import java.awt.Component;
import java.awt.Font;
public class Menue_GUI {
private JFrame frame;
public class Menue_GUI extends GUI implements ActionListener {
/**
* Launch the application.
*
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Menue_GUI window = new Menue_GUI();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
private static final long serialVersionUID = 1L;
private Spielerverwaltung spielerverwaltung;
private JPanel contentPane;
private boolean shown = true;
/**
* Create the application.
* @param speicherung
*/
public Menue_GUI() {
initialize();
}
public Menue_GUI(Spielerverwaltung speicherung) {
this.spielerverwaltung = speicherung;
speicherung.getSpieler();
System.out.println("Men<EFBFBD>-GUI aufgerufen");
initialize(this.spielerverwaltung);
}
/**
* Initialize the contents of the frame.
*/
//Test GUI f<>r JauJau
private void initialize() {
frame = new JFrame();
frame.setBounds(100, 100, 783, 762);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(new BorderLayout(0, 0));
private void initialize(Spielerverwaltung speicherung) {
this.spielerverwaltung = speicherung;
setBounds(100, 100, 963, 762);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().setLayout(new BorderLayout(0, 0));
setVisible(true);
JPanel panel_top = new JPanel();
panel_top.setPreferredSize(new Dimension(200, 100));
panel_top.setBackground(new Color(0, 0, 128));
frame.getContentPane().add(panel_top, BorderLayout.NORTH);
this.getContentPane().add(panel_top, BorderLayout.NORTH);
panel_top.setLayout(new BorderLayout(0, 0));
JLabel lblNewLabel_1 = new JLabel("JauJau");
@@ -82,42 +83,158 @@ public class Menue_GUI {
panel_top.add(lblNewLabel_1, BorderLayout.CENTER);
JPanel panel_side = new JPanel();
panel_side.setBackground(new Color(100, 149, 237));
panel_side.setPreferredSize(new Dimension(200, 400));
frame.getContentPane().add(panel_side, BorderLayout.WEST);
panel_side.setBackground(new Color(0, 51, 153));
panel_side.setPreferredSize(new Dimension(270, 400));
this.getContentPane().add(panel_side, BorderLayout.WEST);
panel_side.setLayout(new BorderLayout(0, 0));
JPanel panel_buttons = new JPanel();
panel_buttons.setBackground(new Color(0, 0, 128));
panel_buttons.setPreferredSize(new Dimension(50, 200));
panel_side.add(panel_buttons, BorderLayout.WEST);
panel_buttons.setLayout(new BorderLayout(0, 0));
panel_buttons.setLayout(null);
JPanel panel = new JPanel();
panel.setBounds(0, 0, 50, 50);
panel.setBackground(new Color(0, 0, 153));
panel.setPreferredSize(new Dimension(50, 50));
panel_buttons.add(panel, BorderLayout.NORTH);
panel_buttons.add(panel);
panel.setLayout(new BorderLayout(0, 0));
JLabel lblNewLabel = new JLabel("");
lblNewLabel.addMouseListener(new MouseAdapter() {
JLabel minimize = new JLabel("");
minimize.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
panel_side.setVisible(false);
if(shown == true) {
panel_side.setPreferredSize(new Dimension(50, panel_side.getHeight()));
System.out.println("Update GUI 50");
panel_side.revalidate();
panel_side.repaint();
shown = false;
}else{
panel_side.setPreferredSize(new Dimension(270, panel_side.getHeight()));
System.out.println("Update GUI 270");
panel_side.revalidate();
panel_side.repaint();
shown = true;
}
}
});
lblNewLabel.setPreferredSize(new Dimension(50, 50));
lblNewLabel.setAlignmentX(Component.CENTER_ALIGNMENT);
lblNewLabel.setHorizontalTextPosition(SwingConstants.CENTER);
lblNewLabel.setHorizontalAlignment(SwingConstants.CENTER);
minimize.setPreferredSize(new Dimension(50, 50));
minimize.setAlignmentX(Component.CENTER_ALIGNMENT);
minimize.setHorizontalTextPosition(SwingConstants.CENTER);
minimize.setHorizontalAlignment(SwingConstants.CENTER);
ImageIcon imageIcon = new ImageIcon(new ImageIcon("C:\\Users\\Elmar\\Pictures\\exit.png").getImage().getScaledInstance(40, 40, Image.SCALE_DEFAULT));
lblNewLabel.setIcon(imageIcon);
panel.add(lblNewLabel, BorderLayout.CENTER);
minimize.setIcon(imageIcon);
panel.add(minimize, BorderLayout.CENTER);
JPanel buttons = new JPanel();
buttons.setBackground(new Color(51, 51, 153));
panel_side.add(buttons, BorderLayout.CENTER);
buttons.setLayout(new BorderLayout(0, 0));
JPanel panel_4 = new JPanel();
panel_4.setBackground(new Color(0, 51, 153));
buttons.add(panel_4, BorderLayout.CENTER);
panel_4.setLayout(null);
JLabel start = new JLabel("Spiel starten");
start.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
//Spiel starten Spiel_GUI und schlie<69>e Menue_GUI (wechsel) und Spiellogikaufrufen
System.out.println("Start Game");
}
});
start.setBackground(Color.WHITE);
start.setForeground(Color.WHITE);
start.setFont(new Font("Segoe UI", Font.PLAIN, 26));
start.setHorizontalAlignment(SwingConstants.CENTER);
start.setAlignmentX(Component.CENTER_ALIGNMENT);
start.setBounds(0, 0, 220, 31);
panel_4.add(start);
JLabel score = new JLabel("Highscore");
score.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
//Rechtes Panel <20>ndern und Highscore aus jaujaudaten abrufen.
System.out.println("Highscore");
}
});
score.setBackground(Color.WHITE);
score.setForeground(Color.WHITE);
score.setFont(new Font("Segoe UI", Font.PLAIN, 26));
score.setHorizontalAlignment(SwingConstants.CENTER);
score.setAlignmentX(Component.CENTER_ALIGNMENT);
score.setBounds(0, 42, 220, 31);
panel_4.add(score);
JLabel settings = new JLabel("Einstellungen");
settings.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
//Rechtes Panel <20>ndern und Einstellungen aufrufen
System.out.println("Highscore");
}
});
settings.setBackground(Color.WHITE);
settings.setForeground(Color.WHITE);
settings.setFont(new Font("Segoe UI", Font.PLAIN, 26));
settings.setHorizontalAlignment(SwingConstants.CENTER);
settings.setAlignmentX(Component.CENTER_ALIGNMENT);
settings.setBounds(0, 84, 220, 31);
panel_4.add(settings);
JLabel help = new JLabel("Hilfe");
help.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
//Starte Hilfe GUI Menue_GUI bleibt ge<67>ffnet
System.out.println("Hilfe");
}
});
help.setBackground(Color.WHITE);
help.setForeground(Color.WHITE);
help.setFont(new Font("Segoe UI", Font.PLAIN, 26));
help.setHorizontalAlignment(SwingConstants.CENTER);
help.setAlignmentX(Component.CENTER_ALIGNMENT);
help.setBounds(0, 126, 220, 31);
panel_4.add(help);
JPanel panel_main = new JPanel();
panel_main.setPreferredSize(new Dimension(600, 600));
frame.getContentPane().add(panel_main, BorderLayout.CENTER);
this.getContentPane().add(panel_main, BorderLayout.CENTER);
panel_main.setLayout(new BoxLayout(panel_main, BoxLayout.X_AXIS));
JPanel panel_1 = new JPanel();
panel_1.setBackground(new Color(102, 153, 255));
panel_main.add(panel_1);
panel_1.setLayout(new BorderLayout(0, 0));
JPanel panel_2 = new JPanel();
panel_2.setBackground(new Color(51, 153, 204));
panel_1.add(panel_2, BorderLayout.CENTER);
panel_2.setLayout(new BorderLayout(0, 0));
JLabel lblNewLabel_2 = new JLabel("Name: ");
lblNewLabel_2.setForeground(Color.WHITE);
lblNewLabel_2.setFont(new Font("Segoe UI", Font.PLAIN, 26));
lblNewLabel_2.setBackground(new Color(51, 153, 204));
panel_2.add(lblNewLabel_2, BorderLayout.NORTH);
lblNewLabel_2.setHorizontalAlignment(SwingConstants.CENTER);
lblNewLabel_2.setVerticalAlignment(SwingConstants.TOP);
lblNewLabel_2.setText("Name: " + speicherung.getName());
JPanel panel_3 = new JPanel();
panel_3.setBackground(new Color(51, 153, 204));
panel_2.add(panel_3, BorderLayout.CENTER);
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
}
}

View File

@@ -3,6 +3,7 @@ package de.jaujau.spiellogik;
import de.jaujau.daten.Spielerverwaltung;
import de.jaujau.daten.Texturenpakete;
import de.jaujau.gui.GUI;
import de.jaujau.gui.Menue_GUI;
public class Anwendung {
@@ -10,7 +11,17 @@ public class Anwendung {
private Spiel aktuellesSpiel;
private Texturenpakete texturenpakete;
private Spielerverwaltung speicherung;
private static GUI gui;
private static Menue_GUI gui;
//
// Constructors
//
public Anwendung() {
speicherung = new Spielerverwaltung();
gui = new Menue_GUI(speicherung);
};
//
// Methods
@@ -19,52 +30,64 @@ public class Anwendung {
//
/**
* Set the value of aktuellesSpiel
*
* @param newVar the new value of aktuellesSpiel
*/
public void setAktuellesSpiel (Spiel newSpiel) {
public void setAktuellesSpiel(Spiel newSpiel) {
aktuellesSpiel = newSpiel;
}
/**
* Get the value of aktuellesSpiel
*
* @return the value of aktuellesSpiel
*/
public Spiel getAktuellesSpiel () {
public Spiel getAktuellesSpiel() {
return aktuellesSpiel;
}
/**
* Set the value of texturenpakete
*
* @param newVar the new value of texturenpakete
*/
public void setTexturenpakete (Texturenpakete newTexture) {
public void setTexturenpakete(Texturenpakete newTexture) {
texturenpakete = newTexture;
}
/**
* Get the value of texturenpakete
*
* @return the value of texturenpakete
*/
public Texturenpakete getTexturenpakete () {
public Texturenpakete getTexturenpakete() {
return texturenpakete;
}
/**
* Set the value of speicherung
*
* @param newVar the new value of speicherung
*/
public void setSpeicherung (Spielerverwaltung newVer) {
public void setSpeicherung(Spielerverwaltung newVer) {
speicherung = newVer;
}
/**
* Get the value of speicherung
*
* @return the value of speicherung
*/
public Spielerverwaltung getSpeicherung () {
public Spielerverwaltung getSpeicherung() {
return speicherung;
}
/**
* Set the value of gui
*
* @param newVar the new value of gui
*/
public static void setGui (GUI newVar) {
public static void setGui(Menue_GUI newVar) {
gui = newVar;
}
@@ -80,15 +103,30 @@ public class Anwendung {
// Other methods
//
public static void openGui() { // GUI oeffnen!
gui = new GUI();
setGui(gui);
getGui();
Anwendung jaujau = new Anwendung();
jaujau.gui.setVisible(true);
}
/**
*/
public static void main(String[] args){
openGui();
//
// Other methods
//
/**
* Launch the application.
*/
/*public static void main(String[] args)
{
System.out.println("Programm gestartet");
Anwendung jaujau = new Anwendung();
jaujau.gui.setVisible(true);
}*/
}
}

View File

@@ -1,8 +1,9 @@
package de.jaujau.spiellogik;
import java.util.*;
import de.jaujau.daten.Farbe;
import de.jaujau.daten.Kartensatz;
import de.jaujau.daten.Spieler;
import de.jaujau.daten.Wert;
/**
@@ -10,7 +11,51 @@ import de.jaujau.daten.Kartensatz;
*/
public class Spiel {
private Spieler spieler;
private Spieler amZug;
private boolean aussetzen;
private boolean zwei_ziehen;
private Kartensatz kartensatz;
private void spiel() {
}
private void zug(Spieler name) {
}
private boolean pruefeMoeglichkeitLegen(int Kartenindex) { //Nur Struktur<75>berlegung, W<>NSCHER?
Farbe legenFarbe;
Wert legenWert;
Farbe liegtFarbe;
Wert liegtWert;
legenFarbe = kartensatz.getKarte(Kartenindex).getFARBE();
legenWert = kartensatz.getKarte(Kartenindex).getWERT();
liegtFarbe = kartensatz.getKarte(kartensatz.getletzteKarte()).getFARBE();
liegtWert = kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT();
if(liegtWert == Wert.SIEBEN && legenWert == Wert.SIEBEN) {
return true;
}
if(liegtWert == Wert.ACHT && legenWert == Wert.ACHT) {
return true;
}
if(!aussetzen && !zwei_ziehen) {
if(legenFarbe == liegtFarbe) {
return true;
}
if(legenWert == liegtWert) {
return true;
}
}
return false;
}
private boolean pruefeMoeglichkeitZiehen(int Kartenindex) {
if(kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT() == Wert.ACHT) {
return false;
}
return true;
}
}