1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-31 05:32:57 +08:00
Commit Graph

45104 Commits

Author SHA1 Message Date
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
Dean Herbert
df3b300fff
Merge pull request #31226 from frenzibyte/fix-raw-input-mobile
Add `Hidden` cursor state flag on non-desktop platforms as well
2024-12-24 21:35:50 +09:00
Bartłomiej Dach
287b880ec7
Merge pull request #31259 from peppy/intro-volume-adjust
Fix adjusting volume using scroll wheel not working during intro
2024-12-24 10:18:10 +01:00
Dean Herbert
ce1eda7e54
Fix adjusting volume using scroll wheel not working during intro 2024-12-24 17:11:21 +09:00
Dean Herbert
d8686f55f7
Slightly reduce background brightness at main menu when seasonal lighting is active 2024-12-24 17:10:48 +09:00
Bartłomiej Dach
1f90be3fea
Merge branch 'master' into editor-beat-snap-adjust-scroll 2024-12-24 08:21:34 +01:00
Bartłomiej Dach
d9be172647
Add explanatory comment for schema version bump 2024-12-24 08:21:27 +01:00
Dean Herbert
a5d354d753
Update framework 2024-12-24 15:17:10 +09:00
Dean Herbert
362311d040
Merge pull request #31220 from normalid-awa/feature/skin/rename-skin
Add ability to rename the skin
2024-12-24 14:24:48 +09:00
Dean Herbert
85f5234880
Merge pull request #31238 from frenzibyte/make-featured-artist-setting
Save "featured artists" filter to user settings and disable toggling on iOS
2024-12-24 14:07:20 +09:00
Dean Herbert
378bef34ef
Change order of skin layout editor button for better visual balance 2024-12-24 13:42:18 +09:00
Dean Herbert
ae9c7e1b35
Adjust layout and remove localisable strings for temporary buttons 2024-12-24 13:17:58 +09:00
Dean Herbert
8762e3fedb
Always show tooltip, and reword to be always applicable 2024-12-24 12:25:18 +09:00
Dean Herbert
282c67d14b
Update resources 2024-12-24 11:59:45 +09:00
Dean Herbert
7e8aaa68ff
Add keywords for intro-related settings 2024-12-24 11:46:39 +09:00
Salman Alshamrani
6b635d588f Add tooltip 2024-12-23 10:59:06 -05:00
Salman Alshamrani
7e3477f4bb Remove unnecessary guarding 2024-12-23 10:54:52 -05:00
Salman Alshamrani
050bf9ec60 Keep 'x' symbol visible even while disabled 2024-12-23 10:52:18 -05:00
Dean Herbert
9ff4a58fa3
Add migration to update users which have previous default bindings for beat snap 2024-12-23 22:14:03 +09:00
Dean Herbert
097828ded2
Fix incorrect mouse wheel mappings 2024-12-23 22:07:42 +09:00
Dean Herbert
7b9f776a14
Merge pull request #31206 from peppy/christmas
Add christmas / seasonal mode
2024-12-23 16:49:38 +09:00
Dean Herbert
f12fffd116
Fix more than obvious test failure
Please run tests please run tests please run tests.
2024-12-23 14:43:36 +09:00
Dean Herbert
1a7feeb4ed
Use virtual property rather than inline iOS conditional 2024-12-23 14:39:07 +09:00
Salman Alshamrani
fcfab9e53c Fix spacing 2024-12-22 10:14:52 -05:00
Dean Herbert
0aed625bb8
Rename variable and adjust commentary 2024-12-22 23:58:35 +09:00
Dean Herbert
e716919a07
Remove redundant && true
Co-authored-by: Susko3 <Susko3@protonmail.com>
2024-12-22 22:57:17 +09:00
Salman Alshamrani
589e187a80 Disable ability to toggle "featured artists" beatmap listing filter in iOS 2024-12-22 07:50:08 -05:00
Salman Alshamrani
c24f690019 Allow disabling filter items in beatmap listing overlay 2024-12-22 07:47:57 -05:00
Salman Alshamrani
431d57a8a1 Make "featured artist" beatmap listing filter persist in config 2024-12-21 18:18:46 -05:00
Joseph Madamba
ce5a205993
Capitalise English 2024-12-21 11:37:30 -08:00
Salman Alshamrani
1c48fdb235 Add Hidden cursor state flag on all platforms 2024-12-21 14:03:20 -05:00
Salman Alshamrani
7cd3979866 Fix typo in main menu tip 2024-12-21 12:59:02 -05:00
jkh675
ae7f1a9ef1 Fix code quality 2024-12-21 22:27:21 +08:00
jkh675
9a0d9641ab Select all on focus when popover just open 2024-12-21 21:26:56 +08:00
Dean Herbert
1174f46656
Add menu tip hinting at correct spelling of laser 2024-12-21 21:41:48 +09:00
jkh675
5f617e6697 Implement rename skin popover and button 2024-12-21 20:31:12 +08:00
Dean Herbert
d897a31f0c
Add extra safeties against null ref when rulesets are missing 2024-12-21 20:30:00 +09:00
Dean Herbert
1fcd953e4a
Fetch ruleset before initialising beatmap the first time 2024-12-21 20:17:27 +09:00
Dean Herbert
881623d47d
Merge branch 'master' into christmas 2024-12-20 23:11:20 -08:00
Dean Herbert
9b1d94b5be
Merge branch 'master' into skinnable-mod-display 2024-12-20 21:27:31 +09:00
Dean Herbert
a9cf31f5d8
Usings 2024-12-20 21:27:24 +09:00
Bartłomiej Dach
e62b329d4a
Merge pull request #31143 from peppy/no-pause-cooldown-break-intro
Skip the pause cooldown when in intro / break time
2024-12-20 12:29:46 +01:00
Dean Herbert
c16bfa010b
Merge branch 'master' into christmas 2024-12-20 20:07:48 +09:00
Bartłomiej Dach
4551d59f39
Give skinnable mod display a minimum size
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-12-20 12:06:35 +01:00
Dean Herbert
139fb2cdd3
Revert and fix some tests still 2024-12-20 19:44:43 +09:00
Bartłomiej Dach
e23085cdb4
Merge branch 'master' into editor-beat-snap-adjust-scroll 2024-12-20 11:05:18 +01:00
Bartłomiej Dach
767be9d0d6
Merge pull request #31146 from peppy/global-volume-scroll-better-maybe
Move "global" scroll-adjusts-volume to a per-screen component-based implementation
2024-12-20 11:04:57 +01:00
Bartłomiej Dach
18e2912206
Merge pull request #31198 from peppy/seasonal-no-login
Load seasonal backgrounds without requiring being logged in
2024-12-20 10:21:27 +01:00
Bartłomiej Dach
0a87fb5993
Merge branch 'master' into global-volume-scroll-better-maybe 2024-12-20 09:58:25 +01:00
Bartłomiej Dach
25373c3f9c
Fix backwards repeat check 2024-12-20 09:50:58 +01:00
Dean Herbert
48ce68694a
Add missing partial 2024-12-20 17:06:47 +09:00
Dean Herbert
5d17014698
Fix mouse wheel disable not working during gameplay 2024-12-20 16:31:06 +09:00
Dean Herbert
f5b0198077
Fix test faiulres when seasonal set to true due to non-circles intro 2024-12-20 16:02:43 +09:00
Dean Herbert
7ebc9dd843
Disable seasonal for now 2024-12-20 15:35:31 +09:00
Dean Herbert
3fc9990411
Fix some failing tests 2024-12-20 15:35:31 +09:00
Dean Herbert
8e9377914d
Subclass menu logo visualisation 2024-12-20 15:35:31 +09:00
Dean Herbert
ad4a8a1e0a
Subclass menu flashes instead of adding local code to it 2024-12-20 15:35:30 +09:00
Dean Herbert
2a720ef200
Move christmas intro screen to seasonal namespace 2024-12-20 15:28:24 +09:00
Dean Herbert
e5dbf9ce45
Subclass osu logo instead of adding much code to it 2024-12-20 15:28:24 +09:00
Dean Herbert
8c7af79f96
Tidy up for pull request attempt 2024-12-20 14:46:21 +09:00
Dean Herbert
4924a35c31
Fix light expiry 2024-12-20 14:46:21 +09:00
Dean Herbert
22f3831c0d
Add logo hat 2024-12-20 14:46:21 +09:00
Dean Herbert
0954e0b032
Add seasonal lighting
Replaces kiai fountains for now.
2024-12-20 14:46:20 +09:00
Dean Herbert
024029822a
Add christmas intro 2024-12-20 14:46:20 +09:00
Dean Herbert
618a9849e3
Increase intro time allowance to account for seasonal tracks with actual long intros 2024-12-20 14:46:20 +09:00
Dean Herbert
a4bf29e98f
Adjust menu logo visualiser to use seasonal colours 2024-12-20 14:19:12 +09:00
Dean Herbert
180a381b6f
Adjust menu side flashes to be brighter and coloured when seasonal active 2024-12-20 14:19:12 +09:00
Dean Herbert
80ae7942df
Add christmas-specific logo heartbeat 2024-12-20 14:19:12 +09:00
Dean Herbert
a94ada2ec6
Update resources 2024-12-20 14:19:03 +09:00
Dean Herbert
55dff1f0ef
Merge branch 'master' into skinnable-mod-display 2024-12-20 14:08:51 +09:00
Dean Herbert
7c1482366d
Remove unused using statements 2024-12-20 14:07:27 +09:00
Dean Herbert
9f8c390735
Update framework 2024-12-20 12:39:33 +09:00
Dean Herbert
df607ac3ea
Load seasonal backgrounds without requiring being logged in 2024-12-20 00:38:54 +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
2cab8f4e8a
Add localisation support 2024-12-19 15:03:55 +01:00
Bartłomiej Dach
e458f540ac
Adjust formatting 2024-12-19 14:54:57 +01:00
Bartłomiej Dach
7d1473c5d0
Simplify expand/contract code 2024-12-19 14:52:27 +01:00
Bartłomiej Dach
772ac2d326
Fix mod display not fading out after start of play
This was very weird on master - `ModDisplay` applied a fade-in on the
`iconsContainer` that lasted 1000ms, and `HUDOverlay` would stack
another 200ms fade-in on top if a replay was loaded. Moving that first
fadeout to a higher level broke fade-out because transforms got
overwritten.
2024-12-19 14:48:18 +01:00
Bartłomiej Dach
b99b3a5bfd
Merge branch 'master' into tournament-hide-mp-commands 2024-12-19 13:10:45 +01:00
Bartłomiej Dach
6dc681f0e9
Annotate virtual as potentially nullable 2024-12-19 12:50:48 +01:00
Dean Herbert
dedf8ad093
Update resources 2024-12-19 17:42:00 +09:00
mini
c7354d9c41
Apply type inheritance check 2024-12-19 09:21:49 +01:00
Dean Herbert
47d81e7dee
Fix null inspections on GameplayChatDisplay 2024-12-17 19:10:09 +09:00
Dean Herbert
09fc30e377
Hide !mp commands from tournament streaming chat 2024-12-16 17:39:27 +09:00
Dean Herbert
d97ea78136
Change beat snap divisior adjust defaults to be Ctrl+Scroll instead of Ctrl+Shift+Scroll
Matches stable.

- [ ] Depends on https://github.com/ppy/osu/pull/31146, else this will
adjust the global volume.
2024-12-16 15:22:30 +09:00
Dean Herbert
bdd417c1a1
Move "global" scroll-adjusts-volume to a per-screen component-based implementation 2024-12-16 15:21:07 +09:00
Bartłomiej Dach
d72a0b04b8
Merge pull request #31084 from NicholasChin28/mania-profile-overlay-tooltip
Add missing mania tooltip overlay for 4k and 7k
2024-12-16 14:22:41 +09:00
Dean Herbert
85ada3275b
Skip the pause cooldown when in intro / break time
Had a quick look at adding test coverage in `TestScenePause` but the
setup to get into either of these states seems a bit annoying..
2024-12-16 14:14:30 +09:00