1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-07 16:03:22 +08:00
Commit Graph

3294 Commits

Author SHA1 Message Date
Dean Herbert
1e1fb5476e
Merge pull request #31734 from bdach/simplify-slider-encoding-logic
Fix multi-segment-type sliders getting mangled on legacy export
2025-02-04 15:08:44 +09:00
Dean Herbert
a23de0b188
Avoid accessing WorkingBeatmap.Beatmap every update call
Notice in passing.

Comes with overheads that can be easily avoided. Left a note for a
future (slightly more involved) optimisation.
2025-02-03 16:30:31 +09:00
Bartłomiej Dach
c3981f1097
Do not reset online info on beatmap save 2025-01-31 12:21:42 +01:00
Bartłomiej Dach
749704344c
Move implicit slider path segment handling logic to Bezier converter
The logic in `LegacyBeatmapEncoder` that was supposed to handle
the lazer-exclusive feature of supporting multiple slider segment types
in a single slider was interfering rather badly with the Bezier
converter. Generally it was a bit difficult to follow, too.

The nice thing about `BezierConverter` is that it is *guaranteed* to
only output Bezier control points. In light of this, the same double-up-
-the-control-point logic that was supposed to make multiple slider
segment types backwards-compatible with stable can be placed in
the Bezier conversion logic, and be *much* more understandable, too.
2025-01-30 14:03:51 +01:00
Bartłomiej Dach
e24af4b341
Add inline comments for sets that are not marked FA but should be 2025-01-27 09:40:53 +01:00
Bartłomiej Dach
836a9e5c25
Remove explicit beatmap set from list of bundled beatmap sets 2025-01-27 09:40:20 +01:00
Dean Herbert
6ceb348cf6
Adjust code again to avoid weird throw mishandling 2025-01-22 18:24:01 +09:00
Dean Herbert
910c0022e3
Adjust code style slightly 2025-01-22 17:03:01 +09:00
Bartłomiej Dach
b0c0c98c5d
Refetch local metadata cache if corruption is detected
Addresses one of the points in https://github.com/ppy/osu/issues/31496.

Not going to lie, this is mostly best-effort stuff (while the refetch is
happening, metadata lookups using the local source *will* fail), but I
see this as a marginal scenario anyways.
2025-01-14 11:20:52 +01:00
Bartłomiej Dach
3a4497af32
Constrain range of usable characters in romanised metadata to ASCII only
Closes https://github.com/ppy/osu/issues/31398.

Rationale given in issue.

Compare stable logic:

- 2280c4c436/osu!/GameModes/Edit/Forms/SongSetup.cs#L118-L122
- 2280c4c436/osu!common/Helpers/GeneralHelper.cs#L410-L423

The control character check is a bit gratuitous (text boxes will already
not allow insertion of those, see
e05cb86ff6/osu.Framework/Graphics/UserInterface/TextBox.cs (L92)),
but as it's a general helper I figured might as well.
2025-01-06 14:04:47 +01:00
Dean Herbert
62e536baf6
Merge pull request #31138 from bdach/mark-as-played
Implement ability to mark beatmap as played
2024-12-24 21:43:15 +09:00
Bartłomiej Dach
1057aa867f
Merge pull request #30984 from smoogipoo/fix-mania-spinner-conversion
Fix "spinner" conversion for mania-specific beatmaps
2024-12-19 15:30:10 +01:00
Bartłomiej Dach
a6e00d6eac
Implement ability to mark beatmap as played
Reported at https://osu.ppy.sh/community/forums/topics/2015478?n=1.

Would you believe it that this button that has been there for literal
years never did anything?

