Commit Graph

3806 Commits

Author SHA1 Message Date
7a69de0060 Split out realm portion of RulesetStore 2022-02-16 17:13:31 +09:00
84e82ef5e4 Add XMLDocs to difficulty attribute properties 2022-02-16 14:09:19 +09:00
b9d9fc56af Move files to UI namespace 2022-02-14 17:51:39 +09:00
92e22c57a7 Introduce private APIRuleset for online ID equality comparison 2022-02-11 08:27:01 +03:00
26839f6ad8 Consider OnlineIDs during ruleset equality if available
Required for `APIBeatmap`s, which provide `Ruleset` instances with `OnlineID` available only.

Also consistent with the comparer implementation.
2022-02-11 04:26:58 +03:00
1b729e891d Update pointless CompareTo implementation once again 2022-02-11 04:17:30 +03:00
9574bc1382 Allow IRulesetInfos of same type to be comparable
At first I was planning on making `CompareTo` implemented at
`IRulesetInfo` itself and shared across classes, but turns out it only
implements it explicitly and not allow direct `IRulesetInfo.Equals`
calls.

It messed with my head enough that I decided to just let each class have
its own implementation and only allow same type.
2022-02-11 04:03:23 +03:00
ebd105422f Remove unused using 2022-02-10 14:22:08 +09:00
f7fb7825cc Simplify disposal 2022-02-10 14:21:51 +09:00
a3896a8ebd Remove allowance of null dependency 2022-02-10 14:21:50 +09:00
45b3f472ab Merge branch 'master' into spectator-state-rework 2022-02-08 19:51:50 +09:00
56c90a21ce Add a todo 2022-02-06 11:22:12 +08:00
f78c853bc7 Calculate max combo locally in PerformanceBreakdownCalculator 2022-02-06 10:59:53 +08:00
0b1fef38af Use the playable beatmap provided in CreateStatisticsForScore 2022-02-05 21:36:34 +08:00
f29301cd1e Merge branch 'master' into display-performance-attributes 2022-02-05 16:59:46 +08:00
483977d5c8 Merge branch 'master' into spectator-state-rework 2022-02-03 19:59:07 +09:00
82f9ad63f5 Fix flashlight size multiplier printing with too many decimal digits 2022-02-02 20:41:25 +01:00
074a691635 Set keyboard step to 0.1 for difficulty adjust sliders 2022-02-02 17:43:08 +03:00
6d3bc005ea Merge branch 'master' into spectator-state-rework 2022-02-02 18:57:04 +09:00
0c5da9370a Fix rulesets potentially being marked Available even when methods are missing
Came up when running the game after the recent breaking changes
(https://github.com/ppy/osu/pull/16722), where two template rulesets I
had loaded were erroring on startup but still being marked as available,
allowing them to crash the game on attempting to initiate relpay logic.

These cases are already handled for first-time ruleset loading via the
`GetTypes()` enumeration in `RulesetStore.addRuleset`, but when
consistency checking already present rulesets the only runtime
validation being done was `ruleset.CreateInstance()`, which does not
handle missing types or methods.
2022-02-02 14:52:01 +09:00
b06128ffa5 Rename "Final PP" to "Achieved PP" 2022-02-01 22:26:55 +08:00
41007169f7 Give SpectatorState a user state 2022-02-01 21:51:05 +09:00
0f83f77d2b Add xmldoc for new ResetFromReplayFrame method 2022-02-01 16:52:53 +09:00
0641264a11 Merge branch 'master' into spectator-consistency-frames 2022-02-01 14:35:30 +09:00
c50577e25f Apply suggestion from review
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-02-01 10:48:41 +09:00
4fb565e15f Reset ScoreProcessor from statistics replay frames 2022-01-31 21:32:56 +09:00
39e1d65976 Make ScoreProcessor write all judgement types 2022-01-31 18:53:47 +09:00
0458d408bb Add replay statistics frames to FramedReplayInputHandler 2022-01-31 18:53:47 +09:00
4727aeda01 Give last bundled replay frame the frame header 2022-01-31 18:53:47 +09:00
0e764538e0 Retrieve KeyBindingContainer via DI rather than traversal lookup 2022-01-31 17:05:04 +09:00
a84fd2e20c Merge branch 'master' into master 2022-01-31 16:30:08 +09:00
2d1a8a9d49 Use a more correct CompareTo implementation for ruleset ordering 2022-01-27 21:58:04 +09:00
33b7bdcf82 Update pointless CompareTo implementation 2022-01-27 21:49:33 +09:00
7af23328a4 Merge branch 'master' into ruleset-ordering-fix 2022-01-27 21:46:03 +09:00
a5d422e82c Merge branch 'master' into ruleset-id-fixes 2022-01-27 17:07:18 +09:00
54d18bd7ac Merge pull request #16642 from peppy/ruleset-private-info-set
Make `Ruleset.RulesetInfo` get only
2022-01-27 16:41:52 +09:00
5637fd64d6 Perform ordering using IComparable instead 2022-01-27 15:59:20 +09:00
5288eedd31 Update all usages of RulesetID and Ruleset.ID to use Ruleset.OnlineID 2022-01-27 15:38:03 +09:00
714177cce1 Remove pointless constructor in RulesetInfo 2022-01-27 15:37:27 +09:00
e67b1fe0ec Make Ruleset.RulesetInfo get only 2022-01-27 15:36:35 +09:00
f30d63107a Add SortID to RulesetInfo to allow stable ordering of rulesets for display 2022-01-27 15:35:16 +09:00
0dd2de3e1e Merge pull request #16628 from peppy/fix-realm-ruleset-ordering
Fix custom rulesets being displayed before official ones
2022-01-26 19:19:01 +09:00
57e624d8e7 Fix custom rulesets being displayed before official ones 2022-01-26 18:46:32 +09:00
f2d48d088d Fix realm migration failures with presence of databased EF rulesets that don't exist on disk 2022-01-26 17:57:03 +09:00
bfa521bdd2 Merge pull request #16593 from peppy/realm-clean-up
Clean up realm naming
2022-01-25 14:33:53 +09:00
d7342880f5 Update remaining cases of clashes with realm.Write and realm.RegisterForNotifications 2022-01-25 13:09:48 +09:00
8c3fbb6eb4 Merge branch 'master' into Liswiera-FL-changes 2022-01-24 21:32:36 +01:00
a227af75ed Simplify flashlight parameter passing flow 2022-01-24 21:03:02 +01:00
5874475dff Extract DefaultFlashlightSize to base flashlight class 2022-01-24 21:03:02 +01:00
a7c0d507ce Rename flashlight settings to be more accurate 2022-01-24 21:03:02 +01:00