1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-17 13:42:56 +08:00
Commit Graph

5782 Commits

Author SHA1 Message Date
Bartłomiej Dach
a631d245da
Fix test failure 2024-06-17 18:14:33 +02:00
Bartłomiej Dach
88bdc12022
Add ability to cycle through available types when selecting single control point on a slider 2024-06-17 15:56:48 +02:00
Bartłomiej Dach
16ea8f67b0
Add ability to start a new segment during placement via S key 2024-06-17 15:56:48 +02:00
Bartłomiej Dach
b5f0e58524
Add ability to better control slider control point type during placement via Tab 2024-06-17 15:56:48 +02:00
Bartłomiej Dach
1b00d0181a
Fix playfield border size not updating in editor on circle size change 2024-06-17 09:36:01 +02:00
Bartłomiej Dach
97003b3679
Account for osu! circle radius when drawing playfield border
Addresses https://github.com/ppy/osu/discussions/13167.
2024-06-17 09:08:43 +02:00
Bartłomiej Dach
25b2dfa601
Fix stack leniency not applying immediately after change 2024-06-10 14:34:22 +02:00
Bartłomiej Dach
86b13074a0
Merge branch 'master' into edit-nodesample 2024-06-06 13:42:25 +02:00
OliBomby
fe738a0951 Fix missing container inject 2024-06-05 18:12:02 +02:00
OliBomby
d8994786f6 Merge remote-tracking branch 'upstream/master' into grids-2 2024-06-05 17:18:48 +02:00
OliBomby
82919998da dont light up tail piece when hovering anchor 2024-06-04 18:26:32 +02:00
Bartłomiej Dach
5fcea01c13
Merge branch 'master' into ruleset-specific-combo-counter 2024-06-04 15:44:11 +02:00
OliBomby
34c4ee7de8 add CanBeNull attribute to LastRepeat 2024-06-03 13:38:42 +02:00
OliBomby
484e04acfb Merge branch 'free-sliders' of https://github.com/OliBomby/osu into free-sliders 2024-06-03 13:24:01 +02:00
Olivier Schipper
77b47ad2b4
simplify nullability annotation
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-06-03 13:23:39 +02:00
OliBomby
bb38cb4137 simplify tracking changes in shift key status 2024-06-03 13:18:36 +02:00
Bartłomiej Dach
4fcb902341
Merge branch 'master' into grids-1 2024-06-03 12:33:51 +02:00
OliBomby
ca41c84ba2 trim excess control points on drag end 2024-06-01 21:15:54 +02:00
OliBomby
7254096c90 fix isDragging being always true 2024-06-01 20:28:39 +02:00
Dean Herbert
b46222db19
Merge pull request #28359 from smoogipoo/autopilot-resume-overlay
Use delayed resume overlay for autopilot
2024-05-30 19:52:58 +09:00
Dan Balasescu
f6a59bee9a
Use delayed resume overlay for autopilot 2024-05-30 19:17:18 +09:00
Bartłomiej Dach
8916f08f86
Only take initial judgement position from object instead of following
Looks less bad with mods like depth active.

Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-05-30 09:03:02 +02:00
Bartłomiej Dach
a6c776dac8
Use hopefully safer implementation of anchoring judgements to objects 2024-05-29 11:11:43 +02:00
Bartłomiej Dach
22a2adb5e6
Revert unrelated changes 2024-05-29 10:57:30 +02:00
Bartłomiej Dach
9fb7cc5900
Merge branch 'master' into magnetised-judgements 2024-05-29 10:56:53 +02:00
Bartłomiej Dach
84513343d6
Remove unused fields 2024-05-29 10:18:22 +02:00
Bartłomiej Dach
7b7e439d03
Merge branch 'master' into scale-tool 2024-05-29 10:15:48 +02:00
Bartłomiej Dach
9bd4b0d613
Rename method 2024-05-29 10:04:51 +02:00
Bartłomiej Dach
ba40737356
Simplify logic 2024-05-29 10:01:04 +02:00
Bartłomiej Dach
96a8bdf920
Use more generic tooltip copy 2024-05-29 09:59:19 +02:00
Bartłomiej Dach
bd5060965f
Simplify toolbox button enable logic 2024-05-29 09:49:16 +02:00
Bartłomiej Dach
4a8273b6ed
Rename another method 2024-05-29 09:43:09 +02:00
Bartłomiej Dach
4c881b5633
Use better name if we're renaming 2024-05-29 09:40:29 +02:00
Aurelian
b74f66e335 SliderBall's rotation updates based on CurvePositionAt 2024-05-28 19:38:33 +02:00
OliBomby
203e9284eb End circle only gets brighter once shift is held 2024-05-28 19:01:53 +02:00
OliBomby
2261d65b01 Merge remote-tracking branch 'upstream/master' into free-sliders 2024-05-28 18:42:34 +02:00
OliBomby
9a18ba2699 disable playfield centre origin when scaling slider and simplify logic 2024-05-28 18:27:01 +02:00
OliBomby
9548585b15 fix axis checkboxes being disabled in playfield origin scale 2024-05-28 17:24:31 +02:00
OliBomby
d143a697d2 refactor CanScaleFromPlayfieldOrigin and GetClampedScale to derived class 2024-05-28 17:12:16 +02:00
OliBomby
7cdc755c16 Bind axis checkbox disabled state to CanScaleX/Y 2024-05-28 16:57:24 +02:00
OliBomby
8eb23f8a60 remove redundant CanScaleFromSelectionOrigin 2024-05-28 16:19:57 +02:00
OliBomby
a89ba33b47 rename CanScaleSelectionOrigin/PlayfieldOrigin to make clear its not the origin being scaled 2024-05-28 16:14:16 +02:00
OliBomby
d4489545f2 add axis toggles 2024-05-25 21:44:08 +02:00
OliBomby
37530eebcc Enable scale buttons at the correct times 2024-05-25 20:35:06 +02:00
OliBomby
4eeebdf60c calculate max scale bounds for scale slider 2024-05-25 20:17:27 +02:00
OliBomby
88314dc584 select all input text on popup for an easy typing experience 2024-05-25 18:41:31 +02:00
OliBomby
6aa92bcc45 Add simple scale tool 2024-05-25 18:31:19 +02:00
Bartłomiej Dach
9f19ab092d
Merge branch 'master' into grids-1 2024-05-24 14:39:55 +02:00
Bartłomiej Dach
2be50c1a2a
Merge branch 'master' into undo_sliderpoint_curvetype_change 2024-05-24 10:45:31 +02:00
Dean Herbert
c7a89c35af
Merge pull request #28285 from tsunyoku/rank-traceable
Set `Ranked` to `true` for `OsuModTraceable`
2024-05-24 11:39:30 +08:00
Dan Balasescu
863f7151e0
Merge pull request #28288 from Hecatia-Lapislazuli/selection-mathing-slider-size
Fix path blueprint becoming desynced from slider path size
2024-05-24 00:19:34 +09:00
Dan Balasescu
b1c7afd75b
Move to ctor 2024-05-23 23:45:04 +09:00
Bartłomiej Dach
d8ba95f877
Remove leftover log
whooops.
2024-05-23 15:13:42 +02:00
Bartłomiej Dach
8a2dd4d816
Merge branch 'master' into scaling 2024-05-23 15:10:40 +02:00
Bartłomiej Dach
3e34b2d37e
Bring back clamping in osu! scale handler
Being able to flip doesn't really feel all that good and `master` was
already clamping, so let's just bring that back for now. Flipping can be
reconsidered in a follow-up if it actually can be made to behave well.
2024-05-23 15:01:29 +02:00
Bartłomiej Dach
f7bcccacb0
Simplify original state management in osu! scale handler 2024-05-23 15:01:29 +02:00
Aurelian
f17f70dca7 Changed Size to be handled by AutoSizeAxes 2024-05-23 14:36:49 +02:00
Aurelian
c3a2a1361d SliderBody's Size getter updates size to the body/path's Size 2024-05-22 18:42:23 +02:00
tsunyoku
97fe59cb24 set Ranked to true for OsuModTraceable 2024-05-22 10:38:47 +01:00
Dean Herbert
d0b1ebff5a
Revert "Temporary rollback of framework / SDL3"
This reverts commit d7d569cf4e.
2024-05-22 16:29:39 +08:00
Dean Herbert
d7d569cf4e
Temporary rollback of framework / SDL3 2024-05-21 14:36:16 +08:00
Dan Balasescu
976c6c4f25
Merge pull request #28235 from tsunyoku/optimise-rhythm-evaluator-loop-logic
Reduce `Previous` calls in `RhythmEvaluator` by optimising loop logic
2024-05-20 20:31:46 +09:00
James Wilson
f31928875b Reduce Previous calls in RhythmEvaluator by optimising loop logic 2024-05-19 16:26:51 +01:00
James Wilson
609268786f remove unneeded extra Previous calls from RhythmEvaluator 2024-05-19 13:29:49 +01:00
Andrei Zavatski
614cbdf0a4 Reduce container nesting in PathControlPointPiece 2024-05-18 22:51:58 +03:00
OliBomby
8df5f22b4e Merge remote-tracking branch 'upstream/master' into scaling 2024-05-15 23:05:19 +02:00
Dan Balasescu
ff0c0d54c9
Fix taps on judged circles changing cursor position 2024-05-14 01:23:55 +09:00
Dan Balasescu
3b8b56cbcb
Apply required changes after framework masking updates 2024-05-09 20:18:53 +09:00
Andrei Zavatski
e319a3e885 Don't perform masking updates in PathControlPointVisualiser 2024-05-04 22:07:08 +03:00
Andrei Zavatski
cf313cd67f Use single path to display slider control point connections 2024-05-04 21:53:48 +03:00
Bartłomiej Dach
94275f148e
Fix adding slider control points via context menu not undoing correctly
Closes https://github.com/ppy/osu/issues/27985.
2024-04-25 09:01:47 +02:00
DavidBeh
8c2a4eb78a Fix formatting 2024-04-24 12:40:23 +02:00
DavidBeh
16190a4ed7 Made judgements follow DrawableOsuHitObjects. Enabled judgements for depth mod 2024-04-24 00:23:45 +02:00
DavidBeh
7dac5afd90 Enabled judgements for repel (but not in depth). Updated comments in repel, mag, depth 2024-04-23 23:57:27 +02:00
DavidBeh
f863ea30e1 Made judgements always on and disabled follow paths again 2024-04-23 23:31:23 +02:00
DavidBeh
3a914b9337 Fixed judgements with MG mod without causing side effects 2024-04-23 23:24:51 +02:00
DavidBeh
331f1f31b0 Attempt to position DrawableOsuJudgement based on its DrawableOsuHitObject instead of DrawableOsuHitObject.HitObject 2024-04-23 19:19:11 +02:00
DavidBeh
beee76d64a enabled and fixed judgements for the magnetised mod 2024-04-22 20:25:43 +02:00
Dean Herbert
fb1d20bd39
Comment in some clarification 2024-04-22 15:07:11 +08:00
Dan Balasescu
0170c04baf
Fix cursormiddle not using the same source as cursor 2024-04-22 15:01:28 +09:00
Dan Balasescu
40c48f903b
Add failing test 2024-04-22 15:01:28 +09:00
Dan Balasescu
362a7b2c77
Remove unused members from GameplaySkinComponentLookup 2024-04-19 18:03:13 +09:00
Bartłomiej Dach
e5e345712e
Fix resume overlay not appearing after pausing inside window but outside of actual playfield area
Related to https://github.com/ppy/osu/discussions/27871 (although does
not actually fix the issue with the pause button, _if_ it is to be
considered an issue - the problem there is that the gameplay cursor
gets hidden, so the other condition in the modified check takes over).

