From 2d777b8903d86e361a209ff385565eb802b13669 Mon Sep 17 00:00:00 2001 From: Fan-Wu Yang Date: Thu, 9 Mar 2017 16:03:27 +1300 Subject: [PATCH] Implemented user input - Changed it from launching the program with args setting to with Scanner. - Changed field 'factor' to 'timescale' in Race class #story [5] #pair[fwy13, cbt24] --- .idea/misc.xml | 15 +------------- src/main/java/seng302/App.java | 20 ++++++++++++++++--- .../java/seng302/ConstantVelocityRace.java | 4 ++-- src/main/java/seng302/Event.java | 4 ---- src/main/java/seng302/Race.java | 11 +++++----- src/main/java/seng302/RandomisedRace.java | 4 ++-- 6 files changed, 28 insertions(+), 30 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index dfca8c47..3dd364d0 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,8 +1,5 @@ - - - - - - - - - - - - - - + diff --git a/src/main/java/seng302/App.java b/src/main/java/seng302/App.java index afac5963..348b3dcd 100644 --- a/src/main/java/seng302/App.java +++ b/src/main/java/seng302/App.java @@ -1,11 +1,25 @@ package seng302; +import java.util.Scanner; + public class App { public static void main( String[] args ) { - int factor = 200; // Scale 5 min to 1 min - if(args.length > 0 && args[0].equals("-5")) factor = 1000; // 1:1 scale + int timescale = 0; // Scale 5 min to 1 min, 1min = 200 5 min = 1000 + + Scanner sc = new Scanner(System.in); + while(timescale != 1 && timescale != 5) { + System.out.println("Enter whether you wish the race to last 1 or 5 minutes."); + String input = sc.nextLine(); + try { + timescale = Integer.parseInt(input); + }catch (Exception e){ + System.out.println("Please Enter a 1 or 5."); + } + } + + timescale = timescale == 1 ? 200: 1000; //200ms = 1000ms if 1 minute elapse else 1000ms = 1000ms if 5 minutes Boat[] boats = { new Boat("ORACLE TEAM USA", 11), @@ -25,7 +39,7 @@ public class App new RaceMarker("Finish", 3035, 475, 1015) }; - Race race = new ConstantVelocityRace(boats, marks, factor); + Race race = new ConstantVelocityRace(boats, marks, timescale); race.simulateRace(); } } diff --git a/src/main/java/seng302/ConstantVelocityRace.java b/src/main/java/seng302/ConstantVelocityRace.java index 0dc24199..1f4641af 100644 --- a/src/main/java/seng302/ConstantVelocityRace.java +++ b/src/main/java/seng302/ConstantVelocityRace.java @@ -6,8 +6,8 @@ import java.util.Collections; * Created by cbt24 on 6/03/17. */ public class ConstantVelocityRace extends Race { - public ConstantVelocityRace(Boat[] boats, RaceMarker[] marks, int factor) { - super(boats, marks, factor); + public ConstantVelocityRace(Boat[] boats, RaceMarker[] marks, int timescale) { + super(boats, marks, timescale); generateRace(); } diff --git a/src/main/java/seng302/Event.java b/src/main/java/seng302/Event.java index 26ed9480..0cc72c05 100644 --- a/src/main/java/seng302/Event.java +++ b/src/main/java/seng302/Event.java @@ -36,10 +36,6 @@ public class Event { return boat; } - public void setTime(int time){ - this.time = time; - } - public int getTime(){ return this.time; } diff --git a/src/main/java/seng302/Race.java b/src/main/java/seng302/Race.java index 5ce8e504..69656156 100644 --- a/src/main/java/seng302/Race.java +++ b/src/main/java/seng302/Race.java @@ -9,15 +9,16 @@ import java.util.*; public class Race { Boat[] boats; RaceMarker[] marks; - int factor; + int timescale = 1000; LinkedList events = new LinkedList(); Timer timer = new Timer(); - public Race(Boat[] boats, RaceMarker[] marks, int factor) { + + public Race(Boat[] boats, RaceMarker[] marks, int timescale) { this.boats = boats; this.marks = marks; - this.factor = factor; + this.timescale = timescale; } public void simulateRace(){ @@ -37,7 +38,7 @@ public class Race { public void run(){ System.out.println(event); } - }, event.getTime() * factor); + }, event.getTime() * timescale); } /* @@ -58,7 +59,7 @@ public class Race { } } } - }, (events.getLast().getTime() + 1) * factor); + }, (events.getLast().getTime() + 1) * timescale); } } diff --git a/src/main/java/seng302/RandomisedRace.java b/src/main/java/seng302/RandomisedRace.java index de6e0770..e675a2d9 100644 --- a/src/main/java/seng302/RandomisedRace.java +++ b/src/main/java/seng302/RandomisedRace.java @@ -7,8 +7,8 @@ import java.util.Random; * Created by cbt24 on 6/03/17. */ public class RandomisedRace extends Race { - public RandomisedRace(Boat[] boats, RaceMarker[] marks, int factor) { - super(boats, marks, factor); + public RandomisedRace(Boat[] boats, RaceMarker[] marks, int timescale) { + super(boats, marks, timescale); generateRace(); }