Commit Graph
592 Commits
Author SHA1 Message Date
David Wu 8b5a5506e7 Boat collisions now play a sound when user collides and a quieter sound when others collide. #story[1195] 2017-09-05 14:00:15 +12:00
Fan-Wu Yang 7aaa880f40 VMG now works with some edge cases issues #story[1182] 2017-09-05 13:05:37 +12:00
Joseph f4cb1a3ac4 Made ObserverCommands and made racestate an observable. ObserverCommands observes the race passes in the params. #story[1196] 2017-09-05 12:40:34 +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
Jessica Syder 4a0d04d7ab Created new abstract Controller class with load methods.
- loadScene method to load into current stage
- loadPopupScene method to load into a new window
- icon added to popup windows
- load methods return Controller of the new scee
- KeyBindingsController extends new Controller class and works correctly

#story[1261]
2017-09-04 23:10:25 +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
Jessica Syder 1073113589 Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into controllerSplit 2017-09-04 15:31:52 +12:00
hba56 8287fbf6ba Updated the HostGame window to support maps
#story[1193]
2017-09-04 15:05:31 +12:00
Fan-Wu Yang 71dcc8ee6c Added POlar Linear Interpolation #story[1186] 2017-09-04 14:17:13 +12:00
David Wu 8c1eded926 Boat collision packets are now sent. Command class created for boat collision. Currently prints out message depending on if user crashed or someone else crashed. #story[1195] 2017-09-04 14:06:38 +12:00
Jessica Syder 35c595adf8 Merge branches 'master' and 'storyD-3D' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into storyD-3D 2017-09-04 14:00:20 +12:00
Jessica Syder addaaf0de3 Merge remote-tracking branch 'remotes/origin/master' into C_keybindings 2017-09-04 13:23:55 +12:00
Jessica Syder 85eb66d508 Keybindings can be saved and loaded, and work when Jar'd!
- trying to solve jar file reading issue
- learnt a lot about jars including their lack of file structure
- changed location of keybindings settings to outside of jar
- added new folder/file that is generated on first run

#story[1197]
2017-09-04 12:30:01 +12:00
fjc40 361856ea1d Updated timescale. 2017-09-04 11:38:45 +12:00
fjc40 dd1cb89b66 Merge remote-tracking branch 'origin/master' into 77_racexml_updates 2017-09-04 11:28:21 +12:00
Joseph f1c07bca46 Linked table to show games from received packets. #story[1188] 2017-09-04 09:53:26 +12:00
Joseph f8e1a539c2 Linked table to show games from received packets. #story[1188] 2017-09-04 09:46:13 +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
zwu18 cd685ae467 Added sound effect files for button clicks and mark rounding and linked them up to application. Collision audio is added too but not linked up. #story[1195] 2017-09-03 21:22:26 +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
David Wu abf325e5ea Passing a mark will now play a sound. Currently using placeholder sound so will ned to change. #story[1195] 2017-09-01 19:30:27 +12:00
hba56 66699a4660 Added a draft for a new Course layout
#story[1193]
2017-09-01 14:31:01 +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 c3be9665ac Added button press sounds for hosting a game, entering lobby list and entering host menu. #story[1195] 2017-09-01 14:10:01 +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
David Wu 65b960f725 Background of title now changes colour depending on day mode and night mode. Sun image also changes. This is so that the tutorial label is more visible during night mode. #story[1189] 2017-09-01 13:28:05 +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
David Wu ea029baf22 Tutorial option in title screen will now created a game with tutorial xmls. Host game will now created a game with the race xml instead of tutorial xml as well. Made changes to tutorial label in title. #story[1189] 2017-09-01 12:28:09 +12:00
hba56 5676d435b0 hosts now send info then wait rather than wait then send
#story[1188]
2017-09-01 12:20:48 +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
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
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
hba56 d1c0797db7 hosting a game now continues to send out the info of the race
#story[1188]
2017-08-31 15:06:43 +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