fjc40
ff262a6227
Added Knots <-> MMperSec conversions to AC35UnitConverter.
...
Removed redundant/unused conversions.
Documented all of the conversions, and renamed them to pack/unpackX, to match the API spec.
Updated/added some tests in AC35UnitConverterTest.
RaceStatus now contains a Bearing instead of a packed int bearing.
RaceStatus now contains wind speed in knots, instead of MMperSec packed.
This means that only RaceStatus decoder/encoder need to care about the bits-over-wire packed values.
issue #35 #36
#story[1095]
2017-08-06 14:57:51 +12:00
fjc40
a0f98eadaa
Added some documentation to BoatStatus.
...
issue #35 #36
#story[1095]
2017-08-06 13:57:09 +12:00
fjc40
b1922fc3fc
Added RaceStatusEncoder.
...
Refactored RaceStatusDecoder to be more consistent with other decoders - it now has a getMessage() function.
Added BoatStatus encoder and decoder - the RaceStatus encoder and decoder uses this for BoatStatuses. The BoatStatus encoder doesn't implement the MessageEncoder interface as BoatStatus is not a proper message type (doesn't inherit from AC35Data).
Added remaining cases to EncoderFactory, but commented them out.
BoatStatus now uses BoatStatusEnum instead of a byte.
Added some comments to RaceStatus, and it uses enums instead of bytes.
MockOutput logs a warning if a RaceStatus cannot be encoded.
Added a BoatStatusDecoderTest.
Updated RaceStatusDecoder to use new encoders/decoders.
issue #35 #36
#story[1095]
2017-08-06 13:38:27 +12:00
fjc40
e464ee298e
javadoc fixes for some warnings.
2017-08-06 01:08:47 +12:00
fjc40
b486f99dbe
Added XMLMessageEncoder.
...
Refactored XMLMessageDecoder to be consistent with other decoders - only needs to expose the XMLMessage.
Refactored BoatLocationDecoder to be consistent with other decoders - only needs to expose the BoatLocation.
Updated XMLMessageDecoderTest to use new encoder/decoder. Also tests all three message types.
Removed XMLMessageEncoderTest as it was redundant.
Updated BinaryMessageDecoderTest.xmlMessageTest() to use updated XMLMessage encoder/decoder.
issue #35 #36
#story[1095]
2017-08-06 01:01:05 +12:00
fjc40
8ef906472b
Renamed Heartbeat to HeartBeat.
...
Added HeartBeatDecoder.
Added HeartBeatEncoder.
BinaryMessageDecoder now uses HeartBeatDecoder.
MockOutput now logs a warning if a heartBeat cannot be encoded.
Added HeartBeatDecoderTest.
issue #35 #36
#story[1095]
2017-08-05 23:27:28 +12:00
fjc40
c3ed30019c
Added BoatLocationEncoder.
...
Updated BoatLocationDecoder test to use new encoder.
Updated MockOutput to use new encoder. It logs a warning if encoding fails.
#story[1095]
2017-08-05 22:11:54 +12:00
fjc40
31ce9fff94
Added BoatActonEncoder.
...
Updated ControllerClient to use RaceVisionByteEncoder.encode(message). It also logs a warning if the encoding fails. Also removed pointless and out of place encode/decode of the action enum.
Added a BoatActionDecoderTest which tests encoding/decoding a BoatAction Message.
issue #35 #36
#story[1095]
2017-08-05 21:53:54 +12:00
fjc40
16686678a7
Added an InvalidMessageTypeException - thrown whenever we encounter a MessageType that isn't recognised or isn't supported.
...
Added EncoderFactory. This creates specific MessageEncoders. Supports JoinAcceptance and RequestToJoin.
Added MessageEncoder interface.
Added JoinAcceptanceEncoder.
Added encode(AC35Data) function to RaceVisionByteEncoder.
Added RequestToJonEncoder.
Updated RequestToJoin and JoinAcceptance decode/encode tests to use the above.
issue #35 #36
#story[1095]
2017-08-05 21:31:47 +12:00
fjc40
7ea5b31fa1
RequestToJoinEnum contains an int instead of a byte.
...
Added requestToJoin and joinAcceptance encoding functions to RaceVisionByteEncoder.
Implemented JoinAcceptanceDecoder.
Implemented RequestToJoinDecoder.
Added tests for encoding/decoding RequestToJoin and JoinAcceptance messages.
issue #35
#story[1095]
2017-08-05 20:42:25 +12:00
fjc40
ca2b8a8899
Added missing javadoc.
...
#story[1095]
2017-08-05 19:43:58 +12:00
fjc40
f65ed79619
Implemented RequestToJoin and JoinAcceptance messages.
...
Also added their message types to MessageType.
issue #35
#story[1095]
2017-08-05 19:23:32 +12:00
fjc40
1385500e68
Added JoinAcceptance and RequestToJoin enumerations.
...
Issue #35
#story[1095]
2017-08-05 19:10:15 +12:00
Connor Taylor-Brown
425cc7f91f
Changed ControlKey to use BoatActionEnum instead of magic numbers.
2017-08-04 21:27:53 +12:00
Connor Taylor-Brown
851bbb4fde
Merged branch "RaceFactory" with master
2017-08-03 23:03:15 +12:00
fjc40
148108a658
CommandFactory uses BoatActionEnum instead of raw ints.
...
#story[1094]
2017-08-03 21:11:25 +12:00
Connor Taylor-Brown
c83442761c
Implemented Factory for Command objects and fixed Command Pattern implementation.
...
- Commands now have standard 0-parameter execute method
- Commands are created by CommandFactory
#story[1094]
2017-08-03 17:54:03 +12:00
Joseph Gardner
40a3ed1bb0
Boats now store whether autoVMG is on or off, boat speed scales off their bearing relative to the TWA. #story[1094]
2017-08-03 16:56:52 +12:00
Connor Taylor-Brown
c8621a7be5
Merge branch 'RaceFactory' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into RaceFactory
2017-08-03 09:01:27 +12:00
zwu18
d9679c1497
Build failing due to junit even though junit passes all tests. Commented out VMGCommand and TackGybeCommand content.
2017-08-03 01:31:05 +12:00
Connor Taylor-Brown
2672c2b13b
Separated RaceLogic from MockRace
...
- MockRace satisfies refactor requirement for RaceState
- VisualiserRace directly implements Runnable to remove method from MockRace
#story[1094]
2017-08-03 00:32:17 +12:00
zwu18
b581b01a44
Merge branch 'RaceFactory' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into RaceFactory
...
# Conflicts:
# racevisionGame/src/main/java/mock/model/MockRace.java
2017-08-03 00:28:44 +12:00
zwu18
ad61dc6bce
Implemented runCommand method in VMGCommand and TackGybeCommand classes. Both classes currently rely on the MockRace class so changes will be required when MockRace is refactored.
...
#story[1097]
2017-08-03 00:22:46 +12:00
Connor Taylor-Brown
0466292bd0
Partially removed VMG optimisation, separated server-specific functionality
...
from MockRace into RaceServer.
#story[1094]
2017-08-02 23:39:13 +12:00
zwu18
7fc1347377
Created class TackGybeCommand which implements the CommandFactory interface.
...
#story[1097]
2017-08-02 22:28:47 +12:00
Joseph Gardner
b258e94a54
Merged wind generator into this branch. #story[1094]
2017-08-02 15:19:32 +12:00
Joseph Gardner
577a1d1b5a
Merge remote-tracking branch 'origin/RaceFactory' into RaceFactory
...
# Conflicts:
# racevisionGame/src/main/java/mock/model/MockRace.java
2017-08-02 15:10:36 +12:00
Joseph Gardner
fba256113a
Merged wind generator into this branch. #story[1094]
2017-08-02 15:09:59 +12:00
Joseph Gardner
51bbdf9a50
Merge branch 'issue_26_wind' into RaceFactory
...
# Conflicts:
# racevisionGame/src/main/java/mock/model/MockRace.java
# racevisionGame/src/main/java/shared/model/Race.java
# racevisionGame/src/main/java/visualiser/model/VisualiserRace.java
2017-08-02 15:04:55 +12:00
fjc40
ed12ff659d
mock:
...
Moved wind generation logic and state into the WindGenerator class.
MockRace initialises this, and calls it to update wind.
2017-08-02 13:59:19 +12:00
cbt24
9249e74e3a
Merge remote-tracking branch 'origin/RaceFactory' into RaceFactory
...
# Conflicts:
# racevisionGame/src/main/java/mock/model/MockRace.java
# racevisionGame/src/main/java/mock/model/RaceState.java
2017-08-02 13:58:26 +12:00
cbt24
a4592a10e6
Removed boundary checking logic to clean up MockRace before split
...
story[1094]
2017-08-02 13:51:07 +12:00
Joseph Gardner
81eeca3533
Split wind off from Race and made it its own class. Deleted dnfChance as it is no longer used.
2017-08-02 13:45:10 +12:00
Joseph Gardner
775c32ca92
Made new branch for command architecture.
2017-08-02 12:48:56 +12:00
Joseph Gardner
a87879eaa9
Made new branch for command architecture.
2017-08-02 12:41:47 +12:00
fjc40
99f3310d8b
Created a setWind(bearing, knots) in Race, which updates the Wind with new values.
...
MockRace now uses Wind.
VisualiserRace now uses Wind.
#story[1093]
2017-08-01 18:45:17 +12:00
fjc40
5af3053537
Added shared.model.Wind class.
...
shared.model.Race now uses Wind. It is wrapped in Property<>.
#story[1093]
2017-08-01 18:15:35 +12:00
David Wu
f2932e8bae
New branch created for development.
2017-08-01 12:29:05 +12:00
Fan-Wu Yang
a8701d8a1f
Merge branch 'css' into 'master'
...
CSS merge into master branch
See merge request !18
2017-07-27 16:26:47 +12:00
Fan-Wu Yang
442920f9f6
DOD, and added javadocs/fixed javadocs #story[1087]
2017-07-27 16:24:19 +12:00
Jessica Syder
9eaf24e699
Fixed title screen having whitespace on different screen resolutions.
...
- Title screen has no white space on edges
- Main controller now anchors title to corners of main window
#story[1087] #pair[fjc40, jam339]
2017-07-27 14:54:56 +12:00
Jessica Syder
402df18b71
Merge remote-tracking branch 'remotes/origin/master' into css
2017-07-27 14:31:33 +12:00
Fraser Cope
7966ac41fb
Merge branch 'cbt-multi-controller' into 'master'
...
Cbt multi controller
Covers stories 4 and 6.
See merge request !17
2017-07-27 14:23:52 +12:00
fjc40
669b8167cd
Merge branch 'cbt-multi-controller' of eng-git.canterbury.ac.nz:seng302-2017/team-7 into cbt-multi-controller
2017-07-27 14:08:19 +12:00
fjc40
1b5926007c
Visualiser ConnectionController:
...
Clicking the host button doesn't create more than one server.
2017-07-27 14:07:25 +12:00
Joseph Gardner
67c7c88b32
Print statements now print off the actual key action. #story[1089]
2017-07-27 14:06:40 +12:00
fjc40
f91f7055de
Visualiser RaceController:
...
event.consume() is required to stop the keyboard event from propogating to other controls.
2017-07-27 13:52:55 +12:00
hba56
92b8b7b77f
moved the tm symbol
...
#story[1087]
2017-07-27 13:34:03 +12:00
David Wu
2b8b334486
Updated host to show the hosted address and port. Fixed css issue with lobby text field.
...
#story[1087]
2017-07-27 13:12:39 +12:00
hba56
f4eb03e79e
Merge remote-tracking branch 'origin/css' into css
2017-07-27 13:06:07 +12:00