1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-18 23:32:54 +08:00
Commit Graph

2958 Commits

Author SHA1 Message Date
smoogipoo
e60ff45b73 Add another test for colinear perfect curves 2021-03-22 16:57:40 +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
Bartłomiej Dach
e67c759eef Mark control point visualiser as possibly-null 2021-03-19 22:44:31 +01:00
Bartłomiej Dach
9634560d4b Fix control point visualiser crashing after deselections
`SliderSelectionBlueprint.OnDeselected()` would expire the
`ControlPointVisualiser` on deselection, leading to its removal from the
blueprint and eventual disposal, but still kept a separate reference to
said visualiser in another field.

This could lead to that stale reference to a disposed child getting read
in `ReceivePositionalInputAt()`, crashing quite a ways down over at the
framework side on futilely trying to compute the bounding box of a
drawable with no parent.
2021-03-19 21:40:22 +01:00
Dean Herbert
27c38db14d Add tooltips for slider path nodes which aren't inheriting 2021-03-19 16:58:08 +09:00
Dean Herbert
5f31304d05 Give each type of slider path type a unique colour to help visually distinguish them 2021-03-19 14:00:26 +09:00
Nathan Alo
51e0304c54 properly format strings per ruleset 2021-03-17 18:31:09 +08:00
smoogipoo
7fa5fd5647 Update usages of config with framework changes 2021-03-17 16:10:16 +09:00
Salman Ahmed
848adddd92 Use double.ToString(InvariantInfo) instead 2021-03-15 11:05:29 +03:00
Salman Ahmed
779c55d768 Fix potentially adding null legacy text to hierarchy 2021-03-14 03:27:47 +03:00
Salman Ahmed
43c1e1d217 Update existing usages
Resolve post-conflict issues
2021-03-13 06:09:07 +03:00
Salman Ahmed
115c186cb7 Move hit circle font from osu! ruleset 2021-03-13 06:05:36 +03:00
Salman Ahmed
98f6e16113 Move default spinner bonus counter to new DefaultSpinner 2021-03-13 05:59:42 +03:00
Salman Ahmed
774ebf50bc Move legacy spinner bonus counter to LegacySpinner 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
e3813ab828
Merge branch 'master' into legacy-spinner-placements 2021-03-12 19:47:34 +09:00
smoogipoo
ea9b48d17d Remove unused using 2021-03-11 21:21:48 +09:00
smoogipoo
b5bdf235ca Slightly improve comments more 2021-03-11 21:21:44 +09:00
smoogipoo
8bc494b224 Adjust explanatory comments 2021-03-11 20:57:00 +09: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
Salman Ahmed
3f34981664 Fix incorrect spinner top offset calculation with clarification 2021-03-11 05:40:20 +03: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
0549395869 Inline "legacy coordinates container" and add "spinner Y centre" const 2021-03-09 08:55:32 +03:00
Salman Ahmed
bb79da1aac Correct playfield shift counteract comment
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-03-09 00:34:00 +03:00
Salman Ahmed
0ad3073c1a
Use MathF utility class instead
Co-authored-by: Berkan Diler <b.diler@gmx.de>
2021-03-07 21:21:44 +03:00
Salman Ahmed
fbfaa378fc Move spinner top offset constant outside 2021-03-07 20:47:16 +03:00
Salman Ahmed
413cbb30a0
Reword playfield shift counteract comment
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-03-07 13:39:46 +03:00
Salman Ahmed
30f07aa9fc Add legacy spinner bonus counter piece 2021-03-06 20:27:56 +03: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
Salman Ahmed
1841a4d1c9 Extract legacy spinner presence to lazy field 2021-03-06 20:27:56 +03:00
Salman Ahmed
e4afe717d5 Publicize legacy coordinates container and sprite scale 2021-03-06 20:27:56 +03:00
Salman Ahmed
1525480e73 Demonstrate value of SPINNER_TOP_OFFSET to being more sensible 2021-03-06 19:18:40 +03:00
Dan Balasescu
5b6018295d
Merge branch 'master' into diffcalc/skill-mods 2021-03-04 13:06:26 +09:00
Salman Ahmed
d528ef426f Reposition legacy spinner components in-line with osu!stable 2021-02-28 22:59:22 +03:00
Salman Ahmed
41b43dd39a Add nested legacy-simulating coordinates container 2021-02-28 21:32:56 +03:00
Dean Herbert
8004652d27
Merge branch 'master' into optimised-has-flag-checks 2021-02-25 21:24:39 +09:00
Dean Herbert
90e8308716 Merge branch 'master' into localisation-refactor-framework 2021-02-25 17:28:55 +09:00
smoogipoo
dff1d80f39 Update HasFlag usages to HasFlagFast 2021-02-25 15:38:56 +09:00
Dean Herbert
0c202e0777
Merge branch 'master' into fix-selecting-incompatible-freemods 2021-02-24 19:24:04 +09:00
smoogipoo
14160b897e Fix references to ModSuddenDeath 2021-02-24 14:44:53 +09:00
Leon Gebler
877e19421b Refactor movement while scaling 2021-02-23 21:02:00 +01:00
Leon Gebler
2a4139a207 Refactor isQuadInBounds 2021-02-23 21:02:00 +01:00
Leon Gebler
71b30bdbbb Adjust tuple usage 2021-02-23 21:02:00 +01:00
Leon Gebler
3491021f72 Move moveSelection into HandleMovement 2021-02-23 21:02:00 +01:00
Dean Herbert
1fd76ea3fb Apply changes to UI components overriding functions with changing signatures 2021-02-22 19:01:42 +09:00
smoogipoo
ca92ad715a Add test 2021-02-22 13:32:54 +09:00
Leon Gebler
33985d9e7c Rewrite scaling bounds check to behave more intuively 2021-02-21 18:11:32 +01:00
Leon Gebler
2c6f92d12f Move bounds check from moveSelection to HandleMovement 2021-02-21 17:38:50 +01:00
Leon Gebler
562a4cefdb Simplify HandleScale by extracting methods 2021-02-21 12:12:32 +01:00
Leon Gebler
0b8009938a Prevent selection from breaking playfield bounds when scaling 2021-02-21 00:14:39 +01:00
Leon Gebler
cc4c5f72d8 Move logic to keep selection in bounds into it's own method 2021-02-21 00:14:39 +01:00
Samuel Cattini-Schultz
66643a97b0 Add a list of mods to Skill class
Although this isn't necessary for existing official rulesets and calculators, custom calculators can have use cases for accessing mods in difficulty calculation.
For example, accounting for the effects of visual mods.
2021-02-20 20:37:44 +11: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
f84ea30637 Expose Mods in DrawableRuleset to avoid using external DI 2021-02-11 17:47:29 +09:00
Dean Herbert
aaa0362b12 Merge branch 'master' into autoplay-rate-independence 2021-02-11 17:39:45 +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
c458c4cfae Fix unintended changes due to renaming or otherwise 2021-02-10 20:27:47 +09:00
smoogipoo
0dcdad9839 Adjust comment for DrawableSliderHead 2021-02-10 19:04:23 +09:00
smoogipoo
6bf40170db Rename SliderBall flag 2021-02-10 18:53:26 +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
9519b7f7c1 Adjust comment 2021-02-10 18:43:14 +09:00
smoogipoo
18a29dcb96 Rename bindable member, reorder binds 2021-02-10 18:42:24 +09:00
smoogipoo
6730c4c58b Apply review comments (user explanations + property names) 2021-02-10 18:41:28 +09:00
smoogipoo
cf06684ad1 Judge heads as slider ticks instead 2021-02-10 18:38:31 +09:00
Dean Herbert
1cb51fa8d2
Merge branch 'master' into autoplay-rate-independence 2021-02-09 16:05:34 +09:00
Dean Herbert
695e46a358 Fix AutoPilot mod failing to block touch input 2021-02-09 15:31:55 +09:00
Dean Herbert
b96a594546 Remove unnecessary initial call to HitObjectApplied bound method
Was causing test failures. Looks to be unnecessary on a check of when
HitObjectApplied is invoked.
2021-02-09 15:11:59 +09:00
smoogipoo
7021d1dfdc Merge branch 'hit-policy-refactor' into classic-mode-flags 2021-02-08 20:12:33 +09:00
smoogipoo
f4a31287bf Add/use IHitObjectContainer interface instead of IEnumerables 2021-02-08 20:11:06 +09:00
smoogipoo
d955200e07 Prevent invalid hit results for ignored slider heads 2021-02-08 11:10:14 +09:00
smoogipoo
2218247b21 Override mod type 2021-02-08 11:07:50 +09:00
Bartłomiej Dach
0e1ec703d3 Use IApplicableToRate in osu! auto generator 2021-02-07 18:49:31 +01:00
Bartłomiej Dach
3fabe247b0 Allow OsuModGenerator to accept a mod list 2021-02-07 18:35:34 +01:00
Bartłomiej Dach
68c20a2a37 Allow autoplay score generation to access mod list 2021-02-07 18:35:34 +01:00
smoogipoo
a5855f5d28 Move follow circle tracking to DrawableSliderHead 2021-02-05 17:33:48 +09:00
smoogipoo
ee3367d7c5 Add classic slider ball tracking 2021-02-05 17:14:23 +09:00
smoogipoo
3aa3692ed4 Disable snaking out when tracking is disabled 2021-02-05 15:56:13 +09:00
smoogipoo
6aece18f8d Add OOHP tests 2021-02-05 15:36:47 +09:00
smoogipoo
a4551dc1ee Add object-ordered hit policy 2021-02-05 15:36:47 +09:00
smoogipoo
6c78d308a4 Merge branch 'hit-policy-refactor' into classic-mode-flags 2021-02-05 15:36:43 +09:00
smoogipoo
8adf37d958 Add SetHitObjects() to IHitPolicy instead of using ctor 2021-02-05 15:25:03 +09:00
smoogipoo
08aae011c1 Add IHitPolicy interface 2021-02-05 15:25:03 +09:00
smoogipoo
df1df81847 Better indicate ordering 2021-02-05 15:25:03 +09:00
smoogipoo
0528469b44 Rename OrderedHitPolicy -> StartTimeOrderedHitPolicy 2021-02-05 15:25:03 +09:00
smoogipoo
3b5c67a063 Add OsuModClassic 2021-02-03 23:08:59 +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