Commit Graph

323 Commits

Author SHA1 Message Date
7a60a5e499 Lock the BeatmapDatabase's connection during imports.
This should avoid any potential issues with intertwined transactions on the same connection while still allowing higher throughput when importing.
2017-02-25 10:39:13 +09:00
d150eb4450 Merge branch 'master' into better-star-counter 2017-02-24 19:37:04 +01:00
f7d985fe18 Fix and refactor star difficulty calculation boilerplate
Moves star difficulty calculation entry-point to Beatmap, and sets
star difficulty at the correct place for song select to display.
2017-02-24 19:36:17 +01:00
c178493877 Add support for undeleting beatmaps if they are imported during an undeleted state. 2017-02-24 18:13:38 +09:00
d24403e58e Remove unused using statement. 2017-02-24 17:20:00 +09:00
958bf54c31 Add safe deletion support. 2017-02-24 17:08:13 +09:00
6c3bda18b6 Add beatmap deletion support.
Note that this is a very naive approach and will result in file access exceptions. This will be fixed in a further commit.
2017-02-24 14:37:54 +09:00
3a89348413 Centralise access to WorkingBeatmaps.
They can now only be instantiated from BeatmapDatabase and are abstract (to avoid misuse).
2017-02-24 13:43:21 +09:00
a5dfa7ab06 Remove unnecessary using statements 2017-02-23 21:38:10 +01:00
da2bfe6d3c Framework updates. 2017-02-23 16:42:12 +09:00
417f146386 Add difficulty calculation
Adds base classes for difficulty calculations, hooks them up with
carousel container, and adds a port of the osu difficulty calculator.
2017-02-19 17:41:51 +01:00
11643d2e09 Remove unnecessary methods and local variables. 2017-02-13 18:30:51 +09:00
e3f35cd66e Merge branch 'master' into osb_loading 2017-02-12 12:26:25 +01:00
870aa2750f Don't attempt to import command line arguments as beatmaps. 2017-02-12 14:53:33 +09:00
a504c73f33 Load beatmap data from an optional osb file. 2017-02-09 15:19:09 +01:00
50bd80cb0c Update and standardise license headers. 2017-02-07 14:27:41 +09:00
756fd78a88 Fix incorrect line endings. 2017-02-07 13:52:19 +09:00
0272c4b559 Add StarDifficulty property and correct colouring of difficulty icons. 2017-01-30 15:26:28 +09:00
56fe69852d Change beatmap database reset logic to only run a maximum of once. 2017-01-23 18:13:06 +09:00
ef8347fe53 Reset the beatmap database when it can't be read, rather than hard failing. 2017-01-23 13:02:03 +09:00
acfbf2e32e Add prefix Online to BeatmapID and BeatmapSetID 2017-01-09 21:05:01 +08:00
ef11c3f389 Add default Beatmap ID 2016-12-21 14:47:56 +08:00
02f6e46105 Add support for v9 beatmaps 2016-12-20 23:56:49 +08:00
f356640cb7 Add missing licence headers. 2016-12-06 19:07:15 +09:00
0c841cffdd Change GetChildren recursive default to false (should be more common). 2016-11-23 15:34:32 +09:00
d71550d22a Don't do a recursive fill by default, we don't need it. 2016-11-22 22:07:28 +09:00
2ba365657e Tidy up some linq. 2016-11-22 17:21:42 +09:00
06f4f93918 Move play modes to Modes namespace. 2016-11-14 18:03:20 +09:00
0f4538f69f Rename GameModes namespace to Screens. 2016-11-14 17:23:33 +09:00
ef5968e243 More robust metadata handling. 2016-11-07 23:12:49 +08:00
c59cad2478 AudioEquals method for BeatmapInfo. 2016-11-07 21:52:23 +08:00
a11d534067 Add beatmap backgrounds. 2016-11-05 20:00:14 +09:00
8fe63689a4 Fix thread safety issue when accessing files in beatmap (zip) files. 2016-11-05 18:19:01 +09:00
b86f308af6 Add async workflow. 2016-11-01 23:24:14 +09:00
10ef34b805 Lazy parse beatmap; Don't reload audio track if it hasn't changed. 2016-10-28 20:24:14 +09:00
74f1a9622f Add initial game-wide beatmap flow. 2016-10-28 19:55:48 +09:00
feccb7286c Add the concept of a "WorkingBeatmap" and make player load beatmaps and audio from SongSelect. 2016-10-28 14:14:45 +09:00
33ef55df88 Allow BeatmapDatabase to be constructed without a host. 2016-10-27 17:34:50 +09:00
f16cc430f8 Stop using memory database. Load sample data local to TestCase.
Also makes the connection private.
2016-10-27 17:08:53 +09:00
063fdd9a2d Add test data to db for VisualTests
Also fixes the broken IPC condition
2016-10-24 14:57:00 -04:00
d3a857edb9 Make importing work properly.
Moves import code to BeatmapDatabase.
2016-10-24 11:39:53 -04:00
0c9e26e546 Return the populated item when calling GetChildren to write more elegant code. 2016-10-24 11:39:18 -04:00
6f80efdb29 Add a database reset method. 2016-10-24 11:39:18 -04:00
7650bb1707 Don't insert to database until we're completely finished importing a beatmap. 2016-10-24 11:39:18 -04:00
ee6c810df5 Fix cascading inserts. 2016-10-24 11:39:18 -04:00
42f8d19c73 Sort by difficulty and fix relationship 2016-10-24 11:39:18 -04:00
8d6431b35e Add star counter to difficulty select 2016-10-24 11:39:18 -04:00
6da092ab30 Fix additional bugs, tweak L+F 2016-10-24 11:39:18 -04:00
8d4a211419 Fix initialization of BeatmapInfo 2016-10-24 11:39:18 -04:00
3ee0bf2b80 Fix cascade insert 2016-10-24 11:39:18 -04:00