mirror of
https://github.com/michaelrausch/Party-Parrots-At-Sea.git
synced 2026-05-09 06:18:44 +00:00
Fixed some bugs
/#pair[hyi25, mra106]
This commit is contained in:
@@ -7,10 +7,8 @@ public class App
|
||||
{
|
||||
/**
|
||||
* Builds a race object for the AC35 course
|
||||
*
|
||||
* @param numberOfBoats, the number of boats to include in the race
|
||||
*/
|
||||
public static Race createRace(int numberOfBoats) throws Exception{
|
||||
public static Race createRace() throws Exception{
|
||||
Race race = new Race();
|
||||
|
||||
// Read team names from file
|
||||
@@ -18,6 +16,13 @@ public class App
|
||||
ArrayList<String> boatNames = new ArrayList<>();
|
||||
ArrayList<Map<String, Object>> teams = fp.getTeams();
|
||||
|
||||
//get race size
|
||||
int numberOfBoats = (int) fp.getRaceSize();
|
||||
|
||||
//get time scale
|
||||
int timeScale = (int) fp.getTimeScale();
|
||||
race.setTimeScale(timeScale);
|
||||
|
||||
for (Map<String, Object> team : teams) {
|
||||
boatNames.add((String) team.get("team-name"));
|
||||
}
|
||||
@@ -52,7 +57,7 @@ public class App
|
||||
Race race = null;
|
||||
|
||||
try{
|
||||
race = createRace(2);
|
||||
race = createRace();
|
||||
}
|
||||
catch (Exception e){
|
||||
System.out.println(e);
|
||||
|
||||
@@ -135,6 +135,14 @@ public class Race {
|
||||
return this.legs;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets time scale
|
||||
* @param timeScale
|
||||
*/
|
||||
public void setTimeScale(int timeScale) {
|
||||
this.timeScale = timeScale;
|
||||
}
|
||||
|
||||
/**
|
||||
* Temporary method used to generated all the events.
|
||||
*/
|
||||
@@ -144,7 +152,7 @@ public class Race {
|
||||
for (Boat boat : this.boats) {
|
||||
long totalDistance = 0;
|
||||
for (Leg leg : this.legs) {
|
||||
long time = (long) (1000 * totalDistance / (boat.getVelocity() * this.timeScale));
|
||||
long time = (long) (1000 * totalDistance / boat.getVelocity());
|
||||
Event event = new Event(time, boat, leg);
|
||||
events.add(event);
|
||||
totalDistance += leg.getDistance();
|
||||
@@ -173,7 +181,7 @@ public class Race {
|
||||
// iterates all events. ends when no event in events.
|
||||
while (!events.isEmpty()) {
|
||||
Event peekEvent = events.peek();
|
||||
long currentTime = System.currentTimeMillis() - this.startTime;
|
||||
long currentTime = (System.currentTimeMillis() - this.startTime) * this.timeScale;
|
||||
|
||||
if (currentTime > peekEvent.getTime()) {
|
||||
// pull out the event
|
||||
|
||||
Reference in New Issue
Block a user