Joseph Gardner
7d789c04bb
Fixed sails out / colliding issue. #story[1297]
8 years ago
Joseph Gardner
332722e099
Attempt to fix sails in / out colliding issue. Going to test on dev for a better visual representation. #story[1297]
8 years ago
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]
8 years ago
Joseph Gardner
c42e25df86
Merge branch 'master' into storyD-3D
8 years ago
Joseph Gardner
14b5f4bdf1
Merge branch 'master' into storyD-3D
...
# Conflicts:
# .gitignore
# racevisionGame/src/main/java/mock/model/RaceServer.java
# racevisionGame/src/main/java/mock/model/collider/Collider.java
# racevisionGame/src/main/java/mock/xml/RaceXMLCreator.java
# racevisionGame/src/main/java/shared/model/Boat.java
# racevisionGame/src/main/java/shared/model/Mark.java
# racevisionGame/src/main/java/visualiser/Controllers/HostController.java
# racevisionGame/src/main/java/visualiser/Controllers/LobbyController.java
# racevisionGame/src/main/java/visualiser/Controllers/MainController.java
# racevisionGame/src/main/java/visualiser/Controllers/RaceViewController.java
# racevisionGame/src/main/java/visualiser/Controllers/TitleController.java
# racevisionGame/src/main/java/visualiser/layout/Plane3D.java
# racevisionGame/src/main/java/visualiser/layout/SeaSurface.java
# racevisionGame/src/main/java/visualiser/layout/View3D.java
# racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java
# racevisionGame/src/main/resources/visualiser/scenes/title.fxml
8 years ago
David Wu
43ee92fb95
Created enums and bound them to zoom in, zoom out and sails toggle for key bindings so that something expected shows up for key binding descriptions when changing key bindings. #story[1197]
8 years ago
Joseph Gardner
a6eea88524
Fixed collisions #fix #story[1196]
8 years ago
Connor Taylor-Brown
c94e0af69c
Removed remaining println statements
8 years ago
Connor Taylor-Brown
b902b05e5e
Wrote possible fix for issue #50 (Composite command tries to remove non-existent element)
8 years ago
Joseph Gardner
2868f921e2
Only one angular command can be active at a time. Only one velocity command can be active at a time. #story[1196]
8 years ago
Joseph Gardner
df624a8437
Angular movement when auto vmg is pressed is smoothed. #story[1196]
8 years ago
cbt24
8c7345a30d
Documented command classes
...
#story[1196]
8 years ago
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]
8 years ago
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]
8 years ago
cbt24
eba70ab2d4
Sails command now listens to race to check if goal velocity is met
...
#story[1196]
8 years ago
cbt24
844b48a81a
Resolved issue #42 - "putting sails out changes boat bearing to face target gate"
...
#story[1196]
8 years ago
Joseph Gardner
00cedf4d4d
TackGybeCommand now smooths the rotation of the boat. #story[1196]
8 years ago
Joseph
f4cb1a3ac4
Made ObserverCommands and made racestate an observable. ObserverCommands observes the race passes in the params. #story[1196]
8 years ago
Joseph
47fc55245c
Merged master.
8 years ago
Joseph
f60809bdd4
Merge branch 'master' into story_64_sails
...
# Conflicts:
# racevisionGame/src/main/java/mock/app/MockOutput.java
# racevisionGame/src/main/java/mock/model/MockRace.java
# racevisionGame/src/main/java/mock/model/commandFactory/CommandFactory.java
# racevisionGame/src/main/java/network/MessageDecoders/BoatActionDecoder.java
# racevisionGame/src/main/java/network/MessageDecoders/BoatLocationDecoder.java
# racevisionGame/src/main/java/visualiser/app/VisualiserInput.java
# racevisionGame/src/main/java/visualiser/gameController/ControllerServer.java
# racevisionGame/src/main/java/visualiser/model/ResizableRaceCanvas.java
# racevisionGame/src/main/java/visualiser/model/VisualiserRace.java
# racevisionGame/src/main/resources/visualiser/scenes/connect.fxml
# racevisionGame/src/main/resources/visualiser/scenes/lobby.fxml
# racevisionGame/src/test/java/mock/model/MockRaceTest.java
# racevisionGame/src/test/java/network/Utils/AC35UnitConverterTest.java
# racevisionGame/src/test/java/network/XMLMessageEncoderTest.java
8 years ago
fjc40
9ab12a9c58
MockBoat: Removed redundant isAutoVMG() function.
...
TackGybeCommand now disables autoVMG.
Removed print statements from VMGCommand.
8 years ago
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
8 years ago
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
8 years ago
Connor Taylor-Brown
b97bfe62a6
Fixed documentation bugs not relevant to story.
8 years ago
zwu18
848edfc6a4
Removed commented out code. Merged master in.
...
#story[1097]
8 years ago
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
8 years ago
zwu18
9c902dab46
Added javadoc to classes.
...
#story[1097]
8 years ago
fjc40
19984772c0
Merge branch 'master' into story_61
...
Also got client-server handshake working. Multiple clients can connect and control their own boat.
The client's boat has a larger black triangle drawn around it. Probably needs tidying up.
Added isClientBoat boolean to VisualiserBoat.
WindGenerator is now an interface, implemented by ConstantWindGenerator (useful for testing) and RandomWindGenerator. Added ConstantWindGeneratorTest.
RandomWindGenerator was formerly WindGenerator.
The WindGenerator is passed in to MockRace.
CommandFactory throws a CommandConstructionException if it cannot create a command.
MessageSerialiser and MessageDeserialiser correctly terminate on error.
Readded VisualiserInput's switch statement in the main loop, pending a refactor.
Removed the sleep statement from LobbyController - it was blocking javaFX thread.
Lobby.fxml: moved buttons and text input into grid panes, so they don't break when you resize screen.
Added some test object creation functions in several test classes (MockRaceTest.createMockRace(), BoatXMLReaderTest.createBoatDataSource(), etc...).
#story[1095]
8 years ago
Joseph Gardner
20302496f0
Made SailsInCommand and SailsOutCommand one class. #story[1098]
8 years ago
fjc40
39b5cc2edc
MockBoat has autoVMG disabled by default.
...
Wind/Tack commands disable autoVMG. VMG command enables it.
Upwind command was turning until boat was at 0 degrees, instead of being aligned with wind direction, but that's fixed.
#story[1096]
8 years ago
Joseph Gardner
1a7152f54e
Boats stop when the sails are out. Merged dev. #story[1098]
8 years ago
fjc40
7cc39abe57
WIP. Probably need to cherry pick stuff out of here.
...
Added ClientConnection and server-side handshake.
Added MessageSerialiser and Deserialiser.
#story[1095]
8 years ago
Joseph Gardner
1302769a50
Merge branch 'Development' into story_64_sails
...
# Conflicts:
# racevisionGame/src/main/java/mock/model/commandFactory/CommandFactory.java
# racevisionGame/src/main/java/visualiser/model/ResizableRaceCanvas.java
# racevisionGame/src/test/java/mock/model/MockBoatTest.java
8 years ago
Joseph
e23f20753d
Merged master. Added commands for sails in and out. Added logic to stop boat from moving when sails are out. Testing if the boat stops with sails out is blocked until command factory is merged. #story[1098]
8 years ago
Connor Taylor-Brown
638413da1a
Merge remote-tracking branch 'remotes/origin/story63' into Development
8 years ago
Connor Taylor-Brown
e021dd328d
Changed CompositeCommand stack to queue
...
#story[1096]
8 years ago
zwu18
53c9192130
Merge branch 'CommandFactory' into Development
...
# Conflicts:
# racevisionGame/src/main/java/visualiser/gameController/ControllerServer.java
8 years ago
Connor Taylor-Brown
dad4fa57c6
Fixed WindCommand not updating downwind command when moving upwind.
...
#story[1096]
8 years ago
Connor Taylor-Brown
e76de1cbf9
Added test for WindCommand
...
#story[1096]
8 years ago
zwu18
ddaa2623ca
Added tests for TackGybeCommand class.
...
#Story[1097]
8 years ago
zwu18
a388989827
Reworked TackGybeCommand. Current boat in race will now tack and gybe when control is pressed.
...
#Story[1097]
8 years ago
zwu18
18f14c7542
VMGCommand now toggles autoVMG on and off. Linked up observer and observable so the current boat can now be controlled. Fixed autoVMG not working.
...
#Story[1097]
8 years ago
zwu18
074e2e590b
VMGCommand now toggles autoVMG on and off. Linked up observer and observable so the current boat can now be controlled.
...
#Story[1097]
8 years ago
Connor Taylor-Brown
554f8a2a0f
Added WindCommand and multiple command execution to RaceLogic
...
- Dispatch commands with CompositeCommand
- Single WindCommand handles upwind and downwind logic
- Changed key bindings as Mac lacks PgUp PgDn
- ControllerServer is observable, RaceLogic updates CompositeCommand as observer
8 years ago
fjc40
148108a658
CommandFactory uses BoatActionEnum instead of raw ints.
...
#story[1094]
8 years ago
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]
8 years ago
zwu18
d9679c1497
Build failing due to junit even though junit passes all tests. Commented out VMGCommand and TackGybeCommand content.
9 years ago
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]
9 years ago
zwu18
7fc1347377
Created class TackGybeCommand which implements the CommandFactory interface.
...
#story[1097]
9 years ago
Joseph Gardner
775c32ca92
Made new branch for command architecture.
9 years ago