Merge branch 'patch-1' of https://gitlab.imn.htwk-leipzig.de/weicker/inb1-a-jaujau.git into patch-1
This commit is contained in:
@@ -10,6 +10,7 @@ import java.util.Random;
|
|||||||
public class Kartensatz {
|
public class Kartensatz {
|
||||||
private Karte kartensatz[];
|
private Karte kartensatz[];
|
||||||
private int letztekarte;
|
private int letztekarte;
|
||||||
|
private boolean debug;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Konstruktor für den Kartensatz
|
* Konstruktor für den Kartensatz
|
||||||
@@ -19,6 +20,7 @@ public class Kartensatz {
|
|||||||
*/
|
*/
|
||||||
public Kartensatz() {
|
public Kartensatz() {
|
||||||
|
|
||||||
|
debug = true;
|
||||||
kartensatz = new Karte[32];
|
kartensatz = new Karte[32];
|
||||||
|
|
||||||
//Standart Skat Kartensatz erstellen
|
//Standart Skat Kartensatz erstellen
|
||||||
@@ -116,7 +118,7 @@ public class Kartensatz {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
System.out.println("Keine Karten zum ziehen verfügbar!");
|
if(debug)System.out.println("Keine Karten zum ziehen verfügbar!");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@@ -42,6 +42,7 @@ public class Texturenpaket {
|
|||||||
protected String name; //Protektet weil die abgeleitet Klasse TexturenpaketIntern auf die Werte zugreifen können muss
|
protected String name; //Protektet weil die abgeleitet Klasse TexturenpaketIntern auf die Werte zugreifen können muss
|
||||||
protected int level;
|
protected int level;
|
||||||
private final String pfad;
|
private final String pfad;
|
||||||
|
private boolean debug;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -49,6 +50,7 @@ public class Texturenpaket {
|
|||||||
* @param Pfad zu der Zip-Datei des Texturenpaketes
|
* @param Pfad zu der Zip-Datei des Texturenpaketes
|
||||||
*/
|
*/
|
||||||
public Texturenpaket(String Pfad) {
|
public Texturenpaket(String Pfad) {
|
||||||
|
debug = true;
|
||||||
name = "Nicht geladen";
|
name = "Nicht geladen";
|
||||||
level = 0;
|
level = 0;
|
||||||
pfad = Pfad;
|
pfad = Pfad;
|
||||||
@@ -60,7 +62,7 @@ public class Texturenpaket {
|
|||||||
* @return Paket vollständig geladen, true/false
|
* @return Paket vollständig geladen, true/false
|
||||||
*/
|
*/
|
||||||
public boolean ladePacket() {
|
public boolean ladePacket() {
|
||||||
System.out.println("TEXTURENPAKET: Lade Paket");
|
if(debug)System.out.println("TEXTURENPAKET: Lade Paket");
|
||||||
if(testePaket()) {
|
if(testePaket()) {
|
||||||
//Paket ist OK
|
//Paket ist OK
|
||||||
|
|
||||||
@@ -82,12 +84,12 @@ public class Texturenpaket {
|
|||||||
//Name Auslesen
|
//Name Auslesen
|
||||||
if(Spalte[0].equals("name")) {
|
if(Spalte[0].equals("name")) {
|
||||||
name = Spalte[1];
|
name = Spalte[1];
|
||||||
System.out.println("TEXTURENPAKET: Name: " + name);
|
if(debug)System.out.println("TEXTURENPAKET: Name: " + name);
|
||||||
}
|
}
|
||||||
//Level Auslesen
|
//Level Auslesen
|
||||||
if(Spalte[0].equals("level")) {
|
if(Spalte[0].equals("level")) {
|
||||||
level = Integer.parseInt(Spalte[1]);
|
level = Integer.parseInt(Spalte[1]);
|
||||||
System.out.println("TEXTURENPAKET: Level: " + level);
|
if(debug)System.out.println("TEXTURENPAKET: Level: " + level);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -166,7 +168,7 @@ public class Texturenpaket {
|
|||||||
* @return Paket vollständig, true/false
|
* @return Paket vollständig, true/false
|
||||||
*/
|
*/
|
||||||
private boolean testePaket() {
|
private boolean testePaket() {
|
||||||
System.out.println("TEXTURENPAKET: Paket auf Fehler untersuchen:");
|
if(debug)System.out.println("TEXTURENPAKET: Paket auf Fehler untersuchen:");
|
||||||
//Testen ob Zip-Datei vorhanden und lesabar ist
|
//Testen ob Zip-Datei vorhanden und lesabar ist
|
||||||
File zipDatei = new File(pfad);
|
File zipDatei = new File(pfad);
|
||||||
if(zipDatei.exists() || zipDatei.canRead()) {
|
if(zipDatei.exists() || zipDatei.canRead()) {
|
||||||
@@ -184,7 +186,7 @@ public class Texturenpaket {
|
|||||||
while(scanner.hasNext()) {
|
while(scanner.hasNext()) {
|
||||||
//Prüfen ob Konfigurations Datei die Einträge "name" und "level" enthält
|
//Prüfen ob Konfigurations Datei die Einträge "name" und "level" enthält
|
||||||
String Zeile = scanner.nextLine();
|
String Zeile = scanner.nextLine();
|
||||||
System.out.println("TEXTURENPAKET: Konfigzeile:" + Zeile);
|
if(debug)System.out.println("TEXTURENPAKET: Konfigzeile:" + Zeile);
|
||||||
if(Zeile.contains("name:")) {
|
if(Zeile.contains("name:")) {
|
||||||
PaketName = true;
|
PaketName = true;
|
||||||
}
|
}
|
||||||
@@ -194,7 +196,7 @@ public class Texturenpaket {
|
|||||||
}
|
}
|
||||||
scanner.close();
|
scanner.close();
|
||||||
if(!PaketName || !PaketLevel) {
|
if(!PaketName || !PaketLevel) {
|
||||||
System.out.println("TEXTURENPAKET: Paket Konfiguration fehlerhaft");
|
if(debug)System.out.println("TEXTURENPAKET: Paket Konfiguration fehlerhaft");
|
||||||
paketDatei.close();
|
paketDatei.close();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -205,10 +207,10 @@ public class Texturenpaket {
|
|||||||
InputStream eingabeStromTextur = paketDatei.getInputStream(zipInhaltTextur);
|
InputStream eingabeStromTextur = paketDatei.getInputStream(zipInhaltTextur);
|
||||||
Image bild = ImageIO.read(eingabeStromTextur);
|
Image bild = ImageIO.read(eingabeStromTextur);
|
||||||
if(bild == null) {
|
if(bild == null) {
|
||||||
System.out.println("TEXTURENPAKET: Datei: " + i + ".png nicht gefunden");
|
if(debug)System.out.println("TEXTURENPAKET: Datei: " + i + ".png nicht gefunden");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
System.out.println("TEXTURENPAKET: Datei: " + i + ".png OK!");
|
if(debug)System.out.println("TEXTURENPAKET: Datei: " + i + ".png OK!");
|
||||||
}
|
}
|
||||||
|
|
||||||
paketDatei.close();
|
paketDatei.close();
|
||||||
@@ -229,7 +231,7 @@ public class Texturenpaket {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Alles OK
|
//Alles OK
|
||||||
System.out.println("TEXTURENPAKET: Texturen Paket ist OK");
|
if(debug)System.out.println("TEXTURENPAKET: Texturen Paket ist OK");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -12,13 +12,16 @@ public class Texturenpakete {
|
|||||||
private ArrayList<Texturenpaket> TexturenpaketListe;
|
private ArrayList<Texturenpaket> TexturenpaketListe;
|
||||||
private BufferedImage Texturen[];
|
private BufferedImage Texturen[];
|
||||||
private int AktivesPaket;
|
private int AktivesPaket;
|
||||||
|
private boolean debug;
|
||||||
|
|
||||||
|
|
||||||
public Texturenpakete(){
|
public Texturenpakete(){
|
||||||
|
debug = true;
|
||||||
|
|
||||||
TexturenpaketListe = new ArrayList<Texturenpaket>();
|
TexturenpaketListe = new ArrayList<Texturenpaket>();
|
||||||
|
|
||||||
//Hinzufügen eines Internen Texturenpaketes
|
//Hinzufügen eines Internen Texturenpaketes
|
||||||
TexturenpaketListe.add(new TexturenpaketIntern("/img/texturen/standart", "JauJau Standart Texturen Französisch", 0));
|
TexturenpaketListe.add(new TexturenpaketIntern("/img/texturen/standart", "JauJau Französisch", 0));
|
||||||
|
|
||||||
//Internes Texturenpaket als Aktiv festlegen
|
//Internes Texturenpaket als Aktiv festlegen
|
||||||
setAktivesPaket(0);
|
setAktivesPaket(0);
|
||||||
@@ -80,7 +83,7 @@ public class Texturenpakete {
|
|||||||
if((PaketNr >= 0) && (PaketNr < TexturenpaketListe.size())) {
|
if((PaketNr >= 0) && (PaketNr < TexturenpaketListe.size())) {
|
||||||
AktivesPaket = PaketNr;
|
AktivesPaket = PaketNr;
|
||||||
Texturen = TexturenpaketListe.get(PaketNr).getTexturen();
|
Texturen = TexturenpaketListe.get(PaketNr).getTexturen();
|
||||||
System.out.println("TEXTURENPAKETE: Paket (" + PaketNr + ") '" + TexturenpaketListe.get(PaketNr).getName() + "' aktiv gesetzt!");
|
if(debug)System.out.println("TEXTURENPAKETE: Paket (" + PaketNr + ") '" + TexturenpaketListe.get(PaketNr).getName() + "' aktiv gesetzt!");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@@ -98,7 +101,7 @@ public class Texturenpakete {
|
|||||||
Texturenpaket NeuesPaket = new Texturenpaket(Pfad);
|
Texturenpaket NeuesPaket = new Texturenpaket(Pfad);
|
||||||
if(NeuesPaket.ladePacket()) {
|
if(NeuesPaket.ladePacket()) {
|
||||||
TexturenpaketListe.add(NeuesPaket);
|
TexturenpaketListe.add(NeuesPaket);
|
||||||
System.out.println("TEXTURENPAKETE: Paket '" + NeuesPaket.getName() + "' hinzugfügt!");
|
if(debug)System.out.println("TEXTURENPAKETE: Paket '" + NeuesPaket.getName() + "' hinzugfügt!");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -119,4 +122,16 @@ public class Texturenpakete {
|
|||||||
return Texturen[32];
|
return Texturen[32];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Prüft ob mit dem Aktuellen level das akteulle Texturenpaket genutzet werden kann
|
||||||
|
* Wenn das nicht zutrifft wird das erste Standart Paket genutzt
|
||||||
|
* @param Level des aktuellen Spielers
|
||||||
|
*/
|
||||||
|
public void pruefeLevel(int Level) {
|
||||||
|
if(TexturenpaketListe.get(AktivesPaket).getLevel() > Level) {
|
||||||
|
setAktivesPaket(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -40,7 +40,7 @@ public class Dashboard_GUI extends JPanel{
|
|||||||
Spielerverwaltung spielerverwaltung = new Spielerverwaltung();
|
Spielerverwaltung spielerverwaltung = new Spielerverwaltung();
|
||||||
private final JPanel panel = new JPanel();
|
private final JPanel panel = new JPanel();
|
||||||
private final JPanel panel_1 = new JPanel();
|
private final JPanel panel_1 = new JPanel();
|
||||||
private JComboBox<String> comboBox = new JComboBox<String>();
|
private JComboBox<String> spielername = new JComboBox<String>();
|
||||||
private final JPanel panel_2 = new JPanel();
|
private final JPanel panel_2 = new JPanel();
|
||||||
private final JLabel lblNewLabel_1 = new JLabel("Entwickler: Sebastian, Moritz, Fabian, Aladin, Elmar");
|
private final JLabel lblNewLabel_1 = new JLabel("Entwickler: Sebastian, Moritz, Fabian, Aladin, Elmar");
|
||||||
private final JPanel spielfeld = new JPanel();
|
private final JPanel spielfeld = new JPanel();
|
||||||
@@ -69,6 +69,10 @@ public class Dashboard_GUI extends JPanel{
|
|||||||
private final JLabel label_final = new JLabel("Spiel beendet");
|
private final JLabel label_final = new JLabel("Spiel beendet");
|
||||||
private final JScrollPane gegnerkartenpane = new JScrollPane();
|
private final JScrollPane gegnerkartenpane = new JScrollPane();
|
||||||
private final JPanel gegnerkarten = new JPanel();
|
private final JPanel gegnerkarten = new JPanel();
|
||||||
|
private final JButton getname = new JButton("setzen");
|
||||||
|
private final JPanel panel_3 = new JPanel();
|
||||||
|
private final JLabel level_beschreibung = new JLabel("Aktuelles Level:");
|
||||||
|
private final JLabel level_count = new JLabel("0");
|
||||||
|
|
||||||
//Moving Image
|
//Moving Image
|
||||||
|
|
||||||
@@ -232,10 +236,29 @@ public class Dashboard_GUI extends JPanel{
|
|||||||
|
|
||||||
JLabel lblNewLabel = new JLabel("Spielername:");
|
JLabel lblNewLabel = new JLabel("Spielername:");
|
||||||
panel.add(lblNewLabel);
|
panel.add(lblNewLabel);
|
||||||
comboBox.setMinimumSize(new Dimension(60, 22));
|
spielername.setMinimumSize(new Dimension(60, 22));
|
||||||
comboBox.setEditable(true);
|
spielername.setEditable(true);
|
||||||
panel.add(comboBox);
|
panel.add(spielername);
|
||||||
|
panel.add(getname);
|
||||||
|
getname.addMouseListener(new MouseAdapter() {
|
||||||
|
@Override
|
||||||
|
public void mouseClicked(MouseEvent e) {
|
||||||
|
getspielername();
|
||||||
|
}
|
||||||
|
});
|
||||||
start.add(panel_1, BorderLayout.CENTER);
|
start.add(panel_1, BorderLayout.CENTER);
|
||||||
|
panel_1.setLayout(new BorderLayout(0, 0));
|
||||||
|
panel_3.setPreferredSize(new Dimension(100, 50));
|
||||||
|
|
||||||
|
panel_1.add(panel_3, BorderLayout.NORTH);
|
||||||
|
level_beschreibung.setHorizontalTextPosition(SwingConstants.CENTER);
|
||||||
|
level_beschreibung.setHorizontalAlignment(SwingConstants.CENTER);
|
||||||
|
level_beschreibung.setFont(new Font("Tahoma", Font.PLAIN, 22));
|
||||||
|
|
||||||
|
panel_3.add(level_beschreibung);
|
||||||
|
level_count.setFont(new Font("Tahoma", Font.PLAIN, 22));
|
||||||
|
|
||||||
|
panel_3.add(level_count);
|
||||||
|
|
||||||
start.add(panel_2, BorderLayout.SOUTH);
|
start.add(panel_2, BorderLayout.SOUTH);
|
||||||
|
|
||||||
@@ -254,6 +277,7 @@ public class Dashboard_GUI extends JPanel{
|
|||||||
public void showgame(Spiel Spiel){
|
public void showgame(Spiel Spiel){
|
||||||
//Neues Spiel wird übergeben
|
//Neues Spiel wird übergeben
|
||||||
aktuellesSpiel = Spiel;
|
aktuellesSpiel = Spiel;
|
||||||
|
texturenpakete.pruefeLevel(spielerverwaltung.getLevel());
|
||||||
System.out.println("DASHBOARD: Game darstellen");
|
System.out.println("DASHBOARD: Game darstellen");
|
||||||
cl.show(panelCont, "2");
|
cl.show(panelCont, "2");
|
||||||
showwunsch(false);
|
showwunsch(false);
|
||||||
@@ -284,9 +308,9 @@ public class Dashboard_GUI extends JPanel{
|
|||||||
|
|
||||||
|
|
||||||
public void renderStart(){
|
public void renderStart(){
|
||||||
comboBox.removeAllItems();
|
spielername.removeAllItems();
|
||||||
for(int i = 0; i<spielerverwaltung.gethighscoreTabelle().length; i++) {
|
for(int i = 0; i<spielerverwaltung.gethighscoreTabelle().length; i++) {
|
||||||
comboBox.addItem(spielerverwaltung.gethighscoreTabelle()[i][0]);
|
spielername.addItem(spielerverwaltung.gethighscoreTabelle()[i][0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -469,6 +493,12 @@ public class Dashboard_GUI extends JPanel{
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getspielername(){
|
||||||
|
System.out.println("DASHBOARD_GUI: " + spielername.getEditor().getItem());
|
||||||
|
|
||||||
|
return (String) (spielername.getEditor().getItem());
|
||||||
|
}
|
||||||
|
|
||||||
public void gewonnen(Spieler spieler) {
|
public void gewonnen(Spieler spieler) {
|
||||||
|
|
||||||
if(spieler == SPIELER) {
|
if(spieler == SPIELER) {
|
||||||
|
@@ -16,8 +16,13 @@ import de.jaujau.spiellogik.Spiel;
|
|||||||
|
|
||||||
import java.awt.event.MouseAdapter;
|
import java.awt.event.MouseAdapter;
|
||||||
import java.awt.event.MouseEvent;
|
import java.awt.event.MouseEvent;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
import javax.imageio.ImageIO;
|
||||||
import javax.swing.BoxLayout;
|
import javax.swing.BoxLayout;
|
||||||
import java.awt.Font;
|
import java.awt.Font;
|
||||||
|
import java.awt.Toolkit;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -38,9 +43,9 @@ public class GUI extends JFrame{
|
|||||||
// Constructors
|
// Constructors
|
||||||
//
|
//
|
||||||
public GUI (Texturenpakete texturenpakete, Spielerverwaltung speicherung) {
|
public GUI (Texturenpakete texturenpakete, Spielerverwaltung speicherung) {
|
||||||
|
setIconImage(Toolkit.getDefaultToolkit().getImage(GUI.class.getResource("/img/jaujau.png")));
|
||||||
setMinimumSize(new Dimension(1000, 600));
|
setMinimumSize(new Dimension(1000, 600));
|
||||||
|
|
||||||
|
|
||||||
// jaujau.getAktuellesSpiel();
|
// jaujau.getAktuellesSpiel();
|
||||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
setTitle("JauJau");
|
setTitle("JauJau");
|
||||||
@@ -48,6 +53,7 @@ public class GUI extends JFrame{
|
|||||||
setSize(1565, 916);
|
setSize(1565, 916);
|
||||||
getContentPane().setLayout(new BorderLayout(0, 0));
|
getContentPane().setLayout(new BorderLayout(0, 0));
|
||||||
|
|
||||||
|
|
||||||
JPanel Menue = new JPanel();
|
JPanel Menue = new JPanel();
|
||||||
Menue.setPreferredSize(new Dimension(270, 450));
|
Menue.setPreferredSize(new Dimension(270, 450));
|
||||||
getContentPane().add(Menue, BorderLayout.WEST);
|
getContentPane().add(Menue, BorderLayout.WEST);
|
||||||
@@ -194,7 +200,8 @@ public class GUI extends JFrame{
|
|||||||
texturenlabel.addMouseListener(new MouseAdapter() {
|
texturenlabel.addMouseListener(new MouseAdapter() {
|
||||||
@Override
|
@Override
|
||||||
public void mouseClicked(MouseEvent e) {
|
public void mouseClicked(MouseEvent e) {
|
||||||
texturenauswaehlen_GUI texturenauswahl = new texturenauswaehlen_GUI(texturenpakete);
|
texturenauswaehlen_GUI texturenauswahl = new texturenauswaehlen_GUI(texturenpakete, speicherung);
|
||||||
|
System.out.println("GUI: Start ge<67>ffnet");
|
||||||
texturenauswahl.setVisible(true);
|
texturenauswahl.setVisible(true);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@@ -1,10 +1,9 @@
|
|||||||
package de.jaujau.gui;
|
package de.jaujau.gui;
|
||||||
|
|
||||||
import java.awt.BorderLayout;
|
|
||||||
import java.awt.Font;
|
import java.awt.Font;
|
||||||
import java.awt.Image;
|
import java.awt.Image;
|
||||||
import java.awt.event.ItemEvent;
|
|
||||||
import java.awt.event.ItemListener;
|
|
||||||
|
|
||||||
import javax.swing.ImageIcon;
|
import javax.swing.ImageIcon;
|
||||||
import javax.swing.JButton;
|
import javax.swing.JButton;
|
||||||
@@ -14,33 +13,46 @@ import javax.swing.JPanel;
|
|||||||
import javax.swing.SwingConstants;
|
import javax.swing.SwingConstants;
|
||||||
import javax.swing.border.EmptyBorder;
|
import javax.swing.border.EmptyBorder;
|
||||||
|
|
||||||
|
import de.jaujau.daten.Spielerverwaltung;
|
||||||
import de.jaujau.daten.Texturenpakete;
|
import de.jaujau.daten.Texturenpakete;
|
||||||
import javax.swing.JComboBox;
|
import javax.swing.JComboBox;
|
||||||
import javax.swing.JFileChooser;
|
import javax.swing.JFileChooser;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Klasse texturenauswaehlen_GUI
|
* Klasse texturenauswaehlen_GUI
|
||||||
|
* @author Sebastian Kacza
|
||||||
|
* Diese Klasse erstelt ein Fenster für die Texturenpaket auswahl
|
||||||
*/
|
*/
|
||||||
public class texturenauswaehlen_GUI extends JFrame{
|
public class texturenauswaehlen_GUI extends JFrame{
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
private JPanel contentPane;
|
private JPanel contentPane;
|
||||||
private Texturenpakete pakete;
|
private Texturenpakete pakete;
|
||||||
private JComboBox comboBox;
|
private JComboBox<String> comboBox;
|
||||||
private JLabel vorschaubild;
|
private JLabel vorschaubild;
|
||||||
private JButton speichern, hinzufuegen, schliessen;
|
private JButton speichern, hinzufuegen, schliessen;
|
||||||
|
private Spielerverwaltung spielerverwaltung;
|
||||||
|
|
||||||
public texturenauswaehlen_GUI (Texturenpakete texturenpakete) {
|
|
||||||
|
/**
|
||||||
|
* Konstruktor fpr das Fenster
|
||||||
|
* @param texturenpakete
|
||||||
|
*/
|
||||||
|
public texturenauswaehlen_GUI (Texturenpakete texturenpakete, Spielerverwaltung spieler) {
|
||||||
pakete = texturenpakete;
|
pakete = texturenpakete;
|
||||||
erstelleFenster();
|
erstelleFenster();
|
||||||
aktualisiereInhalt();
|
aktualisiereInhalt();
|
||||||
|
spielerverwaltung = spieler;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Erstelt alle komponenten des Fensters
|
||||||
|
*/
|
||||||
private void erstelleFenster() {
|
private void erstelleFenster() {
|
||||||
//Fenster größen fetslegen
|
//Fenster größen fetslegen
|
||||||
setAlwaysOnTop(true);
|
setAlwaysOnTop(true);
|
||||||
setBounds(100, 100, 588, 558);
|
setBounds(100, 100, 391, 361);
|
||||||
contentPane = new JPanel();
|
contentPane = new JPanel();
|
||||||
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
|
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
|
||||||
setContentPane(contentPane);
|
setContentPane(contentPane);
|
||||||
@@ -49,45 +61,50 @@ public class texturenauswaehlen_GUI extends JFrame{
|
|||||||
|
|
||||||
//Vorschaubild
|
//Vorschaubild
|
||||||
vorschaubild = new JLabel();
|
vorschaubild = new JLabel();
|
||||||
vorschaubild.setBounds(117, 111, 167, 214);
|
vorschaubild.setBounds(32, 79, 167, 214);
|
||||||
contentPane.add(vorschaubild);
|
contentPane.add(vorschaubild);
|
||||||
|
|
||||||
//Text "Texturenauswahl"
|
//Text "Texturenauswahl"
|
||||||
JLabel lblNewLabel = new JLabel("Texturenauswahl");
|
JLabel lblNewLabel = new JLabel("Texturenauswahl");
|
||||||
lblNewLabel.setBounds(5, 5, 562, 25);
|
lblNewLabel.setBounds(34, 11, 304, 25);
|
||||||
lblNewLabel.setFont(new Font("Tahoma", Font.PLAIN, 20));
|
lblNewLabel.setFont(new Font("Tahoma", Font.PLAIN, 20));
|
||||||
lblNewLabel.setHorizontalAlignment(SwingConstants.CENTER);
|
lblNewLabel.setHorizontalAlignment(SwingConstants.CENTER);
|
||||||
contentPane.add(lblNewLabel);
|
contentPane.add(lblNewLabel);
|
||||||
|
|
||||||
//Teste Hinzufügen
|
//Teste Hinzufügen
|
||||||
hinzufuegen = new JButton("Hinzuf\u00FCgen");
|
hinzufuegen = new JButton("Hinzuf\u00FCgen");
|
||||||
hinzufuegen.setBounds(309, 125, 137, 23);
|
hinzufuegen.setBounds(209, 82, 137, 23);
|
||||||
hinzufuegen.addActionListener(e-> paketHinzufuegeb());
|
hinzufuegen.addActionListener(e-> paketHinzufuegeb());
|
||||||
contentPane.add(hinzufuegen);
|
contentPane.add(hinzufuegen);
|
||||||
|
|
||||||
|
|
||||||
//Teste Speichern
|
//Teste Speichern
|
||||||
speichern = new JButton("Speichern");
|
speichern = new JButton("Speichern");
|
||||||
speichern.setBounds(306, 231, 140, 23);
|
speichern.setBounds(209, 180, 140, 23);
|
||||||
speichern.addActionListener(e-> speichern());
|
speichern.addActionListener(e-> speichern());
|
||||||
contentPane.add(speichern);
|
contentPane.add(speichern);
|
||||||
|
|
||||||
|
|
||||||
//Teste Schießen
|
//Teste Schießen
|
||||||
schliessen = new JButton("Schlie\u00DFen");
|
schliessen = new JButton("Schlie\u00DFen");
|
||||||
schliessen.setBounds(306, 177, 140, 23);
|
schliessen.setBounds(209, 130, 140, 23);
|
||||||
schliessen.addActionListener(e-> schliessen());
|
schliessen.addActionListener(e-> schliessen());
|
||||||
contentPane.add(schliessen);
|
contentPane.add(schliessen);
|
||||||
|
|
||||||
|
|
||||||
//Auswahl Box
|
//Auswahl Box
|
||||||
comboBox = new JComboBox();
|
comboBox = new JComboBox<String>();
|
||||||
comboBox.setBounds(117, 69, 351, 25);
|
comboBox.setBounds(10, 37, 351, 25);
|
||||||
contentPane.add(comboBox);
|
contentPane.add(comboBox);
|
||||||
|
|
||||||
aktualisiereInhalt();
|
aktualisiereInhalt();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Öffent einen auswahl dialog zu Öfnnen einer Datei
|
||||||
|
* Bei klick auf OK wird das Paket hinzugefügt
|
||||||
|
*/
|
||||||
private void paketHinzufuegeb() {
|
private void paketHinzufuegeb() {
|
||||||
//Quelle: https://www.java-tutorial.org/jfilechooser.html
|
//Quelle: https://www.java-tutorial.org/jfilechooser.html
|
||||||
|
|
||||||
@@ -101,31 +118,48 @@ public class texturenauswaehlen_GUI extends JFrame{
|
|||||||
pakete.addPaket(chooser.getSelectedFile().toString());
|
pakete.addPaket(chooser.getSelectedFile().toString());
|
||||||
aktualisiereInhalt();
|
aktualisiereInhalt();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Schießt das Auswahlfenster
|
||||||
|
*/
|
||||||
private void schliessen() {
|
private void schliessen() {
|
||||||
this.setVisible(false);
|
this.setVisible(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Speichert die Auswahl des akutellen Paketes
|
||||||
|
*/
|
||||||
private void speichern() {
|
private void speichern() {
|
||||||
|
// Austauschen sobalt Spielerverwaltung fertig
|
||||||
|
// if(spieler.getLevel() >= pakete.getLevel(comboBox.getSelectedIndex())) {
|
||||||
|
// pakete.setAktivesPaket(comboBox.getSelectedIndex());
|
||||||
|
// aktualisiereBild();
|
||||||
|
//
|
||||||
|
// }
|
||||||
pakete.setAktivesPaket(comboBox.getSelectedIndex());
|
pakete.setAktivesPaket(comboBox.getSelectedIndex());
|
||||||
aktualisiereBild();
|
aktualisiereBild();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Aktualisiert die Inhalte der ComboBox
|
||||||
|
*/
|
||||||
private void aktualisiereInhalt() {
|
private void aktualisiereInhalt() {
|
||||||
comboBox.removeAllItems();
|
comboBox.removeAllItems();
|
||||||
for(int i = 0; i < pakete.getAnzahlPakete(); i++) {
|
for(int i = 0; i < pakete.getAnzahlPakete(); i++) {
|
||||||
comboBox.addItem(pakete.getName(i));
|
comboBox.addItem(pakete.getName(i) + " [Level " + pakete.getLevel(i) + "]");
|
||||||
}
|
}
|
||||||
comboBox.setSelectedIndex(pakete.getAktivesPaket());
|
comboBox.setSelectedIndex(pakete.getAktivesPaket());
|
||||||
aktualisiereBild();
|
aktualisiereBild();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Aktualisiert das Vorschaubild
|
||||||
|
*/
|
||||||
private void aktualisiereBild() {
|
private void aktualisiereBild() {
|
||||||
vorschaubild.setIcon(new ImageIcon(pakete.getTextur(32).getScaledInstance(150, 210, Image.SCALE_SMOOTH)));
|
vorschaubild.setIcon(new ImageIcon(pakete.getTextur(32).getScaledInstance(150, 210, Image.SCALE_SMOOTH)));
|
||||||
}
|
}
|
||||||
|
@@ -7,6 +7,8 @@
|
|||||||
*/
|
*/
|
||||||
package de.jaujau.spiellogik;
|
package de.jaujau.spiellogik;
|
||||||
|
|
||||||
|
import javax.swing.ImageIcon;
|
||||||
|
|
||||||
import de.jaujau.daten.Spielerverwaltung;
|
import de.jaujau.daten.Spielerverwaltung;
|
||||||
import de.jaujau.daten.Texturenpakete;
|
import de.jaujau.daten.Texturenpakete;
|
||||||
import de.jaujau.gui.GUI;
|
import de.jaujau.gui.GUI;
|
||||||
|
@@ -30,6 +30,7 @@ public class Computer_gegner {
|
|||||||
private Kartensatz kartensatz;
|
private Kartensatz kartensatz;
|
||||||
private boolean siebenInHand;
|
private boolean siebenInHand;
|
||||||
private boolean achtInHand;
|
private boolean achtInHand;
|
||||||
|
private boolean debug = false;
|
||||||
//
|
//
|
||||||
// Constructors
|
// Constructors
|
||||||
//
|
//
|
||||||
@@ -103,7 +104,9 @@ public class Computer_gegner {
|
|||||||
Farbe farbeHK = kartensatz.getKarte(hand.get(i)).getFARBE();
|
Farbe farbeHK = kartensatz.getKarte(hand.get(i)).getFARBE();
|
||||||
Wert wertHK = kartensatz.getKarte(hand.get(i)).getWERT();
|
Wert wertHK = kartensatz.getKarte(hand.get(i)).getWERT();
|
||||||
if((farbeHK == letztekartefarbe && wertHK == Wert.ACHT) || (wertHK == letztekartewert && wertHK == Wert.ACHT)) {
|
if((farbeHK == letztekartefarbe && wertHK == Wert.ACHT) || (wertHK == letztekartewert && wertHK == Wert.ACHT)) {
|
||||||
|
if (debug) {
|
||||||
System.out.println("COMPUTER: Ausnahme 1");
|
System.out.println("COMPUTER: Ausnahme 1");
|
||||||
|
}
|
||||||
return hand.get(i);
|
return hand.get(i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -116,7 +119,9 @@ public class Computer_gegner {
|
|||||||
Farbe farbeHK = kartensatz.getKarte(hand.get(i)).getFARBE();
|
Farbe farbeHK = kartensatz.getKarte(hand.get(i)).getFARBE();
|
||||||
Wert wertHK = kartensatz.getKarte(hand.get(i)).getWERT();
|
Wert wertHK = kartensatz.getKarte(hand.get(i)).getWERT();
|
||||||
if((farbeHK == letztekartefarbe && wertHK == Wert.SIEBEN) || (wertHK == letztekartewert && wertHK == Wert.SIEBEN)) {
|
if((farbeHK == letztekartefarbe && wertHK == Wert.SIEBEN) || (wertHK == letztekartewert && wertHK == Wert.SIEBEN)) {
|
||||||
|
if (debug) {
|
||||||
System.out.println("COMPUTER: Ausnahme 2");
|
System.out.println("COMPUTER: Ausnahme 2");
|
||||||
|
}
|
||||||
return hand.get(i);
|
return hand.get(i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -128,40 +133,54 @@ public class Computer_gegner {
|
|||||||
//W<>hlt aus, welche Karte gelegt wird
|
//W<>hlt aus, welche Karte gelegt wird
|
||||||
if ((aussetzen || ziehen) && wertInHand) { //Muss der Computer aussetzen oder ziehen, versucht er eine passende Konterkarte zu legen
|
if ((aussetzen || ziehen) && wertInHand) { //Muss der Computer aussetzen oder ziehen, versucht er eine passende Konterkarte zu legen
|
||||||
rueckgabeindex = wertLegen(letztekartewert);
|
rueckgabeindex = wertLegen(letztekartewert);
|
||||||
|
if (debug) {
|
||||||
System.out.println("COMPUTER: Fall 1");
|
System.out.println("COMPUTER: Fall 1");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else if((wertInHand || farbeInHand) && !aussetzen && !ziehen) {
|
else if((wertInHand || farbeInHand) && !aussetzen && !ziehen) {
|
||||||
|
|
||||||
if (hand.size() > 3) { //Hat der Computer viele Karten in der Hand versucht er passende Farben zu legen, bei weniger Karten passende Werte
|
if (hand.size() > 3) { //Hat der Computer viele Karten in der Hand versucht er passende Farben zu legen, bei weniger Karten passende Werte
|
||||||
if(farbeInHand && !aussetzen && !ziehen) { //Hat der Computer die Farbe auf der Hand, versucht er diese zu legen
|
if(farbeInHand && !aussetzen && !ziehen) { //Hat der Computer die Farbe auf der Hand, versucht er diese zu legen
|
||||||
rueckgabeindex = farbeLegen(letztekartefarbe);
|
rueckgabeindex = farbeLegen(letztekartefarbe);
|
||||||
|
if (debug) {
|
||||||
System.out.println("COMPUTER: Fall 2");
|
System.out.println("COMPUTER: Fall 2");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else if(wertInHand && !aussetzen && !ziehen) { //Hat der Computer nicht die passende Farbe, aber einen passenden Wert, legt er diesen
|
else if(wertInHand && !aussetzen && !ziehen) { //Hat der Computer nicht die passende Farbe, aber einen passenden Wert, legt er diesen
|
||||||
rueckgabeindex = wertLegen(letztekartewert);
|
rueckgabeindex = wertLegen(letztekartewert);
|
||||||
|
if (debug) {
|
||||||
System.out.println("COMPUTER: Fall 3");
|
System.out.println("COMPUTER: Fall 3");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
if(wertInHand && !aussetzen && !ziehen) { //Hat der Computer die Wert auf der Hand, versucht er diese zu legen
|
if(wertInHand && !aussetzen && !ziehen) { //Hat der Computer die Wert auf der Hand, versucht er diese zu legen
|
||||||
rueckgabeindex = wertLegen(letztekartewert);
|
rueckgabeindex = wertLegen(letztekartewert);
|
||||||
|
if (debug) {
|
||||||
System.out.println("COMPUTER: Fall 4");
|
System.out.println("COMPUTER: Fall 4");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else if(farbeInHand && !aussetzen && !ziehen) { //Hat der Computer nicht den passenden Wert, aber eine passende Farbe, legt er diese
|
else if(farbeInHand && !aussetzen && !ziehen) { //Hat der Computer nicht den passenden Wert, aber eine passende Farbe, legt er diese
|
||||||
rueckgabeindex = farbeLegen(letztekartefarbe);
|
rueckgabeindex = farbeLegen(letztekartefarbe);
|
||||||
|
if (debug) {
|
||||||
System.out.println("COMPUTER: Fall 5");
|
System.out.println("COMPUTER: Fall 5");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(bubeInHand && !aussetzen && !ziehen) { //Hat der Computer weder die passende Farbe, noch den passenden Wert auf der Hand, aber einen W<>nscher, legt er diesen
|
else if(bubeInHand && !aussetzen && !ziehen) { //Hat der Computer weder die passende Farbe, noch den passenden Wert auf der Hand, aber einen W<>nscher, legt er diesen
|
||||||
rueckgabeindex = wertLegen(Wert.BUBE);
|
rueckgabeindex = wertLegen(Wert.BUBE);
|
||||||
|
if (debug) {
|
||||||
System.out.println("COMPUTER: Fall 6");
|
System.out.println("COMPUTER: Fall 6");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else if(aussetzen && !wertInHand) { //Muss der Computer aussetzen und kann nicht reagieren, gibt er eine -2 zur<75>ck
|
else if(aussetzen && !wertInHand) { //Muss der Computer aussetzen und kann nicht reagieren, gibt er eine -2 zur<75>ck
|
||||||
rueckgabeindex = -2;
|
rueckgabeindex = -2;
|
||||||
|
if (debug) {
|
||||||
System.out.println("COMPUTER: Fall 7");
|
System.out.println("COMPUTER: Fall 7");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -21,6 +21,7 @@ public class Spielzug {
|
|||||||
//
|
//
|
||||||
|
|
||||||
private Kartensatz kartensatz;
|
private Kartensatz kartensatz;
|
||||||
|
private boolean debug = true;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Constructors
|
// Constructors
|
||||||
@@ -46,28 +47,40 @@ public class Spielzug {
|
|||||||
Wert kartenwert = kartensatz.getKarte(kartenindex).getWERT();
|
Wert kartenwert = kartensatz.getKarte(kartenindex).getWERT();
|
||||||
Wert letztekartewert = kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT();
|
Wert letztekartewert = kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT();
|
||||||
Farbe letztekartefarbe = kartensatz.getKarte(kartensatz.getletzteKarte()).getFARBE();
|
Farbe letztekartefarbe = kartensatz.getKarte(kartensatz.getletzteKarte()).getFARBE();
|
||||||
|
if (debug) {
|
||||||
System.out.println("SPIELZUG: Versucht Karte f<>r Funktion: " + kartenindex);
|
System.out.println("SPIELZUG: Versucht Karte f<>r Funktion: " + kartenindex);
|
||||||
System.out.println("SPIELZUG: Letzte Karte f<>r Funktion: " + letztekartewert + " " + letztekartefarbe);
|
System.out.println("SPIELZUG: Letzte Karte f<>r Funktion: " + letztekartewert + " " + letztekartefarbe);
|
||||||
|
}
|
||||||
|
|
||||||
if(aussetzen && kartenwert == Wert.ACHT) {
|
if(aussetzen && kartenwert == Wert.ACHT) {
|
||||||
|
if (debug) {
|
||||||
System.out.println("SPIELZUG: Bedingung 1");
|
System.out.println("SPIELZUG: Bedingung 1");
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else if(aussetzen && !(kartenwert == Wert.ACHT)) {
|
else if(aussetzen && !(kartenwert == Wert.ACHT)) {
|
||||||
|
if (debug) {
|
||||||
System.out.println("SPIELZUG: Bedingung 2");
|
System.out.println("SPIELZUG: Bedingung 2");
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
else if (ziehen && kartenwert == Wert.SIEBEN) {
|
else if (ziehen && kartenwert == Wert.SIEBEN) {
|
||||||
|
if (debug) {
|
||||||
System.out.println("SPIELZUG: Bedingung 3");
|
System.out.println("SPIELZUG: Bedingung 3");
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else if (!aussetzen && !ziehen && ((kartenwert == letztekartewert || kartenfarbe == letztekartefarbe) || kartenwert == Wert.BUBE)) {
|
else if (!aussetzen && !ziehen && ((kartenwert == letztekartewert || kartenfarbe == letztekartefarbe) || kartenwert == Wert.BUBE)) {
|
||||||
|
if (debug) {
|
||||||
System.out.println("SPIELZUG: Bedingung 4");
|
System.out.println("SPIELZUG: Bedingung 4");
|
||||||
System.out.println("SPIELZUG: Aussetzen: " + aussetzen + " ziehen:" + ziehen);
|
System.out.println("SPIELZUG: Aussetzen: " + aussetzen + " ziehen:" + ziehen);
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
if (debug) {
|
||||||
System.out.println("SPIELZUG: Bedingung 5");
|
System.out.println("SPIELZUG: Bedingung 5");
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -90,48 +103,4 @@ public class Spielzug {
|
|||||||
}
|
}
|
||||||
return gefunden;
|
return gefunden;
|
||||||
}
|
}
|
||||||
////
|
|
||||||
|
|
||||||
|
|
||||||
//
|
|
||||||
// Methods
|
|
||||||
//
|
|
||||||
|
|
||||||
|
|
||||||
//
|
|
||||||
// Accessor methods
|
|
||||||
//
|
|
||||||
|
|
||||||
//
|
|
||||||
// Other methods
|
|
||||||
//
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param spieler
|
|
||||||
* @param kartensatz
|
|
||||||
*/
|
|
||||||
public static void legen(Spielerdaten spieler, Kartensatz kartensatz)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param spieler
|
|
||||||
* @param kartensatz
|
|
||||||
*/
|
|
||||||
public static void aussetzen(Spielerdaten spieler, Kartensatz kartensatz)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param spieler
|
|
||||||
* @param kartensatz
|
|
||||||
* @param anzahl
|
|
||||||
*/
|
|
||||||
public static void ziehen(Spielerdaten spieler, Kartensatz kartensatz, int anzahl)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
BIN
src/img/jaujau.png
Normal file
BIN
src/img/jaujau.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.0 KiB |
Reference in New Issue
Block a user