Commit Graph

456 Commits

Author SHA1 Message Date
3e0e01abdb Move bookmark parsing logic into LegacyBeatmapDecoder 2021-11-24 16:29:51 +09:00
692e846acd Rename BeatmapSetInfo.OnlineBeatmapSetID to OnlineID to match interface 2021-11-12 17:52:44 +09:00
6a098a8634 Rename BeatmapInfo.OnlineBeatmapID to OnlineID to match interface 2021-11-12 17:46:24 +09:00
51a353e12d Rename BeatmapInfo.Version to DifficultyName to match underlying interface 2021-11-11 17:20:53 +09:00
ed07ee8c61 Update all existing usages of AuthorString/AuthorId
Unfortunately the getters need to be left in place else EF breaks.
2021-11-04 18:59:37 +09:00
67d9590a79 Fix new inspections 2021-11-04 14:02:09 +09:00
15c770e155 Remove no longer used Section.None 2021-11-02 14:01:41 +09:00
ab28948744 Default legacy decoder to General section, rather than none
This is mainly to reach parity with how stable handles such cases for
skins specifically. It was brought to our attention after finding a skin
with a malformed `\[General]` tag which did not break further parsing of
the file on stable, but did on lazer.

Note that stable defaults to an "unknown" section for beatmaps, but
functionally I can't think of a regression case from changing this to a
"general" default.
2021-11-02 13:59:13 +09:00
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
e92def0ba2 Fix LegacyBeatmapEncoder using incorrect path length value 2021-10-26 17:34:52 +09:00
bc37cb6f43 Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-08 18:41:17 +09:00
b339c149d8 Copy BaseDifficulty to Beatmap<T> and move all write operations across 2021-10-06 15:10:45 +09:00
4c28749d73 Fix incorrect legacy decoder usage 2021-10-01 19:05:08 +09:00
3faafd7200 Rename parameter to repeatCount and add guards 2021-10-01 18:26:29 +09:00
46bafb6252 Merge branch 'master' into no-more-difficulty-control-points-info 2021-09-28 13:53:56 +09:00
80197bae48 Revert not decoding legacy difficulty points on scrolling rulesets for now 2021-09-18 15:32:08 +02:00
76ccdd1340 Collect and sort points from nested objects before extracting 2021-09-18 14:38:38 +02:00
8026968939 Move difficulty -> effect point conversion back to decoder 2021-09-18 14:38:38 +02:00
af7c2b93e6 Add encoding support for SamplesMatchPlaybackRate 2021-09-12 16:47:38 +02:00
cd181452be Add decoding support for SamplesMatchPlaybackRate 2021-09-12 16:45:27 +02:00
943e0d49f7 Handle control point flattening of nested hit objects 2021-09-10 17:29:09 +09:00
3c7a34bdbd Move mania-specific conversion to converter 2021-09-06 21:06:13 +09:00
766d789845 Rename ApproachRate to ScrollSpeed for now (to reduce complexity/confusion) 2021-09-06 21:06:13 +09:00
0e6660da30 Replace todo with permanent comment 2021-09-03 17:11:12 +09:00
d587dc6203 Populate new approach rate where required 2021-09-03 17:11:12 +09:00
a3d9ab1e2e Move approach rate to EffectControlPoint 2021-09-03 16:58:16 +09:00
4eb09ea1a9 Update decoder to also extract DifficultyControlPoints from HitObjects 2021-09-03 16:58:16 +09:00
9fa8bee094 Remove outdated TODO 2021-08-31 14:51:19 +09:00
ce0d7cce2d Merge branch 'remove-ijsonserializable' into no-more-sample-control-points-info 2021-08-31 14:40:54 +09:00
015df282fe Simplify copy operations 2021-08-30 18:32:55 +09:00
d35c4da906 Add new control point to legacy regeneration logic 2021-08-30 17:14:53 +09:00
6ee4a6526c Don't block sample points from still being added to ControlPointInfo 2021-08-30 17:14:53 +09:00
7257aae7f2 Move samples to LegacyControlPointInfo 2021-08-30 17:14:53 +09:00
da7a871afa Update inline comment to point to new variable location
Co-authored-by: PercyDan <50285552+PercyDan54@users.noreply.github.com>
2021-08-30 16:27:24 +09:00
ee49305cad Move taiko legacy speed multiplier to osu.Game project
Allows it to be used in local case in `LegacyBeatmapEncoder`.
2021-08-30 15:13:31 +09:00
6dcd9427ac Remove bindable usage in PathControlPoint
This is quite a breaking change, but I think it is beneficial due to the large amount of usage of this class.

I originally intended just to remove the allocations of the two delegates handling the `Changed` flow internally, but as nothing was really using the bindables for anything more than a general "point has changed" case, this felt like a better direction.
2021-08-26 12:33:53 +09:00
a6c2cbd2e5 Add countdown settings to beatmap info model 2021-08-24 21:55:10 +02:00
d602dc9d90 Enable epilepsy warning setting persistence in encoder 2021-08-22 17:43:20 +02:00
e744629a41 Fix broken obsoletion message 2021-08-16 01:01:56 +02:00
7c88a1c6de Add a way to change custom combo colours via IHasComboColours
`IHasComboColours` was already mutable (via a strange
`AddComboColours()` method) and exposing a straight list is easier to
work with. `IHasCustomColours` is also similarly externally mutable (in
a way which is not easily removable).
2021-08-15 20:06:06 +02:00
7f432665e5 Preserve Y position of hit objects in osu!catch 2021-07-14 14:38:38 +09:00
9b0ce2999f Fix legacy encoder 2021-04-09 15:28:42 +09:00
dd902441b0 Add tests for consecutive perfect-curve segments 2021-04-06 13:32:17 +02:00
d81f270e21 Always encode perfect curves as explicit segments 2021-04-06 13:29:31 +02:00
a2544100d4 Fix floating point error in slider path encoding 2021-04-06 14:10:59 +09:00
d0510222ae Fix legacy beatmap encoding 2021-04-05 19:59:54 +09:00
4f8edcd336 Don't strip comments from metadata during parsin 2021-03-25 13:35:54 +09:00
5b0d75ee56 Only trim trailing spaces to avoid breakage in storyboard parsing 2021-03-18 16:30:30 +09:00
bb3c3f302a Fix skin parser not stripping whitespace before parsing 2021-03-18 15:36:11 +09:00
6d4c1ba2ae Fix a couple of new inspections introduced in Rider EAPs 2021-03-15 13:35:08 +09:00