1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-21 11:52:55 +08:00
Commit Graph

1102 Commits

Author SHA1 Message Date
smoogipoo
8efa381d3a Actually use whistle sample for sliderwhistle 2021-04-08 23:13:16 +09:00
smoogipoo
7d291ed7d7 Don't serialise OriginalSamples 2021-04-08 20:57:50 +09:00
smoogipoo
7713c8a45f Add support for sliderwhistle 2021-04-08 20:20:09 +09:00
smoogipoo
9c3d15171c Reword xmldoc slightly 2021-04-02 18:00:28 +09:00
Amber
5ac36a2462 Switch AlwaysPlaySample to SamplePlaysOnlyOnHit in DrawableSliderTail for conformity 2021-04-02 03:56:23 -05:00
Amber
5063cd957f Force hit sample to play when Classic mod is enabled 2021-04-02 02:54:35 -05:00
Dean Herbert
9504fe3f3c Inline add of spm calculation (no need for it to be a separate call) 2021-03-30 13:43:05 +09:00
Salman Ahmed
0bf84e473d Refactor spinner SPM counter for skinning purposes 2021-03-30 04:19:23 +03:00
Dean Herbert
c715b9b89e Merge branch 'master' into legacy-spinner-bonus 2021-03-25 18:09:25 +09:00
Dean Herbert
64e85ba995 Always fade out approach circles at a HitObject's start time to better match stable 2021-03-23 19:19:07 +09:00
Dean Herbert
098005393e Remove unnecessary null checks and debug code 2021-03-23 10:38:37 +09:00
Dean Herbert
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
Salman Ahmed
98f6e16113 Move default spinner bonus counter to new DefaultSpinner 2021-03-13 05:59:42 +03:00
Salman Ahmed
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
Salman Ahmed
020a03e01e Use sensible "score per tick" constant 2021-03-13 05:56:28 +03:00
Salman Ahmed
c4048c9831 Merge branch 'master' into legacy-spinner-bonus 2021-03-13 05:54:34 +03:00
Dean Herbert
1591d593e2 Move spin start time to inside result and switch to standard state handling 2021-03-11 12:58:15 +09:00
Dean Herbert
4e8bcc9265 Fix SPM counter decreasing after spinner has already been completed 2021-03-09 16:54:46 +09:00
Dean Herbert
5a6864eb78 Fix SPM counter immediately disappearing on completion of spinners 2021-03-09 16:54:46 +09:00
Salman Ahmed
3f1d36ee6b Add default spinner bonus counter piece 2021-03-06 20:27:56 +03:00
Salman Ahmed
c441e993ff Separate "gained bonus" to a read-only bindable 2021-03-06 20:27:56 +03:00
smoogipoo
d3f0c0730d Merge branch 'master' into non-concurrent-sample-playback 2021-02-12 17:22:15 +09:00
Dan Balasescu
cb4d119f23
Merge pull request #11740 from peppy/editor-fix-slider-samples-new-placement
Fix newly placed sliders in the editor not playing hitsounds
2021-02-12 13:31:00 +09:00
Dean Herbert
db79080bc4 Fix GetNodeSamples potentially returning a live reference and overwriting existing samples 2021-02-11 17:14:49 +09:00
Dean Herbert
4710a12774
Merge branch 'master' into classic-mode-flags 2021-02-11 16:21:55 +09:00
smoogipoo
5d1d6ec1cb Fix inverted calculation 2021-02-10 22:09:24 +09:00
smoogipoo
20a6405fd2 Add explanatory comments + const 2021-02-10 22:06:19 +09:00
smoogipoo
bd2486e5a0 Fix grammatical error in comment 2021-02-10 21:27:12 +09:00
smoogipoo
1d425b8322 Simplify case 2021-02-10 21:25:31 +09:00
smoogipoo
4a391ce03d Fix div-by-0 when 0 ticks are hit 2021-02-10 21:24:41 +09:00
smoogipoo
be9b07a4cf Merge branch 'master' into difficulty-adjustment-extension 2021-02-10 20:42:08 +09:00
smoogipoo
0dcdad9839 Adjust comment for DrawableSliderHead 2021-02-10 19:04:23 +09:00
smoogipoo
a16f4cee3a Adjust DrawableSlider comment 2021-02-10 18:52:39 +09:00
smoogipoo
2fcc4213e1 Rename IgnoreJudgement -> OnlyJudgeNestedObjects 2021-02-10 18:46:26 +09:00
smoogipoo
cf06684ad1 Judge heads as slider ticks instead 2021-02-10 18:38:31 +09:00
smoogipoo
d955200e07 Prevent invalid hit results for ignored slider heads 2021-02-08 11:10:14 +09:00
smoogipoo
a5855f5d28 Move follow circle tracking to DrawableSliderHead 2021-02-05 17:33:48 +09:00
smoogipoo
3aa3692ed4 Disable snaking out when tracking is disabled 2021-02-05 15:56:13 +09:00
smoogipoo
2f22dbe06b Make sliders display judgements when not ignored 2021-02-03 22:42:50 +09:00
smoogipoo
03b7817887 Add flags to return to classic slider scoring 2021-02-03 22:12:20 +09:00
smoogipoo
623b47f9af Add flag to toggle follow circle tracking for slider heads 2021-02-03 21:55:19 +09:00
Dean Herbert
d521bfc251 Don't directly update HandleUserInput (as it is used by mods) 2021-01-30 02:35:11 +09:00
Dean Herbert
5a306dfc2b Fix unused using 2021-01-29 20:22:25 +09:00
Dean Herbert
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
smoogipoo
de9d075f94 Initial sample + samplechannel rework 2021-01-19 17:11:40 +09:00
Dean Herbert
14b3323682 Use OnComplete instead of Finally to avoid potentially stopping on aborted transforms 2021-01-15 17:18:15 +09:00
Dean Herbert
311f8b7017 Only restart spinning sample if it was not already playing 2021-01-15 17:17:51 +09:00
Dean Herbert
767c76921f Adjust transition time of spinner sound 2021-01-15 17:17:28 +09:00
smoogipoo
47a93d8614 Adjust osu! hitobject fade-ins to support AR>10 2020-12-10 00:37:19 +09:00
ekrctb
626956febd Move some files from Drawables to Skinning.Default namespace 2020-12-04 20:25:12 +09:00
ekrctb
245be2c5ed Adjust namespace 2020-12-04 20:21:53 +09:00
ekrctb
a12b049154 Move piece files in Osu ruleset 2020-12-04 20:11:35 +09:00
Dean Herbert
5db15a6b26
Merge branch 'master' into fix-hidden-mod-crash 2020-12-04 12:50:02 +09:00
Dean Herbert
5ded4b9faa
Merge branch 'master' into dho-remove-onparentreceived 2020-12-04 11:04:56 +09:00
smoogipoo
09af4bbd57 Merge branch 'dho-remove-onparentreceived' into fix-hidden-mod-crash 2020-12-03 20:10:16 +09:00
smoogipoo
0bdf99b97a Remove OnParentReceived() 2020-12-03 20:08:42 +09:00
smoogipoo
73e99718bc Change order of OnParentReceived() 2020-12-03 20:06:26 +09:00
smoogipoo
e3bbc2b128 Rework osu! hidden mod to avoid storing hitobjects 2020-12-03 14:45:56 +09:00
smoogipoo
e831c797f3 Merge branch 'master' into hit-sample-pooling 2020-12-02 14:45:24 +09:00
Dean Herbert
71a121389b
Merge pull request #11033 from smoogipoo/immutable-hit-samples
Make HitSampleInfo immutable
2020-12-02 14:44:26 +09:00
Dan Balasescu
46a57921e2
Merge branch 'master' into osu-fade-slider-body-on-hit 2020-12-02 11:03:04 +09:00
smoogipoo
2bb7484608 Merge branch 'immutable-hit-samples' into hit-sample-pooling 2020-12-01 16:05:28 +09:00
smoogipoo
5760e1c1fc Make HitSampleInfo immutable 2020-12-01 15:37:51 +09:00
Dean Herbert
dd05c56a08 Fix sliders playing hit animations when completely missed 2020-12-01 15:34:29 +09:00
Dean Herbert
f8ef822e73 Add short fade to better hide transition on default skin 2020-12-01 15:21:32 +09:00
Dean Herbert
d0852d7f4a Hide slider body immediately on successful hit when snaking is enabled 2020-12-01 14:56:41 +09:00
Dean Herbert
8d101efb24 Remove unused proxy layer 2020-12-01 14:56:14 +09:00
Dean Herbert
51741c4791
Merge branch 'master' into hit-sample-pooling 2020-11-30 22:25:28 +09:00
smoogipoo
f589da4317 Fix compilation error 2020-11-30 19:24:38 +09:00
smoogipoo
4bbeb9ebd4 Merge branch 'master' into hit-sample-pooling 2020-11-30 18:31:58 +09:00
smoogipoo
8f48389f89 Merge branch 'master' into improve-dho-time-offsets 2020-11-30 18:01:48 +09:00
Dean Herbert
5bc76cac58 Remove unused using statement 2020-11-27 17:01:07 +09:00
Dean Herbert
1246c8ba5f Reduce the opacity of the default skin slider ball
Previous value was [hitting pure white on some brighter combo
colours](https://github.com/ppy/osu/issues/10910#issuecomment-734354812).
2020-11-27 15:22:29 +09:00
Dean Herbert
bcc197f9fe
Merge branch 'master' into improve-dho-time-offsets 2020-11-27 15:03:56 +09:00
ekrctb
fe85b7d482 Remove unused import 2020-11-27 10:18:00 +09:00
ekrctb
57454bbb1c Remove hitObject argument from OnApply and OnFree 2020-11-27 10:13:05 +09:00
smoogipoo
0414e5c550 Add MaximumJudgementOffset to DrawableHitObject, use in more places 2020-11-26 01:12:42 +09:00
smoogipoo
c744db1b57 Rewind pooled DHOs into better states 2020-11-26 00:42:25 +09:00
Dan Balasescu
87ce8a53ff
Merge branch 'master' into on-drawable-hitobject-added 2020-11-24 16:09:57 +09:00
Bartłomiej Dach
1c31a4a6b6 Expose animation start time as mutable in interface 2020-11-22 13:11:22 +01:00
ekrctb
c506b438bf Remove more code and make some methods private 2020-11-22 18:51:16 +09:00
Bartłomiej Dach
240c1b0aef Add support for changing animation start time after load 2020-11-21 20:06:30 +01:00
ekrctb
295ca38cda Merge remote-tracking branch 'origin/master' into on-drawable-hitobject-added 2020-11-21 15:25:16 +09:00
Dan Balasescu
4213d6bdba
Merge pull request #10890 from peppy/legacy-jugement-match-stable-transforms
Adjust judgement animations to match stable
2020-11-20 21:47:21 +09:00
Dan Balasescu
79752bcb19
Merge branch 'master' into legacy-jugement-match-stable-transforms 2020-11-20 20:51:27 +09:00
ekrctb
cd16a3fa61 Use event instead of using custom pools (osu) 2020-11-20 17:56:47 +09:00
smoogipoo
7bd75eca81 Separate classes 2020-11-20 16:53:08 +09:00
smoogipoo
c1f56cd0ba Remove aliveness hackery 2020-11-20 16:52:27 +09:00
smoogipoo
85eb98a7ec Clean up some code reuse 2020-11-20 16:43:07 +09:00
smoogipoo
2418f17b0c Fix lifetime not being set correctly in some cases 2020-11-20 16:19:02 +09:00
smoogipoo
2ed2ddfe8a Rename methods 2020-11-20 15:39:29 +09:00
smoogipoo
33eea64cfc Fix follow points not updating on positional changes 2020-11-20 15:31:04 +09:00
smoogipoo
2fc53a278d Add back reorder support 2020-11-20 14:10:28 +09:00
smoogipoo
17ff7fe163 Fix failing test due to early lifetime end 2020-11-20 13:55:27 +09:00
smoogipoo
a3145ed96d Fix test compile errors 2020-11-20 13:54:41 +09:00
smoogipoo
d467a00eea Add initial followpoint pooling implementation 2020-11-20 00:11:31 +09:00
smoogipoo
688a04c2ff Make slider/spinner use pooled samples 2020-11-19 20:40:30 +09:00
Dean Herbert
7f3c8ad744
Merge pull request #10872 from smoogipoo/fix-missing-triangles 2020-11-19 14:11:08 +09:00
Dean Herbert
3024ae6d86 Add better test coverage of hit lighting (and ensure reset after animation reapplication) 2020-11-19 14:10:07 +09:00
Bartłomiej Dach
24d7fa03d8
Merge branch 'master' into legacy-jugement-match-stable-transforms 2020-11-18 20:33:58 +01:00
Bartłomiej Dach
5156de3a10
Merge branch 'master' into fix-judgement-transform-logic 2020-11-18 19:20:11 +01:00
Dean Herbert
d017e725fb Add comment for future todo task 2020-11-18 19:03:34 +09:00
Dean Herbert
9d3de5bca0 Fix hit lighting dictating lifetime even when not present in skin 2020-11-18 19:03:34 +09:00
Dean Herbert
72a15ef2dc Handle DrawableJudgement lifetime more flexibly 2020-11-18 19:03:34 +09:00
Dean Herbert
94886a09b2 Remove fades from DrawableJudgement itself 2020-11-18 19:03:34 +09:00
smoogipoo
ce4baf328d Move into OnApply() to resolve one-frame issues 2020-11-17 23:35:36 +09:00
smoogipoo
04805b78c3 Tighten osu! ruleset lifetime expiry for past hitobjects 2020-11-17 23:20:19 +09:00
Dean Herbert
8247e6ce91 Move result type to ctor 2020-11-17 15:43:54 +09:00
Dean Herbert
f465dd5a5e Move all extended animation logic out of DrawableJudgement 2020-11-17 14:59:34 +09:00
Dean Herbert
82c3925a37 Remove unused DrawableOsuJudgement constructors 2020-11-17 14:13:51 +09:00
Dean Herbert
9dfa4249e0 Make Apply non-virtual 2020-11-17 14:05:13 +09:00
smoogipoo
c101f32db8 Reset osu! triangle pieces on hitobject application 2020-11-17 13:06:52 +09:00
smoogipoo
84b42f207d Fix triangles disappearing after a while 2020-11-16 23:14:20 +09:00
smoogipoo
4cf6aca873 Fix slider ball tint not working 2020-11-16 22:40:25 +09:00
Bartłomiej Dach
532680bb36 Manually reset rest of rotation tracker state on object application 2020-11-14 23:23:11 +01:00
Bartłomiej Dach
727a886fb3 Move spinner completion info into judgement 2020-11-14 23:08:47 +01:00
Bartłomiej Dach
af392e3995 Move rate adjusted spinner rotation into judgement result 2020-11-14 21:10:12 +01:00
Dean Herbert
7ac4d2c4be Move "drawable" to first prefix 2020-11-14 18:05:30 +09:00
Dean Herbert
90f37ff4ab Rejig namespaces 2020-11-14 18:04:59 +09:00
smoogipoo
3f0a127196 Fix slider/spinner samples not being disposed 2020-11-12 18:51:58 +09:00
smoogipoo
3f78d81386 Add nested osu! hitobject pooling 2020-11-12 15:59:48 +09:00
smoogipoo
bf72961959 Add top-level osu! hitobject pooling 2020-11-12 15:39:02 +09:00
smoogipoo
606cfacedf Fix state update exception in a better way 2020-11-11 19:01:12 +09:00
Dean Herbert
a82291f31f
Merge pull request #10776 from smoogipoo/fix-possible-nullref
Fix possible nullref with non-attached hitobjects
2020-11-11 11:14:57 +09:00
smoogipoo
81844878b0 Fix possible nullref with non-attached hitobjects 2020-11-11 00:29:34 +09:00
smoogipoo
b1e039bcec Prevent overrides from messing with application/freeing 2020-11-07 00:40:26 +09:00
smoogipoo
3a4bd73823 Fix DHOs being freed when not expected 2020-11-07 00:25:26 +09:00
smoogipoo
e190afbfed Remove initial value changed invocations 2020-11-07 00:00:25 +09:00
smoogipoo
33b629a87a Make top-level osu! objects use new methods 2020-11-06 23:09:23 +09:00
Dean Herbert
e0ef777e87
Merge branch 'master' into fix-hitcircle-glow-on-skin-change 2020-11-06 16:47:56 +09:00
Dean Herbert
0cadb31947 Merge branch 'master' into drawable-hit-object-hit-state-fix 2020-11-05 17:07:52 +09:00
Dean Herbert
4a4fa96fef
Merge pull request #10692 from smoogipoo/followpointrenderer-hitobject 2020-11-05 16:39:05 +09:00
Dean Herbert
54775ccacf
Merge pull request #10690 from smoogipoo/osu-remove-hitobject-references 2020-11-05 16:22:13 +09:00
Dean Herbert
a43166e8a9
Merge branch 'master' into followpointrenderer-hitobject 2020-11-05 15:42:09 +09:00
Dean Herbert
c26fd4dc3d
Merge pull request #10691 from smoogipoo/osu-lighting-colour-reuse
Remove AccentColour binding from judgement lighting
2020-11-05 15:37:28 +09:00
Dean Herbert
4457e363d3 Bring back local variables to reduce two-level-deep variable access 2020-11-05 15:22:40 +09:00
smoogipoo
9c1c9945af Make FollowPointRenderer use hitobject models 2020-11-05 15:01:45 +09:00
smoogipoo
9ac822beed Remove AccentColour binding from judgement lighting 2020-11-05 14:49:15 +09:00
smoogipoo
400fcedf0f Remove stored hitobject references from skinnable components 2020-11-05 14:40:48 +09:00
smoogipoo
9a7fcadabc Use BDL for top-level osu! DHOs 2020-11-05 13:51:46 +09:00
Dean Herbert
65fb8628e0 Use HitStateUpdateTime 2020-11-04 17:30:11 +09:00
Dean Herbert
e5a5c3713d Merge branch 'drawable-hit-object-hit-state-fix' into fix-hitcircle-glow-on-skin-change 2020-11-04 17:15:20 +09:00
Dean Herbert
a3dc1d5730 Update existing implementations 2020-11-04 17:14:23 +09:00
Dean Herbert
b069372b29 Fix skin changes resulting in incorrectly applied transforms in MainCirclePiece 2020-11-03 17:49:48 +09:00
smoogipoo
696e3d53af Fix slider samples being overwritten by the last node 2020-10-09 20:50:09 +09:00
Dean Herbert
ed982e8dd1 Make stacked hitcircles more visible when using default skin 2020-10-06 14:09:31 +09:00
Dean Herbert
f0b5ba9534
Merge branch 'master' into skin-slider-end-circle-support 2020-10-05 17:45:51 +09:00
Dan Balasescu
692ca87bec
Merge branch 'master' into fix-spinner-rewind-crash 2020-10-05 15:32:52 +09:00
Dean Herbert
5dea37792c
Merge branch 'master' into health-adjustments 2020-10-04 21:38:40 +09:00
Bartłomiej Dach
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