Commit Graph

470 Commits

Author SHA1 Message Date
a029e418cf Use internal instead of protected internal 2022-02-18 17:06:04 +09:00
cf1dd1ebd3 Disallow registering a null RulesetStore 2022-02-18 16:52:34 +09:00
420e2c538f Automatically use an AssemblyRulesetStore if no custom store is registered 2022-02-18 16:52:34 +09:00
5477af08c5 Register an AssemblyRulesetStore in tests which don't use OsuGameBase 2022-02-16 17:21:57 +09:00
13086541f0 Add static RulesetStore to LegacyBeatmapDecoder 2022-02-16 17:13:54 +09:00
142a67e163 Fix approach rate not being transferred from OD on older beatmaps 2022-01-28 18:53:28 +09:00
1b8136e3e0 Change some BeatmapInfo defaults in a backwards compatible manner 2022-01-27 21:49:37 +01:00
5288eedd31 Update all usages of RulesetID and Ruleset.ID to use Ruleset.OnlineID 2022-01-27 15:38:03 +09:00
c3758047fd Don't include nested hit objects' DifficultyControLPoints in legacy encoder logic
The editor doesn't currently propagate velocity to nested objects. We're
not yet sure whether it should or not. For now, let's just ignore nested
objects' `DifficultyControlPoints` for simplicity.

Note that this only affects osu! ruleset due to the pre-check on
`isOsuRuleset`.
2022-01-24 19:54:08 +09:00
735414bc49 Replace TimeSignatures enum with struct for storage of arbitrary meter 2022-01-22 20:50:31 +01:00
67bf95bc91 Remove all usage of AuthorString 2022-01-18 23:30:40 +09:00
dcd69e852e Add back settable RulesetID for now 2022-01-12 17:00:16 +09:00
00e3af3366 Update model manager and many related classes to get things compiling again 2022-01-12 17:00:00 +09:00
213d89b479 Update null fallback cases involving OnlineID 2022-01-12 16:39:36 +09:00
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