Commit Graph
219 Commits
Author SHA1 Message Date
zwu18 317582aae8 Merge branch 'issue#20fix' into Development 2017-08-17 01:35:33 +12:00
zwu18 4e8b7d3b5a Merge remote-tracking branch 'origin/master' into issue#20fix 2017-08-17 01:30:43 +12:00
zwu18 8759ac070e Merge remote-tracking branch 'origin/splashScreen' into issue#20fix 2017-08-17 01:30:38 +12:00
hba56 ee0cc4b704 Merge branch 'issue#40' into Development 2017-08-16 22:41:49 +12:00
cbt24 f7d0e9d466 Boats bounce during collision if pointing into collision
#story[1100]
2017-08-16 17:55:33 +12:00
cbt24 eaa0d2e82b Boats bounce away from marks.
- Changed onCollisionEnter signature to pass boat info

#story[1100]
2017-08-16 17:22:08 +12:00
cbt24 8113867576 Bubbles collision events to RaceLogic
- ColliderRegistry collects and forwards all Collision events
- RaceLogic observes the ColliderRegistry of its single Race instance

#story[1100]
2017-08-16 16:56:20 +12:00
cbt24 79f3c41d45 Moved generic ray casting to Collider abstract class
- Boat is now collider
- Collider subclasses specify their own collision ray and collision handler

#story[1100]
2017-08-16 16:21:55 +12:00
cbt24 8498701091 Removed commented-out file from master 2017-08-16 16:08:38 +12:00
cbt24 f44929f376 Spun off Locatable interface to make collision code more reusable
#story[1100]
2017-08-16 16:05:25 +12:00
cbt24 ce14e93404 Removed CI-breaking docstring 2017-08-16 15:17:15 +12:00
cbt24 f0d750cae1 Merge remote-tracking branch 'remotes/origin/master' into story66-collision
# Conflicts:
#	racevisionGame/src/main/java/mock/model/MockBoat.java
#	racevisionGame/src/main/java/mock/model/RaceLogic.java
#	racevisionGame/src/main/java/shared/model/CompoundMark.java
#	racevisionGame/src/main/java/shared/model/Race.java
#	racevisionGame/src/test/java/mock/model/MockBoatTest.java
2017-08-16 15:09:18 +12:00
cbt24 d63641c1e2 Cherry-picked multiple changes from master 2017-08-16 14:54:55 +12:00
hba56 fdd0b30a51 Added the ability to hide and show info table with a key press
-the wind arrow also scales with the new size of the screen
2017-08-16 02:04:07 +12:00
fjc40 85e703cba5 RaceController/info table now makes a copy of the boat list, to avoid race conditions.
#story[1095]
2017-08-15 23:10:32 +12:00
fjc40 bcb6b79f8d Fixed player boat not being highlighted.
#story[1095]
2017-08-15 22:41:43 +12:00
zwu18 5e0bcd2af5 Added control menu to title screen. Pressing control button will open a pop-up window showing game controls. 2017-08-15 21:26:23 +12:00
fjc40 a4755ed88b Maybe fixed updating boat list on FX thread. 2017-08-15 21:08:56 +12:00
fjc40 0483859c40 Fixed sparkline y axis labelling. Reverted it to how it previously worked (negative data values instead of negative scale).
issue #32
2017-08-15 20:40:29 +12:00
fjc40 9ab12a9c58 MockBoat: Removed redundant isAutoVMG() function.
TackGybeCommand now disables autoVMG.
Removed print statements from VMGCommand.
2017-08-15 18:48:14 +12:00
fjc40 dc4610d6eb Fixed sparkline not updating.
#story[1095]
2017-08-15 18:41:28 +12:00
fjc40 5ae8393126 Fixed null pointer exception when a boat finishes the race.
Boats now default to have position (0, 0).
Added mark rounding data to single player race.xml
2017-08-15 17:13:12 +12:00
fjc40 3a0bd10a57 Merge remote-tracking branch 'origin/master' into story_61
# Conflicts:
#	racevisionGame/src/main/java/mock/model/MockRace.java
#	racevisionGame/src/main/java/mock/model/commandFactory/CommandFactory.java
#	racevisionGame/src/main/java/visualiser/gameController/ControllerClient.java
#	racevisionGame/src/main/java/visualiser/gameController/ControllerServer.java
#	racevisionGame/src/main/resources/visualiser/scenes/race.fxml
2017-08-15 14:49:58 +12:00
fjc40 c9875f3987 RaceLogic no longer uses AnimationTimer for its main loop (since that ran in javafx thread). 2017-08-15 14:37:36 +12:00
cbt24 9ca50aa66c Ray casting now only supports distance specification.
#story[1100]
2017-08-15 14:26:43 +12:00
cbt24 7d64a43350 Allow collision checking to provide collision parameters to ray casting method
- Added tests for MockBoat collision direction and distance

