1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-23 00:47:24 +08:00
Commit Graph

566 Commits

Author SHA1 Message Date
Huo Yaoyuan
62b3540fd6 Merge branch 'master' into fixes 2017-08-04 13:49:03 +08:00
Huo Yaoyuan
eb9972581e Provide Autoplay mod in Ruleset. 2017-08-04 00:25:24 +08:00
Dean Herbert
248486f8f9 Merge branch 'master' into osulegacydecoder-parser 2017-08-03 16:30:37 +09:00
Dean Herbert
0d9ea97828 Allow Rulesets to create a non-FontAwesome icon
This also
- Renames TextAwesome to SpriteIcon.
- Removes the default size of "20" from SpriteIcon (now defaults to the underlying texture size).
2017-08-03 14:36:21 +09:00
MrTheMake
be3c7ec5f8 Added missing space 2017-08-02 16:17:33 +02:00
MrTheMake
79724e8018 Fix OsuLegacyDecoder's parser being NULL if no ruleset was specified 2017-08-02 16:05:09 +02:00
Dean Herbert
7cb87c7145 Run each import in a single transaction
Improves performance substantially.
2017-08-02 14:18:35 +09:00
Dean Herbert
6eb960010f Speed up startup cleanup operations. 2017-08-01 17:58:21 +09:00
Dean Herbert
3b1166d1e6 Optimise file lookups and other database operations
FirstOrDefault when called on a TableQuery with a predicate doesn't use table indices
2017-08-01 17:37:21 +09:00
Dean Herbert
941f3f0934 Tidy up osu-stable import process
Now can locate any osu-stable installation using registry lookup (with ample fallbacks). Also uses a much more controlled access method via StableStorage.
2017-08-01 15:12:38 +09:00
Dean Herbert
b4acdd5f90 Merge remote-tracking branch 'upstream/master' into fix-file-references 2017-08-01 11:05:38 +09:00
Dean Herbert
c73e139954 Add "migration"
Also simplify initial migration for BeatmapStore by just nuking everything.
2017-08-01 10:24:04 +09:00
Dean Herbert
c060d32765 Separate out startup tasks to ensure they run after migrations 2017-08-01 10:24:00 +09:00
Dean Herbert
ed3e78452e Lock beatmaps for good measure 2017-08-01 09:38:43 +09:00
Dean Herbert
6af0629cc0 Remove unnecessary newline 2017-08-01 09:37:33 +09:00
Dean Herbert
404497fa10 Allow a single beatmap to reference the same file multiple times
This fixes incorrect reference counts causing database desync.
2017-07-31 21:49:57 +09:00
Dean Herbert
f67822a59b Add progress for deleting all maps 2017-07-31 18:52:59 +09:00
Dean Herbert
92b3c7ac08 Fix the whole database being retrieved when importing each beatmap 2017-07-31 18:38:42 +09:00
Dean Herbert
df5094c0d4 Rework how notifications are distributed 2017-07-31 18:03:55 +09:00
Dean Herbert
57d45b180c Merge remote-tracking branch 'upstream/master' into import-from-stable 2017-07-31 17:31:10 +09:00
Dean Herbert
b45f1e5381 Merge branch 'master' into transaction-on-import 2017-07-28 17:43:18 +09:00
Dean Herbert
6807caa752 Use a transaction when adding a beatmap
Fixes flakey unit test.
2017-07-28 17:31:50 +09:00
Dean Herbert
c48bf3940e Add a progress notification when importing beatmaps 2017-07-28 16:57:33 +09:00
Dean Herbert
f5b0253e82 Apply CI fixes 2017-07-28 15:36:23 +09:00
Dean Herbert
d93d9e6190 Tidy up file deletion after import 2017-07-28 15:08:56 +09:00
Dean Herbert
6616721e37 Don't block imports and BeatmapStore operations using the same lock 2017-07-28 15:05:12 +09:00
Dean Herbert
d51ce896f9 Add locking to all BeatmapManager operations 2017-07-28 12:58:35 +09:00
Dean Herbert
7d4218ea6c Add option to import from osu-stable
Also adds an option to delete all beatmaps for testing purposes.
2017-07-28 12:58:35 +09:00
Dean Herbert
9ee59dd637 Add the ability to create migrations on a per-store level
Now stores store versions to the database itself.
2017-07-28 12:58:35 +09:00
Dean Herbert
3a6f3cdd8a Add the ability to create migrations on a per-store level
Now stores store versions to the database itself.
2017-07-27 20:38:40 +09:00
Dean Herbert
996e5e8b4a Use SHA2 for hashing 2017-07-27 17:40:08 +09:00
Dean Herbert
5f53426a9a *Database -> *Store
Welcome back BeatmapManager
2017-07-27 16:56:41 +09:00
Dean Herbert
fdc6666c71 Simplify hashing method
Also exit the import process before importing files to the file store to avoid incorrect reference count increments.
2017-07-27 15:55:55 +09:00
Dean Herbert
cbe7b08642 Make BeatmapStore's BeatmapDatabase private 2017-07-27 15:34:13 +09:00
Dean Herbert
96b08b8777 Simplify and document DatabaseStore API 2017-07-27 15:06:10 +09:00
Dean Herbert
a90eff69db Simplify BeatmapSetInfo deletion by relying on cascading deletes 2017-07-27 12:51:49 +09:00
Dean Herbert
c7a6343985 Never cascade-delete rulesets 2017-07-27 12:51:21 +09:00
Dean Herbert
aa81397df4 Recursively retrieve files 2017-07-27 12:41:34 +09:00
Dean Herbert
690b41b1e9 Fix join rows not being deleted when a beatmap is cleaned up 2017-07-27 12:37:37 +09:00
Dean Herbert
4e742959f2 CI fixes 2017-07-27 00:21:57 +09:00
Dean Herbert
87add0765e Initial documentation pass on BeatmapDatabase
Also a bit of tidying up.
2017-07-27 00:08:19 +09:00
Dean Herbert
07d4d2dbe4 Secondary documentation pass on BeatmapStore 2017-07-26 23:13:02 +09:00
Dean Herbert
99e53b5109 Initial documentation pass on BeatmapStore 2017-07-26 22:48:16 +09:00
Dean Herbert
898a601098 Introduce a reference counting file store 2017-07-26 20:22:02 +09:00
Dean Herbert
5fc68aabbf Fix reset function not running in correct order 2017-07-26 17:14:38 +09:00
Dean Herbert
9e20a02c0a Split out BeatmapDatabase into BeatmapStore
Hide database functionality at a lower level in preparation from eventually making it private.
2017-07-26 16:31:34 +09:00
Dean Herbert
fce580d717 Reshuffle namespaces 2017-07-26 13:22:46 +09:00
Dean Herbert
64f2e2dc32 Use Colour instead of ColourInfo 2017-07-23 13:06:16 +02:00
Thomas Müller
e68675f970 Rename EasingTypes to Easing 2017-07-22 20:53:53 +02:00
Thomas Müller
2cd8f6b30c Merge branch 'master' of github.com:ppy/osu into better-transforms
# Conflicts:
#	osu-framework
2017-07-21 11:15:26 +02:00
Dean Herbert
d6968ca09c Remove FullyLoaded logic
Always parse storyboards for now.

