Versuch Anwendung und Spielerdaten
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
package de.jaujau.daten;
|
||||
|
||||
public enum Ablageort {
|
||||
SPIELER, COMPUTER, ABLAGESTAPEL, ZIESTAPEL
|
||||
SPIELER, COMPUTER, ABLAGESTAPEL, ZIEHSTAPEL
|
||||
}
|
||||
|
@@ -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 + "]";
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@@ -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
|
||||
//
|
||||
@@ -27,6 +36,16 @@ public class Spielerverwaltung {
|
||||
public int getLevel () {
|
||||
return level;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the value of level
|
||||
* @return the value of level
|
||||
*/
|
||||
public String getName () {
|
||||
|
||||
return name;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the value of spieler
|
||||
@@ -65,7 +84,7 @@ public class Spielerverwaltung {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
public Spielerverwaltung () {
|
||||
//Implementieren
|
||||
public Spielerverwaltung() {
|
||||
//Implementieren
|
||||
};
|
||||
}
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
||||
}
|
||||
}
|
||||
|
@@ -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,61 +11,83 @@ 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
|
||||
|
||||
|
||||
//
|
||||
// Accessor methods
|
||||
//
|
||||
/**
|
||||
* 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);
|
||||
|
||||
|
||||
}*/
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@@ -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;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user