Implemented at a per-beatmap level. Also additionally added to context
menu (at @peppy's suggestion), and also copy reworded from "Delete from
unplayed" to "Mark as played" because double negation hurt my tiny
brain.
2024-12-16 10:49:19 +09:00
Dan Balasescu
62a1a5883a
Merge branch 'master' into recommended-diff-beatmap-listing 2024-12-13 16:38:07 +09:00
Joseph Madamba
38b3d5fc00
Update recommended difficulty for osu!taiko 2024-12-12 16:17:57 -08:00
Joseph Madamba
f7364de01a
Add test and null protections 2024-12-12 15:23:00 -08:00
Joseph Madamba
92e07b4f99
Add recommended difficulty numerical value near filter in beatmap listing 2024-12-12 15:23:00 -08:00
Joseph Madamba
e95dc2b308
Add FormatStarRating() method util 2024-12-12 15:23:00 -08:00
Joseph Madamba
3035e8435d
Apply NRT to incoming changed files 2024-12-12 15:22:58 -08:00
Bartłomiej Dach
89e3c551ff
Merge pull request #30860 from frenzibyte/editor-multiple-background-audio-files
Allow choosing different background/audio files for individual difficulties
2024-12-11 14:12:58 +09:00
Dean Herbert
48bf2fa001
Merge pull request #30960 from bdach/bookmarks
Implement basic bookmark support in editor
2024-12-09 23:42:04 -08:00
Dean Herbert
92dfcae6eb
Adjust bad grammar 2024-12-10 14:35:09 +09:00
Dan Balasescu
1b8d9370aa
Merge pull request #30973 from frenzibyte/copy-effect-points
Preserve effect point specifications when creating blank difficulties
2024-12-09 16:13:52 +09:00
Salman Alshamrani
5cb6b86b1c Fix reference effect point getting mutated 2024-12-06 05:47:41 -05:00
Dan Balasescu
8b456e1379
Always convert mania spinners
A big part of these changes is refactoring, which is somewhat necessary
because it was previously implemented as two separate pathways which
in-fact need to be joined at the hip when handling spinners.

I've chosen to use `IHasLegacyHitObjectType` here because there's no
other flag that allows us to tell `ConvertHold` apart from
`ConvertSpinner`.
2024-12-06 16:40:28 +09:00
Salman Alshamrani
e3abbf1177 Copy effect points across on blank difficulty creation 2024-12-04 02:32:00 -05:00
Bartłomiej Dach
808934581f
Move bookmarks out of BeatmapInfo
Not sure why I didn't do that in https://github.com/ppy/osu/pull/28473...
2024-12-03 14:17:14 +01:00
Dean Herbert
5b2558cec2
Merge pull request #28473 from bdach/beatmap-info-purge
Move unnecessary properties from `BeatmapInfo` / realm to `IBeatmap`
2024-12-02 16:19:12 +09:00
Bartłomiej Dach
110e4fbb30
Centralise supported file extensions to one helper class
As proposed in
https://github.com/ppy/osu-server-beatmap-submission/pull/5#discussion_r1861680837.
2024-11-29 08:42:45 +01:00
Dean Herbert
5260a401d4
Use RealmLive in SaveFailedScoreButton
This also optimises the manager classes to better support `Live` usage
where the managed object is already in a good state (ie. doesn't require
re-fetching).
2024-11-27 15:25:42 +09:00
Dean Herbert
573aaf6637
Merge pull request #27128 from frenzibyte/user-statistics-provider
Introduce `UserStatisticsProvider` component and add support for respecting selected ruleset
2024-11-27 13:13:47 +09:00
Bartłomiej Dach
46d1f00590
Fix Beatmap.Countdown not being copied on conversion 2024-11-26 11:39:03 +01:00
Bartłomiej Dach
cf905d0f5c
Merge branch 'master' into beatmap-info-purge 2024-11-26 10:21:16 +01:00
Dean Herbert
9ca17f9b6b
Merge pull request #30748 from stanriders/scale-profile-beatmaps
Scale down beatmap cards
2024-11-25 22:53:51 +09:00
Dean Herbert
c590bef4c3
Remove legacy default setter for SamplesMatchPlaybackRate now that it's the default 2024-11-22 19:05:29 +09:00
Dean Herbert
086a34f5c0
Merge branch 'master' into beatmap-info-purge 2024-11-22 18:47:32 +09:00
Dean Herbert
e33e0e16e8
Merge branch 'master' into scale-profile-beatmaps 2024-11-22 18:33:37 +09:00
Dean Herbert
a76b4418b9
Change some beatmap default settings to match stable
- Countdown should [be off by
default](9a07485638/osu!/GameplayElements/Beatmaps/Beatmap.cs#L372)
- Samples match playback rate
[also](9a07485638/osu!/GameplayElements/Beatmaps/Beatmap.cs#L210)
2024-11-22 16:55:37 +09:00
Dean Herbert
6fba6de4dc
Merge branch 'master' into multiplayer-remove-cmc-and-composite 2024-11-20 17:24:55 +09:00
Dan Balasescu
a5327aa562
Use properties instead of fields 2024-11-19 18:48:30 +09:00
Salman Alshamrani
74daf85e48 Replace bindable with an event 2024-11-18 06:47:22 -05:00
StanR
4066186b24 Scale beatmap cards down by ~0.8 2024-11-18 14:48:51 +05:00
Salman Alshamrani
b106833663 Fix more test / component breakage 2024-11-17 20:36:12 -05:00
Salman Alshamrani
caf56afba6 Fix various test failures 2024-11-17 19:13:29 -05:00
Salman Alshamrani
28f87407f6 Make DifficultyRecommender rely on the statistics provider 2024-11-17 18:32:17 -05:00
Shin Morisawa
7dff243e6a
use .ToFormattedDuration 2024-11-14 16:59:03 +09:00
Shin Morisawa
64e7e44f28
fix issue 2024-11-14 16:33:52 +09:00
Shin Morisawa
53fcb494ff
Merge branch 'ppy:master' into 1hour-song-multi 2024-11-14 16:32:24 +09:00
Dean Herbert
7f8eebc510
Merge pull request #30578 from smoogipoo/beatmap-legacy-object-type
Simplify convertible hitobject parsing and add `IHasLegacyHitObjectType`
2024-11-14 16:16:44 +09:00
Dean Herbert
d37c1bb6d0
Remove redundant null initialisation and apply nullability 2024-11-14 13:37:58 +09:00