Regressed in
bce3bd55e5.
Reasoning for breakage is silent change in `this` when moving the
`Contains()` check (`DrawableRuleset` will encompass screen bounds,
while `OsuResumeOverlay` is only as big as the actual playfield).
2024-04-16 13:45:09 +02:00
Bartłomiej Dach
f9873968a5
Apply NRT in OsuResumeOverlay 2024-04-16 13:39:06 +02:00
Dan Balasescu
0e218ee271
Merge pull request #27148 from Givikap120/traceable_pp
Add Traceable performance calculation support
2024-04-16 04:54:57 +09:00
Givikap120
4a21ff9726 removed duplication 2024-04-13 13:59:09 +03:00
Givikap120
feb9b5bdb8 Make traceable pp match HD 2024-04-13 13:42:57 +03:00
Bartłomiej Dach
518addf323
Merge branch 'master' into fix-catmull-bulbs 2024-04-10 11:25:02 +02:00
Dean Herbert
94cbe1838f
Replace usages of is null with == null 2024-04-03 01:50:39 +08:00
Dean Herbert
51e9348d27
Merge pull request #26702 from honguyenminh/fix-rotate-editor-button-disabled
Fix rotate tool button in editor disabled when selecting 1 circle
2024-04-02 14:31:43 +08:00
Nguyên Minh Hồ
6642702fa9
Update plurals in editor rotate button tooltip
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2024-04-02 12:36:44 +07:00
Dean Herbert
eca242c1c7
Change tooltip text slightly 2024-04-02 13:17:16 +08:00
Dean Herbert
ed5dd5c8cd
Bind using local bindables to avoid potentially event pollution 2024-04-02 13:04:34 +08:00
Dan Balasescu
4806ea54f1
Only optimise Catmull segments in osu ruleset 2024-04-01 17:22:50 +09:00
Dan Balasescu
099ad22a92
Use local bindable instead
Binding events directly to an external bindable will cause that
bindable to hold a permanent reference to the current object.

