diff --git a/src/.classpath b/src/.classpath
new file mode 100644
index 0000000..3f3893a
--- /dev/null
+++ b/src/.classpath
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/src/.project b/src/.project
new file mode 100644
index 0000000..0f6f6a7
--- /dev/null
+++ b/src/.project
@@ -0,0 +1,17 @@
+
+
+ src
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/src/domain/.gitignore b/src/domain/.gitignore
new file mode 100644
index 0000000..5e2d064
--- /dev/null
+++ b/src/domain/.gitignore
@@ -0,0 +1,6 @@
+/Spiel.class
+/TestenFürFunktionen.class
+/Spielfigur.class
+/Fuchs.class
+/Hennen.class
+/Bot.class
diff --git a/src/domain/Bot.java b/src/domain/Bot.java
new file mode 100644
index 0000000..333c89f
--- /dev/null
+++ b/src/domain/Bot.java
@@ -0,0 +1,8 @@
+package domain;
+
+public abstract class Bot {
+
+ public void zugBestimmen() {
+
+ }
+}
diff --git a/src/domain/Fuchs.java b/src/domain/Fuchs.java
new file mode 100644
index 0000000..e82351f
--- /dev/null
+++ b/src/domain/Fuchs.java
@@ -0,0 +1,12 @@
+package domain;
+
+public class Fuchs extends Spielfigur {
+
+ public int moveSpielfigur(int feldKey) {
+ return super.moveSpielfigur(feldKey);
+ }
+
+ public boolean validMove(int startKey, int zielKey) {
+ return super.validMove(startKey, zielKey);
+ }
+}
diff --git a/src/domain/Hennen.java b/src/domain/Hennen.java
new file mode 100644
index 0000000..a85d405
--- /dev/null
+++ b/src/domain/Hennen.java
@@ -0,0 +1,12 @@
+package domain;
+
+public class Hennen extends Spielfigur {
+
+ public int moveSpielfigur(int feldKey) {
+ return super.moveSpielfigur(feldKey);
+ }
+
+ public boolean validMove(int startKey, int zielKey) {
+ return super.validMove(startKey, zielKey);
+ }
+}
diff --git a/src/domain/Spiel.java b/src/domain/Spiel.java
index 8756606..51cd3aa 100644
--- a/src/domain/Spiel.java
+++ b/src/domain/Spiel.java
@@ -17,26 +17,26 @@ public class Spiel {
//Erstellung Anfangsspielbrett mithilfe von Unicode Zeichen
public HashMap generiereSpielbrett() {
// X=Fuchs, O=Henne, \u25A1=ein Kasten
- spielbrett.put(0, ' ');
- spielbrett.put(1, '1');
+ spielbrett.put(0, ' ');
+ spielbrett.put(1, '1');
spielbrett.put(2, '2');
- spielbrett.put(3, '3');
- spielbrett.put(4, '4');
+ spielbrett.put(3, '3');
+ spielbrett.put(4, '4');
spielbrett.put(5, '5');
- spielbrett.put(6, '6');
- spielbrett.put(7, '7');
+ spielbrett.put(6, '6');
+ spielbrett.put(7, '7');
spielbrett.put(8, '8');
- spielbrett.put(9, '9');
- spielbrett.put(10, '1');
+ spielbrett.put(9, '9');
+ spielbrett.put(10, '1');
spielbrett.put(11, ' ');
- spielbrett.put(12, ' ');
- spielbrett.put(13, ' ');
+ spielbrett.put(12, ' ');
+ spielbrett.put(13, ' ');
spielbrett.put(14, '\u25A1');
- spielbrett.put(15, '\u25A1');
- spielbrett.put(16, '\u25A1');
+ spielbrett.put(15, '\u25A1');
+ spielbrett.put(16, '\u25A1');
spielbrett.put(17, ' ');
- spielbrett.put(18, ' ');
- spielbrett.put(19, ' ');
+ spielbrett.put(18, ' ');
+ spielbrett.put(19, ' ');
spielbrett.put(20, '2');
spielbrett.put(21, ' ');
spielbrett.put(22, ' ');
diff --git a/src/domain/Spielfigur.java b/src/domain/Spielfigur.java
new file mode 100644
index 0000000..bd8f2e3
--- /dev/null
+++ b/src/domain/Spielfigur.java
@@ -0,0 +1,20 @@
+package domain;
+
+public abstract class Spielfigur {
+
+ public int selectSpielfigur(int feldKey) {
+ return feldKey;
+ }
+
+ public int moveSpielfigur(int feldKey) {
+ return feldKey;
+ }
+
+ public boolean findeSpielfigur(int feldKey) {
+ return false;
+ }
+
+ public boolean validMove(int startKey, int zielKey) {
+ return false;
+ }
+}
diff --git a/src/facade/.gitignore b/src/facade/.gitignore
new file mode 100644
index 0000000..3cce112
--- /dev/null
+++ b/src/facade/.gitignore
@@ -0,0 +1 @@
+/Spielsystem.class
diff --git a/src/infrastructure/.gitignore b/src/infrastructure/.gitignore
new file mode 100644
index 0000000..bff86f3
--- /dev/null
+++ b/src/infrastructure/.gitignore
@@ -0,0 +1 @@
+/Persistenz.class
diff --git a/src/main/.gitignore b/src/main/.gitignore
new file mode 100644
index 0000000..a66c73a
--- /dev/null
+++ b/src/main/.gitignore
@@ -0,0 +1 @@
+/Main.class
diff --git a/src/main/Main.java b/src/main/Main.java
index fbe3443..20a9633 100644
--- a/src/main/Main.java
+++ b/src/main/Main.java
@@ -5,6 +5,7 @@ import ui.UI;
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);
diff --git a/src/ui/.gitignore b/src/ui/.gitignore
new file mode 100644
index 0000000..fc4c827
--- /dev/null
+++ b/src/ui/.gitignore
@@ -0,0 +1 @@
+/UI.class
diff --git a/src/ui/UI.java b/src/ui/UI.java
index 4d6d408..1d214c0 100644
--- a/src/ui/UI.java
+++ b/src/ui/UI.java
@@ -20,47 +20,84 @@ public class UI {
while (true) {
System.out.println();
System.out.println("--------");
- System.out.println("Hauptmenü");
+ System.out.println("Hauptmenü:");
System.out.println("1 -> Neues Spiel starten");
- //System.out.println("2 -> Alten Spielstand laden");
+ System.out.println("2 -> Alten Spielstand laden");
System.out.println("3 -> Regeln anzeigen");
- //System.out.println("7 -> Highscore anzeigen");
+ System.out.println("7 -> Highscore anzeigen");
System.out.println("8 -> Credits anzeigen");
System.out.println("9 -> Beenden");
System.out.println();
-
System.out.print("> ");
int input = 0;
try {
input = Integer.parseInt(sc.nextLine());
+ System.out.println();
} catch (NumberFormatException nfe) {
- System.out.println("Leider haben Sie keine Zahl eingegeben. Bitte geben Sie eine Zahl ein:");
+ System.out.println("\nLeider haben Sie keine Zahl eingegeben. Bitte geben Sie eine Zahl ein:");
}
- System.out.println();
try {
switch(input) {
- case 1: spielStarten(); break;
- case 10: break mainloop;
+ case 1: spielStarten(); gameloop(); break;
+ case 2: spielstandLaden(); break;
+ case 3: regelnAnzeigen(); break;
+ case 7: highscoreAnzeigen(); break;
+ case 8: creditsAnzeigen(); break;
+ case 9: break mainloop;
}
-
} catch (Exception e) {
System.err.println(e.getLocalizedMessage());
}
- System.out.println();
}
-
System.out.println("Auf Wiedersehen!");
-
}
+
+ private void gameloop() {
+ gameloop:
+ while(true) {
+ System.out.println();
+ System.out.println("--------");
+ System.out.println("Spielmenü:");
+ System.out.println("1 -> Einspieler auswählen");
+ System.out.println("2 -> Mehrspieler auswählen");
+ System.out.println("3 -> KI Schwierigkeit auswählen");
+
+ System.out.println("9 -> Zurück");
+ System.out.println();
+ System.out.print("> ");
+ int input = 0;
+
+ try {
+ input = Integer.parseInt(sc.nextLine());
+ System.out.println();
+ } catch(NumberFormatException nfe){
+ System.out.println("\nLeider haben Sie keine Zahl eingegeben. Bitte geben Sie eine Zahl ein:");
+ }
+
+ try {
+ switch(input) {
+ case 1: break;
+ case 2: break;
+ case 3: break;
+ case 9: break gameloop;
+ }
+ } catch(Exception e) {
+ System.err.println(e.getLocalizedMessage());
+ }
+ }
+ }
+
// hauptmenü
// case 1:
private void spielStarten() {
//Evtl. wichtig für später, um Spielstände anzulegen und zu persistieren
- System.out.println("Bitte vergeben Sie Ihren Spielstand einen Namen: ");
+ System.out.println("Bitte vergeben Sie Ihren Spielstand einen Namen: \n");
+ System.out.print("> ");
String spielstandName = sc.nextLine();
+ System.out.println();
HashMap spielbrett = spielsystem.spielAnlegen(spielstandName);
@@ -77,5 +114,19 @@ public class UI {
}
}
-
+ public void spielstandLaden() {
+
+ }
+
+ public void regelnAnzeigen() {
+
+ }
+
+ public void highscoreAnzeigen() {
+
+ }
+
+ public void creditsAnzeigen() {
+
+ }
}