From 364264377a0454bde02de48fdb473f75cf175e76 Mon Sep 17 00:00:00 2001 From: Kusal Ekanayake Date: Sat, 23 Sep 2017 15:04:11 +1200 Subject: [PATCH] Fixed merge errors and reimplemented handling multiplier #story[1274] --- src/main/java/seng302/gameServer/GameState.java | 10 +++++----- src/main/java/seng302/model/ServerYacht.java | 14 +++++++++----- .../visualiser/controllers/LobbyController.java | 2 +- .../dialogs/BoatCustomizeController.java | 12 ++++++------ src/test/java/steps/ToggleSailSteps.java | 1 + 5 files changed, 22 insertions(+), 17 deletions(-) diff --git a/src/main/java/seng302/gameServer/GameState.java b/src/main/java/seng302/gameServer/GameState.java index 9735b0c0..4efb1d23 100644 --- a/src/main/java/seng302/gameServer/GameState.java +++ b/src/main/java/seng302/gameServer/GameState.java @@ -462,17 +462,17 @@ public class GameState implements Runnable { // TODO: 15/08/17 remove magic numbers from these equations. if (yacht.getSailIn()) { if (currentVelocity < maxBoatSpeed - 500) { - yacht.changeVelocity((maxBoatSpeed / 100) * yacht.getAcceleration()); + yacht.changeVelocity((maxBoatSpeed / 100) * yacht.getAccelerationMultiplier()); } else if (currentVelocity > maxBoatSpeed + 500) { - yacht.changeVelocity((-currentVelocity / 200) * yacht.getAcceleration()); + yacht.changeVelocity((-currentVelocity / 200) * yacht.getAccelerationMultiplier()); } else { - yacht.setCurrentVelocity((maxBoatSpeed) * yacht.getAcceleration()); + yacht.setCurrentVelocity((maxBoatSpeed) * yacht.getAccelerationMultiplier()); } } else { if (currentVelocity > 3000) { - yacht.changeVelocity((-currentVelocity / 200) * yacht.getAcceleration()); + yacht.changeVelocity((-currentVelocity / 200) * yacht.getAccelerationMultiplier()); } else if (currentVelocity > 100) { - yacht.changeVelocity((-currentVelocity / 50) * yacht.getAcceleration()); + yacht.changeVelocity((-currentVelocity / 50) * yacht.getAccelerationMultiplier()); } else if (currentVelocity <= 100) { yacht.setCurrentVelocity(0d); } diff --git a/src/main/java/seng302/model/ServerYacht.java b/src/main/java/seng302/model/ServerYacht.java index 73628e33..37065649 100644 --- a/src/main/java/seng302/model/ServerYacht.java +++ b/src/main/java/seng302/model/ServerYacht.java @@ -29,7 +29,8 @@ public class ServerYacht { private BoatMeshType boatType; private Double turnStep = 5.0; private Double maxSpeedMultiplier = 1.0; - private Double acceleration = 1.0; + private Double turnStepMultiplier = 1.0; + private Double accelerationMultiplier = 1.0; private Integer sourceId; private String hullID; //matches HullNum in the XML spec. private String shortName; @@ -133,7 +134,7 @@ public class ServerYacht { * @param amount the amount by which to adjust the boat heading. */ public void adjustHeading(Double amount) { - Double newVal = heading + amount; + Double newVal = heading + (amount * turnStepMultiplier); lastHeading = heading; heading = (double) Math.floorMod(newVal.longValue(), 360L); } @@ -272,7 +273,7 @@ public class ServerYacht { private void turnTowardsHeading(Double newHeading) { Double newVal = heading - newHeading; if (Math.floorMod(newVal.longValue(), 360L) > 180) { - adjustHeading(turnStep / 5); + adjustHeading(turnStep / 5); } else { adjustHeading(-turnStep / 5); } @@ -426,6 +427,9 @@ public class ServerYacht { } public void setBoatType(BoatMeshType boatType) { + this.accelerationMultiplier = boatType.accelerationMultiplier; + this.maxSpeedMultiplier = boatType.maxSpeedMultiplier; + this.turnStepMultiplier = boatType.turnStep; this.boatType = boatType; } @@ -433,8 +437,8 @@ public class ServerYacht { return maxSpeedMultiplier; } - public Double getAcceleration(){ - return acceleration; + public Double getAccelerationMultiplier(){ + return accelerationMultiplier; } diff --git a/src/main/java/seng302/visualiser/controllers/LobbyController.java b/src/main/java/seng302/visualiser/controllers/LobbyController.java index 67b1dfbd..aa8430b8 100644 --- a/src/main/java/seng302/visualiser/controllers/LobbyController.java +++ b/src/main/java/seng302/visualiser/controllers/LobbyController.java @@ -131,7 +131,7 @@ public class LobbyController implements Initializable { .get(ViewManager.getInstance().getGameClient().getServerThread().getClientId()) .getBoatName()); controller.setCurrentBoat(this.playerBoats.get(ViewManager.getInstance().getGameClient().getServerThread().getClientId()) - .getBoatType()); + .getBoatType().toString()); return customizationDialog; } diff --git a/src/main/java/seng302/visualiser/controllers/dialogs/BoatCustomizeController.java b/src/main/java/seng302/visualiser/controllers/dialogs/BoatCustomizeController.java index 5b0cf70b..321f98dd 100644 --- a/src/main/java/seng302/visualiser/controllers/dialogs/BoatCustomizeController.java +++ b/src/main/java/seng302/visualiser/controllers/dialogs/BoatCustomizeController.java @@ -122,7 +122,7 @@ public class BoatCustomizeController implements Initializable{ } public void setCurrentBoat(String boatType) { - currentBoat = boatType; + currentBoat = BoatMeshType.valueOf(boatType); displayCurrentBoat(); refreshStatBars(currentBoat); } @@ -155,7 +155,7 @@ public class BoatCustomizeController implements Initializable{ boatPane.getChildren().add(group); BoatModel bo = ModelFactory.boatCustomiseView(currentBoat, colorPicker.getValue()); group.getChildren().add(bo.getAssets()); - refreshStatBars(bo); + refreshStatBars(currentBoat); } private void generateMaxStats() { @@ -172,9 +172,9 @@ public class BoatCustomizeController implements Initializable{ } } - private void refreshStatBars(BoatModel bo) { - speedBar.setProgress((bo.getMeshType().maxSpeedMultiplier) / maxSpeedMultiplier); - accelBar.setProgress(bo.getMeshType().accelerationMultiplier / maxAcceleration); - handleBar.setProgress(bo.getMeshType().turnStep / maxTurnRate); + private void refreshStatBars(BoatMeshType bo) { + speedBar.setProgress((bo.maxSpeedMultiplier) / maxSpeedMultiplier); + accelBar.setProgress(bo.accelerationMultiplier / maxAcceleration); + handleBar.setProgress(bo.turnStep / maxTurnRate); } } diff --git a/src/test/java/steps/ToggleSailSteps.java b/src/test/java/steps/ToggleSailSteps.java index 4bf20242..5c82a614 100644 --- a/src/test/java/steps/ToggleSailSteps.java +++ b/src/test/java/steps/ToggleSailSteps.java @@ -13,6 +13,7 @@ import seng302.model.ServerYacht; import seng302.visualiser.ClientToServerThread; /** + * * Created by kre39 on 7/08/17. */ public class ToggleSailSteps {