1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 11:57:30 +08:00
Commit Graph

68273 Commits

Author SHA1 Message Date
Bartłomiej Dach
b339d6a00c
Fix editor performance regression with hitmarkers active 2024-06-26 16:26:32 +02:00
Dean Herbert
1998742e42
Update framework 2024-06-26 22:56:43 +09:00
Bartłomiej Dach
fff27e619d
Fix slider tail volume not saving
Closes https://github.com/ppy/osu/issues/28587.

As outlined in the issue thread, the tail volume wasn't saving because
it wasn't actually attached to a hitobject properly, and as such the
`LegacyBeatmapEncoder` logic, which is based on hitobjects, did not
pick them up on save.

To fix that, switch to using `NodeSamples` for objects that are
`IHasRepeats`. That has one added complication in that having it work
properly requires changes to the decode side too. That is because the
intent is to allow the user to change the sample settings for each node
(which are specified via `NodeSamples`), as well as "the rest of the
object", which generally means ticks or auxiliary samples like
`sliderslide` (which are specified by `Samples`).

However, up until now, `Samples` always queried the control point
which was _active at the end time of the slider_. This obviously can't
work anymore when converting `NodeSamples` to legacy control points,
because the last node's sample is _also_ at the end time of the slider.
To bypass that, add extra sample points after each node (just out of
reach of the 5ms leniency), which are supposed to control volume of
ticks and/or slides.

Upon testing, this *sort of* has the intended effect in stable, with
the exception of `sliderslide`, which seems to either respect or _not_
respect the relevant volume spec dependent on... not sure what, and not
sure I want to be debugging that. It might be frame alignment, or it
might be the phase of the moon.
2024-06-26 15:52:16 +02:00
Bartłomiej Dach
8f0198ba0f
Add test coverage for encode-after-decode stability of slider sample volume specs 2024-06-26 15:42:13 +02:00
normalid
936a8d800d Swap the low and high multiplier color 2024-06-26 21:39:14 +08:00
Bartłomiej Dach
dd4c0038c6
Merge pull request #28615 from peppy/adjust-depth-carousel
Ensure carousel panel depth is consistent based on vertical position
2024-06-26 14:58:25 +02:00
Dean Herbert
2a839b3697
Make action required init 2024-06-26 21:50:34 +09:00
Dean Herbert
fd91210c1c
Remove unnecessary setter on bindable 2024-06-26 21:47:33 +09:00
Dean Herbert
6beae91d53
Ensure carousel panel depth is consistent based on vertical position
I thought this was already being handled, but it turns out that changing
sort mode (and potentially other operations) could break the depth of
display of panels due to pooling and what not.

This ensures consistency and also employs @bdach's suggestion of
reversing the depth above and below the current selection for a better
visual effect.
2024-06-26 21:10:29 +09:00
Bartłomiej Dach
00aa196c6f
Merge pull request #28609 from smoogipoo/fix-legacy-break-time-export
Truncate break times for legacy beatmap export
2024-06-26 12:11:33 +02:00
Bartłomiej Dach
9dfd6cf9ef
Remove EditorTable
Begone, foul beast.
2024-06-26 10:40:02 +02:00
Bartłomiej Dach
b12db8fbe2
Rewrite IssueTable to use virtualised list 2024-06-26 10:40:02 +02:00
Bartłomiej Dach
5c2d446767
Rewrite ControlPointTable to use virtualised list 2024-06-26 10:40:02 +02:00
Dean Herbert
015a71f3d5
Add projectSettingsUpdater.xml to .gitignore and remove from tracking 2024-06-26 16:49:22 +09:00
Dean Herbert
ac235cb506
Remove unused local variable 2024-06-26 16:22:25 +09:00
Dan Balasescu
276d8fe158
Truncate break times for legacy beatmap export 2024-06-26 16:20:56 +09:00
Bartłomiej Dach
006184ed2f
Implement carousel container for daily challenge screen 2024-06-26 08:49:00 +02:00
Dan Balasescu
173c4f430a
Merge pull request #28601 from peppy/adjust-carousel-panel-spacing
Adjust beatmap carousel's spacing to remove dead-space
2024-06-26 15:35:52 +09:00
Dean Herbert
67be43b659
Merge pull request #28606 from smoogipoo/log-missing-official-build
Always log missing official build attribute
2024-06-26 15:16:37 +09:00
Dean Herbert
4473f114a0
Merge pull request #28605 from frenzibyte/fix-main-menu-test-failure
Fix intermittent failure in online menu banner tests
2024-06-26 15:11:57 +09:00
Dean Herbert
0c8279c5df
Remove unused using statements 2024-06-26 14:50:53 +09:00
Dan Balasescu
2e03afb2ed
Always log missing official build attribute 2024-06-26 14:49:04 +09:00
Salman Ahmed
fa46d8e6c9 Fix intermittent failure in online menu banner tests 2024-06-26 08:39:55 +03:00
Dean Herbert
3d6a9ccb6d
Merge pull request #28602 from smoogipoo/fix-double-fail-invoke
Prevent multiple invocations of failure procedure
2024-06-26 14:23:24 +09:00
Dan Balasescu
0379abd714
Prevent multiple invocations of failure procedure 2024-06-26 13:57:18 +09:00
Dean Herbert
e84daedbea
Reduce length of fade-out when hiding beatmap panels 2024-06-26 12:01:38 +09:00
Dean Herbert
5d4509150b
Adjust beatmap carousel's spacing to remove dead-space
As discussed in https://github.com/ppy/osu/discussions/28599.

