1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-16 06:23:20 +08:00
Commit Graph

268 Commits

Author SHA1 Message Date
Huo Yaoyuan
4f8549f220 Standardise usages of exceptions. 2017-05-07 00:38:17 +08:00
Huo Yaoyuan
767cfaaac3 Access database recursively. 2017-05-06 15:37:53 +08:00
Huo Yaoyuan
146d57953d Use metadata field of WorkingBeatmap. 2017-05-06 14:57:11 +08:00
Huo Yaoyuan
4f49151984 Make metadata a member of WorkingBeatmap. 2017-05-06 14:52:28 +08:00
Dean Herbert
a993790a66 Ensure all searchable terms are non-null non-empty. 2017-05-02 17:54:07 +09:00
Dean Herbert
6074cb5979 Make playlist filtering work.
Also standardises searchable terms in beatmap metadata.
2017-05-02 10:45:55 +09:00
Dean Herbert
28375ed1fc Allow transfer of previously loaded background between WorkingBeatmaps 2017-04-28 15:03:07 +09:00
Dean Herbert
e1a2f1bc7a Add beatmap metrics lookup. 2017-04-24 19:17:11 +09:00
smoogipooo
61090d918c Temporary for taiko lagging on auto replays due to inImportantSection.
Note that this isn't a full "as intended" fix, because the full fix is quite big. I'll be saving it for a separate branch/pull-req.
2017-04-20 15:26:42 +09:00
Dean Herbert
873599b359
Fix conversion regression. 2017-04-20 11:36:50 +09:00
Dean Herbert
a47870b376
Apply Ruleset to Scores. Reduce complexity of score creation. 2017-04-20 11:16:08 +09:00
Dean Herbert
3e65cab9b7
Move replay creation logic to ScoreDatabase. 2017-04-20 10:25:07 +09:00
Dean Herbert
3b95fbab7d
Add score statistic tracking (osu!). 2017-04-19 16:29:27 +09:00
Dean Herbert
fbd26a1d5e
Mode -> Ruleset. 2017-04-18 16:05:58 +09:00
Dean Herbert
5939ba9143
Fix ruleset not always being initialised correctly. 2017-04-18 10:55:33 +09:00
Dean Herbert
f2174054ea
Fix song select. 2017-04-18 10:04:32 +09:00
Dean Herbert
d3c1520a2d
Fix beatmaps not getting the correct ruleset on import. 2017-04-18 09:47:29 +09:00
Dean Herbert
2734983564
Add unique constraints on RulesetInfo table to ensure things stay sane. 2017-04-18 09:47:16 +09:00
Dean Herbert
af13f97435
Fix regressions and test cases. 2017-04-17 19:44:03 +09:00
Dean Herbert
db6556a0f9
Index DeletePending for better performance. 2017-04-17 17:44:02 +09:00
Dean Herbert
a4e2f34ee7
Make a RulesetDatabase. 2017-04-17 17:43:48 +09:00
Dean Herbert
83b083ce64
Move SQLite connections out of database classes; make abstract Database. 2017-04-17 14:37:52 +09:00
smoogipooo
4a149c4ab8 Better default values + don't set Mode from outside. 2017-04-15 06:14:31 +09:00
smoogipooo
0a1376c2db Remove PlayMode game-wide. 2017-04-15 05:22:41 +09:00
smoogipooo
a89af273be Make BeatmapInfo expose Ruleset instead of PlayMode. 2017-04-15 05:01:36 +09:00
smoogipooo
59bfc7abad Move statics to RulesetCollection to avoid conflicts later on. 2017-04-15 04:53:37 +09:00
Dean Herbert
2c3fa30386
Metric -> Metrics. 2017-04-12 21:09:39 +09:00
Dean Herbert
00cd2c8372
Better comments. 2017-04-12 21:08:28 +09:00
Jorolf
50b6bcd574 Merge branch 'master' into details 2017-04-11 19:06:58 +02:00
Jorolf
d4e5f55091 the power of linq 2017-04-11 18:43:48 +02:00
Jorolf
fb5952186c changes and fixes 2017-04-11 14:02:56 +02:00
Dean Herbert
24fea2809b
Map beatmap md5 from online response to BeatmapInfo. 2017-04-11 13:44:55 +09:00
Jorolf
24b4b3ad7d update to everything 2017-04-10 16:42:23 +02:00
Huo Yaoyuan
411988f038 Remove all trailing whitespaces in this repo. 2017-04-06 16:21:18 +08:00
Huo Yaoyuan
9b1e010dcc Fix filename mismatch. 2017-04-06 16:05:41 +08:00
smoogipooo
0107772737 Fix using. 2017-04-06 16:25:46 +09:00
Dan Balasescu
6fc1384927 Merge branch 'master' into taiko-fixes 2017-04-06 16:23:22 +09:00
Dean Herbert
4783d17d94 Merge branch 'master' into better-hitsounds 2017-04-06 16:00:56 +09:00
smoogipooo
cec8bca78a Implement IJsonSerializable, BeatmapInfo IJsonSerializable. 2017-04-06 15:54:50 +09:00
Dean Herbert
18ff8efd46
Mark TODO for BeatmapVersion. 2017-04-06 13:15:33 +09:00
Dean Herbert
f193af2a2a
Add better defaults for BaseDifficulty. 2017-04-06 13:15:21 +09:00
smoogipooo
eb82a4c090 Back to using SampleInfo + fix taiko beatmap conversion. 2017-04-06 11:41:16 +09:00
smoogipooo
4b424263ce Fully parse control points. 2017-04-04 13:13:27 +09:00
smoogipooo
19b5555ef2 Slightly clean up archive readers + decoders. Read beatmap version into BeatmapInfo. 2017-04-03 20:26:46 +09:00
Dean Herbert
fa7c72a099
Refactor ReplayInputHandler creation for more flexibility. 2017-03-31 15:59:53 +09:00
smoogipooo
136665e52e Add virtual method to instantiate legacy replays. 2017-03-24 14:28:17 +09:00
smoogipooo
2074812f46 Move ScoreProcessor and Score to Scoring/. 2017-03-24 09:51:52 +09:00
Dean Herbert
54e1b24fe9
Enforce readonly private members where possible. 2017-03-23 13:50:08 +09:00
Dean Herbert
859ee5d316
Tidy up DatabaseWorkingBeatmap. 2017-03-23 10:07:26 +09:00
Drew DeVault
2e1f596b2a Move DatabaseWorkingBeatmap out of partial class 2017-03-22 06:50:48 -04:00
Drew DeVault
2b1d31e69c Address linting issues 2017-03-22 06:25:49 -04:00
Drew DeVault
267238dc27 Simplify derived classes of WorkingBeatmap 2017-03-22 06:15:32 -04:00
Drew DeVault
cc2b4c5c5b Refactor WorkingBeatmap
Gets ArchiveReader out of WorkingBeatmap and delegates extracting stuff
from it to subclasses. Should enable us to make an OnlineWorkingBeatmap
or so.
2017-03-22 05:57:08 -04:00
Dan Balasescu
cd30958086 Merge branch 'master' into song-select-loading-reoptimisation 2017-03-18 01:25:22 +09:00
Dean Herbert
3401759665
Don't batch imports for now. 2017-03-17 18:57:24 +09:00
Dean Herbert
cd98af29c4
Only calculate difficulties on import for now. 2017-03-17 11:53:13 +09:00
smoogipooo
9a4af8f194 GetScore -> CreateScore. 2017-03-17 02:03:12 +09:00
smoogipooo
e0a8c3b1e5 Rename BaseDifficulty -> Difficulty / BeatmapDifficulty. 2017-03-16 23:18:02 +09:00
smoogipooo
28e006eeb9 Move MapDifficultyRange into BaseDifficulty. 2017-03-16 23:17:27 +09:00
Dean Herbert
271dddc9a7 Merge branch 'master' into generic_scoreprocessor 2017-03-16 23:04:19 +09:00
Dean Herbert
4d84bf7350
Change difficulty sort to be based on MaxStarDifficulty. 2017-03-16 13:59:23 +09:00
smoogipooo
5cafec3b6a Add back CreateScoreProcessor to Ruleset to instantiate a non-generic ScoreProcessor for ScoreDatabase. 2017-03-16 13:13:45 +09:00
smoogipooo
82033faaab Warning/error fixing. 2017-03-16 12:57:50 +09:00
smoogipooo
c82ae011fb Make ScoreProcessors take generic judgements. 2017-03-16 12:45:23 +09:00
Dean Herbert
ba10c3a8db
Revert "Merge pull request #441 from tacchinotacchi/archive-reader"
This reverts commit 6f20473e65, reversing
changes made to c76a495d3d.
2017-03-14 11:46:34 +09:00
Alex Amadori
c84a9d56f5 Fix namespace, comply with naming rules 2017-03-13 11:36:21 +01:00
Alex Amadori
caa6e9c82b General improvements 2017-03-13 11:29:24 +01:00
Alex Amadori
971d8eb7c5 Merge remote-tracking branch 'upstream/master' into archive-reader 2017-03-13 10:56:31 +01:00
smoogipooo
3480dca0ad Remove PlayMode enum requirement. Clean things up a lot. 2017-03-12 14:32:50 +09:00
Alex Amadori
c60353faf7 Merge branch 'archive-reader' of https://github.com/tacchinotacchi/osu into archive-reader 2017-03-09 17:07:37 +01:00
Alex Amadori
7374839923 Merge remote-tracking branch 'upstream/master' into archive-reader 2017-03-09 17:07:00 +01:00
Dean Herbert
d7497330b2
Reduce warning/suggestion count to zero. 2017-03-09 15:52:40 +09:00
Dean Herbert
0976e205d8
Remove redundant parentheses. 2017-03-09 14:00:17 +09:00
Alex Amadori
9f40a888ec Update BeatmapArchiveReader's test 2017-03-08 21:55:38 +01:00
Alex Amadori
309019aab3 Merge remote tracking branch 'upstream/master' into archive-reader 2017-03-07 08:41:44 +01:00
Dean Herbert
5cbcf7a20a
Fix error-level inspections. 2017-03-07 14:31:54 +09:00
Dean Herbert
4430255ec4
Merge remote-tracking branch 'upstream/master' into replay
# Conflicts:
#	osu.Desktop.VisualTests/Tests/TestCasePlayer.cs
#	osu.Desktop/OsuGameDesktop.cs
#	osu.Game.Modes.Osu/Objects/Drawables/DrawableHitCircle.cs
#	osu.Game.Modes.Osu/Objects/Drawables/DrawableSlider.cs
#	osu.Game/Database/BeatmapDatabase.cs
#	osu.Game/Graphics/Cursor/OsuCursorContainer.cs
#	osu.Game/IPC/BeatmapImporter.cs
#	osu.Game/Modes/Mod.cs
#	osu.Game/Modes/Objects/Drawables/DrawableHitObject.cs
#	osu.Game/Modes/UI/Playfield.cs
#	osu.Game/Screens/Play/Player.cs
#	osu.Game/Screens/Play/PlayerInputManager.cs
2017-03-07 13:50:08 +09:00
Dean Herbert
0cad5d7d41
Fix most warnings. 2017-03-07 13:05:57 +09:00
Alex Amadori
fd53d10264 Refactor ArchiveReader for extensibility 2017-03-06 23:56:08 +01:00
Dean Herbert
95e2e2b027
Replay loading via drag-drop huzzah! 2017-03-04 19:02:43 +09:00
Dean Herbert
aa9d85624d
Change IPC to make sense. 2017-03-04 18:51:16 +09:00
Dean Herbert
398b1fcf03 Add comment about .ID == 0 check. 2017-03-03 20:51:07 +09:00
Mikal Stodal
c88c6c4c62 More summaries 2017-03-02 15:37:45 +01:00
Mikal Stodal
dfa21444b4 Ensure correct exception logged 2017-03-02 14:10:32 +01:00
Mikal Stodal
2498305174 Merged branch master into remove-source-on-import 2017-03-02 13:39:22 +01:00
Mikal Stodal
47162a3e91 Update summary and commentary 2017-03-02 13:39:02 +01:00
Mikal Stodal
6661195e92 Only add set if ID is 0 2017-03-02 13:36:01 +01:00
Dean Herbert
68a359698d
Fix potential nullref caused by test data. 2017-03-02 18:35:24 +09:00
Mikal Stodal
418ae24fea Document private method getBeatmapSet(path) 2017-03-01 17:57:57 +01:00
Mikal Stodal
1e901a1604 Only set StoryBoardFile once 2017-03-01 17:08:12 +01:00
Mikal Stodal
eff66a1da6 Only delete on successful import. 2017-02-28 14:46:16 +01:00
Mikal Stodal
d54a75a5c5 Delete file after importing BeatmapSet w/error handling,
also changed batch-commit of multiple sets to database.
2017-02-28 14:35:42 +01:00
Dean Herbert
4a4f1f4d82
Actually delete all related database entries, not just the set. 2017-02-27 18:27:38 +09:00
Dean Herbert
27d31d1d30 Merge remote-tracking branch 'upstream/master' into better-container 2017-02-26 11:23:06 +09:00
Thomas Müller
1585ae842a Update framework 2017-02-26 11:22:58 +09:00
Dean Herbert
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
Thomas Müller
d150eb4450 Merge branch 'master' into better-star-counter 2017-02-24 19:37:04 +01:00
Thomas Müller
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
Dean Herbert
c178493877
Add support for undeleting beatmaps if they are imported during an undeleted state. 2017-02-24 18:13:38 +09:00
Dean Herbert
d24403e58e
Remove unused using statement. 2017-02-24 17:20:00 +09:00
Dean Herbert
958bf54c31
Add safe deletion support. 2017-02-24 17:08:13 +09:00
Dean Herbert
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
Dean Herbert
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
Thomas Müller
a5dfa7ab06 Remove unnecessary using statements 2017-02-23 21:38:10 +01:00
Dean Herbert
da2bfe6d3c
Framework updates. 2017-02-23 16:42:12 +09:00
Thomas Müller
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
Dean Herbert
11643d2e09
Remove unnecessary methods and local variables. 2017-02-13 18:30:51 +09:00
Thomas Müller
e3f35cd66e Merge branch 'master' into osb_loading 2017-02-12 12:26:25 +01:00
Dean Herbert
870aa2750f Don't attempt to import command line arguments as beatmaps. 2017-02-12 14:53:33 +09:00
Damnae
a504c73f33 Load beatmap data from an optional osb file. 2017-02-09 15:19:09 +01:00
Dean Herbert
50bd80cb0c
Update and standardise license headers. 2017-02-07 14:27:41 +09:00
Dean Herbert
756fd78a88
Fix incorrect line endings. 2017-02-07 13:52:19 +09:00
Dean Herbert
0272c4b559 Add StarDifficulty property and correct colouring of difficulty icons. 2017-01-30 15:26:28 +09:00
Dean Herbert
56fe69852d Change beatmap database reset logic to only run a maximum of once. 2017-01-23 18:13:06 +09:00
Dean Herbert
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
Dean Herbert
f356640cb7 Add missing licence headers. 2016-12-06 19:07:15 +09:00
Dean Herbert
0c841cffdd Change GetChildren recursive default to false (should be more common). 2016-11-23 15:34:32 +09:00
Dean Herbert
d71550d22a Don't do a recursive fill by default, we don't need it. 2016-11-22 22:07:28 +09:00
Dean Herbert
2ba365657e Tidy up some linq. 2016-11-22 17:21:42 +09:00
Dean Herbert
06f4f93918 Move play modes to Modes namespace. 2016-11-14 18:03:20 +09:00
Dean Herbert
0f4538f69f Rename GameModes namespace to Screens. 2016-11-14 17:23:33 +09:00
Huo Yaoyuan
ef5968e243 More robust metadata handling. 2016-11-07 23:12:49 +08:00
Huo Yaoyuan
c59cad2478 AudioEquals method for BeatmapInfo. 2016-11-07 21:52:23 +08:00
Dean Herbert
a11d534067 Add beatmap backgrounds. 2016-11-05 20:00:14 +09:00
Dean Herbert
8fe63689a4 Fix thread safety issue when accessing files in beatmap (zip) files. 2016-11-05 18:19:01 +09:00
Dean Herbert
b86f308af6 Add async workflow. 2016-11-01 23:24:14 +09:00
Dean Herbert
10ef34b805 Lazy parse beatmap; Don't reload audio track if it hasn't changed. 2016-10-28 20:24:14 +09:00
Dean Herbert
74f1a9622f Add initial game-wide beatmap flow. 2016-10-28 19:55:48 +09:00
Dean Herbert
feccb7286c Add the concept of a "WorkingBeatmap" and make player load beatmaps and audio from SongSelect. 2016-10-28 14:14:45 +09:00
Dean Herbert
33ef55df88 Allow BeatmapDatabase to be constructed without a host. 2016-10-27 17:34:50 +09:00
Dean Herbert
f16cc430f8 Stop using memory database. Load sample data local to TestCase.
Also makes the connection private.
2016-10-27 17:08:53 +09:00
Drew DeVault
063fdd9a2d Add test data to db for VisualTests
Also fixes the broken IPC condition
2016-10-24 14:57:00 -04:00
Dean Herbert
d3a857edb9 Make importing work properly.
Moves import code to BeatmapDatabase.
2016-10-24 11:39:53 -04:00
Dean Herbert
0c9e26e546 Return the populated item when calling GetChildren to write more elegant code. 2016-10-24 11:39:18 -04:00
Dean Herbert
6f80efdb29 Add a database reset method. 2016-10-24 11:39:18 -04:00
Dean Herbert
7650bb1707 Don't insert to database until we're completely finished importing a beatmap. 2016-10-24 11:39:18 -04:00
Dean Herbert
ee6c810df5 Fix cascading inserts. 2016-10-24 11:39:18 -04:00
Drew DeVault
42f8d19c73 Sort by difficulty and fix relationship 2016-10-24 11:39:18 -04:00
Drew DeVault
8d6431b35e Add star counter to difficulty select 2016-10-24 11:39:18 -04:00
Drew DeVault
6da092ab30 Fix additional bugs, tweak L+F 2016-10-24 11:39:18 -04:00
Drew DeVault
8d4a211419 Fix initialization of BeatmapInfo 2016-10-24 11:39:18 -04:00
Drew DeVault
3ee0bf2b80 Fix cascade insert 2016-10-24 11:39:18 -04:00
Drew DeVault
641855c790 Fix issues with beatmap import file contention 2016-10-24 11:39:18 -04:00
Drew DeVault
c41b3d92c6 Fix up wrt upstream development 2016-10-24 11:39:18 -04:00
Drew DeVault
674f624bfc Improve song selection layout, database loading
Also adds event that notifes the song select when a beatmap is added.
2016-10-24 11:39:11 -04:00
Drew DeVault
a14edc06c8 Pull beatmap list from db and render simple list 2016-10-24 11:39:11 -04:00
Dean Herbert
c81c4cbbcd Fix missing Metadata initialisation. 2016-10-19 12:28:48 +09:00