Commit Graph

3546 Commits

Author SHA1 Message Date
smoogipoo f9d5abff8a Update with keybinding changes 2021-09-16 18:26:12 +09:00
Dean Herbert a1d325cb22 Mark key and value non-nullable (at realm end) and simplify `Value` logic 2021-09-15 17:16:05 +09:00
Dean Herbert a150fb2996 Add nullability directive and make variant non-nullable 2021-09-15 17:16:05 +09:00
Dean Herbert dcfe9c67e3 Make ruleset id non-nullable 2021-09-15 17:12:04 +09:00
Dean Herbert 80ecf81be3 Rename all databased setting classes to be specific to rulesets for now 2021-09-15 17:12:04 +09:00
Dean Herbert 520e550764 Bring back `SettingsStore` to avoid changing ruleset API for now
Also fixes some remaining test failures due to locally constructed
rulesets that are not being tracked by the game.
2021-09-15 17:12:02 +09:00
Dean Herbert c36a67d06e Fix some tests failing due to using a locally constructed ruleset 2021-09-15 17:04:38 +09:00
Dean Herbert a2f1752344 Make settings works with current caching structure
Will likely pull out that `RulesetConfigCache` next, but this is an
"everything works" state.
2021-09-15 16:31:13 +09:00
Dean Herbert 187c557ea8 Begin migrating settings implementation across to realm 2021-09-15 16:22:14 +09:00
Dean Herbert 464797fecf Allow `ModIcon` to be constructed using an `IMod` 2021-09-10 12:43:12 +09:00
Dean Herbert c3531e1361 Move more specification from `Mod` to `IMod` 2021-09-10 12:42:53 +09:00
Dean Herbert 719392de39 Change `CreateInstance` to use `Activator.CreateInstance` instead of clone 2021-09-10 12:05:10 +09:00
Dean Herbert cf633973a9 Refactor exposed mod retrieval methods for better safety 2021-09-10 11:09:13 +09:00
Dean Herbert 2edb851008 Add ability to lookup mod from a type specification 2021-09-09 16:50:59 +09:00
Dean Herbert 4d0530ca9d Add new methods to ruleset for quicker mod lookups 2021-09-09 16:46:14 +09:00
Dean Herbert 25420af078 Rename method to drop redundant ruleset suffix 2021-09-05 13:34:23 +09:00
Bartłomiej Dach ce1912781e
Add extension point for ruleset-specific beatmap setup sections 2021-09-02 23:29:14 +02:00
Dean Herbert cdd0262ca1
Merge pull request #14598 from smoogipoo/adjust-classic-scoring
Make classic scoring a constant multiple of standardised scoring
2021-09-02 19:18:03 +09:00
Dan Balasescu 6c649b7bbe
Merge branch 'master' into no-more-sample-control-points-info 2021-09-02 18:09:05 +09:00
smoogipoo e2f7aaeb71 Fix 0 score with bonus-only maps 2021-09-02 17:00:13 +09:00
Dean Herbert b907c2f4f6 Fix osu! judgements getting scaled twice over different durations 2021-09-02 16:31:43 +09:00
smoogipoo 31433c4b89 Apply @spaceman_atlas' quadratic factor 2021-09-02 16:26:17 +09:00
smoogipoo bd0f385cdb Make classic scoring a constant multiple of standardised scoring 2021-09-01 14:53:11 +09:00
Dean Herbert d988aa1680 Actually serialise `SampleControlPoint`s along with `HitObject`s 2021-08-31 15:14:03 +09:00
Dean Herbert ce0d7cce2d Merge branch 'remove-ijsonserializable' into no-more-sample-control-points-info 2021-08-31 14:40:54 +09:00
Dean Herbert c25ab6835c Remove IJsonSerializable interface
Was pretty pointless and made it hard to use the custom serialisation
terms arbitrarily in tests.
2021-08-31 14:39:20 +09:00
Dean Herbert 4da2dca339 Apply the default `SampleControlPoint` if not externally provided
This is mostly to handle tests for now, as generally this should be
provided by an external source in all other cases.
2021-08-30 17:21:07 +09:00
Dean Herbert ccacf56dd8 Move to legacy namespace 2021-08-30 17:14:53 +09:00
Dean Herbert 7257aae7f2 Move samples to `LegacyControlPointInfo` 2021-08-30 17:14:53 +09:00
Dean Herbert 4dd60e3299 Merge branch 'master' into taiko-drum-refacor 2021-08-30 14:12:52 +09:00
Dan Balasescu a28bc9f6b2
Merge branch 'master' into path-control-point-bindable-removal 2021-08-27 09:37:37 +09:00
Bartłomiej Dach 2ef2af17eb
Merge branch 'master' into alternative-difficulty-bindable 2021-08-26 23:07:52 +02:00
Dean Herbert 15aa0458bc Use `PausableSkinnableSound` instead 2021-08-26 17:15:36 +09:00
Dean Herbert ec85d7f356 Remove unused helper method 2021-08-26 17:15:23 +09:00
Dean Herbert 982c4eff14 Merge branch 'master' into taiko-drum-refacor 2021-08-26 17:13:14 +09:00
Dean Herbert e32933eb54 Avoid `Enum.GetValues` in each score population pass 2021-08-26 13:37:53 +09:00
Dean Herbert 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
Dean Herbert fd78d0440b Update missed conditional 2021-08-25 17:00:32 +09:00
Dean Herbert ccfff50c6f Apply fixes in line with issues found during testing
I was trying to be too smart with caching, but if the `Play` method was
not called often enough it would have a recent reference. Unfortunately
this requires a separate query to `Entries`, but is also a special case
(no future hitobjects).

This also removes the time-based checks (result status alone should be
all we care about).
2021-08-25 16:56:44 +09:00
Dean Herbert ef2b5e1c51 Tidy up variable names and unused resolved properties 2021-08-25 16:56:44 +09:00
Dean Herbert a1936b141b Refactor base class to allow correct usage in taiko drum 2021-08-25 16:56:44 +09:00
Dean Herbert 681215e5b5 Rewrite object lookup to use previous entry regardless
This changes the fallback logic to always prefer the previous resolved
lifetime entry rather than fallback to the first entry ever. I think
this is more correct in all cases.

Also rewrites the inline comments to hopefully be easier to parse.
2021-08-25 16:56:44 +09:00
Dean Herbert 4a294d4de4 Optimise fallback logic to reduce lookups to bare minimum 2021-08-25 16:56:44 +09:00
Dean Herbert 6aa894e55e Split out separate component 2021-08-25 16:56:44 +09:00
Salman Ahmed 84637b59ef Define `DifficultyBindableWithCurrent` and use in `SliderControl` 2021-08-25 07:40:41 +03:00
smoogipoo 956c1cc216 Merge branch 'master' into activity-on-multiplayer-screens 2021-08-24 12:33:34 +09:00
Salman Ahmed 956112eb10 Reword comment and remove brackets 2021-08-22 12:40:41 +03:00
Michael Malloy 9cd0a182f6
Add null check for Android ruleset loading 2021-08-22 00:38:48 -05:00
Salman Ahmed 072560ba3e Remove leftover unused using 2021-08-19 07:17:43 +03:00
Salman Ahmed 102320f8ae Merge branch 'master' into mod-settings-difficulty-cache 2021-08-19 06:35:13 +03:00