diff options
Diffstat (limited to '')
| -rw-r--r-- | src/main/java/design/controller/userinput/menus/CourseSelectMenu.java | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/src/main/java/design/controller/userinput/menus/CourseSelectMenu.java b/src/main/java/design/controller/userinput/menus/CourseSelectMenu.java deleted file mode 100644 index 4b53adb..0000000 --- a/src/main/java/design/controller/userinput/menus/CourseSelectMenu.java +++ /dev/null @@ -1,68 +0,0 @@ -package design.controller.userinput.menus; - -import design.controller.userinput.Menu; -import design.controller.userinput.MenuOption; -import design.model.Course; -import design.model.Golfer; -import design.model.Hole; -import design.model.Round; - -import java.time.LocalDateTime; -import java.util.Arrays; -import java.util.List; -import java.util.Scanner; - -import design.runtime.Session; - -public class CourseSelectMenu extends Menu { - private final Golfer golfer = Session.getCurrentGolfer(); - - @Override - public String getTitle() { - return "course select"; - } - - @Override - public List<MenuOption> getMenuOptions() { - return Arrays.stream(golfer.getCourses()) - .map(i -> new MenuOption(i.toString(), () -> promptHole(i))) - .toList(); - } - - @Override - public void present() { - // Checks user has courses of not informs them to add one to there profile - if (golfer.getCourses().length == 0) { - System.out.println("You don't have any courses saved to your profile yet."); - System.out.println("Use the 'Add Course to Profile' menu first."); - new MainMenu().present(); - return; - } - - super.present(); - } - - private void promptHole(Course selected) { - Scanner sc = new Scanner(System.in); - // Gets starting hole on course - int startHoleNum = 1; - int holeCount = selected.getHoleCount(); - // Asks for a hole number until a valid number is selected - System.out.print("Starting hole (1.." + holeCount + ", blank=1): "); - String s = sc.nextLine().trim(); - if (!s.isEmpty()) { - int start = Integer.parseInt(s); - if (start < 1 || start > holeCount) { - System.out.println("Starting hole must be between 1 and " + holeCount + "."); - return; - } - startHoleNum = start; - } - // Starts round and sends user to HolePlayMenu - Hole startHole = selected.getHoles().get(startHoleNum - 1); - Round r = new Round(selected, LocalDateTime.now(), startHole); - golfer.addRound(r); - new HolePlayMenu(r).present(); - } - -} |
