diff options
| author | Tyler Ferrari <69283684+Sowgro@users.noreply.github.com> | 2025-10-08 15:29:14 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-08 15:29:14 -0400 |
| commit | bf6b01e5005618e6ccdfb4217311a8f94dd5a0dd (patch) | |
| tree | 9d1a8af5e7829d0357ecfe8d0d9d51eb4c929091 /src/main/java/design/controller/userinput/menus/HolePlayMenu.java | |
| parent | 701aba30fe05f65ab0e027f9d9aac0928d814560 (diff) | |
| parent | a20f2f027981ce9c7677b969be24c962c0029907 (diff) | |
| download | designproject-design-6-bf6b01e5005618e6ccdfb4217311a8f94dd5a0dd.tar.gz designproject-design-6-bf6b01e5005618e6ccdfb4217311a8f94dd5a0dd.tar.bz2 designproject-design-6-bf6b01e5005618e6ccdfb4217311a8f94dd5a0dd.zip | |
Merge pull request #9 from RIT-SWEN-262/lizzio-SelectClub
Lizzio select club
Diffstat (limited to 'src/main/java/design/controller/userinput/menus/HolePlayMenu.java')
| -rw-r--r-- | src/main/java/design/controller/userinput/menus/HolePlayMenu.java | 37 |
1 files changed, 31 insertions, 6 deletions
diff --git a/src/main/java/design/controller/userinput/menus/HolePlayMenu.java b/src/main/java/design/controller/userinput/menus/HolePlayMenu.java index e12bdfa..14e5345 100644 --- a/src/main/java/design/controller/userinput/menus/HolePlayMenu.java +++ b/src/main/java/design/controller/userinput/menus/HolePlayMenu.java @@ -44,13 +44,38 @@ public class HolePlayMenu extends Menu { } else { // 0) Take a shot opts.add(new MenuOption("take a shot", () -> { - // Gets club + // loads golfers clubs + var golfer = Session.getCurrentGolfer(); + Club[] clubs = (golfer == null) ? new Club[0] : golfer.getClubs(); + + if (clubs.length == 0) { + System.out.println("You don't have any clubs yet. Add one first."); + new AddClubMenu().present(); + this.present(); + return; + } + + // list clubs + System.out.println("-- YOUR CLUBS --"); + for (int i = 0; i < clubs.length; i++) { + Club c = clubs[i]; + System.out.printf("%d: #%d %s - %s (%s)%n", + i + 1, c.getId(), c.getNickname(), c.getManufacture(), c.getClubType()); + } + + // user selects one of their clubs Scanner sc = new Scanner(System.in); - System.out.print("Club nickname: "); - String nick = sc.nextLine().trim(); - // Defaulted to Driver for now - // TODO update logic - Club club = new Club("Generic", nick, Club.ClubType.DRIVER); + Club club = null; + while (club == null) { + System.out.print("Select club # (1.." + clubs.length + "): "); + String line = sc.nextLine().trim(); + int idx = Integer.parseInt(line); + if (idx < 1 || idx > clubs.length) { + System.out.println("Out of range. Try again."); + continue; + } + club = clubs[idx - 1]; + } // Get shot distance (defaults to 0 of not stated) System.out.print("Distance (yds, blank=0): "); |