We use `GetBoundCopy()` or otherwise a local bindable + `.BindTo()` to create a
weak-referenced copy of the target bindable. When the local bindable's
lifetime expires, so does the external bindable's reference to it.
2024-04-01 15:31:35 +09:00
Nguyên Minh Hồ
1adba68357 Merge branch 'fix-rotate-editor-button-disabled' of https://github.com/honguyenminh/osu into fix-rotate-editor-button-disabled 2024-03-31 16:00:58 +07:00
Nguyên Minh Hồ
86def7e263
Change editor rotate button disabled tooltip text
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-03-31 16:00:47 +07:00
Arthur Araujo
450e7016bc Bind StackHeight changes to visual update methods 2024-03-30 21:23:05 -03:00
Nguyên Minh Hồ
b445e27ad6 Aggregate two CanRotate bindable for enabling the Rotate button 2024-03-30 17:54:27 +07:00
Nguyên Minh Hồ
6f782266b5 Fix inspection 2024-03-30 17:28:57 +07:00
Nguyên Minh Hồ
5d497ba4a8 Simplify TooltipText for EditorRadioButton 2024-03-30 16:04:22 +07:00
Nguyên Minh Hồ
8d6358a138 Fix editor rotation allowing spinner only bug 2024-03-30 16:02:31 +07:00
Nguyên Minh Hồ
9950395e5f Merge branch 'fix-rotate-editor-button-disabled' of https://github.com/honguyenminh/osu into fix-rotate-editor-button-disabled 2024-03-30 13:57:44 +07:00
Nguyên Minh Hồ
113dbcd10f
Merge branch 'master' into fix-rotate-editor-button-disabled 2024-03-30 13:56:31 +07:00
Bartłomiej Dach
21201e616d
Merge pull request #27723 from 64ArthurAraujo/editor-fix-reverse-selection
Fix reverse selection not updating new combo location
2024-03-28 11:25:17 +01:00
Bartłomiej Dach
2f786ffc32
Simplify implementation 2024-03-28 10:12:27 +01:00
Arthur Araujo
01a72d5afa Fix combo not reversing properly depending on the order of selection 2024-03-26 12:10:40 -03:00
Bartłomiej Dach
b74f8dba41
Merge branch 'master' into verify-abnormal-difficulty-settings 2024-03-26 11:13:16 +01:00
Bartłomiej Dach
1866b4b6b1
Refactor abstract check to reduce duplication 2024-03-26 11:13:03 +01:00
Bartłomiej Dach
9b923b1909
Fix code quality issues 2024-03-26 10:55:49 +01:00
Arthur Araujo
10683de578 Use order of new combo flags instead of StartTime 2024-03-26 04:59:47 -03:00
Arthur Araujo
78037fa477 Handle new combo on HandleReverse 2024-03-25 04:19:14 -03:00
Arthur Araujo
6fa663c8ca Make check ruleset specific 2024-03-22 14:48:22 -03:00
Dean Herbert
35df381717
Merge branch 'master' into tcm-resume 2024-03-20 01:25:40 +08:00
Bartłomiej Dach
c9bbeeb49a
Merge branch 'master' into heatmap-misses 2024-03-18 14:43:24 +01:00
Dan Balasescu
0beaa8e8c5
Merge branch 'master' into tcm-resume 2024-03-14 12:22:46 +09:00
Dan Balasescu
e0f1f70b82
Adjust NRT to prevent future issues
This way, it will yet at us if the setter is ever moved out of the ctor.
2024-03-11 15:52:40 +09:00
Dean Herbert
fc05268fc3
Apply NRT to DrawableOsuEditorRuleset too 2024-03-11 14:45:52 +08:00
Dean Herbert
091425db30
Fix nullability hint 2024-03-11 14:43:58 +08:00
Dean Herbert
f3d154a995
Add inline comment explaining optimisation 2024-03-11 11:28:15 +08:00
Dean Herbert
2be6d1f1c6
Apply NRT to OsuPlayfield 2024-03-11 11:26:03 +08:00
Andrei Zavatski
6ff4b1d7e3 Don't update SubTreeMasking in OsuPlayfield 2024-03-10 15:42:03 +03:00
Dean Herbert
fcc35a6acc
Fix cross-talk between pooled DrawableSliderRepeat usage causing incorrect rotation 2024-03-08 11:37:13 +08:00
Dean Herbert
646edb239a
Merge pull request #27429 from bdach/rewind-slider-tracking
Fix slider tracking state not restoring correctly in all cases on rewind
2024-03-07 22:41:12 +08:00
Bartłomiej Dach
3d8fdc52a4
Merge pull request #27501 from turbedi/throw_helper
Use ThrowHelper methods in more places
2024-03-07 11:36:21 +01:00
Dean Herbert
b53b752e54
Update usage of MathUtils 2024-03-06 12:13:12 +08:00
Dean Herbert
6455c0583b
Update usage of CircularProgress.Current 2024-03-06 12:13:10 +08:00
Berkan Diler
a891303484 Use ArgumentOutOfRangeException throw helper methods 2024-03-05 10:20:30 +01:00
Dan Balasescu
bce3bd55e5
Fix catch by moving cursor-specific handling local 2024-03-04 16:08:17 +09:00
Bartłomiej Dach
876b806423
Store tracking history to slider judgement result instead 2024-02-29 12:11:50 +01:00
Bartłomiej Dach
1d1db951f0
Reset slider input manager state completely on new object application
Kind of scary this wasn't happening already.

