1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-18 14:43:22 +08:00
Commit Graph

45085 Commits

Author SHA1 Message Date
Bartłomiej Dach
d0a39a7733
Merge pull request #31442 from peppy/supporter-button-always-warns
Always show dialog when clicking supporter icon before opening browser
2025-01-07 15:14:53 +01:00
Bartłomiej Dach
5431a08b35
Merge pull request #31435 from peppy/star-range-display-quality
Fix star range display looking a bit bad when changing opacity
2025-01-07 14:58:00 +01:00
Dean Herbert
383fda7431
Fix star range display looking a bit bad when changing opacity 2025-01-07 16:42:06 +09:00
Bartłomiej Dach
01e9c0f15e
Merge pull request #31418 from peppy/intro-file-integrity
Ensure intro files exist in storage during startup
2025-01-07 08:14:40 +01:00
Dan Balasescu
77d9c955ea
Merge pull request #31306 from bdach/aspire-slider-breakage
Fix slider event generator incorrectly not generating repeats when tick distance is zero
2025-01-07 11:50:18 +09:00
Andrei Zavatski
d35b308745 Use cleaner array creation expression 2025-01-07 01:23:19 +03:00
Andrei Zavatski
791ca915e4 Fix allocations in updateSamplePointContractedState 2025-01-07 00:48:58 +03:00
Andrei Zavatski
e8dc09f5bc Reduce HitSampleInfo constants allocations 2025-01-07 00:36:58 +03: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
4f1a6b4688
Always show dialog when clicking supporter icon before opening browser
I managed to do this by accident three times today while testing using
the dashboard display, so it's time to action on it.

Touched on in
https://github.com/ppy/osu/discussions/30740#discussioncomment-11345996.
Was also mentioned recently in discord or another discussion explicitly
but I can't find that.
2025-01-06 17:51:04 +09:00
Dan Balasescu
448790a76f
Merge pull request #31386 from peppy/fix-applying-offset
Fix not being able to apply last play offset after returning to song select
2025-01-06 11:40:12 +09:00
Dean Herbert
37da72d764
Reduce nesting slightly 2025-01-05 00:32:06 +09:00
Dean Herbert
72dfdac2e2
Ensure intro files exist in storage
Guards against user interdiction.