Let's not optimise this until it is necessary. It was leading to weird threading problems due to the load call in Player's async load method.
2017-07-20 11:01:50 +09:00
Dean Herbert
d69470f2ae Fix TestWorkingBeatmap broken by attempting to load storyboard 2017-07-20 09:22:39 +09:00
Thomas Müller
c4619f614a Merge branch 'master' of github.com:ppy/osu into better-transforms
# Conflicts:
#	osu-framework
2017-07-19 19:15:51 +02:00
Dean Herbert
da92fccdb0 Merge branch 'master' into non-null-beatmap 2017-07-19 18:32:42 +09:00
Dean Herbert
d7dddec328 Set zero-difficulty values local to the dummy beatmap 2017-07-19 18:32:11 +09:00
Dean Herbert
0b53f1a7e3 Reference system 2017-07-19 18:09:59 +09:00
Dean Herbert
a01209cfe0 Simplify comparator 2017-07-19 18:09:59 +09:00
Dean Herbert
d0dea33faa Make Beatmap (bindable) non-nullable. 2017-07-19 15:16:53 +09:00
Dean Herbert
632d2e8ba5 Dummy beatmap has dummy ruleset 2017-07-19 15:16:48 +09:00
Dean Herbert
3289d93f22 Give the dummy beatmap a background 2017-07-19 15:16:42 +09:00
Dean Herbert
007b343854 Fix incorrect equality check when TimingPointAt returns a default T 2017-07-19 15:16:40 +09:00
Dean Herbert
21984ba764 Move DummyWorkingBeatmap to a more global level (OsuScreen) 2017-07-19 15:16:39 +09:00
Dean Herbert
e47faf4e85 Add a dummy beatmap provider for use in BeatmapInfoWedge 2017-07-19 15:16:33 +09:00
Dean Herbert
6f59e5feec Add null check on stream 2017-07-19 14:56:27 +09:00
Thomas Müller
a5e610a7ba Update framework and fix compilation
Most issues were related to BeginLoopedSequence usage and lack of
"this." in front of transform helpers.
2017-07-14 19:18:12 +03:00
Dean Herbert
3aeed86392 Merge branch 'master' into drawable-room-update 2017-07-14 15:29:27 +09:00
Dean Herbert
de46f3ab07 Remove all unnecessary parenthesis where object initialisers are used
Enforces at CI.
2017-07-13 15:11:33 +09:00
DrabWeb
b196b1d3c6 CI fixes, switch RoomInspector to use BeatmapSetCover. 2017-07-13 01:24:59 -03:00
DrabWeb
fea40ccc1a Share BeatmapSet cover sprite code. 2017-07-13 01:17:47 -03:00
Thomas Müller
9d523ea012 Update framework 2017-07-12 11:06:13 +09:00
Thomas Müller
40225238d9 Set RelativeSizeAxes for updated FillMode behavior 2017-06-28 12:24:23 +03:00
paparony03
62dee59672 Shapes namespace
Depends on https://github.com/ppy/osu-framework/pull/837
2017-06-20 15:54:23 +10:00
Dean Herbert
f439237bd7 Set a more sane default for TimingControlPoint's BeatLength 2017-06-15 14:19:06 +09:00
smoogipooo
ffbb46f668 Update in line with framework. 2017-06-12 12:48:47 +09:00
John Neijzen
4abad17b92 Fix Black Space after } and Symbol Spacing 2017-06-08 14:48:42 +08:00
smoogipooo
223c75327f Remove key/val in favor of local variables + method call. 2017-05-30 20:59:53 +09:00
smoogipooo
5b5c2e4717 Back to using val... 2017-05-30 20:37:30 +09:00
smoogipooo
0728aea6a4 Fixes + cleanup. 2017-05-30 20:26:39 +09:00
smoogipooo
93a33be596 val -> value, val -> line (in cases where a key is not used). 2017-05-30 19:52:43 +09:00
smoogipooo
0175b91927 Cleanups. 2017-05-30 19:52:21 +09:00
Dan Balasescu
94ae730a20 Merge branch 'master' into storyboards 2017-05-29 17:49:51 +09:00
smoogipooo
6101fe98e1 Always ApplyDefaults after parsing beatmaps to make sure hit objects are in their most loaded state. 2017-05-29 12:10:29 +09:00
ColdVolcano
e46e1d96a7 Move logic to handleEvent 2017-05-27 00:20:19 -05:00
ColdVolcano
a523dfc388 Allow variables of variables
Some storyboards like to do tricky stuff
2017-05-27 00:13:46 -05:00
ColdVolcano
0b770d1225 Allow for variables in storyboards 2017-05-26 23:55:34 -05:00
Dean Herbert
4ee11764b8 Merge branch 'master' into osu-direct 2017-05-24 12:16:34 +09:00
Dean Herbert
53f489b447 Remove using 2017-05-24 11:50:12 +09:00
smoogipooo
0a385055dc Remove Func<T>'d-ness. 2017-05-24 02:53:08 +09:00
smoogipooo
41824e0179 Add comment. 2017-05-24 02:24:10 +09:00
smoogipooo
2d1df8fd8a xmldoc fixes. 2017-05-24 02:22:28 +09:00
smoogipooo
9e7f384203 Fix returning incorrect control points for non-timing points. 2017-05-24 02:19:22 +09:00
smoogipooo
462bbd02ba Simplify expression. 2017-05-24 01:38:28 +09:00
smoogipooo
7628cdf522 Return first control point in the list if the time is before it. 2017-05-24 01:38:04 +09:00
Dean Herbert
0842e00f13 Merge branch 'master' into controlpoint-rework 2017-05-24 00:20:15 +09:00
Dean Herbert
0634a3a5c5 Merge branch 'master' into osu-direct 2017-05-23 17:33:20 +09:00
Dean Herbert
fe7ac20e29 Read menu music from osz resource 2017-05-23 16:38:43 +09:00
smoogipooo
836bf930a0 More cleanups. 2017-05-23 15:29:38 +09:00
smoogipooo
2344f37a3c Always add TimingChange control points. 2017-05-23 15:26:07 +09:00
smoogipooo
002a0e99a2 Use SortedList + BinarySearch to find control points at time values. 2017-05-23 15:20:32 +09:00
smoogipooo
6bfd7e0fb0 xmldocs. 2017-05-23 14:11:37 +09:00
smoogipooo
3cdfd2eef5 Split ControlPoint into different types.
# Conflicts:
#	osu.Game.Rulesets.Mania/UI/Column.cs
2017-05-23 14:03:40 +09:00
smoogipooo
0a0139aded Remove the concept of beatmap events, rename BreakEvent -> BreakPeriod. 2017-05-22 10:12:33 +09:00
Dean Herbert
0b987be600 Merge branch 'master' into osu-direct 2017-05-20 16:17:59 +09:00
DrabWeb
c6320c0f11 BeatmapBackgroundSprite public -> internal 2017-05-19 16:02:42 -03:00
DrabWeb
3b8cadd4df Clean up DirectPanel and it's subclasses 2017-05-19 12:52:23 -03:00
smoogipooo
67cf64062a Add flag to determine whether the beatmap requested for conversion is for the current ruleset. 2017-05-19 16:02:40 +09:00
smoogipooo
afd3eb4b8d Implement things a bit more to remove warnings. 2017-05-18 18:04:32 +09:00
smoogipooo
74c23ff6d8 Add base for event parsing code. 2017-05-17 20:46:23 +09:00
smoogipooo
6231a19b8c Merge remote-tracking branch 'origin/master' into mania-timing-sections 2017-05-16 18:35:32 +09:00
Dean Herbert
efab186384 Update namespaces in line with framework 2017-05-16 12:50:30 +09:00
smoogipooo
0739a76497 Make the playfield work in TestCaseGamefield. 2017-05-11 20:04:45 +09:00
Dean Herbert
70ef503403 Merge branch 'master' into metadata 2017-05-11 12:23:00 +09:00
Huo Yaoyuan
01616cc27c Avoid extra MemoryStream in ArchiveReader. 2017-05-08 19:41:22 +08:00
Huo Yaoyuan
dff05bec79 Use readonly fields. 2017-05-08 18:56:04 +08:00
Huo Yaoyuan
4c26a02e99 Remove unnecessary arguments in WorkingBeatmap's constructor. 2017-05-08 16:42: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
003cf53441 Streamline panel selection event logic.
Was previously firing multiple times where it was completely unnecessary. Also had bidirection firing going on.
2017-04-28 20:43:42 +09:00
Dean Herbert
28375ed1fc Allow transfer of previously loaded background between WorkingBeatmaps 2017-04-28 15:03:07 +09:00
smoogipooo
c95a6fbd09 Use single line for GetUnicodePreference. 2017-04-28 14:14:14 +09:00
Huo Yaoyuan
4cb18361c1 Use localisation engine for unicode text. 2017-04-26 19:50:38 +08:00
smoogipooo
d9dec9d444 Implement Taiko difficulty calculation. 2017-04-26 15:50:08 +09:00
Dean Herbert
43d09a9734 CI fixes 2017-04-24 20:31:25 +09:00
Dean Herbert
c7b789424b Update BeatmapInfoWedge design
- Adds colour difficulty strip.
- Adjusts paddings.
- Fixes source/artist confusion.
- Double dash to em-dash.
2017-04-24 20:19:44 +09:00
Dean Herbert
ba2db75890 Merge branch 'master' into nodal-hit-sounds 2017-04-24 14:14:33 +09:00
ColdVolcano
4b69477531 Trim whitespace 2017-04-23 00:41:15 -05:00
ColdVolcano
1d254f4a56 Take MusicController back to life 2017-04-23 00:13:58 -05:00
Dan Balasescu
6fb8676215 Merge branch 'master' into nodal-hit-sounds 2017-04-22 22:11:19 +09:00
smoogipooo
2af9bf1423 Prefix everything inside Rulesets.Objects.Legacy with "Convert" to avoid naming clashes with Ruleset projects. 2017-04-22 21:33:11 +09:00
Dean Herbert
3345ba180f
Update with framework rename. 2017-04-21 19:26:32 +09:00
Dean Herbert
3f832731c9
Add DoubleTime, HalfTime and Nightcore support. 2017-04-21 17:33:37 +09:00
Dean Herbert
fbd26a1d5e
Mode -> Ruleset. 2017-04-18 16:05:58 +09:00
smoogipooo
27ddf4b475 Refactor beatmap converters. 2017-04-18 14:31:06 +09:00
smoogipooo
efc050a95a Make IBeatmapConverter an abstract class instead of an interface. 2017-04-18 09:38:52 +09:00
smoogipooo
456aee63ca Mode IBeatmapConverter and IBeatmapProcessor to osu.Game.Modes.Beatmaps namespace. 2017-04-18 09:36:08 +09:00
smoogipooo
c61e3265bb A few xmldoc additions/fixes. 2017-04-18 09:20:38 +09:00
smoogipooo
786446354e Fix post-rebase errors. 2017-04-18 09:00:53 +09:00
smoogipooo
04973ae65e Fix conversion types for Catch and Mania. 2017-04-18 08:58:21 +09:00
smoogipooo
09208adf81 Re-implement legacy hit object conversion. 2017-04-18 08:58:21 +09:00
smoogipooo
2767fbd81a Implement Beatmap conversion testing. 2017-04-18 08:57:09 +09:00
Dean Herbert
af13f97435
Fix regressions and test cases. 2017-04-17 19:44:03 +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
ddce3c157f Clean up a few remaining stragglers. 2017-04-15 06:15:55 +09:00
smoogipooo
0333e1a050 Remove unused usings. 2017-04-15 05:57:18 +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
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