1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-17 12:12:54 +08:00
Commit Graph

3116 Commits

Author SHA1 Message Date
smoogipoo
a1be3c8bfd Fix header background being invisible in multiplayer/playlists 2021-02-12 15:27:37 +09:00
Dean Herbert
5f23bd7259 Revert most of the changes to ArchiveModeManager by using better code 2021-02-12 12:48:32 +09:00
smoogipoo
18e3f8c233 Sort beat lengths rather than linear search 2021-02-08 19:03:19 +09:00
smoogipoo
b40b159acb Round beatlength 2021-02-08 18:52:50 +09:00
smoogipoo
69ca440ae5 Merge branch 'master' into more-accurate-most-common-bpm 2021-02-08 18:40:58 +09:00
Bartłomiej Dach
b9a49d5589 Coerce undefined animation loop types to Forever 2021-01-31 15:43:58 +01:00
Dean Herbert
16f3d1815f Fix SQLite exception thrown is a beatmap lookup is attempted without an OnlineBeatmapID present
It turns out the SQLite API isn't smart enough to handle nullables
directly, so we need to help it out a bit.

Stops the following from being thrown:

```
System.InvalidOperationException: Value must be set.
   at Microsoft.Data.Sqlite.SqliteParameter.Bind(sqlite3_stmt stmt) = 3
at
   at Microsoft.Data.Sqlite.SqliteParameterCollection.Bind(sqlite3_stmt
stmt) = 3 at
   at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader(CommandBehavior
behavior)
   at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader()
   at
osu.Game.Beatmaps.BeatmapManager.BeatmapOnlineLookupQueue.checkLocalCache(BeatmapSetInfo
set, BeatmapInfo beatmap) in
/Users/dean/Projects/osu/osu.Game/Beatmaps/BeatmapManager_BeatmapOnlineLookupQueue.cs:line
166 = 166
```
2021-01-29 19:53:57 +09:00
Dean Herbert
c3d4044017 Avoid using Dapper to fix iOS compatibility of beatmap lookup cache 2021-01-28 16:53:56 +09:00
Lucas A
383c40b992 Address remaining reviews suggestions. 2021-01-26 20:35:42 +01:00
Lucas A
9f9206726a Fix typos. 2021-01-26 18:11:54 +01:00
Dean Herbert
4ac362ee1a Move cloning local to editor 2021-01-25 18:29:00 +09:00
Dean Herbert
f054b38105 Merge branch 'master' into revert-beatmap-controlpointinfo-cloning 2021-01-25 18:25:53 +09:00
Lucas A
51d4da565c Fix ArchiveModelManagers lookup paths. 2021-01-24 22:25:49 +01:00
Salman Ahmed
acfb2d2980 Refactor beatmap set covers into using ModelBackedDrawable<T> 2021-01-24 00:32:33 +03:00
Salman Ahmed
d83abfa7d2 Add test scene with failing test case 2021-01-24 00:32:20 +03:00
Dean Herbert
edb6d3907b
Merge pull request #11472 from frenzibyte/explicit-beatmap-markers
Add explicit content markers to beatmap panels and overlay
2021-01-17 21:44:10 +09:00
Dean Herbert
d6e6b4bbee Revert forced cloning of ControlPointInfo
This reverts commit 3c3e860dbc.

Closes https://github.com/ppy/osu/issues/11491.
2021-01-15 17:34:59 +09:00
smoogipoo
24e991a5ef Actually return beat length and not BPM 2021-01-15 14:35:09 +09:00
smoogipoo
c6e9a6cd5a Make most common BPM more accurate 2021-01-15 14:28:49 +09:00
Dean Herbert
8a0b975d71 Fix deadlock scenario when calculating fallback difficulty
The previous code would run a calcaulation for the beatmap's own ruleset
if the current one failed. While this does make sense, with the current
way we use this component (and the implementation flow) it is quite unsafe.

The to the call on `.Result` in the `catch` block, this would 100%
deadlock due to the thread concurrency of the `ThreadedTaskScheduler`
being 1. Even if the nested run could be run inline (it should be), the
task scheduler won't even get to the point of checking whether this is
feasible due to it being saturated by the already running task.

I'm not sure if we still need this fallback lookup logic. After removing
it, it's feasible that 0 stars will be returned during the scenario that
previously caused a deadlock, but I don't necessarily think this is
incorrect. There may be another reason for this needing to exist which
I'm not aware of (diffcalc?) but if that's the case we may want to move
the try-catch handling to the point of usage.

To reproduce the deadlock scenario with 100% success (the repro
instructions in the linked issue aren't that simple and require some
patience and good timing), the main portion of the lookup can be changed
to randomly trigger a nested lookup:

```
if (RNG.NextSingle() > 0.5f)
    return GetAsync(new
DifficultyCacheLookup(key.Beatmap, key.Beatmap.Ruleset,
key.OrderedMods)).Result;
else
    return new StarDifficulty(attributes);
```

After switching beatmap once or twice, pausing debug and viewing the
state of threads should show exactly what is going on.
2021-01-14 18:25:34 +09:00
Salman Ahmed
e8daea91d2 Add online beatmap "explicit content" property 2021-01-13 12:13:14 +03:00
smoogipoo
9a22df2b88 Fix BPM multiplier not working in all cases 2021-01-12 17:50:22 +09:00
Dean Herbert
3c3e860dbc Move ControlPointInfo copying to base Beatmap.Clone method (and remove setter) 2021-01-07 23:52:04 +09:00
Dean Herbert
00dc98e3ab Make legacy control point's BpmMultiplier setter private again 2021-01-07 19:06:52 +09:00
Dean Herbert
69ac22dd7f Fix incorrectly copy pasted xmldoc 2021-01-07 19:06:10 +09:00
Dean Herbert
31a6e9b860 Remove unused using 2021-01-05 14:24:49 +09:00
Dean Herbert
afab35a31a Fix missing copy implementation in LegacySampleControlPiont 2021-01-05 13:41:31 +09:00
Dean Herbert
caa88c6100 Use CreateCopy instead of Clone interface
I was going for conformity by using the IClonable interface, but it
doesn't look like we use it anywhere else in the project.
2021-01-05 13:13:52 +09:00
Dean Herbert
ba4e411422 Clone and copy ControlPointInfo when retrieving a playable beatmap 2021-01-04 16:37:07 +09:00
Dean Herbert
d7279dab40
Merge pull request #11226 from peppy/fix-legacy-skin-texture-loader-store
Fix incorrectly provided texture loader store to skins
2020-12-23 16:41:01 +09:00
Dean Herbert
807c1ecd1f Refactor recommendation iteration code to read better 2020-12-22 14:57:32 +09:00
Dean Herbert
8cc2ed3fae Move from OsuGameBase to OsuGame
Also moves to a more suitable namespace.
2020-12-22 14:28:27 +09:00
Dean Herbert
85518b4d99 Enforce non-null for BeatmapManager WorkingBeatmap resources 2020-12-22 12:06:10 +09:00
Dean Herbert
a97a2b2a66 Add nullability to BeatmapManager's GameHost reference 2020-12-22 12:03:25 +09:00
Dean Herbert
10c2745682 Add region specifications around implicit interface implementations 2020-12-22 12:01:09 +09:00
Dean Herbert
a5bcf1dc20 Expose resources to skin via interface (and share common pieces with beatmap) 2020-12-21 15:18:52 +09:00
Dean Herbert
0ffbe12fcc Expose resources to beatmaps in a saner way 2020-12-21 14:22:34 +09:00
Dean Herbert
7c804be4d3 Rename textureStore to make its purpose more clear 2020-12-21 14:06:33 +09:00
Dean Herbert
a35060ea7a Add a simple cache-busting query string to online.db retrieval
As we are finally pushing updates for this database, this adds a minimum
level of guarantee that a client will request a new version (without
having to worry about multiple levels of server-side caching).
2020-12-11 17:56:02 +09:00
smoogipoo
2150cf1c52 Rename parameters 2020-12-02 10:55:48 +09:00
smoogipoo
5760e1c1fc Make HitSampleInfo immutable 2020-12-01 15:37:51 +09:00
Dean Herbert
25af091409 Fix storyboard animations of very old beatmaps playing too slow
Closes https://github.com/ppy/osu/issues/10772.
2020-11-12 17:03:43 +09:00
Dean Herbert
6cc0bf17a9 Add explicit lock object and some xmldoc for clarity 2020-11-10 14:31:52 +09:00
smoogipoo
66ea1572c7 Fix unsafe list manipulation in BeatmapDifficultyCache 2020-11-10 01:10:00 +09:00
Dan Balasescu
a2877fb00a
Merge pull request #10730 from peppy/fix-patcher-no-object-crash
Fix legacy patcher crash on no objects present
2020-11-09 18:51:00 +09:00
Bartłomiej Dach
6d4bb4316c Fix difficulty retrieval for online-sourced beatmaps 2020-11-08 00:12:25 +01:00
Dean Herbert
c5b6908e71 Always write [HitObjects] to file
I think this is expected. If not, there's an alternative solution.
2020-11-08 00:18:27 +09:00
Dean Herbert
c1c3d37720 Remove non-null assert 2020-11-06 17:24:28 +09:00
Dean Herbert
f51cb0dd14 Add ruleset fallback logic into cache lookup class 2020-11-06 16:58:53 +09:00
Dean Herbert
c5b172d0dd Remove synchronous lookup path from BeatmapDifficultyCache 2020-11-06 14:53:15 +09:00
Dean Herbert
b69ada64e8 Update BeatmapDifficultyCache to use base implementation logic 2020-11-06 14:31:21 +09:00
Dean Herbert
517a656899 Move StarDifficulty to own file 2020-11-06 13:51:25 +09:00
Dean Herbert
74ca2faa31 Remove unused using 2020-11-06 13:48:06 +09:00
Dean Herbert
0103b12575 Add basic base class to begin to standardise function across caching components 2020-11-06 13:26:39 +09:00
Dean Herbert
5113d4af8f Rename BeatmapDifficultyManager to BeatmapDifficultyCache 2020-11-06 13:14:29 +09:00
Dean Herbert
ab9e0aac58
Merge pull request #10258 from Game4all/results-dynamic-pp-calc 2020-11-02 15:40:55 +09:00
Dean Herbert
73b290aca3 Merge branch 'master' into results-dynamic-pp-calc 2020-11-02 14:47:33 +09:00
Dean Herbert
3adf451e82 Handle changes via SamplePoints list for simplicity 2020-11-02 14:40:40 +09:00
Bartłomiej Dach
3090b6ccb5 Resolve CA2249 inspections
"Use `string.Contains` instead of `string.IndexOf` to improve
readability"
2020-11-01 18:54:44 +01:00
Bartłomiej Dach
ca5de22ca5 Resolve CA1834 inspection
"Use `StringBuilder.Append(char)` instead of
`StringBuilder.Append(string)` when the input is a constant unit string"
2020-11-01 18:50:13 +01:00
Dean Herbert
89797d7a57
Merge pull request #9786 from Wieku/storyboard-skin-sprites
Allow storyboard elements to load textures from skins
2020-10-23 17:16:55 +09:00
Dean Herbert
9753dab93b Remove IOnlineComponent and change existing components to use bindable flow 2020-10-22 14:19:12 +09:00
Bartłomiej Dach
e2552d4c36 Merge branch 'master' into storyboard-skin-sprites 2020-10-20 23:01:54 +02:00
Bartłomiej Dach
cdd56ece87 Read UseSkinSprites when decoding storyboards 2020-10-20 22:49:56 +02:00
Dan Balasescu
bd4e0e1a60
Merge branch 'master' into epilepsy-warning 2020-10-20 17:43:37 +09:00
Dan Balasescu
13060b8575
Merge branch 'master' into beatmap-carousel-less-diffcalc-stutter 2020-10-20 14:26:16 +09:00
Bartłomiej Dach
fd4bab85cf Merge branch 'master' into epilepsy-warning 2020-10-20 01:06:46 +02:00
Bartłomiej Dach
1238e6c30f Add flag value to database
Unfortunately required, as loadBeatmaps() refreshes the decoded beatmap
with the database-stored values, which can end up overwriting the
decoded ones.
2020-10-20 00:46:08 +02:00
Bartłomiej Dach
a9f27a71a2 Fix code formatting issues 2020-10-19 23:53:41 +02:00
Bartłomiej Dach
ba818e3ae0
Merge branch 'master' into results-dynamic-pp-calc 2020-10-19 21:41:07 +02:00
smoogipoo
dfbc0965e4 Merge branch 'master' into peppy/skinnable-health-display 2020-10-16 23:17:17 +09:00
Berkan Diler
fe3a23750c Use char overloads for string methods 2020-10-16 11:52:29 +02:00
Dean Herbert
e89c5c3b3c Add dynamic compile exceptions to fix skin test scenes 2020-10-16 17:08:46 +09:00
Dean Herbert
88ffcb9234 Update EndsWith usages 2020-10-16 12:58:34 +09:00
Dean Herbert
cc41845f56 Add missing string function ordinal specifications 2020-10-16 12:49:31 +09:00
Dean Herbert
07e6609e6d Disable difficulty calculation for set-level difficulty icons 2020-10-14 14:16:22 +09:00
Bartłomiej Dach
1af17fbd5e
Merge branch 'master' into fix-early-break-cull 2020-10-13 18:02:08 +02:00
Bartłomiej Dach
7117fd0fba Add xmldoc and nullability annotations 2020-10-12 21:44:04 +02:00
Bartłomiej Dach
779e6e10a7 Split ctors to avoid passing fields one by one 2020-10-12 21:43:14 +02:00
smoogipoo
ccf7e2c49a Fallback to default ruleset star rating if conversion fails 2020-10-12 16:31:42 +09:00
smoogipoo
379971578d Remove culling notice from HasEffect 2020-10-12 15:28:16 +09:00
Bartłomiej Dach
8af78656e4 Add precision tolerance to difficulty rating range checks 2020-10-10 18:15:52 +02:00
smoogipoo
d536a1f75e Fix breaks being culled too early 2020-10-09 21:04:56 +09:00
Lucas A
7f5cf04b2b Fix merge conflicts. 2020-10-07 13:28:49 +02:00
Dean Herbert
afe3d3989a Force first hitobject to be a NewCombo in BeatmapProcessor preprocessing step 2020-10-06 22:10:13 +09:00
Dan Balasescu
783a463772
Merge branch 'master' into colourise-control-point-table 2020-10-05 20:47:06 +09:00
Dan Balasescu
051ea7eda9
Merge pull request #10329 from peppy/editor-file-drop-support
Add drag-drop support in editor setup screen for audio and background images
2020-10-05 20:05:41 +09:00
Dean Herbert
2ed43c14f8
Merge branch 'master' into editor-file-drop-support 2020-10-05 17:48:06 +09:00
Dean Herbert
365a38e92f
Merge branch 'master' into dynamic-difficulty-icon 2020-10-05 17:37:01 +09:00
Dean Herbert
50eca202f4 User IEnumerable for HandledExtensions 2020-10-02 16:17:10 +09:00
Dean Herbert
f501c88b46 Fix individual control points not being removed from group when group is removed 2020-10-02 15:28:21 +09:00
smoogipoo
40c153e705 Use component instead of drawable 2020-10-01 21:39:40 +09:00
smoogipoo
62b55c4c9c Use static method, add xmldoc + link to wiki 2020-10-01 20:50:47 +09:00
Dean Herbert
e96e30a19d Move control point colour specifications to common location and use for formatting timing screen table 2020-10-01 19:29:34 +09:00
smoogipoo
2213db2088 Use the given ruleset by default 2020-10-01 00:59:41 +09:00
smoogipoo
fde00d3431 Make DifficultyIcon support dynamic star rating 2020-10-01 00:53:25 +09:00
smoogipoo
917e8fc3ba Add difficulty rating to StarDifficulty 2020-10-01 00:53:01 +09:00
Lucas A
2766cf73b4 Reuse BeatmapDifficultyManager cache for beatmap difficulty attributes. 2020-09-29 18:32:02 +02:00
Lucas A
ddede85704 Split performance calculation to its own class. 2020-09-27 12:44:29 +02:00
Lucas A
84cc6068f5 Remove unnecessary XMLDoc comment and remove unecessary implicit null parm 2020-09-27 09:25:01 +02:00
Lucas A
4d94bf3163 Rename CalculateScorePerformance -> CalculatePerformance 2020-09-25 19:16:33 +02:00
Lucas A
77a9d92f42 Add dynamic pp calculation to score panels for local scores 2020-09-25 19:15:40 +02:00
Lucas A
4d743f64f5 Add a method to calculate asynchronously performance on a beatmap. 2020-09-25 18:17:01 +02:00
Dean Herbert
50ba320a51 Expand available file operations in ArchiveModelManager 2020-09-25 13:16:30 +09:00
smoogipoo
de5ef8a471 Rework to support obsoletion 2020-09-17 21:37:32 +09:00
smoogipoo
e71991a53c Add default token 2020-09-17 18:37:48 +09:00
smoogipoo
c7d24203ce Make beatmap conversion support cancellation tokens 2020-09-17 17:40:05 +09:00
smoogipoo
be2d34d5dc Merge branch 'master' into score-recalc 2020-09-09 21:31:31 +09:00
Dean Herbert
5b93752065
Merge pull request #10103 from smoogipoo/disable-online-lookups-tests
Disable online beatmap lookups in tests
2020-09-09 21:21:04 +09:00
smoogipoo
aeae009512 Disable online beatmap lookups in tests 2020-09-09 20:12:40 +09:00
smoogipoo
117c7ec6b2 Merge branch 'master' into score-recalc 2020-09-09 14:38:36 +09:00
Dean Herbert
2cd07b2d3c Fix editor crash on saving more than once
I'm fixing this in the simplest way possible as this kind of issue is
specific to EF core, which may cease to exist quite soon. Turns out the
re-retrieval of the beatmap set causes concurrency confusion and wasn't
actually needed in my final iteration of the new beatmap logic.
2020-09-09 12:48:12 +09:00
Dean Herbert
6b50d44dde Merge branch 'master' into editor-new-beatmap 2020-09-07 18:43:16 +09:00
Dean Herbert
4680728b9c Merge branch 'master' into update-dcc-exclusions 2020-09-07 18:01:44 +09:00
smoogipoo
9ab6d584d3 Merge branch 'master' into editor-new-beatmap 2020-09-07 14:30:41 +09:00
Dan Balasescu
e17ccdfe9f
Merge branch 'master' into combo-colors 2020-09-07 13:55:41 +09:00
Bartłomiej Dach
f138b92078
Merge branch 'master' into editor-new-beatmap 2020-09-06 18:24:02 +02:00
smoogipoo
1143d5d992 Update class exclusion for dynamic compilation 2020-09-04 20:41:08 +09:00
Dean Herbert
25e142965d Strongly type and expose default beatmap information icon implementations for other rulesets 2020-09-04 15:01:32 +09:00
Dean Herbert
fba253f131 Take user argument in CreateNew method parameters 2020-09-04 13:17:43 +09:00
Dean Herbert
f14a82e3a9 Remove unnecessary conversion 2020-09-04 13:13:53 +09:00
Dean Herbert
cd253ab055 Further tweaks to get closer to design originals 2020-09-04 13:05:39 +09:00
Dean Herbert
9d2dff2cb8 Add scale to allow legacy icons to display correctly sized 2020-09-04 12:55:39 +09:00
Dean Herbert
d32b77f045
Add missing extension to filename
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2020-09-03 21:33:25 +09:00
Dean Herbert
1c1c583d3b Fix regression in file update logic (filename set too early) 2020-09-03 19:31:40 +09:00
Dean Herbert
a555407f37 Fix various test failures due to missing beatmap info in empty beatmap 2020-09-03 19:25:18 +09:00
Dean Herbert
72cb65c22f Update and add missing beatmap statistic icons to info wedge 2020-09-03 17:52:22 +09:00
Dean Herbert
d849f7f2b5 Use the local user's username when saving a new beatmap 2020-09-03 13:20:23 +09:00
Dean Herbert
e337e6b3b0 Use a more correct filename when saving 2020-09-03 13:20:23 +09:00
Dean Herbert
faf9b0a528 Fix hard crash when trying to retrieve a beatmap's track when no file is present 2020-09-03 13:20:23 +09:00
Dean Herbert
e032844570 Start with a fresh beatmap when entering editor from main menu 2020-09-03 13:20:23 +09:00
Craftplacer
c2ade44656 Change types back 2020-09-01 17:58:06 +02:00
Craftplacer
9835d98942 Merge remote-tracking branch 'upstream/master' into combo-colors 2020-09-01 17:39:35 +02:00
Dan Balasescu
f08e7828da
Merge branch 'master' into beatmap-track-rework 2020-09-01 16:06:38 +09:00
Craftplacer
9b3a48ee5e
Revert "Add marker interface for beatmap skins" 2020-08-31 18:29:46 +02:00
Craftplacer
fb37a14d57 Update LegacyBeatmapEncoder.cs 2020-08-31 17:24:03 +02:00
Craftplacer
1484e78654 Update xmldoc 2020-08-31 17:24:00 +02:00
Craftplacer
eafa97af17 Revert changes done to SkinConfiguration and IHasCustomColours 2020-08-31 17:23:42 +02:00
Dan Balasescu
bd2f863b56
Merge branch 'master' into legacy-mirror-mod-replays 2020-08-31 12:41:17 +09:00
Craftplacer
7e668fc31a
Update osu.Game/Beatmaps/Formats/LegacyBeatmapEncoder.cs
Co-authored-by: Salman Ahmed <email@iisalman.me>
2020-08-30 16:11:49 +02:00
Craftplacer
1fdf8e6200 Fix xmldoc in LegacyBeatmapEncoder 2020-08-30 16:07:58 +02:00
Craftplacer
e428144f73 Use IBeatmapSkin 2020-08-30 11:34:50 +02:00
Craftplacer
00b68b050c Merge remote-tracking branch 'upstream/master' into combo-colors 2020-08-30 10:16:38 +02:00
Dean Herbert
814655770d
Merge branch 'master' into beatmapskin-interface 2020-08-30 12:22:55 +09:00
Dean Herbert
cd0a73883d
Merge pull request #9945 from smoogipoo/skin-colour-fix-2
Exactly reproduce osu!stable skin colour alphas
2020-08-29 20:06:26 +09:00
Bartłomiej Dach
658a1d159f Add legacy flag value for mirror mod 2020-08-29 11:45:59 +02:00
Craftplacer
82acb3506c Add and change xmldocs 2020-08-29 11:07:28 +02:00
Craftplacer
4cb9e1d443 Initial commit 2020-08-29 10:33:43 +02:00
smoogipoo
436dbafe57 Fix incorrect comparison for mods of different instances 2020-08-28 22:12:17 +09:00
smoogipoo
43c61e5830 Re-query beatmap difficulty before computing 2020-08-28 22:08:28 +09:00
smoogipoo
4d15f0fe52 Implement basic score recalculation 2020-08-28 19:16:46 +09:00
Craftplacer
e6646b9877 Resolve review comments 2020-08-23 15:08:02 +02:00
Dean Herbert
b72f06fef6 Centralise and clarify LoadTrack documentation 2020-08-22 19:42:34 +09:00
smoogipoo
88d50b6c47 Remove alpha mangling from LegacyDecoder 2020-08-22 00:15:37 +09:00
Dean Herbert
d2c2e8bbe8 Revert some more usage of MusicController back to WorkingBeatmap 2020-08-21 15:17:21 +09:00
Dean Herbert
526f06be4c Add back track loaded bool in WorkingBeatmap 2020-08-21 13:53:37 +09:00
Dean Herbert
357fb3a10e Merge branch 'master' into beatmap-track-rework 2020-08-21 12:53:09 +09:00
Dean Herbert
083bcde3cf Fix beatmap transfer not working 2020-08-18 13:01:35 +09:00
smoogipoo
583760100a Implement mania invert mod 2020-08-18 01:40:55 +09:00
Dean Herbert
d9debef156 Add explicit LoadTrack method 2020-08-17 15:38:16 +09:00
Dean Herbert
71f4e753f0 Merge branch 'master' into beatmap-track-rework 2020-08-16 22:35:32 +09:00
Craftplacer
1448c9e381 Merge remote-tracking branch 'upstream/master' into combo-colors 2020-08-15 23:01:38 +02:00
Craftplacer
c4a7fac760 Add required parameters and other various changes 2020-08-15 22:03:24 +02:00
Dean Herbert
c3757a4660 Fix beatmap covers not being unloaded in most overlays
Eventually we'll probably want something smarter than this, but for the
time being this helps stop runaway memory usage.
2020-08-14 19:22:26 +09:00
smoogipoo
91e28b849d Fix incorrect BeatmapManager construction 2020-08-13 00:29:23 +09:00
Craftplacer
8ffaa49839 Handle additional null case 2020-08-12 06:40:21 +02:00
Craftplacer
139c0c75f8 Add documentation for constructor 2020-08-12 06:40:21 +02:00
smoogipoo
b66f303e71 Add annotation 2020-08-12 00:48:45 +09:00
smoogipoo
faff0a70c4 Privatise BMWB 2020-08-11 13:48:57 +09:00
smoogipoo
338c01fa43 Remove track store reference counting, use single instance stores 2020-08-11 13:16:06 +09:00
Craftplacer
78692dc684 Initial commit 2020-08-10 05:21:10 +02:00
smoogipoo
e87f50f74f Rename method 2020-08-07 22:31:41 +09:00
smoogipoo
b6fb7a0d39 Fix possibly setting null track 2020-08-07 22:05:58 +09:00
smoogipoo
f53672193e Fix track stores being kept alive 2020-08-06 17:48:07 +09:00
smoogipoo
86ae61c6b7 Re-implement store transferral in BeatmapManager 2020-08-06 16:24:14 +09:00
smoogipoo
6e42b8219c Move track to MusicController, compiles 2020-08-06 16:24:14 +09:00
smoogipoo
4648362214 Safeguard against potential finalise-before-initialised 2020-07-29 11:30:25 +09:00
smoogipoo
a57b6bdc18 Remove cancellation of linked tokens 2020-07-29 11:29:38 +09:00
smoogipoo
fa25f8aef9 Dispose update scheduler 2020-07-28 17:23:35 +09:00
smoogipoo
96f68a3251 Reorder method 2020-07-28 16:53:07 +09:00
smoogipoo
ff3cb6487d Store all linked cancellation tokens 2020-07-28 16:53:07 +09:00
smoogipoo
44b0aae20d Allow nullable ruleset, reword xmldoc 2020-07-24 13:54:47 +09:00
smoogipoo
b10b99a670 Change method signatures to remove tracked/untracked 2020-07-24 13:52:43 +09:00
smoogipoo
de007cc1c6 Use IEnumerable mods instead of IReadOnlyList 2020-07-24 13:40:01 +09:00
smoogipoo
264bd7ced1 Apply general refactoring from review 2020-07-24 13:38:53 +09:00
smoogipoo
6b7f05740e Fix potential missing ruleset 2020-07-22 12:48:12 +09:00
smoogipoo
aca4110e36 Use existing star difficulty if non-local beatmap/ruleset 2020-07-22 12:47:53 +09:00
smoogipoo
00e6217f60 Don't store BeatmapInfo/RulesetInfo references, remove TimedExpiryCache 2020-07-21 23:50:54 +09:00
smoogipoo
107b5ca4f2 Add support for bindable retrieval 2020-07-21 23:13:04 +09:00
smoogipoo
599a15edb8 Merge branch 'master' into beatmap-difficulty-manager 2020-07-21 20:09:53 +09:00
Gagah Pangeran
055e31ddd5 update minor 2020-07-20 18:37:02 +07:00
Gagah Pangeran
acbf13ddc4 add epilepsy warning field 2020-07-20 17:36:42 +07:00
Dean Herbert
3823bd8343 Add back missing default implementations for lookup functions 2020-07-19 14:11:21 +09:00
Dean Herbert
7250bc351d Remove unnecessary new() specification 2020-07-18 12:06:41 +09:00
Dean Herbert
2f16b448ea Set beatLength inline 2020-07-18 12:03:49 +09:00
Dean Herbert
8147e67f53 Use static instances in all fallback ControlPoint lookups to reduce allocations 2020-07-18 11:53:04 +09:00
smoogipoo
3191bb506f Improve asynchronous process 2020-07-16 21:07:14 +09:00
smoogipoo
6df1b1d9ea Add a background beatmap difficulty manager 2020-07-16 20:43:14 +09:00
Dean Herbert
cc62d8911a
Merge pull request #9573 from smoogipoo/taiko-diffcalc-fixes-2 2020-07-16 14:59:06 +09:00
Dean Herbert
8ace06fcc5 Fix continuations attaching to the BeatmapOnlineLookupQueue scheduler 2020-07-14 16:03:40 +09:00
Dean Herbert
e35e9df4e1 Fix local online cache database not being used when offline / logged out 2020-07-14 12:02:03 +09:00
smoogipoo
0ea13dea55 Introduce legacy timing point fp errors 2020-07-13 17:06:00 +09:00
smoogipoo
1116703e92 Fix potential out-of-order objects after conversion 2020-07-13 16:52:05 +09:00
Dean Herbert
632f333ce2 Add ability to return protected beatmaps in GetAllUsable call 2020-07-10 17:20:27 +09:00
smoogipoo
04ce436f6a Dispose beatmap lookup task scheduler 2020-07-09 14:46:58 +09:00
ekrctb
3278a1d7d8 Standardize osu!catch coordinate system
There were two coordinate systems used:
- 0..512 (used in osu!stable)
- 0..1 (relative coordinate)