See
[https://discord.com/channels/188630481301012481/1097318920991559880/1324765503012601927](recent)
but not only case of this occurring.
2025-01-04 15:27:49 +09:00
Dean Herbert
e15978cc65
Add test coverage of user deleting intro files 2025-01-04 15:26:42 +09:00
Salman Alshamrani
3fc86f60ee Fix mobile release dialog obstructed by the software keyboard 2025-01-03 22:01:06 -05:00
Dean Herbert
2cd86cbf91
Localise text 2025-01-04 01:28:33 +09:00
Dean Herbert
da85517036
Adjust popup icon animation slightly 2025-01-04 01:28:09 +09:00
Dean Herbert
60fd0be481
Make popup body text left aligned when multiple lines of text are provided 2025-01-04 01:19:56 +09:00
Dean Herbert
1d81dade25
Update copy and require actually clicking button to confirm 2025-01-04 01:13:03 +09:00
Dean Herbert
97d065d887
Only flip value if popup was definitely shown 2025-01-04 00:58:19 +09:00
Salman Alshamrani
c40371c052 Move dialog class location 2025-01-03 00:27:26 -05:00
Salman Alshamrani
039800550c Display popup disclaimer about game state and performance on mobile platforms 2025-01-03 00:20:50 -05:00
Dean Herbert
2a28c5f4de
Add static memory of last applied offset score
I don't really like adding this new session static, but we don't have a
better place to put this.
2025-01-02 16:20:25 +09:00
Dean Herbert
58dcb25bd5
Revert "Clear previous LastLocalUserScore when returning to song select"
This reverts commit ced8dda1a2.
2025-01-02 15:59:00 +09:00
Dan Balasescu
1cb2c86104
Merge pull request #31383 from peppy/editor-toolbar-scrolling-weird
Always block scroll input above editor toolbox areas
2025-01-02 15:11:11 +09:00
Dean Herbert
cca63b599e
Always block scroll input above editor toolbox areas
Originally this was an intentional choice (see
https://github.com/ppy/osu/pull/18088) when these controls were more
transparent and didn't for a solid toolbox area.

But this is no longer the case, so for now let's always block scroll to
match user expectations.

Closes #31262.
2025-01-02 14:31:27 +09:00
Dean Herbert
1211f6cf4c
Add auto-start setting for 10 seconds
As touched on in
https://github.com/ppy/osu/discussions/31205#discussioncomment-11671185.

Doesn't require server-side changes as the server just uses a
`TimeSpan`.
2025-01-02 13:06:34 +09:00
Dan Balasescu
9da27b5fe5
Merge pull request #31305 from bdach/round-coordinates-on-legacy-export
Round object coordinates to nearest integers on legacy export rather than truncating
2025-01-01 21:05:18 +09:00
Bartłomiej Dach
929173c971
Merge pull request #31342 from minetoblend/feature/speedy-metronome
Speed up metronome in timing screen when pressing control key
2024-12-31 14:49:48 +01:00
Dean Herbert
6ff3110433
Consolidate variable 2024-12-31 21:14:15 +09:00
Unili
acd51c8e9d
Merge branch 'ppy:master' into master 2024-12-31 11:35:55 +08:00
CuNO3
22c8229993 Ignore whitespace while 2FA authentication 2024-12-31 10:43:48 +08:00
Marvin Schürz
0641d2b510 Remove turboweird function and update displayed bpm text 2024-12-30 19:12:21 +01:00
Bartłomiej Dach
693db097ee
Take custom bank name length into account when collapsing sample point indicators
Would close https://github.com/ppy/osu/issues/31312.

Not super happy with the performance overhead of this, but this is
already a heuristic-based implementation to avoid every-frame
`.ChildrenOfType<>()` calls or similar, so not super sure how to do
better. The `Array.Contains()` check stands out in profiling, but
without it the indicators can collapse *too* eagerly sometimes.
2024-12-30 12:04:41 +01:00
Bartłomiej Dach
f18114d2fb
Merge pull request #31282 from peppy/fix-volume-key-repeat
Fix volume adjust key repeat not working as expected
2024-12-30 08:49:35 +01:00
Marvin Schürz
9ea7afb38e Use return value instead of field to force weight position update 2024-12-30 03:59:54 +01:00
Marvin Schürz
aa6763785c Use 3x speed instead when beat snap divisor is divisible by 3 2024-12-30 03:21:52 +01:00
Marvin Schürz
8be500535d Speed up metronome when holding control 2024-12-30 03:13:22 +01:00
Dean Herbert
10ee2e28c2
Merge pull request #31303 from bdach/pause-on-gameplay-test
Pause playback when entering gameplay test from editor
2024-12-28 04:41:28 +09:00
Dean Herbert
1b2a223a5f
Fix failing test scene due to new dependency 2024-12-28 01:02:15 +09:00
Bartłomiej Dach
6a6db5a22b
Populate metadata from ID3 tags when changing beatmap audio track in editor
- Closes https://github.com/ppy/osu/issues/21189
- Supersedes / closes https://github.com/ppy/osu-framework/pull/5627
- Supersedes / closes https://github.com/ppy/osu/pull/22235

The reason why I opted for a complete rewrite rather than a revival of
that aforementioned pull series is that it always felt quite gross to me
to be pulling framework's audio subsystem into the task of reading ID3
tags, and I also partially don't believe that BASS is *good* at reading
ID3 tags. Meanwhile, we already have another library pulled in that is
*explicitly* intended for reading multimedia metadata, and using it
does not require framework changes. (And it was pulled in explicitly for
use in the editor verify tab as well.)

The hard and dumb part of this diff is hacking the gibson such that
the metadata section on setup screen actually *updates itself*
after the resources section is done doing its thing. After significant
gnashing of teeth I just did the bare minimum to make work by caching
a common parent and exposing an `Action?` on it. If anyone has better
ideas, I'm all ears.
2024-12-27 15:16:03 +01:00
Dean Herbert
a9a5bb2c6a
Remove duplicated block 2024-12-27 21:36:07 +09:00
Bartłomiej Dach
e7225399a2
Fix slider event generator incorrectly not generating repeats when tick distance is zero
RFC. This closes https://github.com/ppy/osu/issues/31186.

To explain why: The issue occurs on
https://osu.ppy.sh/beatmapsets/594828#osu/1258033, specifically on the
slider at time 128604. The failure site is

	fa0d2f4af2/osu.Game.Rulesets.Osu/Edit/Blueprints/Sliders/SliderCircleOverlay.cs (L65-L66)

wherein `LastRepeat` is `null`, even though the slider's `RepeatCount`
is 1 and thus `SpanCount` is 2.

In this case, `SliderEventGenerator` is given a non-zero `tickDistance`
but a zero `length`. The former is clamped to the latter:

	fa0d2f4af2/osu.Game/Rulesets/Objects/SliderEventGenerator.cs (L34)

Because of this, a whole block of code pertaining to tick generation
gets turned off, because of zero tick spacing - however, that block also
includes within it *repeat* generation, for seemingly very little reason
whatsoever:

	fa0d2f4af2/osu.Game/Rulesets/Objects/SliderEventGenerator.cs (L47-L77)

While a zero tick distance would indeed cause `generateTicks()` to loop
forever, it should have absolutely no effect on repeats.

While this *is* ultimately an aspire-tier bug caused by people pushing
things to limits, I do believe that in this case a fix is warranted
because of how hard the current behaviour violates invariants. I do not
like the possibility of having a slider with multiple spans and no
repeats.
2024-12-27 12:38:31 +01:00
Bartłomiej Dach
e9762422b3
Round object coordinates to nearest integers rather than truncating
Addresses https://github.com/ppy/osu/issues/31256.
2024-12-27 11:10:29 +01:00
Bartłomiej Dach
0d16ed028b
Add setters to hitobject coordinate interfaces 2024-12-27 11:01:47 +01:00
Bartłomiej Dach
5abad07412
Pause playback when entering gameplay test from editor
Closes https://github.com/ppy/osu/issues/31290.

Tend to agree that this is a good idea for gameplay test at least. Not
sure about other similar interactions like exiting - I don't think it
matters what's done in those cases, because for exiting timing is in no
way key, so I just applied this locally to gameplay test.
2024-12-27 09:08:16 +01:00
Dean Herbert
2a374c0695
Add migration 2024-12-26 15:46:12 +09:00
Dean Herbert
e752531aec
Fix volume adjust key repeat not working as expected
Regressed in https://github.com/ppy/osu/pull/31146.

Closes part of https://github.com/ppy/osu/issues/31267.
2024-12-26 15:05:59 +09:00
kongehund
1f60adbaf1 Switch scroll direction for beat snap
Matches stable better
2024-12-26 00:35:21 +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