From c8fcada4272bb21ad48b7b69c16fdef5de7114f3 Mon Sep 17 00:00:00 2001 From: cbt24 Date: Mon, 20 Mar 2017 17:26:13 +1300 Subject: [PATCH] Fixed sort order for boats in race - Sort boats by leg number (preserves order when boats enter shared leg) #story [19] --- src/main/java/seng302/Model/Race.java | 3 ++- src/main/java/seng302/Model/ResizableRaceCanvas.java | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/seng302/Model/Race.java b/src/main/java/seng302/Model/Race.java index f87b0991..589edff0 100644 --- a/src/main/java/seng302/Model/Race.java +++ b/src/main/java/seng302/Model/Race.java @@ -24,7 +24,7 @@ public abstract class Race implements Runnable { protected long totalTimeElapsed; - private int SLEEP_TIME = 25; //time in milliseconds to pause in a paced loop + private int SLEEP_TIME = 50; //time in milliseconds to pause in a paced loop private int PRERACE_TIME = 10000;//Integer.MAX_VALUE; //time in milliseconds to pause during pre-race /** @@ -177,6 +177,7 @@ public abstract class Race implements Runnable { boat.setCurrentLeg(nextLeg); boat.setDistanceTravelledInLeg(boat.getDistanceTravelledInLeg()); } + FXCollections.sort(startingBoats, (a,b) -> b.getCurrentLeg().getLegNumber() - a.getCurrentLeg().getLegNumber()); } } diff --git a/src/main/java/seng302/Model/ResizableRaceCanvas.java b/src/main/java/seng302/Model/ResizableRaceCanvas.java index e3b87665..d85c3a4e 100644 --- a/src/main/java/seng302/Model/ResizableRaceCanvas.java +++ b/src/main/java/seng302/Model/ResizableRaceCanvas.java @@ -143,7 +143,7 @@ public class ResizableRaceCanvas extends Canvas { double height = getHeight(); gc.clearRect(0, 0, width, height); - System.out.println("Race Map Canvas Width: "+ width + ", Height:" + height); + //System.out.println("Race Map Canvas Width: "+ width + ", Height:" + height); this.map = new RaceMap(32.278, -64.863, 32.320989, -64.821, (int)width, (int)height); if (map == null){ @@ -176,7 +176,7 @@ public class ResizableRaceCanvas extends Canvas { if (boat != null) { // System.out.print("Drawing Boat At: " + boat.getCurrentPosition()); displayMark(this.map.convertGPS(boat.getCurrentPosition()), boat.getColour()); - displayText(boat.getName(), boat.getVelocity(), this.map.convertGPS(boat.getCurrentPosition())); + displayText(boat.getName().getValue(), boat.getVelocity(), this.map.convertGPS(boat.getCurrentPosition())); } } }