I think this feels better overall, and would like to apply the change
before other design changes to the carousel.
2024-06-26 11:56:58 +09:00
Dan Balasescu
9039ec34ba
Merge pull request #28596 from stanriders/remove-peaks-skill
Refactor out taiko Peaks skill
2024-06-26 11:18:01 +09:00
StanR
df64d7f374 Refactor out taiko Peaks skill 2024-06-25 23:06:42 +05:00
Dean Herbert
82bc95e04d
Merge pull request #28592 from peppy/fix-editor-performance
Fix editor performance dropping over time when hit markers are enabled
2024-06-26 01:12:08 +09:00
Dean Herbert
dc817b62cc
Fix editor performance dropping over time when hit markers are enabled
There's probably a better solution but let's hotfix this for now.
2024-06-26 01:06:37 +09:00
Dean Herbert
aadb104851
Merge pull request #28589 from bdach/scale-handling-crash
Fix crashes when opening scale/rotation popovers during selection box operations
2024-06-26 00:11:03 +09:00
Dean Herbert
d722be16e3
Add missing base calls for safety 2024-06-25 23:41:43 +09:00
Dean Herbert
3d22f700a7
Merge pull request #28561 from bdach/daily-challenge/score-breakdown
Implement score breakdown display for daily challenge screen
2024-06-25 23:34:47 +09:00
Dean Herbert
bca4d51e5a
Merge pull request #28590 from peppy/update-framework
Update framework
2024-06-25 23:34:30 +09:00
Dean Herbert
0a44022697
Update framework 2024-06-25 23:03:37 +09:00
Bartłomiej Dach
2fda45cad4
Fix crashes when opening scale/rotation popovers during selection box operations 2024-06-25 15:20:59 +02:00
Dean Herbert
6cd1367329
Merge pull request #28580 from bdach/fix-breaks
Fix crash when attempting to adjust duration of break that has no preceding/succeeding objects
2024-06-25 20:24:27 +09:00
Dean Herbert
a12f32519d
Merge pull request #28572 from bdach/fix-playlist-duration-death
Fix crash on calculating playlist duration when rate-changing mods are present
2024-06-25 20:15:26 +09:00
Dean Herbert
2c4809cc01
Merge pull request #28576 from PercyDan54/rank-update
Fix silver S rank display animating on every hit
2024-06-25 20:02:51 +09:00
Bartłomiej Dach
fae6dcfffa
Remove manual breaks at the start/end of beatmap
This is the secondary cause of https://github.com/ppy/osu/issues/28577,
because you could do the following:

- Have a break autogenerate itself
- Adjust either end of it to make it mark itself as manually-adjusted
- Remove all objects before or after said break

to end up in a state wherein there are no objects before or after a
break.

The direct fix is still correct because it is still technically possible
to end up in a state wherein a break is before or after all objects
(obvious one is manual `.osu` editing), but this behaviour is also
undesirable for the autogeneration logic.
2024-06-25 12:49:17 +02:00
Bartłomiej Dach
18e2a925a8
Add failing test coverage for manual breaks at start/end of map not being culled 2024-06-25 12:34:37 +02:00
Bartłomiej Dach
03cdfd0660
Fix timeline break piece crashing on drag if there are no objects before start or after end
This fixes the direct cause of https://github.com/ppy/osu/issues/28577.
2024-06-25 12:25:37 +02:00
Dean Herbert
c5c30949d2
Merge pull request #28570 from bdach/fix-upscroll
Fix legacy skin hold note bodies not appearing when scrolling upwards
2024-06-25 19:08:23 +09:00
PercyDan54
2de0852551
Fix transient rank value applied to bindable 2024-06-25 18:06:50 +08:00
Dean Herbert
a042b6e141
Merge pull request #28568 from bdach/fix-classic-slider-drawable-judgement-position
Fix incorrect slider judgement positions when classic mod is active
2024-06-25 19:04:05 +09:00
Bartłomiej Dach
0d2a47167c
Fix crash on calculating playlist duration when rate-changing mods are present
Regressed in https://github.com/ppy/osu/pull/28399.

To reproduce, enter a playlist that has an item with a rate-changing mod
(rather than create it yourself).

This is happening because `APIRuleset` has `CreateInstance()`
unimplemented:

    b4cefe0cc2/osu.Game/Online/API/Requests/Responses/APIBeatmap.cs (L159)

and only triggers when the playlist items in question originate from
web.

This is why it is bad to have interface implementations throw outside of
maybe mock implementations for tests. `CreateInstance()` is a scourge
elsewhere in general, we need way less of it in the codebase (because
while convenient, it's also problematic to implement in online contexts,
and also expensive because reflection).
2024-06-25 11:28:10 +02:00
Bartłomiej Dach
1eac0c622a
Fix legacy skin hold note bodies not appearing when scrolling upwards
- Closes https://github.com/ppy/osu/issues/28567.
- Regressed in https://github.com/ppy/osu/pull/28466.

Bit of a facepalm moment innit...
2024-06-25 10:35:36 +02:00
Bartłomiej Dach
2cb18820ea
Fix incorrect slider judgement positions when classic mod is active
Regressed in https://github.com/ppy/osu/pull/27977.

Bit ad-hoc but don't see how to fix without just reverting the change.
2024-06-25 10:07:58 +02:00
Dean Herbert
b4cefe0cc2
Update rider vcsConfiguration
Updated in recent rider versions
2024-06-25 15:50:11 +09:00