Commit Graph
402 Commits
Author SHA1 Message Date
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
Jessica Syder cfa6fc37e0 User modified keybindings are persistently saved
- Works on windows computers
- KeyFactory processes its own XML saving/loading
- Does not work with Jar yet
- Changed keyFactory to static temporarily to work with existing FXML loading architecture

#story[1197]
2017-09-03 20:44:27 +12:00
fjc40 e3cbb6d482 Start game button actually starts the game. 2017-09-03 16:39:59 +12:00
fjc40 ac891fa91c Fixed tests. 2017-09-02 01:03:47 +12:00
fjc40 16bf57e333 javadoc fixes. 2017-09-02 00:45:08 +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
Fan-Wu Yang 34cfe48df0 Got VMG quad detection working, however, the speeds are completley wrong. #story[1186] 2017-09-01 20:30:28 +12:00
Jessica Syder 3fdfbd83e0 User can save, reset or cancel.
- Created a notification popups for errors
- Added functionality to save, cancel and reset buttons
- Key bindings are only saved if they're valid
- Added window close event
- Can not exit without saving correctly
- CSS to cancel, save and reset buttons to differentiate between key buttons
- Javadocd

#story[1197]
2017-09-01 14:29:18 +12:00
David Wu 086206a623 Controls button in title screen now opens the key mapping menu. #story[1197] 2017-09-01 13:44:09 +12:00
hba56 ec5bc9c6aa Wind now will occasionally back and veer (in some games, takes ~20min for full 180 degree rotation)
#story[1188]
2017-09-01 13:19:59 +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
fjc40 d0eebcdb2f SourceIdAllocator now allocates from the BoatDataSource and RaceDataSource exposed by MockRace, instead of having its own source IDs. Can only allocate ids during PRESTART period.
RaceLogic now calls MockRace.initialiseBoats() after the prestart period has finished.
MockRace create a VisualiserBoat when a source ID is allocated.
MockOutput now sends updated XML messages during the race, instead of only at the start.
#story[1188]
2017-09-01 01:14:43 +12:00
Jessica Syder 716a99aac7 Reset to default button is now functional.
- keybindings are reset to built in default
- the table is cleared and reloaded

#story[1197]
2017-08-31 22:58:35 +12:00
Jessica Syder 3e720a9e16 Modified key bindings can be saved to use in a race.
- new key bindings replace old new bindings on save
- javadoc save method and small updates

#story[1197]
2017-08-31 22:47:57 +12:00
Jessica Syder 278fb65852 Pressing ESC cancels the selected command's key from being replaced
- focus is shifted away on esc
- focus is shifted away after successful change

#story[1197]
2017-08-31 22:39:19 +12:00
Jessica Syder ce47b0d813 When a new key is bound other commands bound to this key are removed
- On binding new key existing keys are searched
- If key is in use the old one is removed
- ControlKey is updated with a placeholder key value

#story[1197]
2017-08-31 22:28:55 +12:00
Jessica Syder 2188ddc3a3 Fixed errors in making the keybinding replaceable.
- Changed KeyFactory to not be a singleton
- Simplified keyBindings initializer
- Modified and simplified keyListener
- Added method to copy existing keyState
- Changed button events
- Changed to newer lambda functions
- Modified updateKey method
- Left option for multiple keys bound to one command
- Updated and wrote new JavaDoc

#story[1197]
2017-08-31 21:59:28 +12:00
fjc40 3176e76c8c MockRace:
Now uses RaceState as its base class, rather than Race. This aligns it with VisualiserRace. RaceState contains the shared race state between the client and server, and stores most of its data in RaceDataSource etc..., instead of maintaining its own copy.
Moved collider registry member to MockRace.

XMLUtilities:
Added documentation to two important functions, and updated them to use generics instead of Objects.
#story[1188]
2017-08-31 21:06:13 +12:00
Fan-Wu Yang 9a5d20bdf2 Added new polar function, currently it does not distinguish between up wind and downwind and doesn't find it in the correct quadrant #story[1186] 2017-08-31 17:39:17 +12:00
Jessica Syder 8250226bde Key bindings can be updated with any key.
- Changed key press from FXML key event to a listener
- UP, DOWN, ENTER keys now work
- Keys no longer change cells or press buttons
- Added placeholder buttons Cancel, Reset and Save
- Added some JavaDoc

#story[1197]
2017-08-31 15:00:37 +12:00
Joseph 0de7780020 Changed wind speed to be non-linear. #story[1187] 2017-08-31 12:26:30 +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
Jessica Syder ad0e26e882 Created scene to view/update current key bindings.
- Current key bindings are shown on buttons
- Added button action events to store the clicked button
- Added key press event to entire pane
- Button text is updated to display its key
- Added functionality to keyFactory to update key bindings
- CSS styling for some components

#story[1197]
2017-08-30 17:16:15 +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
Fan-Wu Yang 4910d2712c Changed STL Importers Version #story[1191] 2017-08-30 13:56:57 +12:00
Fan-Wu Yang 921e0999b8 Testing if dependency for stl works this time #story[1191] 2017-08-30 13:01:37 +12:00
Fan-Wu Yang 0927e62ea3 Changed dependency to see if it will pass the CI runner #story[1191] 2017-08-30 12:46:05 +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
Fan-Wu Yang 43ec179d79 Merge branch 'story86-3D' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into story86-3D 2017-08-29 20:36:15 +12:00
Fan-Wu Yang ea41c64c34 Added dependency for stl converter #story[1191] 2017-08-29 20:36:08 +12:00
David Wu 7df181c759 Minor changes to new lobby fxml. #story[1188] 2017-08-29 19:08:22 +12:00
David Wu 892320db5f Added javadoc and extra files to push 2017-08-29 19:03:34 +12:00
David Wu 0621e1bdb1 Finished up lobby menu. Set split pane to not change size on resize. Disabled divider on split pane. Added quit button and start button (start only prints to terminal for now). Panes are now wrapped in an anchor pane to fix resizing issues. TODO: Will be working on making a nicer background animation. 2017-08-29 19:02:02 +12:00
Joseph Gardner b0f7c5e734 Wind speed changes depending on where the wind direction is. #story[1187] 2017-08-29 15:53:41 +12:00
David Wu c63403d1de Created new lobby menu. Working on animated background for menu. 2017-08-29 15:11:09 +12:00
Joseph Gardner d0ba7b93e0 Wind oscillates, replaces random wind with shifting wind. #story[1187] 2017-08-29 14:40:52 +12:00
cbt24 1b1b0a4591 Added floating test cube in title screen initialiser
#story[1191]
2017-08-29 14:38:27 +12:00
Joseph Gardner 0be5b731c3 Merge branch 'master' into wind_(story53) 2017-08-29 13:22:15 +12:00
Joseph Gardner 12e2ae9c01 Started implementing wind oscillation. #story[1187] 2017-08-29 13:21:34 +12:00
Joseph Gardner 64e96a1b8b Class for shifting wind. #story[1187] 2017-08-29 12:14:28 +12:00