This commit replaces the usage of
the relative coordinate system to
the coordinate system of 0..512.
2020-07-02 00:21:45 +09:00
Dean Herbert
e5a901cec7
Merge branch 'master' into results-screen-statistics-overlapping-transition 2020-06-28 22:14:22 +09:00
Dean Herbert
d0787ddf99
Merge pull request #9369 from smoogipoo/fix-hyperdash-alpha 2020-06-26 14:46:46 +09:00
Dean Herbert
b077a2856d Merge branch 'master' into results-screen-statistics-overlapping-transition 2020-06-25 18:44:08 +09:00
smoogipoo
4ff9a91012 Adjust at parse time instead 2020-06-25 14:15:26 +09:00
smoogipoo
6bc507d49e Increase coordinate parsing limits 2020-06-24 18:53:52 +09:00
smoogipoo
6afd6efdeb Return default beatmap if local beatmap can't be retrieved 2020-06-22 20:33:08 +09:00
smoogipoo
88aed1d504 Merge branch 'master' into update-inspectcode-version 2020-06-09 20:12:39 +09:00
Dan Balasescu
1476412eaa
Merge branch 'master' into startup-safety 2020-06-09 13:55:33 +09:00
Dean Herbert
63003757c4 Remove WorkingBeatmap cache when deleting or updating a beatmap 2020-06-08 14:48:26 +09:00
smoogipoo
443977aa8d Remove PreUpdate, update hash in Save() 2020-06-08 14:40:17 +09:00
smoogipoo
dfed27bd46 Add back stream seeking for sanity 2020-06-08 14:24:21 +09:00
Dean Herbert
b41384dde8
Merge branch 'master' into multiplayer-beatmap-checksum 2020-06-07 18:05:33 +09:00
smoogipoo
0107e9ba16 Change lookups to use SingleOrDefault() 2020-06-05 19:18:00 +09:00
Dean Herbert
c155ab8339 Check filenames and timestamps before reusing an already imported model 2020-06-03 18:03:10 +09:00
smoogipoo
f3b5149648 Move some suggestions to warnings, resolve issues 2020-06-03 16:48:44 +09:00
smoogipoo
dfb9687fb5 Extract update into PreUpdate(), add test 2020-06-02 17:22:09 +09:00
smoogipoo
b41bb5a682 Update databased MD5 hash on save 2020-06-02 14:04:00 +09:00
Dan Balasescu
64d1b4b11b
Merge branch 'master' into move-setter-to-duration 2020-06-01 15:55:48 +09:00
Dean Herbert
81b8898272 Fix incorrect type cast in encoder 2020-05-31 22:30:55 +09:00
Dean Herbert
cbd563e80b Rename to IHasDuration 2020-05-27 12:38:39 +09:00
Dean Herbert
6b5b215299 Split out IHasPath from IHasCurve to better define hitobjects 2020-05-26 17:44:47 +09:00
Dean Herbert
0cc6d6d97c
Merge pull request #9033 from smoogipoo/applydefaults-cancellation
Add cancellation token support to CreateNestedHitObjects()
2020-05-26 12:04:06 +09:00
smoogipoo
bc35bc5efb Merge branch 'master' into applydefaults-cancellation 2020-05-25 16:45:30 +09:00
Dean Herbert
c071fe6140 Add the ability to export skins 2020-05-24 13:44:11 +09:00
Salman Ahmed
3d3cc2c15e
Dispose BeatmapOnlineLookupQueue cache download request 2020-05-22 17:26:37 +03:00
smoogipoo
e5de382760 Merge branch 'master' into storyboard-overlay-layer 2020-05-20 15:08:45 +09:00
Dean Herbert
052ad79fc6 Convert dangerous events to IBindables 2020-05-19 16:44:22 +09:00
Bartłomiej Dach
9415e45aea Add overlay layer to enumeration type 2020-05-18 22:45:31 +02:00
smoogipoo
4719fcc291 Actually use the cancellation token 2020-05-15 18:17:39 +09:00
smoogipoo
4079642d58 Actually pass in the cancellation token 2020-05-15 18:13:47 +09:00
Dean Herbert
916d8245e6 Don't timeout on long beatmap load when debugging 2020-05-11 12:50:47 +09:00
smoogipoo
401c516503 Expose searchable terms from beatmap info instead 2020-05-07 13:04:08 +09:00
Dan Balasescu
0eae8d078b
Merge branch 'master' into master 2020-05-05 13:33:29 +09:00
alex
0e2ccac33b Add spaces to comments 2020-05-04 18:36:24 -07:00
Dean Herbert
a1cd007cad Fix song select tests potentially failing due to difficulty panels not yet displayed 2020-05-04 14:44:53 +09:00
Dean Herbert
68d40cf790 Fix test failures due to online cache download 2020-05-03 13:25:57 +09:00
Dean Herbert
6fef4eeb8f Rename class and extract out lookup method 2020-05-03 09:35:48 +09:00
Dean Herbert
035b513b68 Use QuerySingle instead of QueryFirst 2020-05-03 09:32:33 +09:00
Dean Herbert
b9b5779251 Move deletion to catch instead of finally 2020-05-03 09:31:56 +09:00
Dean Herbert
deb87517d0 Add local beatmap lookup cache 2020-05-02 14:35:12 +09:00
Dean Herbert
d0a8c0fa71 Add kiai support to osu!taiko skinned playfields 2020-04-30 16:43:00 +09:00
Dean Herbert
d1ec99ffd9 Further improve beatmap carousel load performance by avoiding incorrect query construction 2020-04-29 16:51:22 +09:00
Dean Herbert
119000f1ab Reduce database includes where possible 2020-04-28 21:43:35 +09:00
Tim Oliver
c1c930c472 Fixed linting warnings 2020-04-25 13:47:20 +08:00
smoogipoo
3b805daa0b Fix hold note end time being written incorrectly 2020-04-22 16:40:07 +09:00
smoogipoo
7cdc9a599c Fix mania holds written as spinners 2020-04-22 16:27:07 +09:00
Dean Herbert
223c822e57
Merge branch 'master' into all-ruleset-encoders 2020-04-22 13:04:16 +09:00
Dean Herbert
aaa0f908d5
Merge pull request #8818 from smoogipoo/fix-beatmap-encoder
Fix beatmap encoder by enabling untested test cases
2020-04-22 13:03:56 +09:00
Dean Herbert
360c9f8e38 Add test coverage and handle null creator 2020-04-22 09:19:34 +09:00
Dean Herbert
0c74f1aaa9 Fix now playing output showing empty brackets when no difficulty specified 2020-04-22 09:08:33 +09:00
smoogipoo
d8fdd73e17 Implement IHasCurve on DrumRoll 2020-04-22 09:06:04 +09:00
smoogipoo
ea0ebc8527 Implement beatmap encoding for all legacy rulesets 2020-04-22 09:06:04 +09:00
smoogipoo
516e6a4bb1 Fix overlapping control points not written correctly 2020-04-22 09:04:44 +09:00
smoogipoo
1421e876b1 Remove implicit new combo from spinners 2020-04-22 09:04:44 +09:00
smoogipoo
d8d85e5b08 Don't output certain properties if they don't exist 2020-04-22 09:04:44 +09:00
smoogipoo
3093c3e185 Fix custom sample set not being written correctly 2020-04-22 09:04:44 +09:00
Dean Herbert
aa153290a9
Merge pull request #8815 from smoogipoo/fix-controlpoint-decode
Fix control point overriding working incorrectly
2020-04-21 16:18:50 +09:00
smoogipoo
72fb34f82c Fix overriding control points incorrectly 2020-04-21 14:19:05 +09:00
smoogipoo
9252b7876b Don't serialise AllControlPoints 2020-04-21 13:58:23 +09:00
Dan Balasescu
367c3e69c4
Merge pull request #8788 from peppy/fix-editor-hard-crash
Fix hard crash in editor on legacy modes without encoder implementation
2020-04-20 15:25:48 +09:00
Dean Herbert
48cf7becd1
Merge branch 'master' into catch-hyperdash-fruit-colouring 2020-04-19 21:48:41 +09:00
Dean Herbert
6b16908c05 Move todo to appease dotnet-format 2020-04-18 21:51:37 +09:00
Dean Herbert
c00a386ff6 Remove exceptions instead 2020-04-18 21:46:04 +09:00
Dan Balasescu
4e22e569f5
Merge branch 'master' into timing-equivalence 2020-04-17 17:12:38 +09:00
smoogipoo
0fba93bf65 Add back null check 2020-04-17 17:10:13 +09:00
smoogipoo
9aac98664c Remove unnecessary time property 2020-04-17 17:06:12 +09:00
smoogipoo
69fb984e71 Remove EquivalentTo() and Equals() 2020-04-17 17:04:09 +09:00
smoogipoo
6935221463 Improve logic for CSB transfer 2020-04-14 21:05:07 +09:00
Dan Balasescu
eb968d2bdb
Merge branch 'master' into timing-equivalence 2020-04-14 14:02:02 +09:00
Dean Herbert
081a02f748
Merge branch 'master' into catch-hyperdash-fruit-colouring 2020-04-14 10:01:15 +09:00
smoogipoo
cee4b005e6 Fix custom sample set 0 not falling back to default samples 2020-04-13 20:00:06 +09:00
Alchyr
f115fecb23 Fix formatting 2020-04-09 09:34:40 -07:00
smoogipoo
b900f229e7 Fix possible legacy beatmap encoder nullref 2020-04-09 20:21:42 +09:00
Alchyr
65823fb2e1 Use redundancy test 2020-04-08 01:42:35 -07:00
Alchyr
66a474619c Adjust TimingControlPoint equivalency 2020-04-07 18:13:26 -07:00
Salman Ahmed
1b76a53d32 Move CatchTheBeat section handling to LegacySkinDecoder
Best place to reside at
2020-04-05 22:10:35 +03:00
Salman Ahmed
0eaea8ef9d Create a constructor for break period
For simple construction of break periods (e.g. filling a method with an array of break periods inside a test case)
2020-04-05 21:29:03 +03:00
Salman Ahmed
10e65c4f53 Add handling for legacy CatchTheBeat section in LegacyDecoder 2020-04-05 00:10:12 +03:00
Will Kennedy
57944bd335 fix(?) InspectCode warnings 2020-04-02 21:36:31 -04:00
Will Kennedy
c042e709a5 Fix GetDecoder getting fallback decoder too often 2020-04-02 20:43:54 -04:00
smoogipoo
a77933f5e0 Add support for parsing mania skin colours 2020-04-02 17:56:12 +09:00
Dan Balasescu
8964001423
Merge branch 'master' into fix-invalid-set-ids-on-import 2020-03-30 22:24:12 +09:00
smoogipoo
4719aac235 Add basic mania skin parsing 2020-03-30 17:18:09 +09:00
Dean Herbert
f71c8cb30f Only drop online set ID if beatmap IDs were stripped in online retrieval 2020-03-30 15:07:56 +09:00
Dean Herbert
7ecce713bb Keep provided IDs where possible if not online 2020-03-30 15:07:39 +09:00
Dean Herbert
09d860d5f5 Fix imports with no matching beatmap IDs still retaining a potentially invalid set ID 2020-03-30 11:52:25 +09:00
voidedWarranties
b8f20831a1 Video no longer modifies storyboard resolution 2020-03-24 20:04:09 -07:00
Dean Herbert
f2e0fba164 Remove VideoFile from BeatmapMetadata
Leaving in database because it's a pain to drop columns.
2020-03-25 12:00:02 +09:00
Dean Herbert
729e006c3a
Merge branch 'master' into video-offset 2020-03-21 20:03:46 +09:00
smoogipoo
9c5423734a Throw timeout exceptions instead 2020-03-16 11:33:26 +09:00
Dan Balasescu
f390c1995d
Apply comment suggestions
Co-Authored-By: Dean Herbert <pe@ppy.sh>
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-03-16 11:29:28 +09:00
voidedWarranties
c27751050b Switch back to strings and update setting labels 2020-03-12 23:29:11 -07:00
smoogipoo
f7c036726a Add beatmap loading timeout 2020-03-13 13:52:40 +09:00
smoogipoo
40ab860ab5 Remove unused using 2020-03-11 18:23:30 +09:00
smoogipoo
9667934ed9 Remove unlimited timing points in difficulty calculation 2020-03-11 18:17:32 +09:00
Dan Balasescu
1d556bfc5f
Merge branch 'master' into video-offset 2020-03-11 15:13:18 +09:00
smoogipoo
e6858bf130 Fix crashes on some storyboards 2020-03-10 11:58:33 +09:00
voidedWarranties
4624582703 Revert position offset change for separate pull 2020-03-08 14:40:36 -07:00
voidedWarranties
22dd93a4f6 Code quality, read position offsets 2020-03-08 14:02:39 -07:00
voidedWarranties
76c832518f Render video as a part of the storyboard 2020-03-07 21:32:03 -08:00
voidedWarranties
d68d7edea3 Start background video playback based on provided offset 2020-03-07 14:08:13 -08:00
smoogipoo
dd2bd5c19d Add delay for loading multiplayer beatmap covers 2020-02-27 20:01:23 +09:00
Dean Herbert
db4fe4f728
Merge branch 'master' into adjust-beatmap-overlay 2020-02-21 09:52:44 +09:00
TheWildTree
62227ad856 Add MaxCombo to BeatmapInfo 2020-02-19 17:58:10 +01:00
TheWildTree
64a9b9c6fb Remove redundant using directives 2020-02-16 21:52:08 +01:00
TheWildTree
dd5e713c0c Adjust colours 2020-02-16 21:42:05 +01:00
Dean Herbert
006c52bbe5 Fix visible error being thrown when playing a no-video beatmap 2020-02-16 15:08:37 +09:00
recapitalverb
a7c2fd078f Fix remaining cases 2020-02-14 20:27:21 +07:00
Dean Herbert
e022352812
Merge pull request #7784 from smoogipoo/fix-beatmap-disposal
Fix disposal-related errors by making WorkingBeatmap non-disposable
2020-02-13 18:52:47 +09:00
Tree
b694b0c90c
Merge branch 'master' into adjust-beatmap-overlay 2020-02-11 21:07:26 +01:00
smoogipoo
0ab3982494 Unify error handling 2020-02-10 17:25:11 +09:00
smoogipoo
668f36d7f3 Clean up logging 2020-02-10 17:04:31 +09:00
smoogipoo
cef682aa03 Make WorkingBeatmap non-disposable 2020-02-10 17:02:01 +09:00
smoogipoo
a988a53d69 Better handle beatmap task cancel exception 2020-02-10 17:02:00 +09:00
Dan Balasescu
1f3d4e1f72 Merge branch 'master' into string_cleanup 2020-02-10 13:37:17 +09:00
Dean Herbert
96574a98ad Use non-zero length for fallback virtual track (allows tests to work as expected) 2020-02-09 21:34:56 +09:00
Dean Herbert
d73ef7c37e Change DummyBeatmap's track to be 0 length 2020-02-09 21:25:11 +09:00
Berkan Diler
5b452293d6 Minor cleanups for legacy beatmap decoders
Replaces some string.StartsWith(string, StringComparison.Ordinal) calls with ring.StartsWith(char) , when only one char is compared. Possible since .NET-Standard 2.1