Mirrors `SpinnerRotationTracker`.
2024-02-29 11:59:19 +01:00
Bartłomiej Dach
d05b31933f
Fix slider tracking state not restoring correctly in all cases on rewind 2024-02-29 11:59:15 +01:00
Dean Herbert
4506ad23a0
Merge pull request #27401 from bdach/fix-slider-tail-dim
Fix slider tails sometimes not dimming correctly
2024-02-28 22:28:17 +08:00
Bartłomiej Dach
b5ce2642aa
Fix subscribing to ApplyCustomUpdateState too much 2024-02-28 13:20:41 +01:00
Bartłomiej Dach
71b1fbb9d0
Merge pull request #27383 from Detze/slider-border-thickness
Rewrite legacy slider path rendering to match stable better
2024-02-28 10:02:46 +01:00
Salman Ahmed
b3aa9e25d2 Disable legacy slider AA for now 2024-02-27 23:18:29 +03:00
Bartłomiej Dach
bbdd85020c
Fix slider tails sometimes not dimming correctly
Originally noticed during review of another change:
https://github.com/ppy/osu/pull/27369#issuecomment-1966140198.

`DrawableOsuHitObject` tries to solve the initial dimming of objects
by applying transform to a list of dimmable parts. For plain drawables
this is safe, but if one of the parts is a DHO, it is not safe,
because drawable transforms can be cleared at will.

