Connor Taylor-Brown
dc9445a8a6
Merge branch 'master' into story1291-hp
...
# Conflicts:
# racevisionGame/src/main/resources/visualiser/scenes/newRaceView.fxml
2017-09-21 23:40:46 +12:00
Connor Taylor-Brown
5473fde731
Merge remote-tracking branch 'remotes/origin/master' into story1291-hp
2017-09-21 12:49:27 +12:00
Connor Taylor-Brown
6c78e5d0b5
Tomato now depletes as expected
...
#story[1291]
2017-09-21 12:10:33 +12:00
Connor Taylor-Brown
10008f5452
Depleting tomato now watches player health
...
- [BUG] Tomato fills up instead of depleting
#story[1291]
2017-09-21 01:42:53 +12:00
Connor Taylor-Brown
b0bc7f50f2
Updated FXMLs to add depleting tomato
...
- Tab view now contains health column
- BoatStateCommand now fails silently if command is received before race state is set up
#story[1291]
2017-09-20 18:22:14 +12:00
Connor Taylor-Brown
23040ecff4
Created separate listeners for all boats' and player boat health
...
#story[1291]
2017-09-20 14:34:22 +12:00
Connor Taylor-Brown
0d89574c1f
RaceViewController listens to health changes on the local player's boat
...
#story[1291]
2017-09-20 14:29:31 +12:00
Connor Taylor-Brown
7eb59cdcfc
Allowed fractional health deductions per frame
...
- Fixed boundary penalty system
#story[1291]
2017-09-20 14:18:39 +12:00
Connor Taylor-Brown
50d5dd02a2
BoatState message can be received from mock by visualiser
...
- Basic penalties have been made for out of bounds and collisions
- RaceServer packages and sends BoatState messages for each boat
- ServerConnection routes BoatState messages instead of dropping by default
- VisualiserRaceCommandFactory produces BoatStateCommands
#story[1291]
2017-09-20 14:07:50 +12:00
Connor Taylor-Brown
a295728e89
Created encoder and decoder for BoatState messages (HP packets)
...
- Added new MessageType.BOATSTATE enum to support new message type
- Modified EncoderFactory and DecoderFactory to support new enum
- Verify that original and decoded messages match
#story[1291]
2017-09-20 00:52:06 +12:00
Connor Taylor-Brown
8d9624db96
Recovered sails smoothing
...
- Boat default position is now overridden only by collision command
- Sails command overrides boat velocity
#story[1195]
2017-09-14 23:01:29 +12:00
Connor Taylor-Brown
90c258e9e9
Reset collision tag on visualiser boat after displaying collision
...
- Modified View3D to index subjects rather than shapes by source ID
- Enforced one collision per boat on server to reduce rendering load
- Changed collision radius to less than bounce radius
- Fixed game-breaking null command bug
#story[1195]
2017-09-14 22:36:18 +12:00
cbt24
02b4146fa3
Amended collision effect radius
...
#story[1195]
2017-09-14 16:24:14 +12:00
cbt24
7d58b05e38
Fixed collision not fading to zero
...
#story[1195]
2017-09-14 16:23:21 +12:00
cbt24
cdc7b642db
Boat now shows a fading collision effect
...
#story[1195]
2017-09-14 16:22:04 +12:00
Connor Taylor-Brown
f2370485a0
RaceController can now set up collision listeners on each boat.
...
#story[1195]
2017-09-14 12:48:02 +12:00
Connor Taylor-Brown
e354320d74
Replaced camera tracking listeners with animation timer
...
- Documented animation timers and mark arrow
#story[1195]
2017-09-14 12:20:55 +12:00
Connor Taylor-Brown
b8c4582d2a
Replaced mark arrow listener with animation timer.
...
#story[1195]
2017-09-14 12:06:47 +12:00
cbt24
de9f4e22eb
Direction to mark arrow is now displayed relative to camera
...
#story[1195]
2017-09-13 16:10:41 +12:00
Connor Taylor-Brown
5f96526fcc
Added "arrow" pointing to next mark on third person view
...
#story[1195]
2017-09-13 15:34:02 +12:00
Connor Taylor-Brown
e657a0cc99
Added tracking for angle between third person boat and next mark
...
#story[1195]
2017-09-13 14:44:18 +12:00
Connor Taylor-Brown
83e696b79e
Committed merge-related bug fixes
2017-09-13 13:18:25 +12:00
Connor Taylor-Brown
70bbc89239
Fixed merge-related bugs
2017-09-13 13:12:26 +12:00
Connor Taylor-Brown
0f846f31c3
Merge remote-tracking branch 'origin/storyD-3D' into storyD-3D
...
# Conflicts:
# racevisionGame/src/main/java/visualiser/layout/SkyBox.java
2017-09-13 12:28:29 +12:00
Connor Taylor-Brown
963c8a43ad
Boats and marks are sized realistically in 3rd person
...
- Changed SeaSurface to Subject3D to suppress scaling
- Cameras can now be selected through View3D interface
#story[1190]
2017-09-13 12:25:52 +12:00
Connor Taylor-Brown
bae428fb3f
Recovered a private method used in a test
2017-09-12 17:44:05 +12:00
Connor Taylor-Brown
c94e0af69c
Removed remaining println statements
2017-09-12 17:35:51 +12:00
Connor Taylor-Brown
01a304efb9
Merge remote-tracking branch 'remotes/origin/master' into storyB-)
2017-09-12 17:23:47 +12:00
Connor Taylor-Brown
fbd124e602
Merge branch 'master' into storyB-)
...
# Conflicts:
# racevisionGame/src/main/java/shared/model/Constants.java
2017-09-12 15:40:49 +12:00
Connor Taylor-Brown
59bd22c2aa
Fixed mark rounding
...
- Returning mark 2 as mark 1 breaks rounding calculations
#story[1195]
2017-09-12 13:52:29 +12:00
Connor Taylor-Brown
0f316afb3c
Added colour indication to next mark
...
- Colour is swapped with end mark in leg when mark is passed
#story[1195]
2017-09-12 13:36:31 +12:00
Connor Taylor-Brown
b902b05e5e
Wrote possible fix for issue #50 (Composite command tries to remove non-existent element)
2017-09-12 11:46:57 +12:00
Connor Taylor-Brown
d90b161d01
Merge branch 'master' into storyA_sounds
...
# Conflicts:
# racevisionGame/src/main/java/mock/model/RaceServer.java
# racevisionGame/src/main/java/visualiser/Controllers/HostController.java
# racevisionGame/src/main/java/visualiser/Controllers/MainController.java
# racevisionGame/src/main/java/visualiser/Controllers/TitleController.java
2017-09-12 11:11:39 +12:00
Connor Taylor Brown
0ea647b9fd
Merge branch 'story70' into 'master'
...
Story70 Merge Request
Acceptance criteria:
Only the player's boat is present (there are no other boats) and no other course elements are present.
Each key function is introduced, and the player given the opportunity to use that (and only) that key, and observe the result.
The practice ends when the final key has been taught.
At least the up/down, tack/gybe, sails in/out keys must be taught.
[manual tests](https://eng-git.canterbury.ac.nz/seng302-2017/team-7/wikis/manual-test:-tutorial-mode )
See merge request !40
2017-09-11 21:42:06 +12:00
Connor Taylor-Brown
5e35cd4195
Removed empty java files
2017-09-11 20:31:20 +12:00
cbt24
70f4a00d12
Scaled down marks and boats to make 3rd person view more realistic
...
- Added boat and mark annotations to support selection at large camera distance
- Reduced collision radius to 15 m
- Fixed event startup and XML files as race was crashing on start
#story[1296]
2017-09-09 17:09:14 +12:00
cbt24
2508b847b8
Merge branch 'master' into storyD-3D
...
# Conflicts:
# racevisionGame/src/main/java/visualiser/Controllers/RaceController.java
# racevisionGame/src/main/java/visualiser/layout/Subject3D.java
2017-09-09 15:26:33 +12:00
cbt24
643f145407
Added mark radius 3D annotation to improve bird's eye visibility
...
#story[1261]
2017-09-09 14:44:58 +12:00
Connor Taylor-Brown
93883ee8b7
Added more descriptive documentation to new classes and functionality
...
#story[1190]
2017-09-08 23:48:47 +12:00
Connor Taylor-Brown
0c9e55093c
Set lobby anchor pane to invisible to allow races to start
2017-09-08 17:11:21 +12:00
Connor Taylor-Brown
b034a452b6
Fixed problem with race pane registering non-control keys
...
#story[1190]
2017-09-08 16:30:03 +12:00
Connor Taylor-Brown
68f434b6b6
Bound zooming action to zoom keys
...
- View3D subject selection is no longer enabled by default
- Added documentation
#story[1190]
2017-09-08 15:49:53 +12:00
Connor Taylor-Brown
1efec06bdc
View3D can untrack objects and zoom in different modes
...
- updateDistance zooms between 0 and infinity
- Camera switches from third person to bird's eye when reaching a set distance
- Only one subject can be tracked at a time
#story[1190]
2017-09-08 14:21:03 +12:00
Connor Taylor-Brown
23eabed3ff
View3D tracks selected boat at fixed distance, pitch, and relative yaw
...
#story[1190]
2017-09-08 12:58:06 +12:00
Connor Taylor-Brown
b59eca1a8b
Added Subject3D selection to View3D
...
- Changed how View3D is added to canvasBase to allow events to get through
#story[1190]
2017-09-08 12:43:36 +12:00
Connor Taylor-Brown
54baf4f884
Added scroll-wheel zooming
...
- Race pane listens to scroll delta and sets View3D distance accordingly
- GPSConverter has more applicable property names for infinite 3D
#story[1190]
2017-09-07 23:22:27 +12:00
cbt24
8c7345a30d
Documented command classes
...
#story[1196]
2017-09-07 17:01:47 +12:00
cbt24
a6db06a82c
Boats now reverse smoothly when colliding
...
- Collision objects specify which boat is colliding
- RaceLogic sets up an observable CollisionCommand when collision bubbles up
- Boats now selectively identify observers of collision
#story[1196]
2017-09-07 16:57:07 +12:00
cbt24
9cba3934ea
Sails command now applies acceleration to boat
...
- Race only has control over speed while Sails command is not in action
- This is governed by a default velocity property on the boat
- Sails command returns control when sails are out and boat is up to speed
- Speed never falls below 0
- Speed never goes above VMG velocity to prevent exploitation
#story[1196]
2017-09-07 14:50:53 +12:00
cbt24
eba70ab2d4
Sails command now listens to race to check if goal velocity is met
...
#story[1196]
2017-09-07 14:27:20 +12:00
cbt24
b62344261a
Merge remote-tracking branch 'remotes/origin/master' into storyB-)
2017-09-07 13:29:23 +12:00
cbt24
844b48a81a
Resolved issue #42 - "putting sails out changes boat bearing to face target gate"
...
#story[1196]
2017-09-07 13:23:56 +12:00
Connor Taylor-Brown
e3e61e5b28
Merge remote-tracking branch 'remotes/origin/master' into storyD-3D
2017-09-06 23:51:46 +12:00
Connor Taylor-Brown
d89186d8bf
Finished playable 3D race with first person camera
...
- Camera pivot must be manually updated
- GPS coordinates are scaled by an arbitrary amount to make movement visible
- Model has to be flipped 180 degrees to move forward
#story[1261]
2017-09-06 14:36:24 +12:00
cbt24
19f4d0fc06
Added marks back to the race view
...
#story[1261]
2017-09-05 16:50:26 +12:00
cbt24
05a0614246
Boats now rotate correctly in position rather than about the origin
...
#story[1261]
2017-09-05 16:02:20 +12:00
cbt24
3ecf203cba
Recovered stable rotation of the player's boat
...
- Uses AnimationTimer rather than listeners
- Reduced pre-start time to speed up testing
#story[1261]
2017-09-05 15:19:04 +12:00
Connor Taylor-Brown
c74cc26bf1
Merged with master and changed View3D default background
...
- Removed sparkline from RaceController
#story[1261]
2017-09-05 12:17:55 +12:00
Connor Taylor-Brown
b8c99be201
Merge branch 'master' into storyD-3D
...
# Conflicts:
# racevisionGame/src/main/java/visualiser/Controllers/RaceController.java
2017-09-05 00:17:22 +12:00
cbt24
971a061499
View3D within RaceController now tracks boat heading
...
- Race leaves lobby on Warning status for development
- Latest subject added is used as camera pivot
#story[1261]
2017-09-04 18:51:37 +12:00
Connor Taylor-Brown
0ee448e17d
Created wrapper for controlling the position and heading of rendered 3D models.
...
- Updated View3D to use Subject3D wrappers instead of Shape3D
- Fixed HostController for the new architecture
- Made position and heading observable in VisualiserBoat
- Attached listeners to each VisualiserBoat in RaceController
#story[1261]
2017-09-04 01:27:29 +12:00
Connor Taylor-Brown
368bb8ddb3
Changed reporting plugin settings and specified central repository
2017-09-03 23:35:18 +12:00
Connor Taylor-Brown
42ac733d72
Flush match table on a scheduled rate.
...
#story[1196]
2017-09-01 11:57:24 +12:00
cbt24
2f8daf757a
Added scheduled match list broadcast to MatchBrowser
...
- Changed MatchTable to map ClientAddress to HostGame
- Send match list as HostedGamesRequest to multicast address (239.0.0.1:4941)
#story[1188]
2017-08-31 17:34:02 +12:00
Connor Taylor-Brown
3cc806dc45
Returned rotation to boat in lobby
...
#story[1196]
2017-08-31 01:06:33 +12:00
Connor Taylor-Brown
fb7bf572d8
Changed View3D add-remove interface to an ObservableList
...
#story[1196]
2017-08-31 00:59:36 +12:00
Connor Taylor-Brown
b6e56d815c
ResizableRaceCanvas no longer depends on VisualiserRaceEvent
...
#story[1196]
2017-08-30 18:52:29 +12:00
Connor Taylor-Brown
c2fd5c9bae
Changed box to boat mesh
...
- Mesh needs to be rotated -90 degrees on X
- STL file has been added to assets
#story[1196]
2017-08-30 15:49:20 +12:00
Connor Taylor-Brown
cc66d63096
Removed unused shapes list from View3D
...
#story[1196]
2017-08-30 15:18:08 +12:00
Connor Taylor-Brown
bb7eb7cb44
Added adapter interface for PerspectiveCamera frustum and transformations in View3D.
...
- Tested interface while initialising HostController
#story[1196]
2017-08-30 15:05:08 +12:00
Connor Taylor-Brown
e04f199fc7
Merge branch 'story86-3D' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into story86-3D
2017-08-30 13:57:35 +12:00
Connor Taylor-Brown
e7164d8a78
View3D perspective camera is now operational
...
#story[1196]
2017-08-30 13:57:15 +12:00
Connor Taylor-Brown
cf838f2072
Added View3D control for rendering 3D shapes under a PerspectiveCamera, which is not currently working.
...
#story[1196]
2017-08-30 01:30:05 +12:00
Connor Taylor-Brown
d630788a14
Merge remote-tracking branch 'remotes/origin/story77_lobby' into story86-3D
2017-08-29 22:55:07 +12:00
cbt24
1b1b0a4591
Added floating test cube in title screen initialiser
...
#story[1191]
2017-08-29 14:38:27 +12:00
Connor Taylor-Brown
4b3cc8e126
Created ack number generator for use by multiple services
...
#story[1100]
2017-08-17 11:47:54 +12:00
Connor Taylor-Brown
f8150ef449
Added YachtEvent message with encoder and decoder
...
- Updated Encoder and Decoder factories for the new message type
- Added an enum for handling yacht event types
#story[1100]
2017-08-17 01:10:55 +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
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
Connor Taylor Brown
ab9aeeb58f
Merge branch 'CommandFactory' into 'master'
...
Tacking and gybing merge request
Note: this allows the player to perform a common maneuver, changing tack, quickly. The goal is to change the boat's heading from one tack to another with a single keypress.
If the boat is heading upwind, the keypress will cause the boat to tack through head-to-wind, so that the wind shifts from one side of the boat to the other. The TWA (true wind angle) after tacking should be 360-TWA(before_tacking).
Similarly for gybing if the boat is initially heading downwind, except that the boat's heading always remains away from the wind.
Acceptance criteria:
- The wind shifts from one side of the boat to the other on keypress
- When heading upwind the boat should tack on keypress
- When heading downwind the boat should gybe on keypress
[Manual test](https://eng-git.canterbury.ac.nz/seng302-2017/team-7/wikis/manual-test:-tacking-and-gybing )
See merge request !24
2017-08-15 12:06:20 +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
Connor Taylor-Brown
7474de9816
Created foundation classes and interfaces for collision architecture.
...
- Added Collider interface
- Added Collision class
- Added ColliderRegistry class
#story[1100]
2017-08-11 14:05:36 +12:00
Connor Taylor-Brown
da9915174c
Merge branch 'master' into Development
2017-08-09 23:05:07 +12:00
Connor Taylor-Brown
3cf0cf2ee0
Merge branch 'master' into story63
2017-08-09 22:56:55 +12:00
Connor Taylor-Brown
638413da1a
Merge remote-tracking branch 'remotes/origin/story63' into Development
2017-08-09 22:46:26 +12:00
Connor Taylor-Brown
e021dd328d
Changed CompositeCommand stack to queue
...
#story[1096]
2017-08-08 23:56:59 +12:00
cbt24
2920b6cf23
Removed build-breaking code from MockRace
...
#story[1096]
2017-08-07 16:47:25 +12:00
Connor Taylor-Brown
8ee4e84236
Merge remote-tracking branch 'remotes/origin/story63' into Development
...
# Conflicts:
# racevisionGame/src/main/java/mock/model/MockBoat.java
# racevisionGame/src/main/java/mock/model/MockRace.java
2017-08-07 15:02:13 +12:00