And another LegacyStoryboardDecoder.handleEvents() cleanup, saves some MB of allocations.
2020-02-08 18:05:27 +01:00
TheWildTree
76037e4ffd Recolour ranked status pill 2020-02-05 16:31:14 +01:00
Dean Herbert
eabb5a8701 Use ToString instead of Substring 2020-01-26 17:40:38 +09:00
Dean Herbert
50ab5a7d07 Merge remote-tracking branch 'upstream/master' into LegacyDecoder_changes 2020-01-26 17:38:44 +09:00
Berkan Diler
219e14baa2 Address review and fix InspectCode 2020-01-24 17:05:27 +01:00
Berkan Diler
6658bdb223 Fix CodeFactor issues 2020-01-23 16:34:43 +01:00
Berkan Diler
316a764f6f Minor cleanups for Legacy Storyboard/Beatmap decoder 2020-01-23 16:23:53 +01:00
smoogipoo
c25fefa3ca Add beatmap package export 2020-01-15 13:44:46 +09:00
smoogipoo
4fe5ea8e92 Clear working beatmap cache on save 2020-01-14 19:24:53 +09:00
smoogipoo
a255832195 Add beatmapmanager method for saving 2020-01-14 19:24:53 +09:00
smoogipoo
681a43a318 Refactor to support beatmap updates 2020-01-14 19:24:53 +09:00
Berkan Diler
34d8740ec4 Remove remaining usage of osuTK.MathHelper 2020-01-08 20:21:13 +01:00
Ganendra Afrasya
e433e8b78f Remove unused variable 2020-01-06 17:12:10 +07:00
Dan Balasescu
9702cc9809
Merge branch 'master' into remove-legacy-id 2019-12-25 21:01:12 +09:00
Dean Herbert
504a55e803
Merge branch 'master' into better-beatmap-conversion 2019-12-25 19:52:06 +09:00
Dean Herbert
145ac8e0b5 Remove redundant setter 2019-12-25 14:55:05 +09:00
Dean Herbert
0677f746aa Provide the ruleset to converter classes 2019-12-24 16:02:16 +09:00
smoogipoo
3e03916c39 Add length check back to workingbeatmap 2019-12-23 17:45:59 +09:00
smoogipoo
6e7426a098 Simplify/improve beatmap conversion precheck 2019-12-23 17:44:18 +09:00
Salman Ahmed
55be4478aa Merge remote-tracking branch 'upstream/master' into fallback-to-skin-combo-colours 2019-12-21 12:36:09 +03:00
smoogipoo
1802e0ff11 Fix storyboard incorrectly re-ordering elements 2019-12-20 16:04:05 +09:00
Dean Herbert
5cdc7d3b18
Merge pull request #7183 from smoogipoo/legacy-beatmap-saving
Add initial implementation of a legacy beatmap encoder
2019-12-18 18:43:14 +09:00
Dean Herbert
51a01c7006
Merge pull request #7256 from peppy/remove-ruleset-ctor-param
Remove RulesetInfo parameter from Ruleset constructor
2019-12-18 18:42:42 +09:00
Dean Herbert
1f3e1b3085 Remove unused using 2019-12-18 17:59:07 +09:00
Dean Herbert
4befabc257 Split out complex method 2019-12-18 17:35:51 +09:00
smoogipoo
602ce698d5 Fix storyboard vectorscale and scale cross-pollution 2019-12-18 17:21:38 +09:00
Dean Herbert
fa067b8799
Merge branch 'master' into legacy-beatmap-saving 2019-12-18 17:17:03 +09:00
Dean Herbert
6e0802e50c Remove RulesetInfo parameter from Ruleset constructor 2019-12-18 14:49:09 +09:00
Dean Herbert
036efb9947
Merge branch 'master' into fix-effect-points 2019-12-18 01:43:15 +09:00
Dean Herbert
886db8eb22
Merge branch 'master' into fix-local-score-availability 2019-12-18 01:15:20 +09:00
smoogipoo
946a202ee5 Fix online replays not being available locally 2019-12-17 15:47:08 +09:00
Huo Yaoyuan
caf3f774ba CA1309: compare strings correctly. 2019-12-17 13:00:15 +08:00
Huo Yaoyuan
ecfc6dfa3d CA1825: use Array.Empty. 2019-12-17 12:59:48 +08:00
Dean Herbert
272d7d0ca9
Merge branch 'master' into fallback-to-skin-combo-colours 2019-12-17 12:36:20 +09:00
smoogipoo
be7b00cc34 Fix potentially incorrect custom sample bank 2019-12-16 17:12:31 +09:00
smoogipoo
3c9884456f Use writeline 2019-12-16 17:08:46 +09:00
smoogipoo
5278236458 Use invariant ToLower() 2019-12-16 17:07:30 +09:00
smoogipoo
27150d6bbc Use char concatenation for performance 2019-12-16 17:06:52 +09:00
smoogipoo
9fa6954ac2 Refactor getSampleBank a bit 2019-12-16 17:05:24 +09:00
smoogipoo
98dd1c2590 Use SingleOrDefault() where possible 2019-12-16 17:03:58 +09:00
smoogipoo
d56e99865c Throw not implemented exceptions 2019-12-16 16:57:49 +09:00
smoogipoo
596fda3c1f Refactor switch 2019-12-16 16:57:40 +09:00
smoogipoo
58e3fb0d0f Coalesce to -1 2019-12-16 16:43:20 +09:00
Huo Yaoyuan
c457571da6 Use index and range expressions 2019-12-15 20:17:35 +08:00
smoogipoo
ea4eb6b204 CI cleanups 2019-12-13 21:29:10 +09:00
smoogipoo
9bc02f489e Add missing headers 2019-12-13 19:14:49 +09:00
smoogipoo
0ad28a9400 Start at version 128 2019-12-13 19:11:45 +09:00
smoogipoo
abf3f341b7 Merge remote-tracking branch 'refs/remotes/origin/master' into legacy-beatmap-saving 2019-12-13 19:01:25 +09:00
smoogipoo
87a7f340e3 Fix first sample point being treated as redundant 2019-12-13 18:14:01 +09:00
smoogipoo
654499d8b0 Remove whitespace 2019-12-13 17:33:18 +09:00
smoogipoo
97158fce7d Always attach a new combo to spinners 2019-12-13 17:02:10 +09:00
smoogipoo
0b7c4f252c Fix artist being written in place of version 2019-12-13 17:01:59 +09:00
smoogipoo
53a665a034 Fix sound types and banks not being written correctly 2019-12-13 17:01:44 +09:00
smoogipoo
ac984423bb Fix only single sound type being written 2019-12-12 19:53:30 +09:00
smoogipoo
dedae69db8 Prefer legacy curve format if possible 2019-12-12 19:52:15 +09:00
smoogipoo
d35d34c01b Fix hanging semicolon for per-node bank output 2019-12-12 19:01:43 +09:00
smoogipoo
4760307bbb Don't output the first slider control point 2019-12-12 19:01:15 +09:00
smoogipoo
60063eefd2 Fix up background/video events 2019-12-12 18:51:05 +09:00
smoogipoo
51bdb73b91 Don't write empty file names 2019-12-12 18:49:47 +09:00
smoogipoo
f89042cd0a Add missing section header 2019-12-12 18:48:22 +09:00
smoogipoo
e09bbf0315 Implement background/video/break encoding 2019-12-12 18:47:28 +09:00
smoogipoo
d1dc3456d1 Fix incorrect repeat point count 2019-12-12 18:42:48 +09:00
smoogipoo
c3475a2dde Write control points in absolute coordinates 2019-12-12 18:41:13 +09:00
smoogipoo
8f03599a62 Write default sampleset by name 2019-12-12 18:40:33 +09:00
Salman Ahmed
a9125f6544 Merge remote-tracking branch 'upstream/master' into fallback-to-skin-combo-colours 2019-12-12 12:37:51 +03:00
smoogipoo
be000e13e4 Implement initial legacy beatmap encoding support 2019-12-12 18:34:40 +09:00
smoogipoo
5861eca80d Make DrawableRuleset take a converted beatmap 2019-12-12 15:58:11 +09:00
Huo Yaoyuan
cffeceb229 Remove unnecessary comment. 2019-12-11 16:24:22 +08:00
Huo Yaoyuan
b86a3dbfab PathStandardise -> ToStandardisedPath 2019-12-11 16:06:56 +08:00
Huo Yaoyuan
6b3c7c8421 Remove usages of FileSafety class. 2019-12-11 16:05:35 +08:00
smoogipoo
c378e525da Extract the rest of legacy enums 2019-12-10 20:23:15 +09:00
smoogipoo
3c18872a16 Extract legacy effect flags enum 2019-12-10 20:19:31 +09:00
smoogipoo
e3f925f69a Extract legacy hitobject type enum 2019-12-10 20:19:16 +09:00
smoogipoo
8012b21ffa Extract legacy sound type enum 2019-12-10 20:18:44 +09:00
Ganendra Afrasya
8be6abf607 Add param to let function return lighter colour for some diff 2019-12-06 10:07:16 +07:00
Ganendra Afrasya
0e97871461 Change colour if difficulty is ExpertPlus 2019-12-05 14:53:01 +07:00
Huo Yaoyuan
5375af7820 Remove other Equals(object) calls. 2019-12-03 20:23:27 +08:00
Dean Herbert
c49aeb08c4 Add API methods to perform requests out-of-queue 2019-11-29 20:03:14 +09:00
Huo Yaoyuan
c0fe91a84c Merge branch 'master' into sharpen 2019-11-26 18:21:50 +08:00
Dean Herbert
709ec1404f Centralise End/StartTime retrieval to extension method 2019-11-25 19:09:14 +09:00
iiSaLMaN
1e24ee7956 Remove ClearComboColours() 2019-11-24 02:07:56 +03:00
Dean Herbert
4e53bca8dd Simplify tests 2019-11-21 18:50:38 +09:00
Huo Yaoyuan
374ef6ff83 Merge branch 'master' into sharpen 2019-11-20 17:30:58 +08:00
Huo Yaoyuan
4d1513cef6 Sadly, xmldoc doesn't support tuple elements. 2019-11-17 21:01:56 +08:00
Huo Yaoyuan
b1b234c6fb Use paramref. 2019-11-17 20:49:36 +08:00
Huo Yaoyuan
f05b83d7d4 Use typeparamref. 2019-11-17 20:48:23 +08:00
Dean Herbert
0e587cb9f5 Merge branch 'master' into fix-duplicate-online-ids 2019-11-15 10:18:53 +09:00
Dean Herbert
6d54846462 Null online id on lookup failure 2019-11-15 10:18:47 +09:00
Dean Herbert
12243aaa9a Dedupe .osu files with same hash in same set 2019-11-14 19:38:20 +09:00
Dean Herbert
fbf81207d4 Don't assign server-fetched online id if it was assigned elsewhere 2019-11-14 18:55:12 +09:00
Dean Herbert
1bc0eae2a6 Fix beatmap online retrieval response running incorrectly scheduled 2019-11-14 18:53:45 +09:00
Dean Herbert
81033e1fdf Add extra logging 2019-11-14 18:52:07 +09:00
Huo Yaoyuan
dcfa98414f Use ??=. 2019-11-12 19:56:51 +08:00
Huo Yaoyuan
8a1b70513c No this. qualification. 2019-11-12 19:55:29 +08:00
Huo Yaoyuan
31cc0d13da Use 'out var'. 2019-11-12 19:55:26 +08:00
Dean Herbert
758c304d92
Merge branch 'master' into fallback-to-skin-combo-colours 2019-11-12 19:00:05 +09:00
Huo Yaoyuan
e9b8cbb516 Apply other styles. 2019-11-11 20:27:04 +08:00
Huo Yaoyuan
ccc8aa6fa4 Apply brace style. 2019-11-11 20:13:13 +08:00
iiSaLMaN
cee16e9419 Merge remote-tracking branch 'refs/remotes/upstream/master' into fallback-to-skin-combo-colours 2019-11-07 19:11:29 +03:00
iiSaLMaN
808543885f Change ComboColours type to IReadOnlyList<Color4>
Also exposes functions to modify the internal list (AddComboColours, ClearComboColours)
2019-11-07 15:54:30 +03:00
Dean Herbert
143f316cbe
Merge branch 'master' into fix-network-stalls 2019-11-06 17:54:08 +09:00
Dan Balasescu
b5a8bbaa60
Merge branch 'master' into editor-timing-screen 2019-11-06 12:02:00 +09:00
Dean Herbert
ddd58ea3da Use LongRunningLoad on network load components 2019-11-01 19:40:45 +09:00
Dean Herbert
0cd912fcd3 Cover all non-APIAccess APIRequest calls with exception handling 2019-10-31 15:04:13 +09:00
Dean Herbert
5899bbd8a6 Fix merge regressions 2019-10-30 18:45:50 +09:00
Dean Herbert
93076ad6a1
Merge branch 'master' into editor-timing-screen 2019-10-30 18:42:20 +09:00
smoogipoo
cf2d885099 Fix control points being flushed too late 2019-10-30 18:02:18 +09:00
Dan Balasescu
514c9f1eef
Merge branch 'master' into bindable-control-points 2019-10-30 16:20:54 +09:00
Dan Balasescu
ced6042b3e
Use internal type name 2019-10-30 15:51:09 +09:00
Dean Herbert
1a4817879e Fix precision changes in legacy control point types 2019-10-28 19:10:39 +09:00
Dean Herbert
090881cf6f Add default bindable values 2019-10-28 16:23:43 +09:00
Dean Herbert
8f87957c70 Make all control point attributes bindable
Properties are left intact for compatibility reasons.
2019-10-28 16:23:43 +09:00
Dean Herbert
43ad4a3a3c Tidy up string output 2019-10-28 12:31:38 +09:00
Dean Herbert
8069674824 Merge remote-tracking branch 'upstream/master' into bindable-control-points 2019-10-28 11:52:04 +09:00
Dean Herbert
45da22afe9 Add xmldoc and combine GroupAt / CreateGroup 2019-10-28 11:40:33 +09:00
Dean Herbert
2a6b3fd67c Disallow inserting a group if one already exists with the current time value 2019-10-28 11:40:10 +09:00
Dean Herbert
59d983b66e Allow binding to ControlPointInfo's Groups 2019-10-28 11:39:53 +09:00
Dean Herbert
10033239c7 Allow binding to ControlPointGroup's ControlPoints 2019-10-28 11:39:17 +09:00
Dean Herbert
814b520e5e Avoid potential mis-cast in comparison 2019-10-27 11:35:45 +09:00
Dean Herbert
4290a71f44 Add special case for timing points
Timing points can't fallback to defaults and must be added at least once.
2019-10-26 11:38:05 +09:00
Dean Herbert
7502b64541 Merge branch 'control-point-grouping' into no-auto-gen 2019-10-26 10:35:34 +09:00
Dean Herbert
d6a49b9e93 Add back autogeneration rules
Will be removed in https://github.com/ppy/osu/pull/6604
2019-10-26 10:25:37 +09:00
Dean Herbert
7100319858 Fix incorrect control point retrieval in non-lookup cases 2019-10-26 08:31:41 +09:00
Dean Herbert
b52be3d639 Merge branch 'control-point-grouping' into no-auto-gen 2019-10-26 01:20:08 +09:00
Dean Herbert
d25f7f4c27 Correctly clear other lists 2019-10-26 01:19:23 +09:00
Dean Herbert
c031aeb14c Fix inspection 2019-10-26 00:06:05 +09:00
Dean Herbert
eefa411182 Merge branch 'control-point-grouping' into no-auto-gen 2019-10-25 23:15:25 +09:00
Dean Herbert
d4fed43be7 Merge branch 'equivalent-to' into control-point-grouping 2019-10-25 23:15:15 +09:00
Dean Herbert
e39016bf01 Fix known non-nulls 2019-10-25 20:04:27 +09:00
Dean Herbert
8baf569f59 Remove necessity of AutoGenerated flag 2019-10-25 19:58:42 +09:00
Dean Herbert
e987db37ec Add grouping of ControlPoints 2019-10-25 19:52:02 +09:00
Dean Herbert
e2f2638212 Replace local Equatable implementations with abstract EquivalentTo 2019-10-25 19:44:28 +09:00
iiSaLMaN
405ab07800 Check equality by ID -> OnlineBeatmapSetID -> Hash -> ReferenceEquals 2019-10-17 01:18:29 +03:00
iiSaLMaN
14c72f85fa Fix incorrect beatmap set info equality check on non-online set info 2019-10-15 23:40:48 +03:00
iiSaLMaN
5e3f0f6c95 Return default combo colours if none provided 2019-10-09 21:08:07 +03:00
Bartłomiej Dach
7c2c537bc9 Allow fallback decoder overwrite
To fix the runtime crashes in difficulty calculation components, remove
the check for pre-existing fallback registration along with
the exception. The xmldoc for the registration function has been
extended to make users aware of possible consequences of calling it.
2019-10-04 18:20:20 +02:00
smoogipoo
ffde389641 Add difficulty calculator beatmap decoder fallback 2019-10-04 13:28:32 +09:00
Dean Herbert
6268bbcfc8
Merge branch 'master' into beatmap-parsing-fallback-v2 2019-10-03 15:12:21 +08:00
smoogipoo
cc533e8fe4 Remove BindableBeatmap 2019-10-01 17:24:47 +09:00
smoogipoo
04ac414249 Fix memory leaks due to audio track recycle order 2019-10-01 13:49:09 +09:00
smoogipoo
45f2bcc440 Fix combo bindings not being bound to nested hitobjects 2019-09-26 17:39:19 +09:00
Dean Herbert
a06cb54732
Merge branch 'master' into beatmap-parsing-fallback-v2 2019-09-20 15:28:08 +09:00
Dean Herbert
cffee1fd5e Fix imported beatmap paths not correctly matching files 2019-09-19 20:02:45 +09:00
Dean Herbert
92556db9cd Add query-based filter modes to song select search field 2019-09-19 02:48:28 +09:00
Bartłomiej Dach
dd9f620c23 Fix misleading xmldoc 2019-09-15 01:28:07 +02:00
Bartłomiej Dach
86588778b1 Implement fallback decoder registration
After the preparatory introduction of LineBufferedReader, it is now
possible to introduce registration of fallback decoders that won't drop
input supplied in the first line of the file.

A fallback decoder is used when the magic in the first line of the file
does not match any of the other known decoders. In such a case,
the fallback decoder is constructed and provided a LineBufferedReader
instance. The process of matching magic only peeks the first non-empty
line, so it is available for re-reading in Decode() using ReadLine().

There can be only one fallback decoder per type; a second attempt of
registering a fallback will result in an exception to avoid bugs.

To address the issue of parsing failing on badly or non-headered files,
set the legacy decoders for Beatmaps and Storyboards as the fallbacks.

