Added gameflow und kleinen bug
parent
b07e0a0e02
commit
ed3c31d650
|
@ -144,7 +144,6 @@ public class KniffelSystem {
|
||||||
HashMap<String, Category> possibleCombinations = createCategoryHashMap();
|
HashMap<String, Category> possibleCombinations = createCategoryHashMap();
|
||||||
ArrayList<Category> validUpperCombinations = new ArrayList<>();
|
ArrayList<Category> validUpperCombinations = new ArrayList<>();
|
||||||
allValidCombinations = new ArrayList<>();
|
allValidCombinations = new ArrayList<>();
|
||||||
//TODO Add starwars logic
|
|
||||||
|
|
||||||
|
|
||||||
for (int dice : rolls){
|
for (int dice : rolls){
|
||||||
|
@ -415,8 +414,8 @@ public class KniffelSystem {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private String createLeaderboardString(Player player){
|
public String createLeaderboardString(Player player){
|
||||||
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd.MM.yyy");
|
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd.MM.yyyy");
|
||||||
LocalDateTime now = LocalDateTime.now();
|
LocalDateTime now = LocalDateTime.now();
|
||||||
|
|
||||||
String date = dtf.format(now);
|
String date = dtf.format(now);
|
||||||
|
@ -441,6 +440,7 @@ public class KniffelSystem {
|
||||||
while (fsc.hasNextLine()){
|
while (fsc.hasNextLine()){
|
||||||
leaderboardRows.add(fsc.nextLine());
|
leaderboardRows.add(fsc.nextLine());
|
||||||
}
|
}
|
||||||
|
fsc.close();
|
||||||
return leaderboardRows;
|
return leaderboardRows;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -452,7 +452,6 @@ public class KniffelSystem {
|
||||||
writer.write("");
|
writer.write("");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
System.out.printf("Not empty |%s| \n", stringToEnter); //! TEST
|
|
||||||
|
|
||||||
ArrayList<String> currentRows = readFromFile();
|
ArrayList<String> currentRows = readFromFile();
|
||||||
|
|
||||||
|
@ -460,14 +459,13 @@ public class KniffelSystem {
|
||||||
|
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
for(String leaderboardRow : currentRows) {
|
for(String leaderboardRow : currentRows) {
|
||||||
System.out.println(leaderboardRow);
|
sb.append(String.format("%s\n",leaderboardRow));
|
||||||
String[] row = leaderboardRow.split(",");
|
|
||||||
System.out.printf("len row: %d \n", row.length);
|
|
||||||
sb.append(String.format("%s - %s - %s \n", row[1], row[0], row[2]));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
BufferedWriter writer = new BufferedWriter(new FileWriter(lederboardLocation));
|
BufferedWriter writer = new BufferedWriter(new FileWriter(lederboardLocation));
|
||||||
writer.write(sb.toString());
|
writer.write(sb.toString());
|
||||||
|
|
||||||
|
writer.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -493,7 +491,6 @@ public class KniffelSystem {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//! TEST
|
|
||||||
public String[] getAllPlayerStrings(){
|
public String[] getAllPlayerStrings(){
|
||||||
ArrayList<Player> players = game.getPlayers();
|
ArrayList<Player> players = game.getPlayers();
|
||||||
String[] returnStrings = new String[players.size()];
|
String[] returnStrings = new String[players.size()];
|
||||||
|
|
|
@ -0,0 +1,64 @@
|
||||||
|
1. System zeigt das Hauptmenü
|
||||||
|
|
||||||
|
2. SpielerIn wählt im Hauptmenü den Punkt "1 - Play" mit dem input 1
|
||||||
|
|
||||||
|
3. System vergleicht den Input und ruft die Methode mainMenuPlay() auf
|
||||||
|
|
||||||
|
4. System fragt nach möglichen Spielmodi
|
||||||
|
|
||||||
|
5. SpielerIn wählt den Modus "default" mit dem Input 1 aus
|
||||||
|
|
||||||
|
6. System setzt in der Klasse Game.java den Spielmodus und bestimmt die entsprechende Augenzahl der Würfel
|
||||||
|
|
||||||
|
7. System gibt ausgewählten Modus zurück
|
||||||
|
|
||||||
|
8. System fragt nach Menge der MitspielerInnen (1-6)
|
||||||
|
|
||||||
|
9. SpielerIn gibt Menge der SpielerInnen ein
|
||||||
|
|
||||||
|
10. System fragt SpielerIn nach Name
|
||||||
|
|
||||||
|
11. SpielerIn gibt Name ein
|
||||||
|
|
||||||
|
12. System trägt eingetragenen SpielerIn als TeilnehmerIn ein
|
||||||
|
|
||||||
|
13. System grüßt eingetragenen Spieler*In
|
||||||
|
|
||||||
|
14. Wenn noch nicht alle SpielerInnen Namen eingegeben haben: goto 10.
|
||||||
|
|
||||||
|
15. System startet gameLoop
|
||||||
|
|
||||||
|
16. System gibt alle teilnehmende SpielerInnen aus
|
||||||
|
|
||||||
|
17. Wenn Block voll -> goto 30
|
||||||
|
|
||||||
|
18. System gibt an wer dran ist
|
||||||
|
|
||||||
|
19. System wirft Würfel
|
||||||
|
|
||||||
|
20. System gibt geworfenen Würfel aus
|
||||||
|
|
||||||
|
21. System gibt die möglichen Kombinationen mit geworfenem Wurf an
|
||||||
|
|
||||||
|
22. System fragt welche Würfel man behalten und welche neu werfen möchte
|
||||||
|
|
||||||
|
23. SpielerIn gibt an, welche Würfel behalten werden
|
||||||
|
|
||||||
|
24. Wenn weniger als 3-mal geworfen wurde -> goto 19
|
||||||
|
|
||||||
|
25. System gibt leere Zeilen aus
|
||||||
|
|
||||||
|
26. System fordert SpielerIn auf eine Zeile für den Wurf auszuwählen
|
||||||
|
|
||||||
|
27. SpielerIn gibt Zeile ein, in die Wurf geschrieben wird
|
||||||
|
|
||||||
|
28. System schreibt Wert des Wurfs in Zeile
|
||||||
|
|
||||||
|
29. System geht über in den nächsten Zug
|
||||||
|
|
||||||
|
30. System ruft afterGame auf
|
||||||
|
|
||||||
|
31. System kalkuliert für jeden SpielerIn die Punktzahl und gibt sie aus
|
||||||
|
|
||||||
|
32. System schreibt Punkte der SpielerInnen in das Leaderboard
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
Victor,1337,24.12.00
|
Victor,1337,24.12.00
|
||||||
Nastja,999,07.05.2024
|
Nastja,999,07.05.2024
|
||||||
Luke,404,04.05.2024
|
Luke,404,04.05.2024
|
||||||
|
Vikkes,258,07.05.2024
|
||||||
|
|
|
|
@ -1,9 +1,7 @@
|
||||||
package tui;
|
package tui;
|
||||||
|
|
||||||
import domain.Player;
|
|
||||||
import fassade.KniffelSystem;
|
import fassade.KniffelSystem;
|
||||||
|
|
||||||
import java.io.FileNotFoundException;
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
|
@ -84,7 +82,7 @@ public class TUI {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private static void gameLoop(){
|
private static void gameLoop() {
|
||||||
String[] playerStrings = gameSystem.getAllPlayerStrings();
|
String[] playerStrings = gameSystem.getAllPlayerStrings();
|
||||||
|
|
||||||
System.out.println("Participating players:");
|
System.out.println("Participating players:");
|
||||||
|
@ -93,7 +91,6 @@ public class TUI {
|
||||||
}
|
}
|
||||||
System.out.println();
|
System.out.println();
|
||||||
|
|
||||||
int turncounter = 0;
|
|
||||||
int rollscount;
|
int rollscount;
|
||||||
|
|
||||||
while (true){
|
while (true){
|
||||||
|
@ -186,6 +183,7 @@ public class TUI {
|
||||||
|
|
||||||
for(String leaderboardRow : leaderboardRows) {
|
for(String leaderboardRow : leaderboardRows) {
|
||||||
String[] row = leaderboardRow.split(",");
|
String[] row = leaderboardRow.split(",");
|
||||||
|
System.out.printf("Len row: %d \n", row.length);
|
||||||
sb.append(String.format("%s - %s - %s \n", row[1], row[0], row[2]));
|
sb.append(String.format("%s - %s - %s \n", row[1], row[0], row[2]));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue