Commit Graph

646 Commits

Author SHA1 Message Date
18ecd8758b Make Perfect auto restart toggleable 2021-08-12 10:12:35 +08:00
4706dcf525 Merge branch 'master' of https://hub.fastgit.org/ppy/osu into auto-restart 2021-08-11 20:18:05 +08:00
fb5ef7d2d2 Remove brackets 2021-08-01 20:59:51 +03:00
a26e7b2680 Limit combo count to minimum 1 when using inversed
Avoids making the mod of no effect.
2021-08-01 20:59:31 +03:00
ce7987dac7 Clarify 0 final combo indicates always muted audio 2021-08-01 20:19:44 +03:00
1e3173bf44 Fix muted dim factor not considering "0 divided by 0" case 2021-08-01 20:19:43 +03:00
f12e66052c Reword outdated doc 2021-08-01 19:22:33 +03:00
ac930b8918 Fix judgement processors provided to mods while not completely loaded 2021-08-01 19:16:30 +03:00
53c901bfa8 Expose DrawableRuleset audio adjustments as non-container 2021-07-31 15:47:54 +09:00
29328bdf7f Use metronome's audio adjustments directly 2021-07-31 15:03:26 +09:00
b01b0d711f Merge branch 'master' into mute-mod-improvements 2021-07-31 14:55:44 +09:00
397c73e786 Add audio adjustment support to Metronome 2021-07-31 02:16:02 +03:00
cd516c4ac7 Fix regressed metronome handling 2021-07-30 19:38:43 +09:00
d5e68f53b5 Change some defaults and always tween 2021-07-30 17:38:04 +09:00
bdc5eb6d3d Add ability to also mute hitsounds 2021-07-30 17:25:01 +09:00
3cfd235b7f Add tween when missing to avoid sudden volume difference 2021-07-30 16:10:20 +09:00
b399ddaea0 Add inverse setting 2021-07-30 16:10:10 +09:00
a2f3edbfc0 Fade track volume out as combo increases 2021-07-30 15:49:11 +09:00
888e8f1c80 Use shared metronome class 2021-07-29 21:18:07 +08:00
7251c28c4a Merge branch 'master' into mod-muted 2021-07-29 21:14:03 +08:00
935984d200 Rename MetronomeBeatContainer to Metronome 2021-07-29 15:17:21 +08:00
18e760ee91 Extract metronome from OsuModTarget 2021-07-29 14:52:18 +08:00
0620cd130e Change mod description 2021-07-29 14:41:47 +08:00
58bbe9db7e Added muted mod 2021-07-28 18:21:08 +08:00
49160e4482 review modifications: maniamodmirror inheritance, reflection utilities, vertical flip option 2021-07-26 10:46:41 -04:00
2e1cd4a389 remove accidental tab characters 2021-07-25 21:26:21 -04:00
eb585a6120 Add "Mirror" mod 2021-07-25 20:40:50 -04:00
3c028ce05c Add IDeepCloneable interface and update existing CreateCopy methods to use it 2021-07-19 12:54:17 +09:00
ed29646291 Remove IApplicableToDifficulty.ReadFromDifficulty
This was added specifically for `ModDifficultyAdjust`, but turned out to
be more of a headache than we expected. We have since removed usage and
would hope that this is not required by any other mods.

Opting for complete removal rather than obsoletion, as we discovered
this was already broken in multiple cases, with fixes being quite
logically complex.

If you happen to be a ruleset developer relying on this, open an issue
and we'll talk you through a better approach (or check what
`ModDifficultyAdjust` is doing now for an example).
2021-07-14 12:32:16 +09:00
cce4a4dc31 Fix incorrect value copy order in BindTo() 2021-07-12 22:27:36 +02:00
4b393209ec Implement UnbindFrom() 2021-07-12 17:33:29 +09:00
242982730f Fix incorrect DifficultyBindable binding implementation 2021-07-12 17:09:09 +09:00
a6258d705e Make CurrentNumber internal 2021-07-12 11:26:30 +09:00
32b4f5fbd6 Do not store direct references to original bindable
`DifficultyAdjustSettingsControl` and its inner `SliderControl` were
holding different references to `DifficultyBindable`s from the
difficulty adjust mod, therefore leading to bindings being lost to the
framework-side automatic unbind logic if the mod was toggled off and
back on in rapid succession.

Resolve by adding a shadowed implementation of `GetBoundCopy()` and
using it to isolate the controls from the mod bindable.
2021-07-11 15:28:13 +02:00
741062a6da Simplify bindable update methods 2021-07-09 13:58:44 +09:00
e0277763d0 Refactor DifficultyAdjustSettingsControl to help with readability 2021-07-09 13:50:07 +09:00
f9cd7f10d8 Allow null values for ReadCurrentFromDifficulty
As long as this isn't a constructor parameter it feels best to
gracefully handle omission. Realistically having it in the ctor is the
best move, but it doesn't feel great in line with the other parameters
passed in via object initalisers.
2021-07-09 13:26:01 +09:00
90326f8864 Standardise variables 2021-07-09 13:24:26 +09:00
b7803b889e Rename control class to be more descriptive 2021-07-08 20:37:38 +09:00
ba939c0b65 Simplify serialisation edge case by moving to Value override 2021-07-08 17:49:00 +09:00
52ea62e3b2 Add more comments and xmldoc 2021-07-08 17:49:00 +09:00
88b00123f6 Use existing reflection methods to avoid manual binding of ExtendedLimits 2021-07-08 17:49:00 +09:00
bd7c334588 Avoid the need for per-settings control classes 2021-07-08 17:49:00 +09:00
a6e94dd491 Add back extended limits support 2021-07-08 17:49:00 +09:00
c4313d6e96 Initial implementation of new flow (only working for approach rate) 2021-07-08 17:48:08 +09:00
0e4f4a6fde Initial storage changes 2021-07-08 14:28:13 +09:00
e1c646b9b2 Remove redundant arguments 2021-07-05 23:52:39 +08:00
6a0c5b54c3 Fix obsolete message in Mod.Ranked 2021-07-02 15:55:25 +08:00
0396a03bbc Rename Mod.Ranked back to avoid breaking ruleset API 2021-07-02 12:50:58 +09:00
0cceef8da5 Moved the string to int? conversion logic into SettingsNumberBox 2021-06-28 11:00:07 +08:00