Due to non-trivial logic, several new, passing unit tests with possible
edge cases also included.
2019-09-15 01:28:07 +02:00
Bartłomiej Dach
11eda44d34 Migrate decoding to line-buffered reader
Migrate all usages of StreamReader in the context of decoding beatmaps,
storyboards or skins to the new LineBufferedReader.
2019-09-15 01:28:07 +02:00
Dean Herbert
65aa7b2016 Recreate beatmap video on each consumption
Should not be shared over multiple usages
2019-09-14 00:07:06 +09:00
Andrei Zavatski
437e121056 Merge remote-tracking branch 'refs/remotes/ppy/master' into beatmap-video 2019-09-13 13:39:58 +03:00
Dean Herbert
b80a8296cd Fix unavailable rulesets crashing at song select 2019-09-04 20:28:52 +09:00
Dean Herbert
043034a6ce Merge remote-tracking branch 'upstream/master' into beatmapset-genre-language 2019-09-02 13:45:25 +09:00
Andrei Zavatski
94512fea8e Apply naming suggestions 2019-08-31 16:20:33 +03:00
Andrei Zavatski
6e5cb8a318 implement video parsing 2019-08-30 23:19:34 +03:00
Dean Herbert
84e4748268 Remove duplicate getAnimation function and improve namespacing 2019-08-30 12:59:58 +09:00
Dean Herbert
dc1046bf0c Merge remote-tracking branch 'upstream/master' into add-ruleset-legacy-skin 2019-08-30 12:53:05 +09:00
smoogipoo
ae0a5504d7 Revert unnecessary change 2019-08-29 19:43:33 +09:00
smoogipoo
6ab2b20c70 Add an interface for working beatmaps 2019-08-29 19:38:44 +09:00
StanR
68ee7346b2 Remove usings 2019-08-29 12:49:44 +03:00
StanR
d303083179 Update to match api 2019-08-29 12:29:31 +03:00
Dean Herbert
98626018fd
Encapsulate editor hitobject additions/removals (#5878)
Encapsulate editor hitobject additions/removals
2019-08-29 18:20:24 +09:00
StanR
3347ee8170 Merge branch 'master' into beatmapset-genre-language 2019-08-29 09:57:53 +03:00
Dean Herbert
c6e757fdae Remove redundant qualifier 2019-08-28 22:11:23 +09:00
Dean Herbert
f6ad95018a Centralise default beat length specification 2019-08-28 20:22:16 +09:00
smoogipoo
348d88846d Add IBeatmap<T> interface for typed hitobject retrieval 2019-08-28 20:19:22 +09:00
Dean Herbert
01aede3e29 Add comprehensive skin fallback integration testing 2019-08-28 19:57:17 +09:00
Dean Herbert
66223b9954
Merge branch 'master' into allow-fallback-to-samples-without-bank 2019-08-27 14:44:16 +09:00
Dean Herbert
289bd8e6b0 Don't return DefaultSkin on beatmap skin parsing failure 2019-08-26 14:25:35 +09:00
Dean Herbert
1d34124667 Revert all DifficultyIcon changes 2019-08-25 11:56:07 +09:00
Dean Herbert
a19a9b90ed Simplify group filter display 2019-08-25 11:39:26 +09:00
iiSaLMaN
af4adb6339 Add xmldoc 2019-08-24 09:43:55 +03:00
iiSaLMaN
f6feef6b56 Remove redundant using directive 2019-08-24 00:33:14 +03:00
iiSaLMaN
83b6e0f30c Implement grouped difficulty icon 2019-08-23 23:36:23 +03:00
iiSaLMaN
d4236c574f Allow difficulty icon to be updateable 2019-08-23 23:30:54 +03:00
iiSaLMaN
f639df849f Allow for difficulty icon to contain content 2019-08-23 23:11:36 +03:00
iiSaLMaN
7b04fb1690 StoryboardSample -> StoryboardSampleInfo 2019-08-23 14:54:39 +03:00
Dean Herbert
48716f8f2b Update framework 2019-08-21 13:29:50 +09:00
Ganendra Afrasya
7143497441 Match up tooltip background color with OsuTooltipContainer 2019-08-19 10:32:01 +07:00
Dean Herbert
ecc04baf14 Merge branch 'refactor-difficulty-colours' into difficulty-icon-tooltip 2019-08-17 15:35:28 +09:00
Dean Herbert
87dc6499fa Fix json decoding being a bit too eager to consume 2019-08-17 15:34:02 +09:00
Dean Herbert
097763bb1c Add auto size duration 2019-08-17 15:29:39 +09:00
Dean Herbert
50046d5f69 Use new tooltip style 2019-08-17 15:20:27 +09:00
Dean Herbert
3dc81bdad5 Merge branch 'refactor-difficulty-colours' into difficulty-icon-tooltip 2019-08-17 15:19:46 +09:00
Dean Herbert
4fa9abeece Replace DifficultyColouredContainer with a more scalable solution 2019-08-17 15:16:24 +09:00
Dean Herbert
f355cff8bc Apply reviews 2019-08-15 12:11:54 +09:00
Dean Herbert
7e74953784 Merge remote-tracking branch 'upstream/master' into difficulty-icon-tooltip 2019-08-15 11:54:59 +09:00
Dean Herbert
ff4b271f64 Add extra quotations around output 2019-08-12 01:42:05 +09:00
Dean Herbert
ce62f6b56e ToString should never return null 2019-08-12 01:40:11 +09:00
Unknown
cc4ee2df05 add ToString() override to Beatmap class 2019-08-11 16:41:56 +02:00
Dean Herbert
dbb3b583cf
Log error for invalid beatmap/storyboard events instead of thro… (#5611)
Log error for invalid beatmap/storyboard events instead of throwing

Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2019-08-09 12:56:47 +09:00
Dean Herbert
7e9c100c9b Apply new resharper refactors 2019-08-09 12:29:33 +09:00
smoogipoo
ac2060f1cf Throw exceptions and let LegacyDecoder handle them 2019-08-08 14:44:04 +09:00
Dan Balasescu
54ee0cabd8
Merge branch 'master' into beatmap-events 2019-08-08 14:25:41 +09:00
Dean Herbert
a2e3ab6463
Merge branch 'master' into add-bindable-for-break-times 2019-08-08 10:13:14 +09:00
iiSaLMaN
ba269a49ee Expose break fade duration and add it in the calculation 2019-08-07 16:59:35 +03:00
David Zhao
bde89adcb7 show exception message 2019-08-07 19:45:29 +09:00
David Zhao
b8ccba02f2 Log to runtime instead 2019-08-07 19:33:54 +09:00
David Zhao
15a592e25e Just assert doesn't throw and don't catch at LegacyDecoder 2019-08-07 19:25:40 +09:00
David Zhao
da15e19912 return on storyboard side 2019-08-07 18:40:58 +09:00
David Zhao
7bcec31ea3 mention that the event was the type 2019-08-07 17:08:41 +09:00
David Zhao
669c2462ec Don't consider the type 2019-08-07 16:25:38 +09:00
David Zhao
66b02c0283 log type as well 2019-08-06 12:27:10 +09:00
David Zhao
cd6fe91882 Log error for invalid events 2019-08-06 10:05:21 +09:00
Dean Herbert
69c2723d90
Merge branch 'master' into refactor-conversion-test 2019-08-02 05:34:05 +02:00
smoogipoo
e2420af10c Fix applying mods to the wrong beatmap 2019-08-01 13:37:52 +09:00
smoogipoo
0108700793 Make beatmap conversion test use WorkingBeatmap 2019-08-01 12:44:10 +09:00
smoogipoo
bc80fa11bb Mode IApplicableToBeatmap application to WorkingBeatmap 2019-08-01 12:41:46 +09:00
Dean Herbert
53ecb2ae82 Reduce notification span during beatmap imports 2019-07-26 13:48:29 +09:00
Andrei Zavatski
2a17ed5e18 Merge remote-tracking branch 'refs/remotes/ppy/master' into favourite-beatmap 2019-07-22 14:32:37 +03:00
smoogipoo
a631aac664 Fix workingbeatmap's disposal potentially null-refing 2019-07-22 15:01:01 +09:00
Andrei Zavatski
de8ac9a428 Simple implementation 2019-07-21 21:41:07 +03:00
StanR
1e04fcc6b5 Apply fixes 2019-07-11 17:47:09 +03:00
Dean Herbert
72da615dde
Fix track transfer not running when beatmap is retrieved from c… (#5296)
Fix track transfer not running when beatmap is retrieved from cache
2019-07-11 22:53:07 +09:00
StanR
cd7c03c13a Add genre and language sections to beatmapset overlay 2019-07-11 16:44:48 +03:00
iiSaLMaN
e73f22eff8 Convert length retrieved from online to milliseconds 2019-07-09 17:53:34 +03:00
iiSaLMaN
1485c273ab Describe the xmldoc mo 2019-07-09 17:31:15 +03:00
iiSaLMaN
f3329f4d79 Use a more readable code for calculating length 2019-07-09 17:22:21 +03:00
iiSaLMaN
11ef65e3e2 Remove unnecessary extension 2019-07-08 11:57:02 +03:00
iiSaLMaN
b62e69d170 Calculate length inside BeatmapManager 2019-07-08 11:56:48 +03:00
Dean Herbert
16c993579b Fix track transfer not running when beatmap is retrieved from cache 2019-07-08 17:12:34 +09:00
iiSaLMaN
129899f419 Add a BPM property in BeatmapInfo 2019-07-08 10:43:35 +03:00
iiSaLMaN
2d0c924bdf Add xmldoc for MaxStarDifficulty and MaxLength 2019-07-08 09:35:12 +03:00
iiSaLMaN
79ddb8d5d3 Change to a more convenient xmldoc 2019-07-08 09:23:01 +03:00
iiSaLMaN
90d5484818 Return BPM back to OnlineInfo
Revert commit of "Move BPM out of OnlineInfo"
2019-07-08 09:10:41 +03:00
iiSaLMaN
729f0901f7 Move Length out of OnlineInfo 2019-07-07 20:25:36 +03:00
iiSaLMaN
3ea9629daf Move BPM out of OnlineInfo 2019-07-07 20:11:44 +03:00
iiSaLMaN
b4ef64fa61 Add sorting by Length 2019-07-07 18:26:56 +03:00
iiSaLMaN
65c8249c94 Add beatmap extension for calculating length 2019-07-07 18:25:52 +03:00
iiSaLMaN
188c80374e Add sorting by BPM 2019-07-07 18:14:23 +03:00
Salman Ahmed
040dbfd2c1
Merge branch 'master' into remove-unnecessary-fading 2019-07-06 15:59:44 +03:00
iiSaLMaN
6fd3ad5c1d Remove unnecessary fading 2019-07-06 12:10:30 +03:00
Dean Herbert
598b0d668b
Merge branch 'master' into import-stable-scores 2019-07-05 15:54:33 +09:00
Dean Herbert
8346c50ce1 Rename delete method and improve xmldoc 2019-07-05 13:55:25 +09:00
Dean Herbert
32bb963393 Lock WorkingBeatmap cache to avoid threading issues 2019-07-04 14:33:00 +09:00
Dean Herbert
7575047db8
Merge branch 'master' into import-stable-scores 2019-07-04 01:00:42 +09:00
Dean Herbert
8e0b5f1622 Fix weird merge conflict 2019-07-02 23:21:13 +09:00
Dan Balasescu
2fafe9a651
Merge branch 'master' into async-beatmap-load 2019-07-02 23:19:10 +09:30
Dean Herbert
089eadb008
Add weak WorkingBeatmap cache (#5163)
Add weak WorkingBeatmap cache

Co-authored-by: Dan Balasescu <1329837+smoogipoo@users.noreply.github.com>
2019-07-02 22:40:47 +09:00
Dean Herbert
e7a7f2f660 Add statistic for count of alive WorkingBeatmaps 2019-07-02 22:39:49 +09:00
Dean Herbert
9e33fb35e9 Fix typo 2019-07-02 22:26:08 +09:00
Dean Herbert
a6acc1f99f Catch exception and return null for safety
.
2019-07-02 22:26:08 +09:00
Dean Herbert
0b66f13902 Add todo about beatmap load cancellation 2019-07-02 22:22:33 +09:00
Dean Herbert
a26b14a4f8 Move finaliser inside disposal region 2019-07-02 22:21:56 +09:00
Dean Herbert
31b1480263
Merge branch 'master' into async-beatmap-load 2019-07-02 20:44:53 +09:00
Dean Herbert
60ea3d4e1a Fix skinning support for combobreak 2019-06-30 21:58:30 +09:00
HoLLy
12350d18b5 Don't remove imported archives by default 2019-06-27 14:41:11 +02:00
HoLLy
55216dffb7 Merge remote-tracking branch 'origin/master' into import-stable-scores 2019-06-27 14:07:17 +02:00
naoey
61260cf599
Hand off comparison logic for database query to implementors
Equals overrides are not used in EF queries without running the comaprison locally instead of on the database, so to preserve that the comparison logic is instead implemented on a per manager basis.
2019-06-27 15:32:27 +05:30
Dean Herbert
ef384b8667 Add simple (weak) WorkingBeatmap cache 2019-06-27 14:09:09 +09:00
Dean Herbert
0bad86f6d9 Merge remote-tracking branch 'upstream/master' into async-beatmap-load 2019-06-27 13:58:59 +09:00
Dean Herbert
8b0aaccfe6 Add finaliser to WorkingBeatmap 2019-06-27 13:56:36 +09:00
Dean Herbert
a4929f19e5 Adjust background colour of non-loaded beatmap set cover to play better with black foreground elements 2019-06-27 12:17:28 +09:00
Dean Herbert
375a6f406d Merge remote-tracking branch 'upstream/master' into not-available-to-download 2019-06-27 11:44:41 +09:00
naoey
f3a84de7b5
Merge remote-tracking branch 'upstream/master' into generic-download-tracking-composite 2019-06-26 18:17:53 +05:30
Dean Herbert
c34f6180e6
Merge branch 'master' into generic-download-model-manager 2019-06-26 20:37:56 +09:00
smoogipoo
cb65fc6317 Don't throw exception for non-existent files 2019-06-26 17:23:12 +09:00
Dean Herbert
88b182ab3f
Merge branch 'master' into generic-download-model-manager 2019-06-24 18:35:58 +09:00
Dean Herbert
1830362337 Move task out of ctor to avoid initialisation ordering issues 2019-06-24 17:10:50 +09:00
Dean Herbert
6d864cb47e Load beatmap content asynchronously in the background 2019-06-24 13:38:30 +09:00
Ganendra Afrasya
d540565197
Merge branch 'master' into difficulty-icon-tooltip 2019-06-22 11:54:00 +07:00
HoLLy
f072a53e93 Merge remote-tracking branch 'origin/master' into import-stable-scores 2019-06-21 17:42:59 +02:00
HoLLy
802da225d4 Move responsibility for selecting paths to model managers 2019-06-21 17:32:47 +02:00
iiSaLMaN
a1c58b164c
Merge branch 'master' into not-available-to-download 2019-06-21 14:16:31 +03:00
Joehu
ca919f02e6 Remove bad words on code comments 2019-06-19 21:33:58 -07:00
HoLLy
15c75b4442 Add basic score import from stable 2019-06-19 18:33:51 +02:00
Dean Herbert
63d0324f96 Fix inspection 2019-06-20 01:10:14 +09:00
iiSaLMaN
5278c5f365
Merge branch 'master' into not-available-to-download 2019-06-19 01:14:32 +03:00
Dean Herbert
341dc74834 Simplify download method 2019-06-19 01:41:19 +09:00
Dean Herbert
d65c20bbdc
Merge branch 'master' into generic-download-model-manager 2019-06-19 01:29:06 +09:00
Ganendra Afrasya
aa53f14329 Make sure tooltip appear in specific cases 2019-06-17 22:44:28 +07:00
Ganendra Afrasya
1f2f26a503 Add color to star rating and star sprite icon 2019-06-16 00:40:44 +07:00
Ganendra Afrasya
515534cb34 Adding custom tooltip to DifficultyIcon 2019-06-16 00:02:26 +07:00
smoogipoo
0a79b444d9 Move metrics to beatmap set 2019-06-13 16:52:49 +09:00
smoogipoo
aef94ce9f1 Make BeatmapMetrics non-IEnumerables 2019-06-13 16:30:38 +09:00
naoey
9cd5519da3
Remove unused delegate, use model name in notifications, add more xmldoc
- Applies a `class` constraint to the generic type in `IModelManager`
- Add xmldoc
2019-06-12 19:26:06 +05:30
naoey
c5f1da0f71
Merge remote-tracking branch 'upstream/master' into generic-download-model-manager 2019-06-12 18:20:35 +05:30
naoey
951a5abccc
Merge remote-tracking branch 'upstream/master' into generic-download-model-manager 2019-06-12 17:41:16 +05:30
smoogipoo
a17d480f51 Use "beatmap" as the model name 2019-06-12 20:41:02 +09:00
smoogipoo
fd7dc9504e Remove async when not required 2019-06-12 17:08:50 +09:00
smoogipoo
c4f54d94bc Rename methods 2019-06-12 17:00:38 +09:00
Dean Herbert
c591a6f1fa Rename request type to be less verbose 2019-06-12 13:30:23 +09:00
Dean Herbert
eaeeffaa86 Rename to DownloadableArchiveModelManager 2019-06-12 13:28:44 +09:00
naoey
41da491a7e
Make BeatmapSetInfo equatable 2019-06-11 23:23:40 +05:30
naoey
4a6074865e
Create interfaces for DownloadTrackingComposite to consume 2019-06-11 22:42:57 +05:30
naoey
06a558c4b7
Remove unecessary third generic and change usages to match 2019-06-11 21:11:30 +05:30
Dean Herbert
27054a744e Fill in thread pool names 2019-06-12 00:35:13 +09:00
naoey
709ca03a08
Remove unused usings 2019-06-11 20:21:06 +05:30
naoey
802f48712d
Add ability to perform a download request with options 2019-06-11 20:14:36 +05:30
naoey
341d137f5c
Make BeatmapManager inherit from new base class 2019-06-11 19:36:08 +05:30
KingLuigi4932
70fdd4ba5b Disable download button + Fix AppVeyor Errors 2019-06-10 21:13:37 +03:00
Dean Herbert
6ca2fcebfc Centalise and prefix all ArchiveModelManager database logging 2019-06-10 19:34:32 +09:00
Dean Herbert
54497fb1e7 Fix prefixing spaces in BeatmapInfo's ToString when metadata is not populated yet 2019-06-10 19:33:23 +09:00
KingLuigi4932
3fc604b60a Add Availability to BeatmapSetOnlineInfo 2019-06-10 13:18:38 +03:00
Dean Herbert
e4bad93b66 Use variable for web request concurrency for clarity 2019-06-10 13:52:09 +09:00
Dean Herbert
b79fdfc12f Fix one more instance of improperly handled cancellation 2019-06-10 13:50:22 +09:00
Dean Herbert
b4d2d0bd0b Simplify and combine concurrency of ArchiveModelManager 2019-06-10 13:42:33 +09:00
smoogipoo
f090e292c9 Move ArchiveModelManager import process to async flow 2019-06-10 13:42:22 +09:00
smoogipoo
a6dc5606bc Allow beatmapsets to be sorted by date added 2019-06-05 18:17:43 +09:00
smoogipoo
4763a41c7e Cleanups 2019-06-04 11:25:18 +09:00
smoogipoo
cea353975f Update with further framework-side changes 2019-06-04 11:04:28 +09:00
Dean Herbert
b52276c489 Pass individual components to DummyWorkingBeatmap, not game 2019-05-31 14:51:12 +09:00
Dean Herbert
f33a5bc54c Centralise and update WorkingBeatmap creation in test cases 2019-05-31 14:40:53 +09:00
Dean Herbert
a1cc8c448f Update TrackVirtual consumption 2019-05-29 16:43:27 +09:00
Dean Herbert
a20eda7b5f Fix remaining cases to work without things 2019-05-28 23:54:42 +09:00
Dean Herbert
4ca34bd5e8 Update osu! in line with audio subsystem refactor 2019-05-28 17:06:01 +09:00
smoogipoo
f0d7728e81 Fix failures with a null-model 2019-05-23 17:01:22 +09:00
smoogipoo
7971261fbc Don't create a new drawable for the first background 2019-05-23 15:59:22 +09:00
Dean Herbert
58efa7a177
Merge pull request #4729 from peppy/fix-control-point-ordering
Fix control points with same timestamp potentially being parsed incorrectly
2019-05-21 15:33:27 +09:00
smoogipoo
7a56fe84f2 Remove ControlPoint.EquivalentTo 2019-05-21 14:27:57 +09:00
smoogipoo
7e38aabe75 Remove equivalence check from controlpoint parsing 2019-05-21 14:27:41 +09:00
smoogipoo
f1c9073338 Fix commented line check not working with whitespace 2019-05-14 16:16:55 +09:00
Dean Herbert
92f6f4d21a Apply same fix to other methods which were missed 2019-05-13 19:04:12 +09:00
Dean Herbert
aca77a7ae2 Merge remote-tracking branch 'upstream/master' into fix-control-point-ordering 2019-05-13 18:47:05 +09:00
Dean Herbert
038e49701e Move conditional to within BreakPeriod 2019-05-12 16:25:25 +09:00
Dean Herbert
c8f9354327 Remove incorrect deletion include
This was causing deletions of scores without considering that scores are now managed by a ScoreManager (and have their own data dependencies).
2019-05-09 15:13:35 +09:00
Dean Herbert
66ebdbbe4c Fix control points with same timestamp potentially being parsed incorrectly 2019-05-08 18:13:07 +09:00
smoogipoo
a00e2b18a9 Fix background unloading/reloading sometimes crashing 2019-05-07 17:24:05 +09:00
smoogipoo
d7c09e7dbd Merge remote-tracking branch 'origin/master' into fix-new-inspections
# Conflicts:
#	osu.Game.Rulesets.Catch/Judgements/CatchDropletJudgement.cs
#	osu.Game.Rulesets.Catch/Judgements/CatchJudgement.cs
#	osu.Game.Rulesets.Mania/Scoring/ManiaScoreProcessor.cs
#	osu.Game.Rulesets.Osu/Replays/OsuAutoGenerator.cs
#	osu.Game.Rulesets.Osu/UI/Cursor/CursorTrail.cs
#	osu.Game.Tests/Visual/SongSelect/TestCaseBeatmapScoresContainer.cs
#	osu.Game/Graphics/OsuFont.cs
#	osu.Game/Online/API/Requests/Responses/APILegacyScoreInfo.cs
#	osu.Game/Overlays/Profile/Header/BadgeContainer.cs
#	osu.Game/Overlays/Profile/ProfileHeader.cs
#	osu.Game/Screens/Select/PlaySongSelect.cs
#	osu.Game/Skinning/LegacySkinDecoder.cs
2019-05-07 13:20:17 +09:00
Dean Herbert
d40177f97c
Merge branch 'master' into drawnode-composability 2019-04-27 18:41:19 +09:00
smoogipoo
0bd35ab7bb Turn on warnings, resolve issues 2019-04-25 17:36:17 +09:00
smoogipoo
0222424aef Make mods IReadOnlyList<Mod> gamewide
Prevents potential multiple evaluations of enumerable.
2019-04-10 17:20:36 +09:00
smoogipoo
ad124bfeec Reimplement select mod track adjustments 2019-04-09 12:59:32 +09:00
smoogipoo
c584967eb1 Remove mods from workingbeatmap 2019-04-09 12:59:32 +09:00
smoogipoo
772bef91fa Merge remote-tracking branch 'Joehuu/master' into drawnode-composability
# Conflicts:
#	osu.Game.Rulesets.Osu/UI/Cursor/OsuCursorContainer.cs
2019-04-08 23:01:12 +09:00
Dean Herbert
f1952c0816 Update font awesome usage 2019-04-02 19:55:24 +09:00
smoogipoo
a56e29347f Adjust namespaces 2019-04-02 14:51:28 +09:00
Dean Herbert
c39c37a18d Apply more missed cases 2019-04-01 12:44:46 +09:00
Dean Herbert
612db31c38 Apply newline additions 2019-04-01 12:16:32 +09:00
Dan Balasescu
e45c08ad23
Adjust comment 2019-03-29 14:02:19 +09:00
Dean Herbert
0439216f7e
Merge branch 'master' into stable-storyboard-ordering 2019-03-29 12:44:09 +09:00
Dean Herbert
de80fc0eac Update icon usage to match framework changes 2019-03-27 19:29:27 +09:00
Dean Herbert
92184adef5 Add stable sorting of storyboard elements 2019-03-26 16:37:52 +09:00
Dean Herbert
6f1610be79
Merge branch 'master' into ruleset-container-refactor 2019-03-20 14:55:58 +09:00
Dean Herbert
461a0a5038
Merge branch 'master' into remove-unnecessary-code 2019-03-20 10:22:24 +09:00
Dean Herbert
baea7230bc Rename RulesetContainer to DrawableRuleset 2019-03-19 23:47:31 +09:00
Dean Herbert
392a0a1d74
Merge branch 'master' into update-framework 2019-03-18 11:34:59 +09:00
Dan Balasescu
e0b3149e32
Merge branch 'master' into api-testability 2019-03-18 10:59:06 +09:00
Dean Herbert
c496f6e56b Fix usages of OnLoadComplete 2019-03-17 13:44:20 +09:00
Dean Herbert
36e5c09710
Merge pull request #4433 from nekodex/prevent-null-lookup
Don't perform lookup of beatmap stats unless an online id is present
2019-03-15 10:39:39 +09:00
Dean Herbert
8f00f2290a Log issues 2019-03-13 14:56:41 +09:00
Dean Herbert
241e336c21 Fix break parsing 2019-03-13 14:22:16 +09:00
Jamie Taylor
7a2af5634c
Merge remote-tracking branch 'upstream/master' into prevent-null-lookup 2019-03-13 14:13:50 +09:00
Dean Herbert
f4c505709a Use parsing methods in more places
Limiting scope to beatmap decoding for this pass. Can expand to skin/storyboard in the future.
2019-03-13 13:56:31 +09:00
Dean Herbert
f0114d776d Use interface to access API
Allows for better testability.
2019-03-13 12:58:18 +09:00
Dean Herbert
93b774104a Fix NaN handling 2019-03-13 11:30:33 +09:00
Dean Herbert
73d9aef5bd Fix filename 2019-03-12 20:38:04 +09:00
Dean Herbert
cc09ecbfcf Increase validation performed on .osu files to avoid hard crashes 2019-03-12 20:31:15 +09:00
smoogipoo
059397ac50 Remove unnecessary early return for maching beatmap IDs 2019-03-12 14:40:13 +09:00
Dan Balasescu
05358fa458
Merge branch 'master' into ensure-import-sanity 2019-03-12 14:24:07 +09:00
Dean Herbert
59897bbeb5 Refactor UpdateableBeatmapBackground lookup logic for clarity
Closes #4401. Alternative to #4439.
2019-03-11 19:00:39 +09:00
Dean Herbert
d0ae75af6e Add tests and fix scenario where all matching are contained by duplicate candidate 2019-03-11 18:13:33 +09:00
Dean Herbert
3a8c32d41b Add the ability for ArchiveModelManager to re-import even when existing entry is present 2019-03-11 17:04:18 +09:00
Dean Herbert
9df27f3a5f
Merge branch 'master' into prevent-null-lookup 2019-03-09 11:14:54 +09:00
Jamie Taylor
800007c378
Set DummyWorkingBeatmap difficulties to 0 for better fallback display 2019-03-08 18:17:50 +09:00
Jamie Taylor
ab0ac7a82a
Pass through timeBeforeLoad instead of hardcoding 2019-03-06 19:12:37 +09:00
Jamie Taylor
06b65e00c4
Prevent null beatmap from creating an extra drawable 2019-03-06 19:12:28 +09:00
Jamie Taylor
eb80549782
Fix UpdateableBeatmapBackgroundSprite not disposing of previously loaded sprites 2019-03-06 19:12:22 +09:00
Dean Herbert
9441f88033
Use actual reference to default beatmap for fallback
Co-Authored-By: nyquillerium <nyquill@ppy.sh>
2019-03-06 13:01:37 +09:00
David Zhao
89987210c3 Merge remote-tracking branch 'upstream/master' into LobbyList 2019-03-05 18:59:38 +09:00
David Zhao
34b2553b95 Remove redundant boolean 2019-03-05 18:59:25 +09:00
Dan Balasescu
fd147dae21
Merge branch 'master' into fix-disabled-set-crash 2019-03-05 17:25:13 +09:00
David Zhao
52558c5cf6 Fix metadata potentially being null 2019-03-05 16:59:02 +09:00
David Zhao
166a8c8bbb Add back fallback behavior for match creation 2019-03-05 16:41:59 +09:00
David Zhao
fc62877fdc Fall back to default background 2019-03-05 15:51:43 +09:00
David Zhao
7c53c7b602 Remove local background logic 2019-03-05 15:33:39 +09:00
David Zhao
aecbc31ffa Use BeatmapSetCoverType.List for lobby listing 2019-03-05 12:08:14 +09:00
Dean Herbert
0ff17103e8
Merge branch 'master' into update-difficulty-brackets 2019-03-05 10:16:18 +09:00
Dean Herbert
d4041d5d42 Automate includes of files in ArchiveModelManager use cases 2019-03-01 10:25:21 +09:00
Dean Herbert
0788a7e9f1
Merge branch 'master' into more-inspections 2019-02-28 14:32:57 +09:00
Dean Herbert
42be7857d1 Use expression body for property get/set where possible 2019-02-28 13:58:19 +09:00
Dean Herbert
26d53d06a9 Fix remaining issues 2019-02-28 13:31:40 +09:00
Dean Herbert
56697339b3
Merge branch 'master' into fix-disabled-set-crash 2019-02-27 11:14:42 +09:00
Dean Herbert
314f35b0c5 Further simplify import messaging 2019-02-25 18:42:08 +09:00
Dean Herbert
80737b9ef8 Remove "silent" parameter; consolidate import logic 2019-02-25 18:24:06 +09:00
Dean Herbert
4e06d5c7cd Avoid fatal exceptions being thrown on download failure
Closes #4313.
2019-02-24 00:33:11 +09:00
Dean Herbert
367bc53a06 Revert some more instances of 'e' variable names 2019-02-22 20:15:25 +09:00
Dean Herbert
3015d40f8f
Merge branch 'master' into osu-fontusage 2019-02-22 18:09:23 +09:00
Dean Herbert
3fe4b8fd1c Update variable names
Also cleans up some weird code
2019-02-22 17:51:39 +09:00
Dean Herbert
452caabd40
Apply suggestions from code review
Co-Authored-By: smoogipoo <1329837+smoogipoo@users.noreply.github.com>
2019-02-22 17:06:49 +09:00
smoogipoo
d8c55bc729 Adjust namespaces 2019-02-21 19:05:52 +09:00
smoogipoo
bca347427f Update with framework bindable changes 2019-02-21 18:56:34 +09:00
smoogipoo
7e41fbc29b Remove LegacyDifficultyCalculator 2019-02-21 13:12:37 +09:00
smoogipoo
4db5531e4b Replace copy-constructor/method with extension method 2019-02-20 19:32:30 +09:00
smoogipoo
0693ab8e7d Merge remote-tracking branch 'origin/master' into osu-fontusage
# Conflicts:
#	osu.Game/Screens/Multi/Components/BeatmapTitle.cs
2019-02-20 15:04:08 +09:00
smoogipoo
a2aa3ec5cb Adjust sprite texts in-line with framework changes 2019-02-20 15:03:20 +09:00
smoogipoo
a8faa942a6 Implement new difficulty calculator structure 2019-02-18 14:49:43 +09:00
Poyo
66de451b53 Update difficulty color bracket thresholds 2019-02-14 02:19:41 -08:00
Dean Herbert
88ffc78103 Restructure 2019-02-11 19:11:34 +09:00
Dean Herbert
ca5c8d37d1 Use leased bindables 2019-02-01 16:44:06 +09:00
Dean Herbert
327a34f12a Merge remote-tracking branch 'upstream/master' into download-tracking-component
# Conflicts:
#	osu.Game/Beatmaps/Drawables/BeatmapSetDownloader.cs
2019-01-31 18:45:09 +09:00
Dean Herbert
baea9691cc Fix baetmap downloads using too much memory 2019-01-29 18:34:10 +09:00
Dean Herbert
28f529ca19 Rename to host 2019-01-25 20:24:32 +09:00
Dean Herbert
c3b73d2d53 ALlow null host 2019-01-25 12:08:31 +09:00
Dean Herbert
bda5a90252 Readonly variable 2019-01-25 11:50:52 +09:00
Dean Herbert
6b3d53750c Fix remaining cases of not using host-created TextureLoaderStore 2019-01-25 11:48:28 +09:00
Dean Herbert
8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
Dean Herbert
7d6d7cf457 Merge remote-tracking branch 'upstream/master' into download-tracking-component
# Conflicts:
#	osu.Game/Overlays/BeatmapSet/Buttons/DownloadButton.cs
2019-01-23 11:06:29 +09:00
Dean Herbert
5ea6e8e247 Allow full osu!direct usage regardless of supporter status for now 2019-01-22 14:22:38 +09:00
Dean Herbert
21e79f51b1 Remove necessity of BeatmapSetDownloader 2019-01-18 14:28:06 +09:00
smoogipoo
cf8bcb7ba2 Add explicit beatmap -> scores relationship rather than relying on cascades 2019-01-08 17:53:43 +09:00
Dean Herbert
49ba4e5a14
Merge branch 'master' into update-framework 2019-01-07 18:51:54 +09:00
Dean Herbert
f6018294b5 Update framework 2019-01-07 18:50:27 +09:00
Roman Kapustin
4b5fc85875 Use Find instead of FirstOrDefault 2019-01-05 19:35:33 +03:00
Dean Herbert
55607634b4 Fix covers being loaded even when off-screen 2018-12-28 13:30:05 +09:00
Dean Herbert
cf079690e5 Use LargeTextureStore for online retrievals 2018-12-27 22:13:51 +09:00
smoogipoo
eaba9e1378 Fix mode icon not being updated for correct ruleset 2018-12-27 18:16:30 +09:00
Dean Herbert
26834abd33 Fade and no schedule 2018-12-26 21:18:55 +09:00
Dean Herbert
c902c1587a Add tests and modify fallback logic 2018-12-25 19:17:32 +09:00
smoogipoo
96c9e5f209 Make DefaultBeatmap readonly 2018-12-25 18:34:45 +09:00
Dean Herbert
9542e3e24a Add Updateable beatmap sprite 2018-12-25 18:04:13 +09:00
Dean Herbert
b5ba74a628 Add more specific checks 2018-12-05 02:12:15 +09:00
Dean Herbert
c7c5837ec1 Fix GetWorkingBeatmap potentially loading same beatmap twice
This could be seen when using the previous/next buttons in the MusicController while at song select.
2018-12-05 01:45:32 +09:00
smoogipoo
a8ad7d4670 Add silent import parameter 2018-11-30 18:27:13 +09:00
Dean Herbert
059e9e180b Apply review 2018-11-30 18:07:15 +09:00
Dean Herbert
aa7a665317 Merge remote-tracking branch 'upstream/master' into scoredatabase 2018-11-30 17:20:23 +09:00
Dean Herbert
e82ad3539b Move JsonIgnore specification to interface 2018-11-30 16:39:25 +09:00
smoogipoo
a88b69ec43 Notify of existing imports 2018-11-28 20:19:35 +09:00
Dean Herbert
ab2b2493a1 Move hashing functionality to ArchiveModelManager 2018-11-28 19:21:36 +09:00
Dean Herbert
ce660b6d67 Add skin de-duplication 2018-11-28 19:01:22 +09:00
smoogipoo
14ff4bc26a Move primary key attribute to IHasPrimaryKey 2018-11-28 13:19:23 +09:00
Dean Herbert
7755242a43
Merge branch 'master' into osuTK 2018-11-21 18:53:11 +09:00
smoogipoo
5ad96afea0 Fix crashes when importing/deleting from model managers 2018-11-20 18:09:23 +09:00
smoogipoo
f27bd3ef3e OpenTK -> osuTK 2018-11-20 17:14:59 +09:00
smoogipoo
e964a555d0 Fix DummyWorkingBeatmap having unrealistic defaults 2018-10-29 15:26:28 +09:00
smoogipoo
8703db5cc1 Rename HitObjectMask -> SelectionMask 2018-10-26 13:31:23 +09:00
smoogipoo
8a2a6a3ecb Preserve the beatmap's version 2018-10-23 14:59:21 +09:00
smoogipoo
05d89180c8 Move brace on new line 2018-10-22 12:17:23 +09:00
Paul Teng
86b29064c6 Change DownloadState only when Download is possible 2018-10-18 08:51:05 -04:00
Dean Herbert
a2b8904b1e
Merge branch 'master' into database-standardize-paths 2018-10-18 16:21:45 +09:00
smoogipoo
1bebceada7 Unroll loop for the last control point 2018-10-17 11:55:34 +09:00
smoogipoo
336b6fa38e Perform a custom binary search to remove thread-unsafeness 2018-10-17 11:23:18 +09:00
smoogipoo
d431dd59a8 Cleanups 2018-10-17 10:53:21 +09:00
smoogipoo
41391a6627 Fix beatmap conversion tests failing 2018-10-16 12:01:58 +09:00
smoogipoo
72aaaa4a74 PointSearch -> SearchPoint 2018-10-16 10:29:53 +09:00
HoLLy
710b0a4664 Remove unnecessary PathSanitise call 2018-10-12 15:30:24 +02:00
HoLLy
bb07630743
Merge branch 'master' into database-standardize-paths 2018-10-12 14:08:25 +02:00
smoogipoo
fb1760f580 Simplify linq from beatmap conversion 2018-10-11 20:29:37 +09:00
smoogipoo
ec9f23ab73 Make IBeatmap.HitObjects an IReadOnlyList 2018-10-11 19:53:07 +09:00
smoogipoo
7b2a30f5b4 Reduce some high-profile enumerator allocations 2018-10-11 19:52:03 +09:00
smoogipoo
10fb1d20d1 Remove allocation of control point with every binarysearch 2018-10-11 19:08:00 +09:00
smoogipoo
5b544a0c97 Remove allocation of string.IndexOf() 2018-10-11 18:37:48 +09:00
smoogipoo
bd99a87298 Use ordinal comparison in LegacyBeatmapDecoder 2018-10-11 17:48:47 +09:00
smoogipoo
0c4403ef16 Don't apply version offset during diff calc 2018-10-11 13:53:49 +09:00
HoLLy
b35f88b8ba Standardize AudioFile and BackgroundImage paths 2018-10-09 17:49:18 +02:00
smoogipoo
9facf707be Add diffcalc beatmap decoder 2018-10-09 11:49:24 +09:00
smoogipoo
b7499fa956 Allow TimingControlPoint to be overridden 2018-10-09 11:34:38 +09:00
smoogipoo
794501cc5a Fix incorrect result of ternary 2018-10-05 12:06:24 +09:00
smoogipoo
40c17cfa5a Remove ugly if-statement 2018-10-05 11:55:59 +09:00
smoogipoo
cb1703c6e2 Fix colours with alpha components not being parsed 2018-10-05 11:19:01 +09:00
smoogipoo
04cd68f970 Hide status pill when status is none 2018-09-20 12:53:45 +09:00
smoogipoo
7b8094d731 Move text size/padding out of constructor 2018-09-20 12:53:45 +09:00
Dan Balasescu
d3bb78d139
Merge branch 'master' into add-rank-status 2018-09-18 14:10:42 +09:00
smoogipoo
aba1de8b1a Cleanup 2018-09-18 12:54:07 +09:00
Hanamuke
3e7006ec1f Fix fonction name 2018-09-14 19:52:32 +02:00
Hanamuke
c8d3776c79 Remove uneeded brackets 2018-09-14 19:46:04 +02:00
Hanamuke
347cb0a1b5 Check for type conversion, mais the update recursive 2018-09-14 19:41:29 +02:00
Hanamuke
1c2cc3837a Compute combo for nested Objects. Display fruit depending on Combo for
osu!catch
2018-09-13 21:52:15 +02:00
Unknown
638a2e5ba8 populate Status for Beatmap + BeatmapSet
also added Status to APIBeatmap + APIBeatmapSet
2018-09-13 11:57:40 +02:00
Unknown
13b988053a add status column to BeatmapInfo + BeatmapSetInfo 2018-09-13 10:10:58 +02:00
Unknown
221a99d886 fix StatusPill not setting text when initially set with NONE 2018-09-13 10:07:26 +02:00
smoogipoo
9b0954ab81 Reference whether texture is available rather than disposed 2018-09-11 11:28:02 +09:00
Dean Herbert
7cca990be4 Merge remote-tracking branch 'upstream/master' into framework-image-changes 2018-09-07 18:56:00 +09:00
Dean Herbert
bb67f1a361 Merge remote-tracking branch 'upstream/master' into add-skin-import-delete 2018-09-07 18:18:03 +09:00
Dean Herbert
81da7ce298
Merge branch 'master' into add-skin-import-delete 2018-09-07 16:48:01 +09:00
Dean Herbert
2c0ba401d5 Add ability to click on imported complete notification to present last import 2018-09-07 16:30:11 +09:00
Dean Herbert
01389f0443 Merge remote-tracking branch 'upstream/master' into update-framework-with-everyrthing 2018-09-06 18:04:58 +09:00
Dean Herbert
4e012042ab Fix renaming variables too eagerly 2018-09-06 17:57:09 +09:00
Dean Herbert
29b0d62f21 Changes in line with framework refcount changes 2018-09-06 13:29:57 +09:00
Dean Herbert
89a92ab7eb Fix potential thread-safety issue 2018-09-06 13:27:53 +09:00
Dean Herbert
8d9e0ff1c3 Remove async WorkingBeatmap logic 2018-09-06 12:51:23 +09:00
Dean Herbert
9b753bb429
Merge pull request #3321 from peppy/fix-importing
Fix order of import set conflict checks
2018-09-05 18:51:15 +09:00
Dean Herbert
144e80dff6 Add "import all skins from stable" option (and mass delete) 2018-09-03 10:10:04 +09:00
Dean Herbert
03084aa04b Revert async changes 2018-08-31 07:07:10 +09:00
Dean Herbert
b1a3dfedd1 Reduce async-await pairs 2018-08-30 14:41:16 +09:00
Dean Herbert
0d4aa37a91 Fix order of import set conflict checks 2018-08-28 02:53:32 +09:00
smoogipoo
1b279d383f Use GetAsync on all textures 2018-08-27 17:26:44 +09:00
Dean Herbert
8204d3292e Log to correct file 2018-08-25 14:50:46 +09:00
smoogipoo
aeb4d47c06 Remove skipping part of message 2018-08-24 18:07:39 +09:00
smoogipoo
99574ecad8 Softly handle errors when no beatmap file exists in archive 2018-08-24 17:57:39 +09:00
smoogipoo
55370165c0 Compare with invariant culture 2018-08-24 10:12:30 +09:00
smoogipoo
407968bb7e Log the format line when a decoder isn't found 2018-08-24 10:03:56 +09:00
smoogipoo
8f261988f7 Log all files when no beatmap files in archive error occurs 2018-08-23 10:59:21 +09:00
Dean Herbert
985528d08b
Merge branch 'master' into more-import-logging 2018-08-22 16:30:55 +09:00
Dean Herbert
f1c6dfd735
Change grammar slightly 2018-08-22 16:22:29 +09:00
Dean Herbert
c6df93c438
Merge branch 'master' into invalid-obj-types 2018-08-22 16:21:17 +09:00
smoogipoo
551581e5cd Skip invalid hitobject types, log error instead 2018-08-22 15:59:58 +09:00
smoogipoo
bdd618a99d Log the archive when failing to create model 2018-08-22 15:42:43 +09:00
smoogipoo
df84889646 Handle invalid origins as Anchor.TopLeft 2018-08-22 14:50:03 +09:00
smoogipoo
541c4daa81 Use ordinal string comparison in hot paths 2018-08-21 11:10:54 +09:00
ekrctb
cf4cb934cf
Merge branch 'master' into fix-combo-colours 2018-08-16 10:45:54 +09:00
smoogipoo
4dfb63023f Update with recent changes 2018-08-15 15:49:48 +09:00
smoogipoo
d0c9e2257b Merge remote-tracking branch 'origin/master' into framework-storage-update 2018-08-15 14:54:09 +09:00
smoogipoo
539dd3134f Fix beatmap processor not setting combo index on first object 2018-08-15 11:48:50 +09:00
smoogipoo
ce77473910 Simplify usage of ConvertHitObjectParser 2018-08-15 10:24:56 +09:00
smoogipoo
e360985d73 Replace variables into the entire line 2018-08-14 18:15:09 +09:00
smoogipoo
b8824a41b5 Fix certain control points not being replaced 2018-08-14 11:44:53 +09:00
jorolf
123f304cf1 update storage usages 2018-08-02 19:24:17 +02:00
Dean Herbert
b7de922896
Merge branch 'master' into open-downloaded-beatmas 2018-07-28 12:44:34 +09:00
Dean Herbert
95cca046fb Merge branch 'master' into open-downloaded-beatmas 2018-07-25 12:38:49 +02:00
Dean Herbert
da8fc0ee5d ToLower -> ToLowerInvariant 2018-07-25 07:37:05 +02:00
Dean Herbert
5364a6148a Use ToUpperInvariant 2018-07-24 14:42:06 +02:00
Dean Herbert
ab9340f4be Fix usage of culture local ToUpper causing incorrect display on Turkish machines
Closes #3098.
2018-07-24 11:37:43 +02:00
Dean Herbert
d561f54282
Merge branch 'master' into per-object-css 2018-07-23 03:01:17 +09:00
Dean Herbert
0f37758314 Update framework 2018-07-21 16:21:53 +09:00
Dean Herbert
a2f744b05e Merge remote-tracking branch 'upstream/master' into open-downloaded-beatmas 2018-07-21 00:03:17 +09:00
Dean Herbert
7fea2b3a8b
Add ToList 2018-07-20 16:38:02 +09:00
smoogipoo
c087a73f40 Implement per-hitobject custom sample banks 2018-07-20 15:12:44 +09:00
smoogipoo
de8d05bb0c Remove unnecessary setting of sample name to same value 2018-07-20 15:12:21 +09:00
Dean Herbert
693ba8e994 Add more ToString output 2018-07-19 18:43:11 +09:00
Dean Herbert
68614f1512 Ensure online IDs are validated for imports that don't have an associated archive too 2018-07-19 13:41:34 +09:00
Dean Herbert
e3fb781a5a Fix ArchiveModelManager's model import method not running import logic 2018-07-18 12:59:22 +09:00
Dan Balasescu
7a2dc3c674
Merge branch 'master' into clickable-download-notifications 2018-07-17 13:29:16 +09:00
Dean Herbert
84c13174d9
Merge branch 'master' into use-has-flags 2018-07-17 03:50:40 +09:00
Dean Herbert
40a1f8313e
Merge branch 'master' into make-notifications-quieter 2018-07-17 03:24:47 +09:00
Dean Herbert
f4591c6d0b
Merge branch 'master' into fix_color_parsing 2018-07-17 00:25:32 +09:00
morguldir
fc77e01ba9 Fix formatting, make StripComments protected
Don't strip comments when calling ParseLine
2018-07-16 16:35:55 +02:00
Dean Herbert
98cddc0c04 Fix some legacy cases 2018-07-16 16:26:37 +09:00
Dean Herbert
dbc538abbe Use Enum.HasFlag
With .NET core 2.0+ this is as efficient as the ugly code we've been using.
2018-07-16 16:18:46 +09:00
Dean Herbert
a117b323e2
Merge branch 'master' into make-notifications-quieter 2018-07-16 13:15:07 +09:00
Dean Herbert
a12c47536b Change default to being important 2018-07-16 13:00:21 +09:00
morguldir
429306aa87 Fix casing, use ordinal string comparison when stripping comments 2018-07-16 01:54:20 +02:00
morguldir
87a4bf3d92 Remove using directive for regex in LegacyDecoder 2018-07-16 01:08:30 +02:00
morguldir
6c861a1638 Strip comments from everything except metadata 2018-07-16 01:04:41 +02:00
Dean Herbert
6698f320fb
Merge branch 'master' into download-button-state 2018-07-13 22:05:26 +09:00
Dean Herbert
a1a077398c Merge remote-tracking branch 'upstream/master' into peppy-clickable-download-notifications 2018-07-13 21:04:17 +09:00
Dan Balasescu
69acb4f10e
Merge branch 'master' into improve-difficulty-icons 2018-07-13 18:27:43 +09:00
Dean Herbert
159b26509b Improve visuals of difficulty icons 2018-07-13 17:15:06 +09:00
Dean Herbert
09be9c2ed2 Merge remote-tracking branch 'upstream/master' into naoey-download-button-state 2018-07-13 14:52:10 +09:00
Criminalllz
a9f8c2acb8 Use Regex to only care about colors and commas when parsing a color. 2018-07-12 20:36:57 +02:00
Dean Herbert
7157428882 Fix import failure of beatmap sets containing duplicate beatmap difficulties 2018-07-11 02:59:00 +09:00
Dean Herbert
1418d1369f Add the ability to click completed download notifications to select beatmap
Closes #2731.
2018-07-11 01:32:10 +09:00
Dan Balasescu
f5504914cc
Merge branch 'master' into fix-hitsound-fallback 2018-07-10 17:19:16 +09:00
Dan Balasescu
ce219cda53
Merge branch 'master' into fix-beatmap-links 2018-07-10 16:20:59 +09:00
Dean Herbert
ba258b8a05 Fix lack of fallback logic for custom bank samples
Closes #2966.

---

Was causing some beatmaps to not play all of their hitsounds
2018-07-10 02:56:22 +09:00
Dean Herbert
e223074876 Fix import failures if single set has multiple conflicting OnlineBeatmapIDs
Resolves #2970.
2018-07-09 00:24:55 +09:00
Dean Herbert
91777b04d8
Merge branch 'master' into download-button-state 2018-07-08 14:15:47 +09:00
Dean Herbert
625b9ead4c Fix links from profile top scores to beatmaps not working correctly 2018-07-05 21:00:23 +09:00
Dean Herbert
44aecdc3a0 Rename method to EquivalentTo 2018-07-05 15:00:02 +09:00
Dean Herbert
d11ba2df0e Merge remote-tracking branch 'upstream/master' into smoogipoo-legacy-custom-banks 2018-07-05 14:53:31 +09:00
naoey
2a0b1f3615 Update direct panel download button for new design
- Add a download failed event to BeatmapManager
- Make DownloadButton aware of all 3 possible download states
- Change button appearance based on each state
2018-07-03 20:18:09 +05:30
smoogipoo
8b0c6a4c85 Make SampleControlPoint clone the existing SampleInfo 2018-07-02 14:17:19 +09:00
Dan Balasescu
37495c34fa
Fix possible nullreference 2018-07-02 13:51:47 +09:00
smoogipoo
b664d3ef81 Fix time being a part of controlpoint change comparisons 2018-07-02 13:34:25 +09:00
smoogipoo
aea50e770b Use .Equals everywhere 2018-07-02 13:34:14 +09:00
Dean Herbert
812929fa05 Merge remote-tracking branch 'upstream/master' into smoogipoo-beatmap-preprocess 2018-07-02 13:10:42 +09:00
Dean Herbert
b7893bc994 Remove unnecessary comments 2018-07-02 13:07:44 +09:00
smoogipoo
9f85c55915 Merge remote-tracking branch 'origin/master' into legacy-custom-banks 2018-07-02 12:34:51 +09:00
Dan Balasescu
8abcf68188
Merge branch 'master' into fix-negative-online-set-id 2018-06-29 18:29:36 +09:00
smoogipoo
99068debc4 Split out into separate interface + add xmldocs 2018-06-29 13:24:33 +09:00
smoogipoo
756cabd5d0 Add a preprocess method to BeatmapProcessor 2018-06-29 12:45:48 +09:00
tgi74000
b0739023ce Add BeatmapInfo's stable defaults to fix compatibility with old maps 2018-06-28 19:02:38 +02:00
smoogipoo
94f1b2eeb8 Only custom sample banks > 1 modify the filename 2018-06-28 18:29:17 +09:00
smoogipoo
3a9a82c80c Add back legacy custom sample banks 2018-06-28 18:29:12 +09:00
smoogipoo
781095b96b Encapsulate the method to apply SampleControlPoints to SampleInfos 2018-06-28 18:29:07 +09:00
smoogipoo
2882981f9c Implement and use equality comparers for ControlPoint 2018-06-28 18:28:59 +09:00
Dean Herbert
be2d3d6ad4
Merge branch 'master' into fix-supporter-naming 2018-06-28 17:34:21 +09:00
smoogipoo
2f2bd59844 Remove editor functionality from VirtualBeatmapTrack
/shrug
2018-06-28 11:47:41 +09:00
smoogipoo
87e8074cd2 Use a const for excess length 2018-06-28 11:46:56 +09:00
smoogipoo
c0c94e24b9 Use VirtualBeatmapTrack in testcases 2018-06-28 11:45:48 +09:00
Dean Herbert
5ad122bfec Fix beatmaps importing with -1 as online set ID 2018-06-28 10:28:35 +09:00
Joehu
8518fce4a9 Fix osu!supporter naming 2018-06-27 17:57:55 -07:00
smoogipoo
5640385f48 Update the length once during construction 2018-06-27 16:12:49 +09:00
smoogipoo
b4b28f8ae8 Make GetWaveform() not hard bail if errors occur 2018-06-27 16:07:18 +09:00
smoogipoo
b88c4464cb Make virtual beatmap tracks approximate beatmap length 2018-06-27 16:02:49 +09:00
Dean Herbert
f7f17bab78
Merge branch 'master' into catch-droplet-fix 2018-06-26 19:29:15 +09:00
Dean Herbert
5d3b51b8d4
Merge branch 'master' into api-offline-early-return 2018-06-22 13:16:30 +09:00
Dean Herbert
3819ecb2be Update framework 2018-06-19 20:19:52 +09:00
Dean Herbert
5d105cd08d Avoid errors being logged when importing beatmaps while logged out 2018-06-15 17:23:03 +09:00
smoogipoo
8f7334874c Fix up performance calculators 2018-06-14 16:04:48 +09:00
Dan Balasescu
cbb883614a
Merge branch 'master' into catch-droplet-fix 2018-06-13 15:18:52 +09:00
Dan Balasescu
0a35a81c2d
Merge branch 'master' into populate-missing-online-ids 2018-06-12 13:11:21 +09:00
Dean Herbert
ecc0f5e575 Use Any() instead of Count() 2018-06-08 20:54:09 +09:00
Dean Herbert
064e8190be Add basic documentation 2018-06-08 20:53:58 +09:00
Dean Herbert
66d28aa9fc
Merge branch 'master' into beatmap-set-downloader 2018-06-08 16:28:25 +09:00
Dean Herbert
a775d00bd8 Add online fetch support for online IDs 2018-06-08 15:59:45 +09:00
Dean Herbert
955a78e76d Remove OnlineBeatmapSetID from BeatmapInfo
It should now be retrieved via the linked BeatmapSetInfo
2018-06-08 15:26:27 +09:00
Dean Herbert
8220e0c79a Remove OnlineBeatmapSetID from BeatmapMetadata 2018-06-08 12:46:34 +09:00
Dean Herbert
f3c9049660
Merge branch 'master' into disallow-beatmap-change 2018-06-07 15:34:19 +09:00
smoogipoo
3745f9000b Merge remote-tracking branch 'origin/master' into remove-decoder-offset 2018-06-07 13:37:19 +09:00
Dean Herbert
2e23da1dfa
Merge branch 'master' into beatmap-set-downloader 2018-06-06 20:32:58 +09:00
smoogipoo
72cc53aded Rename GameBeatmap -> BindableBeatmap 2018-06-06 20:16:20 +09:00
smoogipoo
4086ff7313 Merge remote-tracking branch 'origin/master' into disallow-beatmap-change
# Conflicts:
#	osu.Game.Tests/Visual/TestCaseBeatmapInfoWedge.cs
#	osu.Game/Screens/Menu/Intro.cs
#	osu.Game/Screens/Menu/MenuSideFlashes.cs
2018-06-06 18:26:51 +09:00
DrabWeb
7819be7957 Remove unused using. 2018-06-06 03:28:07 -03:00
DrabWeb
188272e15d Replace OnAlreadyDownloading with returning a bool from Download. 2018-06-06 03:18:42 -03:00
DrabWeb
80951eae68 Inherit BeatmapSetDownloader from Component. 2018-06-05 18:09:26 -03:00
DrabWeb
d8154f8cad Fix BeatmapSetInfos with OnlineBeatmapSetID set to null being marked as downloaded. 2018-06-04 21:11:27 -03:00
DrabWeb
01c5060bcf Move BeatmapSetDownloader to osu.Game.Beatmaps.Drawables 2018-06-04 20:30:54 -03:00
Dan Balasescu
0f7b23d765
Add param explanatory blurb to xmldoc 2018-06-04 11:11:07 +09:00
Dean Herbert
4b604bf055
Merge branch 'master' into disallow-beatmap-change 2018-06-04 10:53:04 +09:00
Dean Herbert
645f6efce7 Fix web request failures not being correctly handled at an APIRequest level 2018-06-03 13:01:52 +09:00
Dean Herbert
ae6f603d16
Merge branch 'master' into match-panel-with-web 2018-06-01 21:31:18 +09:00
Joehu
1095669a55 Match panel with web 2018-05-31 08:09:19 -07:00
DrabWeb
6781b81336 Cleanup. 2018-05-31 05:48:42 -03:00
Dean Herbert
42bc6b6b2e
Merge branch 'master' into updateable-beatmap-set-cover 2018-05-31 17:33:31 +09:00
Dan Balasescu
cd3ca68f03
Merge branch 'master' into song-selet-enumerable 2018-05-31 14:38:04 +09:00
Dean Herbert
a28e71995d Offload database query to task
Allows song select to load a touch faster, in theory.
2018-05-30 16:15:57 +09:00
Dean Herbert
0adc16f9bd Handle online ID mismatches and clashes on beatmap import 2018-05-29 16:26:50 +09:00
Dean Herbert
47d88a48a2 Add logging on import processes 2018-05-29 16:26:42 +09:00
DrabWeb
e920b8d577 Add UpdateableBeatmapSetCover. 2018-05-28 19:11:26 -03:00
smoogipoo
3a5228af43 Make GameBeatmap late-bind its AudioManager for ctor Beatmap access 2018-05-28 17:55:41 +09:00
smoogipoo
8ae2a3696f Apply platform universal offset at player level 2018-05-28 03:31:46 +09:00
ekrctb
9f2e09dae4 Move PostProcessing to after control points applied and nested hit objects created. 2018-05-25 18:57:06 +09:00
smoogipoo
542eb848b0 Fix GetBoundCopy on IGameBeatmap not working 2018-05-24 12:42:58 +09:00
smoogipoo
a25462e10f Fix testcase audio + dependency overrides not working 2018-05-23 18:52:09 +09:00
smoogipoo
8004b8af4d Privatise the OsuGame beatmap, add local beatmap to OsuTestCase 2018-05-23 17:38:02 +09:00
smoogipoo
e6e3758304 Fix HR mod affecting original beatmap difficulty
Fixes #2575.
2018-05-18 18:11:52 +09:00
smoogipoo
397d93660a Don't deep-clone beatmapinfo/control points 2018-05-17 13:17:33 +09:00
smoogipoo
0f817d18d4 Add explanatory comment 2018-05-16 13:59:51 +09:00
smoogipoo
cf44357bdb Use a stable sort for hitobjects 2018-05-16 13:30:48 +09:00
smoogipoo
995fda9b6f Move base classes to osu.Game.Rulesets.Difficulty namespace 2018-05-15 17:38:08 +09:00
smoogipoo
e1b8a1589b Fix TimeRate not being considered for performance calculation 2018-05-14 11:15:14 +09:00
smoogipoo
2bab08c437 Fix post-merge errors 2018-05-11 14:08:17 +09:00
smoogipoo
73465c35fa Merge remote-tracking branch 'origin/master' into ruleset-beatmap-statistics
# Conflicts:
#	osu.Game/Beatmaps/Beatmap.cs
2018-05-11 14:05:40 +09:00
Dean Herbert
8a6ef0dabb
Merge branch 'master' into beatmap-conversion-rework 2018-05-10 19:10:07 +08:00
Dean Herbert
40c1b24b3d Move IBeatmap to its own file 2018-05-10 19:51:40 +09:00
smoogipoo
5489976c20 Implement ruleset-specific beatmap statistics 2018-05-07 15:51:08 +09:00
smoogipoo
30a3f4f29f Fix not being able to convert beatmaps with 0 hitobjects 2018-05-07 15:27:45 +09:00
smoogipoo
68441f1ef0 Output ruleset instantiation info 2018-05-07 14:28:30 +09:00
smoogipoo
ad2c2a5fe6 Restore star difficulty calculation 2018-05-07 12:25:21 +09:00
smoogipoo
794418432f Fix incorrect method name 2018-05-07 11:22:25 +09:00
smoogipoo
db3e48c194 Rename GetBeatmap() to GetPlayableBeatmap() 2018-05-07 10:40:30 +09:00
smoogipoo
9128e64c9a Rename OriginalBeatmap back to Beatmap 2018-05-07 10:29:38 +09:00
smoogipoo
7e83c75888 Add xmldoc 2018-05-07 10:23:32 +09:00
smoogipoo
b68ee39136 Reword beatmap conversion error 2018-05-07 10:18:47 +09:00
smoogipoo
4ecdea8b2e Remove now-unnecessary IsForCurrentRuleset property of RulesetContainer 2018-05-07 10:17:54 +09:00
smoogipoo
77e661489d Merge branch 'i-beatmap' into beatmap-conversion-rework 2018-05-07 10:00:24 +09:00
smoogipoo
1aefd71b65 Merge remote-tracking branch 'origin/master' into i-beatmap 2018-05-07 09:58:53 +09:00
Adonais Romero González
06c6f55995 Apply offset to end times on legacy converter 2018-04-30 00:43:32 -07:00
Dean Herbert
b16e25c3e9 Add error handling on a per-line level in LegacyDecoder
Resolves #2306.
2018-04-20 18:32:24 +09:00
smoogipoo
03a5df84c6 Initial rework of beatmap conversion process 2018-04-19 22:04:12 +09:00
smoogipoo
66b3b295e7 Use IBeatmap wherever possible 2018-04-19 20:44:38 +09:00
smoogipoo
e666a82e1f Fix cloning 2018-04-19 18:59:09 +09:00
smoogipoo
ac64f9d958 Remove LegacyBeatmap 2018-04-19 18:58:45 +09:00
smoogipoo
b5a55a0dce Make an interface for beatmaps 2018-04-19 18:58:40 +09:00
smoogipoo
ffbe6f2e37 Merge remote-tracking branch 'origin/master' into fix-rank-status
# Conflicts:
#	osu.Game/Beatmaps/RankStatus.cs
#	osu.Game/Online/API/Requests/SearchBeatmapSetsRequest.cs
#	osu.Game/Overlays/Direct/FilterControl.cs
#	osu.Game/Overlays/DirectOverlay.cs
2018-04-18 14:16:58 +09:00
tgi74000
1feba556eb CI: unused directive 2018-04-16 14:25:43 +02:00
tgi74000
9b36cf2066 Review changes 2018-04-16 14:14:40 +02:00
tgi74000
b23b0a445b Add support for replay mods 2018-04-13 15:41:35 +02:00
Dean Herbert
32a74f95a5 Normalize all the line endings 2018-04-13 18:26:38 +09:00
Joehu
f18594887b Move enum to SearchBeatmapSetsRequest 2018-04-12 07:49:23 -07:00
Joehu
461e063f19 Rename RankStatus to BeatmapSearchCategory 2018-04-11 22:50:39 -07:00
Joseph Madamba
767ecb4422 Fix rank status 2018-04-10 00:11:53 -07:00
Dean Herbert
ddba7254ca Merge remote-tracking branch 'upstream/master' into linq 2018-04-03 13:05:08 +09:00
smoogipoo
fd9480cfb6 Handle timingpoint FormatException 2018-04-02 20:08:40 +09:00
smoogipoo
d24d81d8a9 De-pluralize some methods 2018-04-02 20:07:18 +09:00
Huo Yaoyuan
b842f682eb Use Linq.Append and Prepend. 2018-04-02 12:06:34 +08:00
DrabWeb
19bc6b9168 Merge https://github.com/ppy/osu into beatmap-set-status 2018-03-27 18:13:58 -03:00
DrabWeb
506e27a30e Cleanup. 2018-03-27 17:59:58 -03:00
DrabWeb
eb374c5774 Add beatmap set online status and display it in direct panels and the beatmap set overlay. 2018-03-26 21:04:45 -03:00
Dean Herbert
0e669c9a3f Fix many warnings 2018-03-24 18:23:22 +09:00
smoogipoo
ffa712dccb Fix post-merge issues 2018-03-24 15:19:45 +09:00
smoogipoo
c29f7a4333 Merge remote-tracking branch 'origin/master' into netstandard 2018-03-24 14:49:46 +09:00
Dean Herbert
b8022070e8 Merge remote-tracking branch 'upstream/master' into beatmap-as-a-skin 2018-03-22 16:24:56 +09:00
Dean Herbert
7bdca0ff39 Merge remote-tracking branch 'upstream/master' into accent-colour-properties 2018-03-22 15:07:28 +09:00
Dean Herbert
e39b7b8d35 Don't hard-crash when an unknown section is encountered in a legacy file 2018-03-22 12:58:02 +09:00
Dean Herbert
504c3ff0ba BeatmapSkin -> LegacyBeatmapSkin 2018-03-22 12:50:48 +09:00
Dean Herbert
78a8f60b39 IHasComboIndex -> IHasComboInformation 2018-03-22 12:35:17 +09:00
Dean Herbert
d1c2aa71d0 Add beatmap sample override support 2018-03-20 16:24:06 +09:00
Dean Herbert
9a0fc9e29a Move combo colours completely out of beatmap 2018-03-20 16:24:06 +09:00
Dean Herbert
dbcf755618 Make Beatmaps parsable as skins 2018-03-20 16:05:29 +09:00
Dean Herbert
c38c26eacb Move combo index processing to BeatmapProcessor 2018-03-20 15:57:43 +09:00
Dean Herbert
62e908e22c Add default separator character 2018-03-19 20:06:44 +09:00
Dean Herbert
1d7be2ad0b Fix incorrect variable name 2018-03-14 10:14:42 +09:00
Dean Herbert
16eab2eebf Fix combo colours not working until now 2018-03-13 19:19:08 +09:00
Dean Herbert
e43de68ad3 Move colour parsing to LegacyDecoder 2018-03-13 19:13:50 +09:00
Dean Herbert
d6fa7d69d7 Add missing fonts section 2018-03-13 16:13:07 +09:00
Dean Herbert
8cbcdeb665
Merge branch 'master' into mania-difficulty 2018-03-12 14:07:14 +09:00
Dean Herbert
9f644571ea
Merge branch 'master' into mania-difficulty 2018-03-12 13:31:48 +09:00
smoogipoo
81186f8423 Apply beatmap converter mods in DifficultyCalculator 2018-03-12 13:06:42 +09:00
Dean Herbert
1bcda4930e Add back beatmap version set 2018-03-12 11:33:12 +09:00
Dean Herbert
217dd2ecdc Initial push for better decoders 2018-03-09 21:24:15 +09:00
Dean Herbert
70a16667b6 Fix difficulty calculator regression when applying mods 2018-03-08 12:57:36 +09:00
Dean Herbert
7b18e8a5ca Merge branch 'master' into fix-taiko-conversion 2018-03-06 01:16:47 +09:00
smoogipoo
d44dc1a4f9 Fix SliderMultiplier/SliderTickRate parsing inaccuracy 2018-03-05 16:01:05 +09:00
Dean Herbert
e46f363fdc Fix failing unit test 2018-03-04 22:46:50 +09:00
Dean Herbert
bc0bc8d459 Add legacy timing offsets
These have been in release builds since January, but implemented in a hacky way.

This brings them with a sane implementation.
2018-03-04 21:57:50 +09:00
smoogipoo
a2c239d5e3 Rename to IBeatmapConverter, move to separate file 2018-03-02 20:19:47 +09:00
smoogipoo
797d03a65f Implement basic structure for beatmap conversion testing 2018-03-02 13:13:00 +09:00
Dean Herbert
b8ea4b11ab
Adjust range further
This is not a great idea.
2018-03-01 00:39:59 +09:00
Dean Herbert
572d3b1316 Move bpm clamping to TimingControlPoint, adjust range to 1-10000bpm
In line with stable editor restrictions
2018-02-28 22:53:28 +09:00
Dean Herbert
5b4fef0180 Add bare minimum sanity checking of beatmap input values to make broken maps load
Resolves ppy/osu#1988.
2018-02-28 18:12:24 +09:00
Dean Herbert
968291c61e Sort hitobjects imported from legacy beatmps
Apaprently some ranked maps contain unordered hitobjects. We probably never want to allow for this.
2018-02-28 18:11:28 +09:00
Dean Herbert
6f44db6de0 Clamp at DifficultyControlPoint
This is what stable did.
2018-02-28 18:10:38 +09:00
Dan Balasescu
34f76a4136
Merge branch 'master' into storyboard-improvements 2018-02-19 15:40:09 +09:00
Dean Herbert
a7915e7041 Fix typo 2018-02-19 14:00:48 +09:00
Dean Herbert
21b641b302 Give storyboards a BeatmapInfo to reduce weird method calls
Also removes unnecessary background texture (the actual storyboard background spec wasn't implemented correctly anyway).
2018-02-16 12:09:23 +09:00
Dean Herbert
1b13be1372 Cleanups and xmldoc additions 2018-02-15 16:24:14 +09:00
Dean Herbert
8c1d581fb3 Fix hiding beatmaps not refreshing correctly 2018-02-15 16:15:40 +09:00
Dean Herbert
89cf794f98 Add a lower level ConsumableItems implementation 2018-02-15 16:15:40 +09:00
Dean Herbert
d3dd31dadb Make deletion and purging logic even more global 2018-02-15 14:22:39 +09:00
Dean Herbert
d340509b1d Move ArchiveReaders to a more global namespace
Also moves delete and action logic to a shared implementation
2018-02-15 14:22:39 +09:00
Dean Herbert
6ff63c2f0c Move deletion to ArchiveModelImportManager 2018-02-15 14:22:39 +09:00
Dean Herbert
d8f84fcca3 Give ArchiveReader a filename 2018-02-15 14:22:39 +09:00
Dean Herbert
e0d28564d0 Move import logic to shared implementation 2018-02-15 14:22:39 +09:00
Dean Herbert
86acc84988 Apply formatting 2018-02-13 20:23:51 +09:00
Dean Herbert
5ecb77fda7 Merge remote-tracking branch 'upstream/master' into default-approachrate 2018-02-13 20:23:01 +09:00
Dean Herbert
8c42225646 Fix outdated xmldoc 2018-02-13 15:08:51 +09:00
Dean Herbert
3561326306 Remove fixed issue 2018-02-13 14:54:46 +09:00
Dean Herbert
e8e093d6f2 Fix incorrect xmldoc 2018-02-13 14:54:01 +09:00
Dean Herbert
a738664167 Add interface for database context factory 2018-02-12 23:10:05 +09:00
Dean Herbert
8b37fde15b Only write when writes occur
Also add finaliser logic for safety. Also better threading. Also more cleanup.
2018-02-12 19:57:21 +09:00
Dean Herbert
edc3638175 DatabaseWriteUsage 2018-02-12 17:55:11 +09:00
Dean Herbert
721bb7e4dd Add proper handling for OnlineBeatmapSetID conflicts
Not yet working
2018-02-09 21:31:33 +09:00
Dean Herbert
a1513351c0 Add missing licence header 2018-02-09 20:35:54 +09:00
Dean Herbert
d547caa04e Further improve xmldoc 2018-02-09 19:44:17 +09:00
Dean Herbert
867b1b5f65 Move public methods up 2018-02-09 19:39:02 +09:00
Dean Herbert
c84cb0b33c Fix/add some xmldoc 2018-02-09 19:32:28 +09:00
Dean Herbert
db654004b7 Move BeatmapManagerWorkingBeatmap to its own file 2018-02-09 19:32:18 +09:00
Dean Herbert
fb6dc922c6 Reorder file 2018-02-09 19:25:55 +09:00
Dean Herbert
c7de79caf6 Remove storage class variable 2018-02-09 19:24:17 +09:00
Dean Herbert
5e0cb9d4b9 Simplify beatmap store retrieval 2018-02-09 19:12:29 +09:00
Dean Herbert
a166932468 Add deletion test 2018-02-09 17:51:29 +09:00
Dean Herbert
3b7018fcd6 Simplify beatmap import process 2018-02-09 17:22:48 +09:00
Bang Sunghwan
3894622ddc Remove redundant initializing field by default 2018-02-09 09:55:02 +09:00
Bang Sunghwan
f20e3ff31d Fix ApproachRate setting only DEFAULT_DIFFICULTY 2018-02-09 09:45:43 +09:00
Bang Sunghwan
cc6114b344 Fix ApproachRate not inheriting OverallDifficulty when it is undefined 2018-02-09 09:31:19 +09:00
smoogipoo
b500b76407 Merge branch 'master' into update-branch 2018-02-08 23:35:48 +09:00
smoogipoo
17aa915c77 Rename DifficultyRange parameters 2018-02-08 13:57:45 +09:00
smoogipoo
e45b26c742 Cleanup/minify HitWindows 2018-02-02 19:35:44 +09:00
james58899
fa800f0977
fix storyboard path 2018-01-23 18:18:54 +08:00
Dean Herbert
a931d6e381
Merge branch 'master' into fix-user-download-cancel 2018-01-22 16:27:26 +09:00
Dean Herbert
53e40a77dc Don't show error messages when a download is user-cancelled
Resolves #1941.
2018-01-22 13:25:49 +09:00
Dean Herbert
88beee2d1f Keep downloads active until their associated import operation finishes
This avoids race conditions where a second download can potentially be started while the first is still active.
2018-01-22 13:20:04 +09:00
smoogipoo
d8275c4f9b Fix beatmap query not including beatmap files 2018-01-16 18:20:46 +09:00
Aergwyn
ae1adfd2f2 remove unnecessary empty lines
codefactor.io \(o.o)/
also one unnecessary semicolon
2018-01-12 19:30:34 +01:00
Dan Balasescu
86581b6451
Remove extra braces 2018-01-11 17:02:09 +09:00
james58899
4fa038aa27
if not storyboard file 2018-01-11 13:53:41 +08:00
james58899
fbffc8bb89
fix load storyboard in osu file 2018-01-10 18:55:04 +08:00
Dean Herbert
58626e3b30 Allow rulesets to create their own instantiation info 2018-01-10 17:04:07 +09:00
Dean Herbert
4c0259a040
Merge branch 'master' into fix-storyboard-variables 2018-01-09 11:50:03 +09:00
Dean Herbert
37d393bca0 Update licence headers 2018-01-05 20:21:19 +09:00
smoogipoo
af86220dcc Merge remote-tracking branch 'origin/master' into update-branch 2018-01-05 12:08:50 +09:00
Dean Herbert
01038bd9bb
Merge branch 'master' into mania-rc-cleanup 2018-01-05 10:18:15 +09:00
smoogipoo
5eb2dc3d64 Cleanup some possible CI errors
Not sure why these aren't being detected on master right now - they should be...
2018-01-05 01:20:24 +09:00
smoogipoo
36e9232472 Merge master into netstandard 2018-01-05 00:42:48 +09:00
james58899
0158246ba1
AppVeyor 2018-01-04 19:23:00 +08:00
james58899
dcc4e863ab
move variables to StoryboardDecoder 2018-01-04 19:04:52 +08:00
james58899
89fe567496
use FileSafety.PathSanitise 2018-01-03 17:57:24 +08:00
smoogipoo
bd171926d6 Remove AvailableColumns from ManiaRulesetContainer
Also restructures with the addition of a ManiaBeatmap which holds definitions for "groups" of columns. At the moment these are empty save for a "Column" property, but can be expanded in the future, maybe.
2018-01-03 18:44:25 +09:00
Dan Balasescu
7ba59d9d56
Merge branch 'master' into fix-import-context-state 2018-01-03 14:21:04 +09:00
Dean Herbert
7154efa1c6 Refresh import context on import error 2018-01-02 12:31:21 +09:00
Dean Herbert
f2d302f8dc Create a LargeTextureStore for cached (but not atlased) global textures
Also
- Fixes first transition depth being incorrect.
- Improves smoothness of transitions (and adds a slight delay to offset from screen switches).
2017-12-31 07:05:04 +09:00
smoogipoo
7a793eaded Merge master into netstandard 2017-12-27 20:48:53 +09:00
smoogipoo
ddee9e992a Merge remote-tracking branch 'origin/master' into proper-taiko-hitsounds 2017-12-27 13:04:10 +09:00
smoogipoo
b95d7fc2cd Revert "Make ControlPointInfo return a set default control point"
This reverts commit 3113a55a98.
2017-12-27 12:41:59 +09:00
Dean Herbert
3182c22c7d Merge remote-tracking branch 'upstream/master' into hide-useless-beatmap-info 2017-12-26 20:36:22 +09:00
smoogipoo
d479955e20 Fix spelling error 2017-12-26 20:01:02 +09:00
smoogipoo
3113a55a98 Make ControlPointInfo return a set default control point 2017-12-26 19:33:01 +09:00
smoogipoo
836d807f4f Give SampleControlPoint a 100% volume by default 2017-12-26 19:32:20 +09:00
Dean Herbert
3c8d30f8e6 Add a dialog offering to import beatmaps from stable 2017-12-26 00:52:11 +09:00
Dean Herbert
9ca03c0209 Simplify and tidy sample retrieval
Less static weirdness
2017-12-23 16:46:02 +09:00
Dean Herbert
5026c7a95e SoundControlPoint -> SampleControlPoint 2017-12-23 16:34:34 +09:00
Aergwyn
ed827d5424 more visual tests for BeatmapInfoWedge
also fix Author showing when not wanted
2017-12-22 12:33:52 +01:00
Dan Balasescu
a3d947301b
Merge branch 'master' into beatmap-serialization 2017-12-22 07:38:05 +09:00
Dean Herbert
620e9737c3 Avoid many many unnecessary enumerations 2017-12-21 22:33:16 +09:00
smoogipoo
866d1c6e0f Remove now unused references 2017-12-21 22:13:18 +09:00
FreezyLemon
e4ead36544 Added completion text 2017-12-21 13:01:14 +01:00
FreezyLemon
cbc1aacf5c Merge branch 'master' of https://github.com/ppy/osu into undelete-button-add 2017-12-21 13:00:11 +01:00
smoogipoo
b2c0b013aa Remove migration setting in favour of export option in the editor 2017-12-21 19:56:12 +09:00
smoogipoo
a3fcc0b60c Back to using SortedLists 2017-12-21 19:40:41 +09:00
smoogipoo
cb7e192aff Determine SampleInfo defaults in DrawableHitObject 2017-12-21 16:02:33 +09:00
smoogipoo
58859f2ffb Rework registration/instantiation of decoders to not rely on reflection 2017-12-21 15:34:00 +09:00
smoogipoo
22f8853f49 Serialize star difficulty for now 2017-12-21 14:44:51 +09:00
smoogipoo
e8e5e8270b Rename decoder 2017-12-21 14:19:37 +09:00
smoogipoo
bfa4f1a2c3 Apply changes in line with master changes 2017-12-21 13:59:03 +09:00
smoogipoo
c99ea32574 Merge branch 'master' into beatmap-serialization 2017-12-21 13:39:39 +09:00
FreezyLemon
3644eda9a9 Changed notification from "installed" to "imported" on beatmap download 2017-12-19 11:34:23 +01:00
FreezyLemon
ba614883ea used Any() instead of manually checking count == 0 (CI) 2017-12-18 11:16:57 +01:00
FreezyLemon
f898481523 Changed existing implementations to have a custom CompletionText 2017-12-18 11:14:07 +01:00
FreezyLemon
d2b80fdbfc Moved "undelete all" logic to BeatmapManager and added a progress notification 2017-12-18 10:55:07 +01:00
Dean Herbert
4c45102d61
Merge branch 'master' into undelete-button-add 2017-12-18 16:28:32 +09:00
Dean Herbert
49ce42d90c Add ToString() overrides on many classes to make debugging easier 2017-12-16 16:14:01 +09:00
Dean Herbert
1146ba02d7 Make GetWorkingBeatmap return a sane default rather than exception on lookup failure 2017-12-15 14:36:51 +09:00
Dean Herbert
78dd975a35 Initial carousel infrastructue changes 2017-12-15 14:36:51 +09:00
Dean Herbert
69653c7f4f Don't use nested ternary if 2017-12-12 13:07:34 +09:00
Dean Herbert
8dea999908 Order difficulty icons by ruleset 2017-12-11 21:35:47 +09:00
Dean Herbert
b10240d7ef Handle the case where the selected panel is no longer a valid selection better 2017-12-11 21:31:26 +09:00
Dean Herbert
970e55fc4a Update difficulty icons on headers to match filtered difficulties 2017-12-11 20:49:27 +09:00
Dean Herbert
f58c554d19 Add per-difficulty filtering support
Filters based on selected ruleset
2017-12-11 20:22:10 +09:00
Dean Herbert
3880c7157b
Merge branch 'master' into fix-missing-metadata 2017-12-11 16:04:08 +09:00
Dean Herbert
08727266e7
Merge branch 'master' into add-ruleset-shortname 2017-12-11 15:41:11 +09:00
Dean Herbert
9069f1ccba
Merge branch 'master' into most-played-beatmaps-section 2017-12-11 12:12:23 +09:00
FreezyLemon
8cbd6f32cb Moved menu music hash property back to intro and changed check (before undeleting) to "Protected" field. 2017-12-10 11:31:37 +01:00
FreezyLemon
1691a74b14 Merge branch 'undelete-button-add' of https://github.com/freezylemon/osu into undelete-button-add 2017-12-10 11:26:31 +01:00
FreezyLemon
e1c04a1f44 Added check for "menu music beatmap hash" before undeleting so circles.osu doesn't get imported on Undelete. Also moved the const property to BeatmapManager. 2017-12-08 12:50:04 +01:00
Dean Herbert
679134c030 Add ShortName to rulesets 2017-12-08 18:55:25 +09:00
FreezyLemon
d93a1fdaae Merge branch 'master' of https://github.com/ppy/osu into undelete-button-add 2017-12-08 10:30:42 +01:00
Dean Herbert
31884a951a Remove "redundant" parenthesis 2017-12-08 15:53:59 +09:00
Dean Herbert
2e1dfa16a2 Fix checks disallowing import of older beatmaps with no embedded online IDs 2017-12-08 14:59:32 +09:00
Aergwyn
95955d68ef rephrased description of local context checking 2017-12-07 14:14:50 +01:00
Aergwyn
1dcbfab18e removed redundant comment 2017-12-07 13:56:37 +01:00
Aergwyn
76c09ae59e added comments for local context checking 2017-12-07 13:44:47 +01:00
Dean Herbert
f2eef6621a
Merge branch 'master' into fix-missing-metadata 2017-12-07 19:23:51 +09:00
Dean Herbert
2a1a9b9f1f Fix post-merge issue 2017-12-07 17:26:39 +09:00
smoogipoo
09f54b06ac Just don't serialize Author altogether for now 2017-12-07 15:55:22 +09:00
smoogipoo
0ba8988580 Don't serialize Author + add SerializableAttributes 2017-12-07 15:32:39 +09:00
Dean Herbert
44ee11e75f
Merge branch 'master' into fix-beatmap-carousel-lag 2017-12-07 15:30:50 +09:00
smoogipoo
f5f7658e90 Don't serialize TotalBreakTime 2017-12-07 14:40:28 +09:00
smoogipoo
dfc10d42e8 Merge remote-tracking branch 'origin/master' into beatmap-serialization 2017-12-07 12:49:27 +09:00
smoogipoo
f1dbcc4f1a Remove misleading comments 2017-12-07 12:23:53 +09:00
smoogipoo
0e3b001b13 Make maps with storyboards decode correctly with OsuJsonDecoder 2017-12-07 10:37:51 +09:00
smoogipoo
a8db3a9484 Add progress notification to migration 2017-12-07 04:09:03 +09:00
smoogipoo
b6b26cfe25 Add basic method to migrate beatmaps to the new JSON format 2017-12-07 03:04:36 +09:00
Dean Herbert
34596b3368 Rename and comment for clarification 2017-12-06 21:47:48 +09:00
smoogipoo
ed5f7e5353 Make OsuJsonDecoder apply defaults similar to OsuLegacyDecoder 2017-12-06 16:28:34 +09:00
smoogipoo
f9e34dfa3d Assume that control points are already sequentially-ordered
Fixes up deserializing.
2017-12-06 16:24:09 +09:00
Dean Herbert
04ae64e9fd Add missing IsCompleted check to ensureValid 2017-12-06 16:20:49 +09:00
smoogipoo
887b81148d Don't ignore RulesetId for now 2017-12-06 14:14:07 +09:00
Dean Herbert
15ed3b4aac Fix IsValueCreated method not cecking whether the async task was completed
Caused potential stutters for components that relied on this check.
2017-12-06 09:49:12 +09:00
smoogipoo
d2dc7c8937 Add OsuJsonDecoder 2017-12-06 00:38:12 +09:00
smoogipoo
b584178e85 Make Beatmap ISerializable and add more JsonIgnores 2017-12-06 00:37:37 +09:00
Aergwyn
ad8cd7eb5d fix possible NullReference?
AppVeyor pls?
2017-12-02 17:04:42 +01:00
Aergwyn
cc76c58f5f fall back to .osu file for storyboard if no .osb file is present
+ CI fixes
2017-12-02 16:05:39 +01:00
Aergwyn
c466296b14 reverted split at Decoder, moved logic down
I'm done experimenting, sorry
- `Decoder` only returns a "Beatmap"`Decoder` now
- "Storyboard"`Decoder` is retrieved from a "Beatmap"`Decoder`
- moved parse methods down in the hierarchy where I forgot to do that
- renamed `OsuLegacyDecoderTest` to `LegacyDecoderTest`
2017-12-01 22:05:01 +01:00
Aergwyn
a49f3479a2 Split retrieving of beatmap and storyboard decoder
Storyboard works again. Not satisfied with the solution though.
2017-12-01 19:11:52 +01:00
Aergwyn
db50ad794e CI adjustments
- removing unnecessary `using`s
- name Fields/Methods according to rules
- removing unnecessary initializations
2017-12-01 17:58:11 +01:00
Aergwyn
806c0e3b26 restructured OsuLegacyDecoder into LegacyDecoder
Beatmap works, Storyboard not...
2017-12-01 17:43:33 +01:00
Dean Herbert
7532795935 Lock during validity checks 2017-12-01 22:43:49 +09:00
Aergwyn
7080711cb2 remove unnecessary using 2017-11-30 20:13:10 +01:00
Aergwyn
be018a63c6 remove unnecessary lines 2017-11-30 19:17:11 +01:00
Aergwyn
c16925059c split parsing a beatmap and parsing a storyboard 2017-11-30 19:16:13 +01:00
Aergwyn
016057ab01 readd storyboard to beatmap + minor cleanup 2017-11-30 16:49:53 +01:00
FreezyLemon
b09ba19d3f Used the already-existing private method to undelete a mapset 2017-11-30 11:02:53 +01:00
FreezyLemon
bf386598b6 Added a new "undelete" button that restores every beatmap with "DeletePending" set to true. 2017-11-30 10:58:32 +01:00
jorolf
22403cac89 Merge branch 'master' of git://github.com/ppy/osu into most-played-beatmaps-section 2017-11-29 23:09:04 +01:00
Aergwyn
96f5bd3323 remove Storyboard from Beatmap, add it to WorkingBeatmap 2017-11-29 21:54:04 +01:00
Aergwyn
cd653c1cbc split storyboard loading into GetStoryboard() 2017-11-29 21:28:02 +01:00
Dean Herbert
d402222f17 Fix DisposeTrack and improve AsyncLazy to support disposal 2017-11-30 05:05:07 +09:00
smoogipoo
267bb75458 Merge remote-tracking branch 'Aergwyn/master' into netstandard 2017-11-29 23:45:29 +09:00
smoogipoo
a9cc156d7a Merge remote-tracking branch 'origin/master' into performance-calculator 2017-11-28 21:38:26 +09:00
Dean Herbert
23b4d2163c Fix spelling and grammar 2017-11-28 21:30:03 +09:00
Dean Herbert
bd88df2722 Add note about sequential execution of ConvertHitObject 2017-11-28 18:33:41 +09:00
Aergwyn
c058065a3a remove unnecessary using 2017-11-27 20:24:01 +01:00
Aergwyn
d87235a289 prevent inserting duplicate metadata 2017-11-27 20:08:16 +01:00
Dean Herbert
7877f42763 Merge remote-tracking branch 'upstream/master' into new-sounds-and-more 2017-11-27 17:59:24 +09:00
Dean Herbert
2dcc3b9e74
Merge branch 'master' into fix-missing-metadata 2017-11-27 12:28:33 +09:00
Dean Herbert
f189de437a Simplify blending assignment 2017-11-27 10:01:44 +09:00
Unknown
ae55d392de only use == for comparion on primitive types 2017-11-26 19:37:46 +01:00
Dean Herbert
9c90d9ca45 Add panel hover effects 2017-11-26 17:21:23 +09:00
Dean Herbert
4067b6129b Add visual highlighting on song select panel hover
Prerequisite for adding hover sound effects. Didn't feel right without this change.
2017-11-26 17:14:13 +09:00
Unknown
5da1466e28 requested changes
use IEquatable<T> instead of overriding Equals and `==` operator for primitive types.
2017-11-25 15:05:59 +01:00
jorolf
a1cc18f98c
Merge branch 'master' into most-played-beatmaps-section 2017-11-24 22:51:11 +01:00
jorolf
21d5d10738 replace BeatmapResponse with BeatmapInfo 2017-11-24 22:48:56 +01:00
Aergwyn
e3a230320a compare metdata and remove duplicate from beatmap to prevent redundant storage 2017-11-23 19:46:58 +01:00
Dean Herbert
2f3e4a27c6
Merge branch 'master' into improve-user-ratings-calculations 2017-11-23 20:55:55 +09:00
Dean Herbert
4986ad73f7 Merge remote-tracking branch 'upstream/master' into load-optimization 2017-11-23 18:44:17 +09:00
Dean Herbert
d93911ae97 Improve user ratings calculations to make more sense
Closes #1552.
2017-11-23 18:10:08 +09:00
FreezyLemon
2cc2323791 Style changes (removing newline from before second constructor parameter) 2017-11-23 09:12:23 +01:00
Dean Herbert
6e51664544
Merge branch 'master' into beatmap-overlay-download 2017-11-23 17:11:28 +09:00
Aergwyn
0df5432f5e removed line that set metadata per beatmap to null 2017-11-22 21:45:18 +01:00
jorolf
22348a3d67 Merge branch 'master' of git://github.com/ppy/osu into most-played-beatmaps-section 2017-11-22 21:14:11 +01:00
FreezyLemon
7d428875b8 Changed LoadWrapper back to DelayedLoadWrapper and fixed the implementation (dependent on framework change, delay now in ctor) 2017-11-22 15:46:04 +01:00
smoogipoo
de7c571be3 Merge remote-tracking branch 'origin/master' into netstandard 2017-11-22 19:46:17 +09:00
Aergwyn
e5dfe4ff2e Make error more verbose when beatmap import fails (#1537)
Add name of beatmap set to error message if import fails
2017-11-22 19:35:25 +09:00
Dean Herbert
517a9ec40f
Merge branch 'master' into async-beatmap-panels 2017-11-22 19:05:42 +09:00
FreezyLemon
870807c265 Switched over to the new LoadWrapper class for all delayed loading. 2017-11-21 16:17:33 +01:00
Dean Herbert
5e70b7a9f7 Add async load methods for WorkingBeatmap properties 2017-11-21 22:34:53 +09:00
Dean Herbert
2603219350 Load beatmap carousel panels asynchronously 2017-11-21 22:30:09 +09:00
smoogipoo
f9ad4b6acb Make categoryDifficulties return doubles to improve decimal accuracy 2017-11-21 19:55:09 +09:00
smoogipoo
b3bf6e7bee Merge master into netstandard 2017-11-21 16:39:21 +09:00
Dean Herbert
4f6263ef86 Make many internal classes and methods public
This is important when using dynamic compiling to rapidly iterate. Until we actually split projects out into pieces (like the abstract ruleset project we have talked about) there is no advantage to using internal in the osu! game code.
2017-11-21 12:06:16 +09:00
smoogipoo
aac41d2de6 Disable resharper inspections on case-by-case basis 2017-11-20 18:55:48 +09:00
Dean Herbert
8919e98d13 Fix CI issue 2017-11-20 11:32:20 +09:00
jorolf
fe7f9cccaa BeatmapSetCover can display other types of covers now 2017-11-19 14:16:00 +01:00
smoogipoo
d2ab0621f3 Make osu.Game + rulesets compile with netstandard 2017-11-19 13:46:51 +09:00
Dean Herbert
d704e9cf7e Ensure we correctly handle importing beatmaps/sets when the onlineID already exists locally 2017-11-19 01:45:17 +09:00
smoogipoo
ddf402d948 Add nullchecks in Disposal where population methods return nulls 2017-11-17 22:14:28 +09:00
smoogipoo
4ced1b6490 Use more of the properties 2017-11-17 22:10:24 +09:00
Dean Herbert
6b591ac77f Add missing initialisation 2017-11-17 19:17:00 +09:00
Dean Herbert
d75e3d8e81 Use lazy for WorkingBeatmap component loading 2017-11-17 18:37:46 +09:00
smoogipoo
95fd323c6b Fix ManiaDifficultyCalculator possibly failing due to nullref 2017-11-17 14:37:06 +09:00
smoogipoo
ac6213d1fa CI fixes 2017-11-17 14:26:33 +09:00
smoogipoo
7892eefd68 Fix up mod application + beatmap/hitobject references 2017-11-17 14:23:52 +09:00
smoogipoo
cc1720241e Fix DifficultyCalculator using incorrect mods 2017-11-17 12:36:51 +09:00
smoogipoo
5781b45b39 Set TimeRate after mod application 2017-11-17 12:36:17 +09:00
smoogipoo
18f2e92a48 Rework mod applications to hitobject/rulesetcontainer for DifficultyCalculator 2017-11-17 12:36:13 +09:00
smoogipoo
62155e6dd5 Make DifficultyCalculator support mod applications
Fixes https://github.com/ppy/osu/issues/476.
2017-11-17 12:36:07 +09:00
naoey
5aeeb9aac6 Merge remote-tracking branch 'upstream/master' into beatmap-overlay-download 2017-11-15 17:38:38 +05:30
Dean Herbert
6933a41b75 Add back high resolution cover regressions 2017-11-15 13:26:02 +09:00
Dean Herbert
6ef60d0b4e
Merge branch 'master' into beatmap-overlay-scores 2017-11-15 13:18:32 +09:00
smoogipoo
cd8d7af9db Clean up a few warnings in preparation for net-standard 2017-11-14 13:06:25 +09:00
Unknown
16e48ed187 Hook up download logic with BeatmapSetOverlay download buttons.
- Add noVideo option to DownloadBeatmapSetRequest
- Make Download fire an event with new download instead of returning it
2017-11-12 18:41:10 +05:30
EVAST9919
7280f77a02 Trim whitespace 2017-11-10 03:06:21 +03:00
EVAST9919
c2f3971188 Extend Beatmap Set Response 2017-11-10 03:01:11 +03:00
Miterosan
567cd6316c beatmap can not be null in DifficultyColouredContainer.cs 2017-11-07 23:17:45 +01:00
Miterosan
b2e49c1e71 line can not be null in OsuLegacyDecoder.cs 2017-11-07 23:17:26 +01:00
Miterosan
13e75780d7 beatmap and stream can not be null in OsuLegacyDecoder.cs 2017-11-07 23:17:07 +01:00
Miterosan
1e6f1d07d2 line can not be null in OsuLegacyDecoder.cs 2017-11-07 23:16:42 +01:00
Miterosan
a15ab785f2 palette can not be null in DifficultyColouredContainer.cs 2017-11-07 23:16:19 +01:00
Miterosan
36ce287b88 panels can not be null in BeatmapSetHeader.cs 2017-11-07 23:15:51 +01:00
Miterosan
0f539d24f0 Localisation can not be null in BeatmapSetHeader.cs 2017-11-07 23:15:21 +01:00
Miterosan
dc317139c9 beatmap can not be null in BeatmapSetHeader.cs 2017-11-07 23:15:02 +01:00
Miterosan
bc94179032 workingbeatmap can not be null in BeatmapBackgroundSprite.cs 2017-11-07 23:14:22 +01:00
Miterosan
d7dee57886 set can not be null in BeatmapSetCover.cs 2017-11-07 23:13:56 +01:00
Miterosan
dd3874daa8 beatmap can not be null in BeatmapPanel.cs 2017-11-07 23:13:32 +01:00
Miterosan
289a1346fc beatmap can not be null in DifficultyIcon.cs 2017-11-07 23:13:09 +01:00
Miterosan
a8acea9cdb stream can not be null in BeatmapDecoder.cs 2017-11-07 23:12:30 +01:00
Miterosan
8dc24a52a7 beatmap and line can not be null in OsuLegacyDecoder.cs 2017-11-07 23:11:33 +01:00
Miterosan
d27dced3af beatmap and line can not be null in OsuLegacyDecoder.cs 2017-11-07 23:11:16 +01:00
Miterosan
34083baa4d beatmap and line can not be null in OsuLegacyDecoder.cs 2017-11-07 23:11:04 +01:00
Miterosan
0287d3d7a0 beatmap and line can not be null in OsuLegacyDecoder.cs 2017-11-07 23:10:54 +01:00
Miterosan
cf296d4bb2 beatmap and line can not be null in OsuLegacyDecoder.cs 2017-11-07 23:10:41 +01:00
Miterosan
2f47b336e2 beatmap and line can not be null in OsuLegacyDecoder.cs 2017-11-07 23:10:30 +01:00
Miterosan
080c3fabba BeatmapSet and manager can not be null in BeatmapGroup.cs 2017-11-07 23:10:06 +01:00
Miterosan
1f620886cb beatmap and line can not be null in OsuLegacyDecoder.cs 2017-11-07 23:09:16 +01:00
Miterosan
840946d160 list can not be null in ControlPointInfo.cs 2017-11-07 23:08:24 +01:00
smoogipoo
04b271cce9 Migrate osu.Game project to VS2017 project structure 2017-10-30 22:24:11 +09:00
Dean Herbert
b89112c2a1 Fix incorrect alignment 2017-10-25 23:56:18 +09:00
Dean Herbert
4d4b505ef7 Add AsNoTracking to common read-only queries 2017-10-25 23:56:05 +09:00
Dean Herbert
e62928102c Merge remote-tracking branch 'upstream/master' into user-iqueryable 2017-10-25 23:49:56 +09:00
Dan Balasescu
e2ee76332f Merge branch 'master' into fix-threaded-context-issues 2017-10-25 23:30:28 +09:00
Dean Herbert
2d0f4d3859 Fix OnlineBeatmapSetID not being correctly populated 2017-10-25 22:14:16 +09:00
Dean Herbert
195d75d045 Flip flop let's expose IEnumerables for now 2017-10-25 22:12:20 +09:00
Dean Herbert
4e1922c556 Fix query methods not using IQueryable/Expressions
No database-level where clauses were being used in many cases they should be.
2017-10-25 22:10:45 +09:00
Dean Herbert
5001e9f264 Fix Hide/Restore/Delete etc. 2017-10-25 22:08:34 +09:00
Dan Balasescu
d927e57af6 Merge branch 'master' into fix-direct-import-stall 2017-10-25 21:48:27 +09:00
Dan Balasescu
946288ba2e Merge branch 'master' into fix-direct-import-stall 2017-10-25 21:46:00 +09:00
Dan Balasescu
05e1a7a5f8 Merge branch 'master' into online-beatmap-id-sanity 2017-10-25 21:38:33 +09:00
TocoToucan
5107489cda Remove DatabaseBackedStore Reset functions 2017-10-25 15:12:14 +03:00
TocoToucan
63fe569afa Remove DatabaseBackedStore Prepare functions 2017-10-25 14:53:20 +03:00
Dean Herbert
66f1d2fb2e Ensure all parsed "Online" IDs are above zero or null
Some .osu file sources (or database sources) may be in a bad state. We want to get these ones right as they cannot be enforced by the database itself (via FKs or constraints).
2017-10-25 14:34:39 +09:00
Dean Herbert
f1f7557f6e Add importing state to download notification 2017-10-25 11:49:00 +09:00
Dean Herbert
040fa3aa15 Fix import after direct download being scheduled to update thread
Caused a stall as experienced in #1364.
2017-10-25 11:43:30 +09:00
Dean Herbert
c765785d00 Mark several long-running tasks as long-running 2017-10-25 11:42:55 +09:00
Dean Herbert
e7931ef4c7 Add a default icon when a ruleset isn't present 2017-10-23 17:32:28 +09:00
Dean Herbert
4a68dd88cb Centralise BeginTransaction and disable transaction use for now 2017-10-23 14:53:13 +09:00
Dean Herbert
29fcd210aa Centralise transaction committing 2017-10-22 16:17:40 +09:00
Dean Herbert
980a6c93b4 Merge branch 'master' into fix-ef-hiding 2017-10-20 14:24:46 +09:00
Dean Herbert
93b2fc6dc5 Fix issues with deletion
Main fix is avoiding nullrefs being thrown when metadata isn't present on a beatmap (quite a common scenario).
2017-10-20 11:18:08 +09:00
Dean Herbert
7f83cf6780 Fix hiding not always working
Because we are not sharing a single context, we need to use Update to attach the entity to the local context.
2017-10-20 11:16:45 +09:00
Dean Herbert
f7d0df1743 Fix beatmap difficulty and metadata deletion 2017-10-19 17:50:46 +09:00
Dean Herbert
12900a8b15 Remove unnecessary second call to AutoTransactionsEnabled 2017-10-19 15:53:11 +09:00
Dean Herbert
5d5ea5fb2e Fix all remaining db structure issues 2017-10-19 14:05:11 +09:00
Dean Herbert
71d614b813 FIx missing columns yet again 2017-10-18 21:57:54 +09:00
Dean Herbert
b73b4755eb Ignore r# locked context inspection here 2017-10-18 18:41:04 +09:00
Dean Herbert
668f68dd63 Remove some unnecessary update calls 2017-10-18 18:27:57 +09:00
Dean Herbert
4841d4a937 Fix deletion and use single context for imports and deletions for now 2017-10-18 18:27:17 +09:00
Dean Herbert
cf5290fead Remove unnecessary locking; operations are now thread-safe 2017-10-18 13:48:15 +09:00
Dean Herbert
4193004fbf Improve performance of imports by keeping a context hot 2017-10-17 20:29:47 +09:00
Dean Herbert
e4a066dc5f Run cleanup tasks only on startup via manual calls 2017-10-17 19:58:33 +09:00
Dean Herbert
b9d0fb96ed Fix cascade deletions 2017-10-17 18:26:28 +09:00
Dean Herbert
7a18d373ec Improve performance of beatmap imports (still needs revision) 2017-10-17 17:08:42 +09:00
Dean Herbert
cf3881b18c Fix not being able to restore hidden beatmaps via context menu 2017-10-17 15:50:52 +09:00
Dean Herbert
e487b6f82a Standardise context retrieval 2017-10-17 15:50:42 +09:00
Dean Herbert
cd41862e3b Add back transaction support for beatmap importing 2017-10-17 15:00:27 +09:00
Dean Herbert
66894d11ea Connection -> context 2017-10-17 12:46:29 +09:00
Dean Herbert
c92e0e2dc1 Fix username display on beatmap panels 2017-10-17 11:24:59 +09:00
Dean Herbert
31dc5c97f2 Fix intro and duplicate inserts 2017-10-17 11:22:42 +09:00
Dean Herbert
81476ebe75 Correct and simplify BeatmapStore and BeatmapManager 2017-10-17 10:17:21 +09:00
Dean Herbert
e378d0685d Remove weird additions 2017-10-16 20:37:10 +09:00
Dean Herbert
acc299c7b9 Correct and simplify RulesetStore 2017-10-16 17:02:31 +09:00
Dean Herbert
7049a73490 Remove ValidTypes from databased stored; explicitly expose query methods instead 2017-10-16 14:47:33 +09:00
Dean Herbert
0a6dcdd405 Fix remaining warnings 2017-10-16 13:09:10 +09:00
Dean Herbert
8a0b184dd6 Revert "Return back DatabaseBackedStore's query and populate functions"
This reverts commit 7cf5d63cd3.
2017-10-16 12:59:59 +09:00
Dean Herbert
04e5f764a3 Revert "Fix removal of FileInfo, BeatmapMetadata, BeatmapDifficulty objects" 2017-10-16 12:59:59 +09:00
TocoToucan
56e8c7303c Revert "Fix inconsistent lock usage in BeatmapManager"
This reverts commit 4a064da30f.
2017-10-16 12:59:59 +09:00
TocoToucan
4a064da30f Fix inconsistent lock usage in BeatmapManager 2017-10-15 21:56:33 +03:00
TocoToucan
db2750592d Fix removal of FileInfo, BeatmapMetadata, BeatmapDifficulty objects 2017-10-15 14:01:35 +03:00
TocoToucan
7cf5d63cd3 Return back DatabaseBackedStore's query and populate functions 2017-10-15 00:40:41 +03:00
smoogipoo
9924f518b7 Merge remote-tracking branch 'origin/master' into UselessToucan/EfCore
# Conflicts:
#	osu-framework
#	osu.Game/Beatmaps/BeatmapMetadata.cs
#	osu.Game/osu.Game.csproj
#	osu.Game/packages.config
2017-10-14 16:36:37 +09:00
smoogipoo
b178be21d1 Let's not rename columns yet 2017-10-14 14:30:58 +09:00
smoogipoo
b83d7cd4df Merge remote-tracking branch 'origin/master' into UselessToucan/EfCore
# Conflicts:
#	osu-framework
#	osu.Game.Tests/Beatmaps/IO/ImportBeatmapTest.cs
#	osu.Game/Beatmaps/BeatmapInfo.cs
#	osu.Game/Online/API/Requests/GetBeatmapSetsResponse.cs
2017-10-14 12:38:59 +09:00
Dean Herbert
ed152c08ac Fix regressions 2017-10-14 12:27:32 +09:00
Dean Herbert
cd722e4abb Fix beatmap author being stored in two different places 2017-10-14 11:39:55 +09:00
Dean Herbert
520b806305 Merge remote-tracking branch 'upstream/master' into ranks-section 2017-10-13 18:49:05 +09:00
Dean Herbert
8a5e25ce4b Simplify waveform construction 2017-10-12 19:19:42 +09:00
smoogipoo
df6409308a Merge remote-tracking branch 'origin/master' into editor-waveform-timeline
# Conflicts:
#	osu-framework
2017-10-12 15:32:11 +09:00
Huo Yaoyuan
cf7f3411fc Ignore filename case in BeatmapManager. Fixes #1295. 2017-10-11 15:01:02 +08:00
TocoToucan
4653470779 Fix RulesetStore preparation 2017-10-10 22:29:16 +03:00
TocoToucan
8b01f8671f Merge from ppy/master 2017-10-10 21:07:36 +03:00
smoogipoo
b8d2a04fe1 Only split beatmap lines twice 2017-10-10 19:24:24 +09:00
smoogipoo
ad344eb719 Use IsNullOrWhiteSpace instead of trimming 2017-10-10 19:21:38 +09:00
TocoToucan
cbae19b604 Fix BeatmapMetadata removing 2017-10-10 00:17:12 +03:00
TocoToucan
ef417c6388 Small DB-related refactoring 2017-10-09 23:30:32 +03:00
TocoToucan
41a90c8b11 Add missing eager loading 2017-10-09 23:28:28 +03:00
smoogipoo
29c2a29798 Fix trimming too early in OsuLegacyDecoder crashing storyboards 2017-10-09 18:47:12 +09:00
smoogipoo
b97b575b27 Merge remote-tracking branch 'origin/master' into editor-waveform
# Conflicts:
#	osu-framework
2017-10-09 17:20:24 +09:00
smoogipoo
19b38983df Update in-line with framework 2017-10-09 17:18:11 +09:00