Game #23
|
@ -190,7 +190,7 @@ public class Game implements GameSpecification {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public int gamePhase() throws PositionVectorNotValid {
|
public String gamePhase() throws PositionVectorNotValid {
|
||||||
while (CarsMoving() && getWinner() == NO_WINNER) {
|
while (CarsMoving() && getWinner() == NO_WINNER) {
|
||||||
userInterface.printTrack(track);
|
userInterface.printTrack(track);
|
||||||
Direction direction = null;
|
Direction direction = null;
|
||||||
|
@ -203,7 +203,11 @@ public class Game implements GameSpecification {
|
||||||
switchToNextActiveCar();
|
switchToNextActiveCar();
|
||||||
}
|
}
|
||||||
userInterface.printTrack(track);
|
userInterface.printTrack(track);
|
||||||
return getWinner();
|
int indexWinner = getWinner();
|
||||||
|
if(indexWinner == NO_WINNER){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return String.valueOf(track.getCar(indexWinner).getID());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -7,23 +7,34 @@ import java.util.List;
|
||||||
public class Main {
|
public class Main {
|
||||||
|
|
||||||
public static void main(String[] args) throws InvalidTrackFormatException, FileNotFoundException, PositionVectorNotValid {
|
public static void main(String[] args) throws InvalidTrackFormatException, FileNotFoundException, PositionVectorNotValid {
|
||||||
boolean exit = false;
|
UserInterface userInterface = new UserInterface("Hello and Welcome to Racetrack by Team02-\"AngryNerds\"");
|
||||||
UserInterface userInterface = new UserInterface("Hello and Welcome");
|
while (true) {
|
||||||
while (!exit) {
|
|
||||||
Game game = new Game(userInterface);
|
Game game = new Game(userInterface);
|
||||||
int winner = 0;
|
String winner;
|
||||||
if (game.initPhase()) {
|
if (game.initPhase()) {
|
||||||
winner = game.gamePhase();
|
winner = game.gamePhase();
|
||||||
|
List<String> optionsNewGame = new ArrayList<>();
|
||||||
|
optionsNewGame.add("exit");
|
||||||
|
optionsNewGame.add("new game");
|
||||||
|
String winnerText;
|
||||||
|
if(winner == null){
|
||||||
|
winnerText = "There was no winner.";
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
winnerText = "The Winner was Car " + winner;
|
||||||
|
}
|
||||||
|
int selectedOption = userInterface.selectOption(winnerText + "\nStart new Game?", optionsNewGame);
|
||||||
|
if(selectedOption == 0) {
|
||||||
|
userInterface.quit("Thank you and goodbye\npress enter to close the application.");
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
List<String> optionsNewGame = new ArrayList<>();
|
else {
|
||||||
optionsNewGame.add("exit");
|
userInterface.quit("The initialisation of the game failed. Press enter to close the application.");
|
||||||
optionsNewGame.add("new game");
|
break;
|
||||||
int selectedOption = userInterface.selectOption("The Winner was Car : " + winner + "\nStart new Game?", optionsNewGame);
|
|
||||||
if(selectedOption == 0) {
|
|
||||||
exit = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
userInterface.printInformation("Thank you and goodbye");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,6 +97,15 @@ public class UserInterface {
|
||||||
textTerminal.println(track.toString());
|
textTerminal.println(track.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method to dispose the Textterminal
|
||||||
|
* @param text OUtput Text
|
||||||
|
*/
|
||||||
|
public void quit(String text){
|
||||||
|
textIO.newStringInputReader().withMinLength(0).read(text);
|
||||||
|
textTerminal.dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue