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
c36a67d06e
Fix some tests failing due to using a locally constructed ruleset
2021-09-15 17:04:38 +09:00
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
187c557ea8
Begin migrating settings implementation across to realm
2021-09-15 16:22:14 +09:00
a7ae3cc03e
Change SampleControlPoint
time to use leniency in bindable changed event too
2021-09-14 16:24:55 +09:00
cd227213e6
Ensure time of HitObject
related ControlPoint
s are kept in sync with the hitobject
2021-09-10 15:59:30 +09:00
714f55b6bc
Clone control points when copying to HitObject
s
2021-09-10 14:36:39 +09:00
464797fecf
Allow ModIcon
to be constructed using an IMod
2021-09-10 12:43:12 +09:00
c3531e1361
Move more specification from Mod
to IMod
2021-09-10 12:42:53 +09:00
719392de39
Change CreateInstance
to use Activator.CreateInstance
instead of clone
2021-09-10 12:05:10 +09:00
cf633973a9
Refactor exposed mod retrieval methods for better safety
2021-09-10 11:09:13 +09:00
2edb851008
Add ability to lookup mod from a type specification
2021-09-09 16:50:59 +09:00
4d0530ca9d
Add new methods to ruleset for quicker mod lookups
2021-09-09 16:46:14 +09:00
693ecdf62a
Refactor some incorrect/outdated terminology
2021-09-06 21:32:43 +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
0500cd578a
Merge branch 'master' into no-more-difficulty-control-points-info
2021-09-06 21:06:12 +09:00
25420af078
Rename method to drop redundant ruleset suffix
2021-09-05 13:34:23 +09:00
6894ed3426
Fix new ordering of retrieval meaning EndTime
is not available in time
2021-09-03 17:11:12 +09:00
74f385bad8
Assign default control points earlier in HitObject
construction
2021-09-03 17:11:12 +09:00
1aff4c2238
Ensure all hitobject level control points are populated before calling virtual
defaults application
2021-09-03 17:11:12 +09:00
d587dc6203
Populate new approach rate where required
2021-09-03 17:11:12 +09:00
d4e5a612ea
Update IPositionalSnapProvider
to take a HitObject
as reference, rather than raw time
...
This allows fetching the correct `DifficultyControlPoint` from the
hitobject. Nothing more.
2021-09-03 17:11:12 +09:00
a3d9ab1e2e
Move approach rate to EffectControlPoint
2021-09-03 16:58:16 +09:00
b41b1e2394
Write out DifficultyControlPoint
s into HitObject
s
2021-09-03 16:58:16 +09:00
ce1912781e
Add extension point for ruleset-specific beatmap setup sections
2021-09-02 23:29:14 +02:00
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
6c649b7bbe
Merge branch 'master' into no-more-sample-control-points-info
2021-09-02 18:09:05 +09:00
e2f7aaeb71
Fix 0 score with bonus-only maps
2021-09-02 17:00:13 +09:00
b907c2f4f6
Fix osu! judgements getting scaled twice over different durations
2021-09-02 16:31:43 +09:00
31433c4b89
Apply @spaceman_atlas' quadratic factor
2021-09-02 16:26:17 +09:00
bd0f385cdb
Make classic scoring a constant multiple of standardised scoring
2021-09-01 14:53:11 +09:00
d988aa1680
Actually serialise SampleControlPoint
s along with HitObject
s
2021-08-31 15:14:03 +09:00
ce0d7cce2d
Merge branch 'remove-ijsonserializable' into no-more-sample-control-points-info
2021-08-31 14:40:54 +09:00
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
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
ccacf56dd8
Move to legacy namespace
2021-08-30 17:14:53 +09:00
7257aae7f2
Move samples to LegacyControlPointInfo
2021-08-30 17:14:53 +09:00
4dd60e3299
Merge branch 'master' into taiko-drum-refacor
2021-08-30 14:12:52 +09:00
a28bc9f6b2
Merge branch 'master' into path-control-point-bindable-removal
2021-08-27 09:37:37 +09:00
2ef2af17eb
Merge branch 'master' into alternative-difficulty-bindable
2021-08-26 23:07:52 +02:00
15aa0458bc
Use PausableSkinnableSound
instead
2021-08-26 17:15:36 +09:00
ec85d7f356
Remove unused helper method
2021-08-26 17:15:23 +09:00
982c4eff14
Merge branch 'master' into taiko-drum-refacor
2021-08-26 17:13:14 +09:00
e32933eb54
Avoid Enum.GetValues
in each score population pass
2021-08-26 13:37:53 +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
fd78d0440b
Update missed conditional
2021-08-25 17:00:32 +09:00
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
ef2b5e1c51
Tidy up variable names and unused resolved properties
2021-08-25 16:56:44 +09:00
a1936b141b
Refactor base class to allow correct usage in taiko drum
2021-08-25 16:56:44 +09:00