Aufräumarbeiten und einheitlichen Stand generiert für alle
parent
f2842fa621
commit
0ce6fe08a8
|
@ -7,7 +7,7 @@ public class BotEasyHenne extends Bot {
|
||||||
|
|
||||||
// muss dann vielleicht noch an die neue Schreibweise des Arrays angepasst werden
|
// muss dann vielleicht noch an die neue Schreibweise des Arrays angepasst werden
|
||||||
@Override
|
@Override
|
||||||
public String zugBestimmen() {
|
public String zugBestimmen(Spiel spiel, Hennen henne) {
|
||||||
String zug;
|
String zug;
|
||||||
char[][] spielbrettArray = Spiel.getSpielbrettArray();
|
char[][] spielbrettArray = Spiel.getSpielbrettArray();
|
||||||
ArrayList<String> spielfigurExistiert = new ArrayList<>();
|
ArrayList<String> spielfigurExistiert = new ArrayList<>();
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
package domain;
|
package domain;
|
||||||
|
|
||||||
public class Fuchs extends Spielfigur {
|
public class Fuchs extends Spielfigur {
|
||||||
|
|
||||||
public Fuchs() {
|
public Fuchs() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// public boolean isValidMove(String zug) {
|
public boolean isValidMove(String zug, Spiel spiel) {
|
||||||
public static boolean isValidMove(String zug) {
|
// public static boolean isValidMove(String zug) {
|
||||||
|
|
||||||
System.out.println("Fuchsmethode aufgerufen");
|
System.out.println("Fuchsmethode aufgerufen");
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -7,10 +7,11 @@ public class Hennen extends Spielfigur {
|
||||||
}
|
}
|
||||||
|
|
||||||
// generell sehr fehleranfällig, mit Regex Filter Struktur vom String vorgeben
|
// generell sehr fehleranfällig, mit Regex Filter Struktur vom String vorgeben
|
||||||
public static boolean isValidMove(String zug) {
|
public boolean isValidMove(String zug, Spiel spiel) {
|
||||||
|
char[][] spielbrettArray = new char[10][10];;
|
||||||
|
spielbrettArray = spiel.getSpielbrettArray();
|
||||||
//Form vom Zug: "5,5 4,5"
|
//Form vom Zug: "5,5 4,5"
|
||||||
|
|
||||||
|
|
||||||
//Zug wurde getätigt....
|
//Zug wurde getätigt....
|
||||||
//Werte als Char
|
//Werte als Char
|
||||||
char startKoordinate1 = zug.charAt(0);
|
char startKoordinate1 = zug.charAt(0);
|
||||||
|
@ -24,14 +25,18 @@ public class Hennen extends Spielfigur {
|
||||||
int zielKoord1 = Character.getNumericValue(zielKoordinate1);
|
int zielKoord1 = Character.getNumericValue(zielKoordinate1);
|
||||||
int zielKoord2 = Character.getNumericValue(zielKoordinate2);
|
int zielKoord2 = Character.getNumericValue(zielKoordinate2);
|
||||||
|
|
||||||
int[] neueStartKoords = Spiel.wandelPassendUm(startKoord1, startKoord2);
|
int[] neueStartKoords = spiel.wandelPassendUm(startKoord1, startKoord2);
|
||||||
int[] neueZielKoords = Spiel.wandelPassendUm(zielKoord1, zielKoord2);
|
int[] neueZielKoords = spiel.wandelPassendUm(zielKoord1, zielKoord2);
|
||||||
|
|
||||||
//Werte angepasst auf unser Board
|
//Werte angepasst auf unser Board
|
||||||
int neueStartX = neueStartKoords[0];
|
int neueStartX = neueStartKoords[0];
|
||||||
int neueStartY = neueStartKoords[1];
|
int neueStartY = neueStartKoords[1];
|
||||||
int neueZielX = neueZielKoords[0];
|
int neueZielX = neueZielKoords[0];
|
||||||
int neueZielY = neueZielKoords[1];
|
int neueZielY = neueZielKoords[1];
|
||||||
|
|
||||||
|
|
||||||
|
//Fehler Spielsymbol beim Start oder Zeil falsch
|
||||||
|
if (spielbrettArray[neueStartX][neueStartY] != 'X')
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2,42 +2,19 @@ package domain;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
||||||
public class Spiel {
|
public class Spiel {
|
||||||
private String spielname;
|
private String spielname;
|
||||||
|
|
||||||
|
|
||||||
// private char[][] spielbrettArray = new char[10][10];
|
// private char[][] spielbrettArray = new char[10][10];
|
||||||
private static char[][] spielbrettArray = new char[10][10];
|
private char[][] spielbrettArray = new char[10][10];
|
||||||
|
|
||||||
public Spiel(String spielname) {
|
public Spiel(String spielname) {
|
||||||
this.spielname = spielname;
|
this.spielname = spielname;
|
||||||
// this.spielbrett = generiereSpielbrett();
|
this.spielbrettArray = generiereSpielbrett();
|
||||||
// this.spielbrettArray = generiereSpielbrettArray();
|
|
||||||
Spiel.spielbrettArray = generiereSpielbrett();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void printBoard() {
|
public void printBoard() {
|
||||||
// int zähler = 0;
|
|
||||||
// for (int i = 0; i < spielbrett.size(); i++) {
|
|
||||||
// if (zähler == 9) {
|
|
||||||
// System.out.println(spielbrett.get(i));
|
|
||||||
// zähler = 0;
|
|
||||||
// } else {
|
|
||||||
// System.out.print(spielbrett.get(i) + " ");
|
|
||||||
// zähler++;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// System.out.println();
|
|
||||||
|
|
||||||
// for ( int zeile = 0; zeile < spielbrettArray.length; zeile++ )
|
|
||||||
// {
|
|
||||||
// System.out.print("Zeile " + zeile + ": ");
|
|
||||||
// for ( int spalte=0; spalte < spielbrettArray[zeile].length; spalte++ )
|
|
||||||
// System.out.print( spielbrettArray[zeile][spalte] + " ");
|
|
||||||
// System.out.println();
|
|
||||||
// }
|
|
||||||
|
|
||||||
for (int i = 0; i < spielbrettArray.length; i++) {
|
for (int i = 0; i < spielbrettArray.length; i++) {
|
||||||
for (int j = 0; j < spielbrettArray[i].length; j++) {
|
for (int j = 0; j < spielbrettArray[i].length; j++) {
|
||||||
System.out.print(spielbrettArray[i][j] + " ");
|
System.out.print(spielbrettArray[i][j] + " ");
|
||||||
|
@ -48,7 +25,6 @@ public class Spiel {
|
||||||
|
|
||||||
|
|
||||||
public char[][] generiereSpielbrett() {
|
public char[][] generiereSpielbrett() {
|
||||||
// public HashMap<Integer, Character> generiereSpielbrett() {
|
|
||||||
// O=Fuchs, X=Henne, \u25A1=ein Kasten
|
// O=Fuchs, X=Henne, \u25A1=ein Kasten
|
||||||
|
|
||||||
spielbrettArray[0][0] = '8';
|
spielbrettArray[0][0] = '8';
|
||||||
|
@ -160,18 +136,17 @@ public class Spiel {
|
||||||
spielbrettArray[9][7] = '6';
|
spielbrettArray[9][7] = '6';
|
||||||
spielbrettArray[9][8] = '7';
|
spielbrettArray[9][8] = '7';
|
||||||
spielbrettArray[9][9] = '8';
|
spielbrettArray[9][9] = '8';
|
||||||
|
|
||||||
|
|
||||||
return spielbrettArray;
|
return spielbrettArray;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static char[][] getSpielbrettArray() {
|
public char[][] getSpielbrettArray() {
|
||||||
|
|
||||||
return spielbrettArray;
|
return spielbrettArray;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int[] wandelPassendUm(int umwandeln1, int umwandeln2) {
|
public int[] wandelPassendUm(int umwandeln1, int umwandeln2) {
|
||||||
// Erlaubte Koordinaten sind:
|
// Erlaubte Koordinaten sind:
|
||||||
// 3,0 / 4,0 / 5,0 - 3,1 / 4,1 / 5,1 - 3,2 / 4,2 / 5,2
|
// 3,0 / 4,0 / 5,0 - 3,1 / 4,1 / 5,1 - 3,2 / 4,2 / 5,2
|
||||||
// 0,3 / 1,3 / 2,3 / 3,3 / 4,3 / 5,3 / 6,3 / 7,3 / 8,3
|
// 0,3 / 1,3 / 2,3 / 3,3 / 4,3 / 5,3 / 6,3 / 7,3 / 8,3
|
||||||
|
|
|
@ -2,10 +2,10 @@ package domain;
|
||||||
|
|
||||||
public abstract class Spielfigur {
|
public abstract class Spielfigur {
|
||||||
|
|
||||||
// public abstract boolean isValidMove(String zug);
|
public abstract boolean isValidMove(String zug, Spiel spiel);
|
||||||
public static boolean isValidMove(String zug) {
|
// public static boolean isValidMove(String zug) {
|
||||||
return false;
|
// return false;
|
||||||
}
|
// }
|
||||||
|
|
||||||
public void moveSpielfigur(String zug) {
|
public void moveSpielfigur(String zug) {
|
||||||
|
|
||||||
|
|
|
@ -111,9 +111,9 @@ public class Spielsystem {
|
||||||
// vorerst wird es ignoriert das static verlangt wird
|
// vorerst wird es ignoriert das static verlangt wird
|
||||||
public boolean isValidMove(String zug) {
|
public boolean isValidMove(String zug) {
|
||||||
if(aktiverSpieler == true) {
|
if(aktiverSpieler == true) {
|
||||||
return spieler.isValidMove(zug);
|
return spieler.isValidMove(zug, spiel);
|
||||||
} else {
|
} else {
|
||||||
return computer.isValidMove(zug);
|
return computer.isValidMove(zug, spiel);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -122,7 +122,7 @@ public class Spielsystem {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void myMove(String zug) {
|
public void myMove(String zug) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void moveSpielfigur(String zug) {
|
public void moveSpielfigur(String zug) {
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package main;
|
package main;
|
||||||
|
|
||||||
import domain.Spiel;
|
|
||||||
import facade.Spielsystem;
|
import facade.Spielsystem;
|
||||||
import ui.UI;
|
import ui.UI;
|
||||||
|
|
||||||
|
@ -8,31 +7,8 @@ public class Main {
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
public static void main(String[] args) throws Exception {
|
public static void main(String[] args) throws Exception {
|
||||||
//Spielsystem spielsystem = new Spielsystem("Hennen und Füchse");
|
Spielsystem spielsystem = new Spielsystem("Hennen und Füchse");
|
||||||
//UI ui = new UI(spielsystem);
|
UI ui = new UI(spielsystem);
|
||||||
|
|
||||||
Spiel spiel = new Spiel ("Test");
|
|
||||||
spiel.generiereSpielbrett();
|
|
||||||
spiel.printBoard();
|
|
||||||
|
|
||||||
|
|
||||||
String zug = "5,5 5,6";
|
|
||||||
|
|
||||||
char startKoordinate1 = zug.charAt(0);
|
|
||||||
char startKoordinate2 = zug.charAt(2);
|
|
||||||
char zielKoordinate1 = zug.charAt(4);
|
|
||||||
char zielKoordinate2 = zug.charAt(6);
|
|
||||||
|
|
||||||
int startKoord1 = Character.getNumericValue(startKoordinate1);
|
|
||||||
int startKoord2 = Character.getNumericValue(startKoordinate2);
|
|
||||||
int zielKoord1 = Character.getNumericValue(zielKoordinate1);
|
|
||||||
int zielKoord2 = Character.getNumericValue(zielKoordinate2);
|
|
||||||
startKoord2 = startKoord2 %8;
|
|
||||||
|
|
||||||
System.out.println(startKoord1);
|
|
||||||
System.out.println(startKoord2);
|
|
||||||
System.out.println(zielKoord1);
|
|
||||||
System.out.println(zielKoord2);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -133,7 +133,8 @@ public class UI {
|
||||||
int kiLevel = Integer.parseInt(sc.nextLine());
|
int kiLevel = Integer.parseInt(sc.nextLine());
|
||||||
System.out.println();
|
System.out.println();
|
||||||
|
|
||||||
spielsystem.start(werBeginnt, kiLevel);
|
spielsystem.start(werBeginnt, kiLevel);
|
||||||
|
start(werBeginnt, kiLevel);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -164,6 +165,7 @@ public class UI {
|
||||||
System.out.println("Das Startspielbrett sieht wie folgt aus:");
|
System.out.println("Das Startspielbrett sieht wie folgt aus:");
|
||||||
System.out.println();
|
System.out.println();
|
||||||
spielsystem.printBoard();
|
spielsystem.printBoard();
|
||||||
|
System.out.println();
|
||||||
|
|
||||||
do {
|
do {
|
||||||
// Zug Henne KI
|
// Zug Henne KI
|
||||||
|
@ -201,7 +203,7 @@ public class UI {
|
||||||
}
|
}
|
||||||
} while (erfolgreicherZug == false);
|
} while (erfolgreicherZug == false);
|
||||||
|
|
||||||
spielsystem.getHenne().moveSpielfigur(zug);
|
spielsystem.moveSpielfigur(zug);
|
||||||
zugHenne = false;
|
zugHenne = false;
|
||||||
zugFuchs = true;
|
zugFuchs = true;
|
||||||
}
|
}
|
||||||
|
@ -226,7 +228,7 @@ public class UI {
|
||||||
}
|
}
|
||||||
} while (erfolgreicherZug == false);
|
} while (erfolgreicherZug == false);
|
||||||
|
|
||||||
spielsystem.getFuchs().moveSpielfigur(zug);
|
spielsystem.moveSpielfigur(zug);
|
||||||
zugHenne = true;
|
zugHenne = true;
|
||||||
zugFuchs = false;
|
zugFuchs = false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue