Commit Graph
37 Commits
Author SHA1 Message Date
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
2017-09-14 16:34:28 +12:00
Connor Taylor-Brown 70bbc89239 Fixed merge-related bugs 2017-09-13 13:12:26 +12:00
fjc40 55402136ed Merge remote-tracking branch 'origin/master' into story_51_rounding_fix
# Conflicts:
#	racevisionGame/src/main/java/mock/app/Event.java
#	racevisionGame/src/main/java/mock/xml/RaceXMLCreator.java

Also added keybindings.xml to git ignore.
#story[1185]
2017-09-13 12:04:32 +12:00
fjc40 9fa1b9ee67 Re-enabled source id allocator check.
Re-enabled rotation of map at startup.
Changed race.xml schema so that yacht elements aren't required inside the participants element.
#story[1185]
2017-09-13 00:41:23 +12:00
David Wu c97706d86e Merge branch 'master' into story70
# Conflicts:
#	dedicatedServer/src/main/java/app/App.java
#	racevisionGame/src/main/java/mock/app/Event.java
#	racevisionGame/src/main/java/visualiser/Controllers/HostController.java
#	racevisionGame/src/main/resources/mock/mockXML/raceThreePlayers.xml
2017-09-11 14:27:12 +12:00
David Wu 9a96131a33 Fixed issue where wind arrow, accordion, time, etc. were not being displayed. Fixed issue where zooming would crash when done outside of tutorial. #story[1189] 2017-09-10 18:11:52 +12:00
David Wu d2d5ae62eb Tutorial states implemented and working. Game currently prints to terminal the "tutorial text". Next step is to create display on application for these text. Game ends when tutorial ends. Fixed game not loading xml issue. #story[1189] 2017-09-10 17:11:20 +12:00
David Wu 28ec4b9246 Merge branch 'master' into story70
# Conflicts:
#	racevisionGame/src/main/java/visualiser/Controllers/HostController.java
#	racevisionGame/src/main/java/visualiser/Controllers/TitleController.java
#	racevisionGame/src/main/java/visualiser/app/App.java
2017-09-10 15:19:03 +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
hba56 ae8fa312a3 removed sout and added a longer startup time. Also fixed race xmls to remove set boats 2017-09-09 15:37:35 +12:00
hba56 ea1594a839 Merge remote-tracking branch 'remotes/origin/master' into Story_76
# Conflicts:
#	racevisionGame/src/main/java/visualiser/Controllers/HostController.java
#	racevisionGame/src/main/resources/visualiser/scenes/hostgame.fxml
2017-09-09 15:35:02 +12:00
hba56 5e516b0508 re added the standard race
#story[1193]
2017-09-08 18:12:51 +12:00
Joseph Gardner 3157ac88b5 Course layout for a type M2 course has been made. #story[1193] 2017-09-08 13:27:30 +12:00
David Wu 002cccd5a0 Reworked iMapLayout as race would either take too long or too short. Added temporary image for iMapLayout. Will be reworked when I have time. #story[1193] 2017-09-07 21:15:41 +12:00
David Wu b22c5c5cd6 Created xml for new course layout. Marks and such are all added. Need to set up boundary when I have time. #story[1193] 2017-09-05 20:09:56 +12:00
fjc40 8c76d6c26e Added boats.xml schema.
RaceServer now creates an XMLMessage when the race's BoatDataSource changes.
#story[1188]
2017-09-02 00:34:41 +12:00
fjc40 298fcd03dc Added regatta schema.
RaceServer now creates an XMLMessage when the race's RegattaDataSource changes.
#story[1188]
2017-09-02 00:33:09 +12:00
fjc40 ec58f0c847 Participants can now join during the warning period as well.
Added RaceDataSourceToXML.
RaceServer now create an XMLMessage when the race's RaceDataSource changes.
#story[1188]
2017-09-02 00:27:44 +12:00
hba56 66699a4660 Added a draft for a new Course layout
#story[1193]
2017-09-01 14:31:01 +12:00
fjc40 9156bde8af Moved XML message creation to RaceServer instead of ConnectionAcceptor.
RaceServer does not currently generate new XMLMessages - NYI.
Added a sequence number to RaceDataSource - this is used to indicate that the data source has been modified.
#story[1188]
2017-09-01 01:19:17 +12:00
zwu18 c7af4f2eb7 Made changes to tutorial xmls. Linked button in title menu to start up a race on mouse click. Will need to make it so it starts the tutorial on click. #story[1189] 2017-08-31 19:54:22 +12:00
David Wu 86f1a608e4 Created xml for tutorial that contains start and finish line. TODO: Add gate/mark. #story[1189] 2017-08-30 14:51:56 +12:00
fjc40 666c7b029f Disabled map rotation - temp fix for the demo.
Set race to use 3 boat race.xml file.
2017-08-17 22:26:56 +12:00
Joseph Gardner 4cf8846cda Map wind rotation works with multiplayer xml. #story[1092] 2017-08-17 12:17:45 +12:00
Joseph Gardner 1e7ba8cd51 Merge branch 'master' into MapWindRotation
# Conflicts:
#	racevisionGame/src/main/java/mock/app/Event.java
#	racevisionGame/src/main/java/mock/model/MockRace.java
#	racevisionGame/src/main/java/mock/model/commandFactory/CommandFactory.java
#	racevisionGame/src/main/java/shared/dataInput/RaceXMLReader.java
#	racevisionGame/src/main/java/shared/model/CompoundMark.java
#	racevisionGame/src/main/java/shared/model/Mark.java
#	racevisionGame/src/main/java/visualiser/Controllers/ConnectionController.java
#	racevisionGame/src/main/java/visualiser/Controllers/HostController.java
#	racevisionGame/src/main/java/visualiser/app/VisualiserInput.java
#	racevisionGame/src/main/java/visualiser/gameController/ControllerServer.java
#	racevisionGame/src/main/java/visualiser/model/VisualiserRace.java
2017-08-17 11:46:09 +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
Fan-Wu Yang b5e414f97a Made all the model classes extend off the schema xml classes for race, and made xml builder, validator and reader utility class.
#story[1092]
2017-08-14 03:47:42 +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
Fan-Wu Yang 70d5447e88 Moving stuff from school pc to home 2017-08-13 23:03:16 +12:00
Fan-Wu Yang 8999cddf8b Pre merge commit 2017-08-13 22:16:16 +12:00
hba56 62e37489ee starboard rounding update
#story[1101]
2017-08-12 03:41:50 +12:00
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]
2017-08-10 23:49:21 +12:00
hba56 950a801d16 rounding fix for the xml
#story[1087]
2017-08-07 12:16:37 +12:00
Fan-Wu Yang 4e8d4f2433 Created Schema for Race xml's and generated classes for reading xml with xjc, made the RaceXMLReader read Corner classes in as well as making a corner class #story[1092] 2017-08-03 02:42:33 +12:00
Joseph Gardner 6492ba89ab Merging main features into story 6. App now sends and receives key strokes. #story[1007, 1089] 2017-07-27 12:36:34 +12:00
fjc40 7d3cf6ee80 I had accidentally broken the raceXML construction - fixed it.
Fixed a few issues where boat didn't have nextMark/previousMark times under certain circumstances.
LatestMessages wasn't actually notifying properly - fixed.
The various XML readers now treat a string constructor as containing file contents, not file name - this was how it was mostly already used.
Fixed some issues in RaceXMLReader, including where element.getChildNodes() was used instead of element.getElementsByName(...).
Boat: changes speed to a doubleProperty. Changed leg to a Property<Leg>.
Race.lastFps is now an IntegerProperty.
Added breaks to the case statements in VisualiserInput. Whoops.
ResizableRaceCanvas now handles drawing the race boundary. Tidied up code a bit.
Removed ResizableRaceMap.

Started refactoring Sparkline. Currently doesn't work.
2017-07-10 08:35:43 +12:00