In particular, on first use of a drawable slider,
`UpdateInitialTransforms()` would fire via `LoadComplete()` on the
`DrawableSlider`, but *then*, also via `LoadComplete()`,
the `DrawableSliderTail` would update its own state and by doing so
inadvertently clear the dim transform just added by the slider.

To fix, ensure dim transforms are applied to DHOs
via `ApplyCustomUpdateState`.
2024-02-27 11:45:03 +01:00
Bartłomiej Dach
087a2a741a
Merge pull request #27369 from Detze/incorrect-slider-head-dim
Fix slider head being incorrectly dimmed twice
2024-02-27 11:17:34 +01:00
Salman Ahmed
83af9dfb39 Fix aa_width being incorrect 2024-02-27 02:43:02 +03:00
Salman Ahmed
18e26e39fe Remove SliderBorderSize for simplicity 2024-02-27 02:20:34 +03:00
Salman Ahmed
2f54775182 Add stable code references 2024-02-27 02:17:02 +03:00
Salman Ahmed
81e6a6d96a Rewrite LegacySliderBody rendering to perfectly match stable 2024-02-27 02:11:32 +03:00
Salman Ahmed
e01722a266 Revert "Match stable's slider border thickness more closely"
This reverts commit 3502ec456d.
2024-02-27 01:30:20 +03:00
Salman Ahmed
8363c39da8 Revert "Match stable's slider border thickness perfectly"
This reverts commit 8032ce9225.
2024-02-27 01:30:20 +03:00
Detze
8032ce9225 Match stable's slider border thickness perfectly 2024-02-26 18:37:27 +01:00
Detze
3502ec456d Match stable's slider border thickness more closely 2024-02-26 04:36:09 +01:00
Dean Herbert
e8d2abc4f7
Merge pull request #27364 from EVAST9919/spinner-alloc
Reduce osu spinner allocations
2024-02-25 09:36:02 +08:00
Dean Herbert
e12f8c03ee
Reset lastRecord on resetState for good measure 2024-02-25 08:18:19 +08:00
Detze
91d7bd1026 Don't dim slider head in DrawableSlider 2024-02-24 21:56:44 +01:00
Andrei Zavatski
9e90f7fb0d Store last enqueued RotationRecord in SpinnerSpmCalculator 2024-02-24 20:36:06 +03:00