#story[1100]
2017-08-15 13:47:59 +12:00
cbt24 2fbb96afd7 Created ray casting methods for MockBoat and CompoundMark
- Added ColliderRegistry to Race
- Added collision triggering to RaceLogic
- Created basic collision handlers for MockBoat and CompoundMark
2017-08-15 12:57:26 +12:00
cbt24 da52082d70 Deleted duplicate method (again -.-) 2017-08-15 11:40:22 +12:00
Connor Taylor-Brown 847cd1251e Merge remote-tracking branch 'remotes/origin/master' into CommandFactory
# Conflicts:
#	racevisionGame/src/main/java/mock/model/commandFactory/TackGybeCommand.java
#	racevisionGame/src/main/java/mock/model/commandFactory/VMGCommand.java
2017-08-15 01:01:06 +12:00
Connor Taylor-Brown b97bfe62a6 Fixed documentation bugs not relevant to story. 2017-08-15 00:52:50 +12:00
hba56 1bdf80417d javadoc
#story[1087]
2017-08-14 12:14:55 +12:00
fjc40 175fb11178 Javadoc fixes.
#story[1095]
2017-08-14 01:02:58 +12:00
fjc40 7366aba5ec Added empty data sources, to be used by VisualiserRace.
Created FrameRateTracker which can be used to track framerate.
Updated RequestToJoinEnum and JoinAcceptanceEnum to match the agreed connection API.
Added AssignPlayerBoat message, which is used internally on the client to assign the player a source ID once they have connected.
Fixed some race conditions in the MessageRouter.
Updated ConnectionAcceptor.CheckClientConnection to wait slightly longer before removing connection (there was a slight race condition before).
Race no longer has a reference to LatestMessages. LatestMessages no longer has specific messages types in it.
Created RaceState class, which contains the state that is shared between VisualiserRaceState and MockRaceState (currently only used on visualiser).
Split VisualiserRace into VisualiserRaceState and VisualiserRaceService.
Added the VisualiserRace commands (BoatLocatonCommand, RaceStatusCommand, etc...).
Slightly increased the preferred width of race.fxml table columns.
issues #27 #37 #35
#story[1095]
2017-08-14 00:53:05 +12:00
hba56 dc9317fe2e remove system.out statments
#story[1101]
2017-08-13 19:33:46 +12:00
hba56 67bb7b81dc Merge remote-tracking branch 'origin/story68' into story68 2017-08-13 19:10:31 +12:00
hba56 0d786f381b fix for boats finishing the race
#story[1101]
2017-08-13 19:10:16 +12:00
hba56 2acc36225e Fix for placement of invis gates and checks that boats pass through these gates
-see wiki on rounding
#story[1101]
2017-08-13 18:11:53 +12:00
Jessica Syder 8b1561cdc7 Fixed nullpointer when boat passes finish line.
- Added a condition in calculateBearingToNextMethod to avoid nullpointer
2017-08-13 16:08:14 +12:00
hba56 f90648e4ce Fixing a silly mistake where starboard side rounding checks for a port side rounding (Thank goodness for documenting manual tests)
#story[1101]
2017-08-12 23:40:28 +12:00
hba56 a05ffd023d Fixing a silly mistake where starboard side rounding checks for a port side rounding (Thank goodness for documenting manual tests)
#story[1101]
2017-08-12 22:55:25 +12:00
hba56 f386a4b989 added checks for gates and moved second rounding check to be in line with the next mark to move towards
#story[1101]
2017-08-12 22:27:27 +12:00
hba56 fe91264aec fix for the tests
#story[1101]
2017-08-12 21:10:31 +12:00
fjc40 89b0aa8b77 Implemented MessageRouter.
Added ConnectionToServerCommandFactory, and JoinSuccessfulCommand, RaceParticipantsFullCOmmand, ServerFullCommand.
Added IncomingHeartBeatCommandFactory, and IncomingHeartBeatCommand.
Added ConnectionToServerState, which represents the client's connection state to server.
Renamed VisualiserInput to VisualiserRaceController.
Added ConnectionToServer, which tracks the client's connection to server.
Added ConnectionToServerController, which accepts JoinAcceptance messages, turns them into commands, and passes them to ConnectionToServer.
Added IncomingHeartBeatService, which tracks the heart beat status of the connection.
Added IncomingHeartBeatController, which accepts HeartBeat messages, turns them into commands, and passes them to IncomingHeartBeatService.
Refactored ServerConnection a bit.
#story[1095]
2017-08-12 19:58:47 +12:00
zwu18 a31eb078a6 Created a splash screen for application. 2017-08-12 16:27:12 +12:00
hba56 62e37489ee starboard rounding update
#story[1101]
2017-08-12 03:41:50 +12:00
hba56 d70a711a3d Merge branch 'master' into story68
-updated port and starboard boat checks
-added gps method to check if on correct side of a line
-updated pos check method to make boats round marks with the new tech

# Conflicts:
#	racevisionGame/src/main/java/mock/app/ConnectionAcceptor.java
#	racevisionGame/src/main/java/mock/app/Event.java
#	racevisionGame/src/main/java/mock/model/commandFactory/TackGybeCommand.java
#	racevisionGame/src/main/java/mock/model/commandFactory/VMGCommand.java
2017-08-12 03:26:28 +12:00
hba56 499a409d4f Merge branch 'master' into story68
-updated port and starboard boat checks
-added gps method to check if on correct side of a line
-updated pos check method to make boats round marks with the new tech

# Conflicts:
#	racevisionGame/src/main/java/mock/app/ConnectionAcceptor.java
#	racevisionGame/src/main/java/mock/app/Event.java
#	racevisionGame/src/main/java/mock/model/commandFactory/TackGybeCommand.java
#	racevisionGame/src/main/java/mock/model/commandFactory/VMGCommand.java
2017-08-12 03:24:20 +12:00
zwu18 848edfc6a4 Removed commented out code. Merged master in.
#story[1097]
2017-08-12 03:20:21 +12:00
zwu18 c3ea62dfee Merge branch 'master' into CommandFactory
# Conflicts:
#	racevisionGame/src/main/java/mock/app/ConnectionAcceptor.java
#	racevisionGame/src/main/java/mock/app/Event.java
#	racevisionGame/src/main/java/mock/model/commandFactory/TackGybeCommand.java
#	racevisionGame/src/main/java/mock/model/commandFactory/VMGCommand.java
#	racevisionGame/src/main/java/visualiser/gameController/ControllerServer.java
2017-08-12 03:18:24 +12:00
zwu18 9c902dab46 Added javadoc to classes.
#story[1097]
2017-08-12 02:11:23 +12:00