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
|
||||
@Override
|
||||
public String zugBestimmen() {
|
||||
public String zugBestimmen(Spiel spiel, Hennen henne) {
|
||||
String zug;
|
||||
char[][] spielbrettArray = Spiel.getSpielbrettArray();
|
||||
ArrayList<String> spielfigurExistiert = new ArrayList<>();
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
package domain;
|
||||
|
||||
public class Fuchs extends Spielfigur {
|
||||
|
||||
|
||||
public Fuchs() {
|
||||
|
||||
}
|
||||
|
||||
// public boolean isValidMove(String zug) {
|
||||
public static boolean isValidMove(String zug) {
|
||||
public boolean isValidMove(String zug, Spiel spiel) {
|
||||
// public static boolean isValidMove(String zug) {
|
||||
|
||||
System.out.println("Fuchsmethode aufgerufen");
|
||||
return false;
|
||||
|
|
|
@ -7,10 +7,11 @@ public class Hennen extends Spielfigur {
|
|||
}
|
||||
|
||||
// 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"
|
||||
|
||||
|
||||
//Zug wurde getätigt....
|
||||
//Werte als Char
|
||||
char startKoordinate1 = zug.charAt(0);
|
||||
|
@ -24,14 +25,18 @@ public class Hennen extends Spielfigur {
|
|||
int zielKoord1 = Character.getNumericValue(zielKoordinate1);
|
||||
int zielKoord2 = Character.getNumericValue(zielKoordinate2);
|
||||
|
||||
int[] neueStartKoords = Spiel.wandelPassendUm(startKoord1, startKoord2);
|
||||
int[] neueZielKoords = Spiel.wandelPassendUm(zielKoord1, zielKoord2);
|
||||
int[] neueStartKoords = spiel.wandelPassendUm(startKoord1, startKoord2);
|
||||
int[] neueZielKoords = spiel.wandelPassendUm(zielKoord1, zielKoord2);
|
||||
|
||||
//Werte angepasst auf unser Board
|
||||
int neueStartX = neueStartKoords[0];
|
||||
int neueStartY = neueStartKoords[1];
|
||||
int neueZielX = neueZielKoords[0];
|
||||
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;
|
||||
|
||||
public class Spiel {
|
||||
public class Spiel {
|
||||
private String spielname;
|
||||
|
||||
|
||||
// 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) {
|
||||
this.spielname = spielname;
|
||||
// this.spielbrett = generiereSpielbrett();
|
||||
// this.spielbrettArray = generiereSpielbrettArray();
|
||||
Spiel.spielbrettArray = generiereSpielbrett();
|
||||
this.spielbrettArray = generiereSpielbrett();
|
||||
|
||||
}
|
||||
|
||||
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();
|
||||
// }
|
||||
|
||||
public void printBoard() {
|
||||
for (int i = 0; i < spielbrettArray.length; i++) {
|
||||
for (int j = 0; j < spielbrettArray[i].length; j++) {
|
||||
System.out.print(spielbrettArray[i][j] + " ");
|
||||
|
@ -48,7 +25,6 @@ public class Spiel {
|
|||
|
||||
|
||||
public char[][] generiereSpielbrett() {
|
||||
// public HashMap<Integer, Character> generiereSpielbrett() {
|
||||
// O=Fuchs, X=Henne, \u25A1=ein Kasten
|
||||
|
||||
spielbrettArray[0][0] = '8';
|
||||
|
@ -160,18 +136,17 @@ public class Spiel {
|
|||
spielbrettArray[9][7] = '6';
|
||||
spielbrettArray[9][8] = '7';
|
||||
spielbrettArray[9][9] = '8';
|
||||
|
||||
|
||||
return spielbrettArray;
|
||||
}
|
||||
|
||||
|
||||
public static char[][] getSpielbrettArray() {
|
||||
public char[][] getSpielbrettArray() {
|
||||
|
||||
return spielbrettArray;
|
||||
}
|
||||
|
||||
public static int[] wandelPassendUm(int umwandeln1, int umwandeln2) {
|
||||
public int[] wandelPassendUm(int umwandeln1, int umwandeln2) {
|
||||
// Erlaubte Koordinaten sind:
|
||||
// 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
|
||||
|
|
|
@ -2,10 +2,10 @@ package domain;
|
|||
|
||||
public abstract class Spielfigur {
|
||||
|
||||
// public abstract boolean isValidMove(String zug);
|
||||
public static boolean isValidMove(String zug) {
|
||||
return false;
|
||||
}
|
||||
public abstract boolean isValidMove(String zug, Spiel spiel);
|
||||
// public static boolean isValidMove(String zug) {
|
||||
// return false;
|
||||
// }
|
||||
|
||||
public void moveSpielfigur(String zug) {
|
||||
|
||||
|
|
|
@ -111,9 +111,9 @@ public class Spielsystem {
|
|||
// vorerst wird es ignoriert das static verlangt wird
|
||||
public boolean isValidMove(String zug) {
|
||||
if(aktiverSpieler == true) {
|
||||
return spieler.isValidMove(zug);
|
||||
return spieler.isValidMove(zug, spiel);
|
||||
} else {
|
||||
return computer.isValidMove(zug);
|
||||
return computer.isValidMove(zug, spiel);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -122,7 +122,7 @@ public class Spielsystem {
|
|||
}
|
||||
|
||||
public void myMove(String zug) {
|
||||
|
||||
|
||||
}
|
||||
|
||||
public void moveSpielfigur(String zug) {
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package main;
|
||||
|
||||
import domain.Spiel;
|
||||
import facade.Spielsystem;
|
||||
import ui.UI;
|
||||
|
||||
|
@ -8,31 +7,8 @@ public class Main {
|
|||
|
||||
@SuppressWarnings("unused")
|
||||
public static void main(String[] args) throws Exception {
|
||||
//Spielsystem spielsystem = new Spielsystem("Hennen und Füchse");
|
||||
//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);
|
||||
Spielsystem spielsystem = new Spielsystem("Hennen und Füchse");
|
||||
UI ui = new UI(spielsystem);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -133,7 +133,8 @@ public class UI {
|
|||
int kiLevel = Integer.parseInt(sc.nextLine());
|
||||
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();
|
||||
spielsystem.printBoard();
|
||||
System.out.println();
|
||||
|
||||
do {
|
||||
// Zug Henne KI
|
||||
|
@ -201,7 +203,7 @@ public class UI {
|
|||
}
|
||||
} while (erfolgreicherZug == false);
|
||||
|
||||
spielsystem.getHenne().moveSpielfigur(zug);
|
||||
spielsystem.moveSpielfigur(zug);
|
||||
zugHenne = false;
|
||||
zugFuchs = true;
|
||||
}
|
||||
|
@ -226,7 +228,7 @@ public class UI {
|
|||
}
|
||||
} while (erfolgreicherZug == false);
|
||||
|
||||
spielsystem.getFuchs().moveSpielfigur(zug);
|
||||
spielsystem.moveSpielfigur(zug);
|
||||
zugHenne = true;
|
||||
zugFuchs = false;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue