c04b09520d
Replace spinner approach circle proxying logic with hooking up to OnSkinChange
in mod
2021-06-19 20:06:28 +03:00
843c8bd7a4
Move spinner approach circle to its own SkinnableDrawable
2021-06-18 20:33:50 +03:00
c9458fd9ce
Hide spinner approach circle in "Hidden" mod
2021-06-18 06:23:54 +03:00
8336428574
Add regression test for spinner sample actually transforming its frequency
2021-05-24 15:10:33 +09:00
9504fe3f3c
Inline add of spm calculation (no need for it to be a separate call)
2021-03-30 13:43:05 +09:00
0bf84e473d
Refactor spinner SPM counter for skinning purposes
2021-03-30 04:19:23 +03:00
c715b9b89e
Merge branch 'master' into legacy-spinner-bonus
2021-03-25 18:09:25 +09:00
098005393e
Remove unnecessary null checks and debug code
2021-03-23 10:38:37 +09:00
c4d08463ad
Fix spinners playing looping sound too long in the editor
...
The `OnComplete` event was never being run due to the transform playing
out longer than the spinner's lifetime. I've matched the durations, but
also moved the `Stop()` call to what I deem a safer place to run it (I
did notice that without this it would still potentially never fire).
Note that this is more noticeable in the editor because of lifetime
extension. In gameplay, the returning of a spinner to the pool will
clean things up (but in the editor that can take longer, depending on
timeline zoom level).
Another thing worth mentioning is that the fade doesn't actually work.
This is due to https://github.com/ppy/osu-framework/pull/4212 .
Closes #12119 .
2021-03-22 16:04:51 +09:00
98f6e16113
Move default spinner bonus counter to new DefaultSpinner
2021-03-13 05:59:42 +03:00
8fdab5a7de
Revert legacy spinner presence changes and bonus counter component
...
No longer necessary, after inlining legacy coordinates logic to `LegacySpinner` and limiting precisely-positioned legacy components there
2021-03-13 05:57:47 +03:00
020a03e01e
Use sensible "score per tick" constant
2021-03-13 05:56:28 +03:00
c4048c9831
Merge branch 'master' into legacy-spinner-bonus
2021-03-13 05:54:34 +03:00
1591d593e2
Move spin start time to inside result and switch to standard state handling
2021-03-11 12:58:15 +09:00
4e8bcc9265
Fix SPM counter decreasing after spinner has already been completed
2021-03-09 16:54:46 +09:00
5a6864eb78
Fix SPM counter immediately disappearing on completion of spinners
2021-03-09 16:54:46 +09:00
3f1d36ee6b
Add default spinner bonus counter piece
2021-03-06 20:27:56 +03:00
c441e993ff
Separate "gained bonus" to a read-only bindable
2021-03-06 20:27:56 +03:00
d3f0c0730d
Merge branch 'master' into non-concurrent-sample-playback
2021-02-12 17:22:15 +09:00
d521bfc251
Don't directly update HandleUserInput (as it is used by mods)
2021-01-30 02:35:11 +09:00
5a306dfc2b
Fix unused using
2021-01-29 20:22:25 +09:00
f25809d35f
Ensure spinners only handle input during their hittable time
...
While this was already being enforced inside of `CheckForResult`, the
internal tracking values of rotation were still being incremented as
long as the `DrawableSpinner` was present. This resulted in incorrect
SPM values being displayed if a user was to start spinning before the
object's `StartTime`.
Kind of annoying to write a test for (there's no setup for spinners yet)
but am willing to do so if that is deemed necessary.
Closes https://github.com/ppy/osu/issues/11600 .
2021-01-29 19:55:55 +09:00
de9d075f94
Initial sample + samplechannel rework
2021-01-19 17:11:40 +09:00
14b3323682
Use OnComplete instead of Finally to avoid potentially stopping on aborted transforms
2021-01-15 17:18:15 +09:00
311f8b7017
Only restart spinning sample if it was not already playing
2021-01-15 17:17:51 +09:00
767c76921f
Adjust transition time of spinner sound
2021-01-15 17:17:28 +09:00
245be2c5ed
Adjust namespace
2020-12-04 20:21:53 +09:00
2bb7484608
Merge branch 'immutable-hit-samples' into hit-sample-pooling
2020-12-01 16:05:28 +09:00
5760e1c1fc
Make HitSampleInfo immutable
2020-12-01 15:37:51 +09:00
f589da4317
Fix compilation error
2020-11-30 19:24:38 +09:00
688a04c2ff
Make slider/spinner use pooled samples
2020-11-19 20:40:30 +09:00
04805b78c3
Tighten osu! ruleset lifetime expiry for past hitobjects
2020-11-17 23:20:19 +09:00
727a886fb3
Move spinner completion info into judgement
2020-11-14 23:08:47 +01:00
af392e3995
Move rate adjusted spinner rotation into judgement result
2020-11-14 21:10:12 +01:00
3f0a127196
Fix slider/spinner samples not being disposed
2020-11-12 18:51:58 +09:00
3f78d81386
Add nested osu! hitobject pooling
2020-11-12 15:59:48 +09:00
bf72961959
Add top-level osu! hitobject pooling
2020-11-12 15:39:02 +09:00
e190afbfed
Remove initial value changed invocations
2020-11-07 00:00:25 +09:00
33b629a87a
Make top-level osu! objects use new methods
2020-11-06 23:09:23 +09:00
0cadb31947
Merge branch 'master' into drawable-hit-object-hit-state-fix
2020-11-05 17:07:52 +09:00
400fcedf0f
Remove stored hitobject references from skinnable components
2020-11-05 14:40:48 +09:00
9a7fcadabc
Use BDL for top-level osu! DHOs
2020-11-05 13:51:46 +09:00
a3dc1d5730
Update existing implementations
2020-11-04 17:14:23 +09:00
692ca87bec
Merge branch 'master' into fix-spinner-rewind-crash
2020-10-05 15:32:52 +09:00
26eff0120d
Apply same fix for miss-triggering case
...
See 5888ecd
- the same fix is applied here, but in the miss case.
2020-10-03 21:11:34 +02:00
5888ecdeb1
Fix spinner crashing on rewind
2020-10-04 01:08:24 +09:00
1f0620ffd4
Replace assignment references to HitResult.Miss with Judgement.MinResult
2020-10-02 23:31:24 +02:00
3a81602d0c
Merge pull request #10286 from peppy/fix-hitobject-sample-stuck-on-future-seek
...
Fix HitObject samples getting stuck in a playing state on seeking far into the future
2020-10-01 18:08:17 +09:00
7890319802
Merge branch 'master' into adjust-hit-result-types
2020-10-01 16:19:07 +09:00
4b70fe8585
Merge branch 'fix-storyboard-sample-pausing' into fix-hitobject-sample-stuck-on-future-seek
2020-09-30 22:46:09 +09:00