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

15315 Commits

Author SHA1 Message Date
Sheppsu
1ed94e598a Merge branch 'master' into replay-analysis-settings 2024-09-01 19:32:25 -04:00
Dean Herbert
e79604cc13
Merge pull request #29542 from frenzibyte/show-daily-challenge-intro-once-per-session
Show daily challenge intro screen once per session
2024-09-01 21:27:16 +09:00
Andrei Zavatski
837fa1b8dc Use FastCircle for kiai visualisation 2024-08-31 17:32:24 +03:00
Andrei Zavatski
501ea68a21 Merge branch 'master' into fast-circle 2024-08-31 17:31:30 +03:00
Dean Herbert
6b8b49e4f1
Simplify scroll speed point display code now that it only serves one purpose 2024-08-31 13:14:56 +09:00
Andrei Zavatski
225418dbb3 Rework kiai handling in summary timeline 2024-08-31 01:59:40 +03:00
Andrei Zavatski
f5a2b5ea03 Use FastCircle in demanding places in the editor 2024-08-30 17:45:26 +03:00
Bartłomiej Dach
4811481483
Merge pull request #29639 from peppy/detached-beatmap-cache
Improve song select load and reload with large beatmap databases
2024-08-30 15:00:20 +02:00
Dean Herbert
7b6e62283f
Fix beatmap not being detached on hide/unhide
The explicit detach call was removed from `updateBeatmapSet`, causing
this to occur. We could optionally add it back (it will be a noop in all
cases though).
2024-08-30 18:50:08 +09:00
Dean Herbert
1b9942cb30
Mark BeatmapSets as internal 2024-08-30 18:44:04 +09:00
Dean Herbert
291dd5b101
Remove TODO 2024-08-30 18:37:27 +09:00
Dan Balasescu
ae0931cfc3
Merge pull request #29653 from peppy/fix-multiplayer-event-leak
Fix event leak in `Multiplayer` implementation
2024-08-30 16:58:27 +09:00
Dean Herbert
3bc42db3a6
Fix event leak in Multiplayer implementation
Very likely closes #29088. It's the only thing I could find odd in the
memory dump.
2024-08-30 16:14:19 +09:00
OliBomby
ba0c4df2a9 Merge remote-tracking branch 'upstream/master' into doubleclick 2024-08-29 19:34:18 +02:00
OliBomby
8fe7ab131c dont seek on right-click, only on keyboard request 2024-08-29 19:34:14 +02:00
Dan Balasescu
4e8fb0dcab
Merge branch 'master' into scroll-speed-std 2024-08-30 00:41:05 +09:00
Dean Herbert
dd675fef45
Merge pull request #29644 from smoogipoo/unplayed-filter-query-2
Adjust `played` song select filter to accept a boolean value
2024-08-29 23:52:37 +09:00
Dean Herbert
c013974790
Merge branch 'master' into detached-beatmap-cache 2024-08-29 22:49:11 +09:00
Dan Balasescu
fec8fa46fa
Merge pull request #29533 from bdach/fix-sample-bank-stuff-again
Fix incorrect bank set / sample addition logic
2024-08-29 21:36:26 +09:00
Dan Balasescu
fde790c014
Rework played filter to a boolean value 2024-08-29 20:59:48 +09:00
Dean Herbert
def1abaeca
Fix some tests not always waiting long enough for beatmap loading
These used to work because there was a huge blocking load operation,
which is now more asynchronous.

Note that the change made in `SongSelect` is not required, but defensive
(feels it should have been doing this the whole time).
2024-08-29 18:42:43 +09:00
Dean Herbert
1776d38809
Remove loadedTestBeatmaps flag 2024-08-28 23:28:44 +09:00
Dean Herbert
e04b5bb3f2
Tidy up test beatmap loading 2024-08-28 23:28:44 +09:00
Dean Herbert
9123d2cb7f
Fix multiple test failures 2024-08-28 23:28:43 +09:00
Dean Herbert
dd4a1104e4
Always debounce external Filter requests (except for tests)
The only exception to the rule here was "when screen isn't active apply
without debounce" but I'm not sure we want this. It would cause a
stutter on returning to song select and I'm not even sure this is a
common scenario.

I'd rather remove it and see if someone finds an actual case where this
is an issue.
2024-08-28 19:13:50 +09:00
Dean Herbert
336abadbd1
Allow running initial filter criteria asynchronously
This reverts a portion of https://github.com/ppy/osu/pull/9539.

The rearrangement in `SongSelect` is required to get the initial filter
into `BeatmapCarousel` (and avoid the `FilterChanged` event firing,
causing a delayed/scheduled filter application).
2024-08-28 19:13:50 +09:00
Dean Herbert
5ed0c6e91a
Remove song select preloading
Really unnecessary now.
2024-08-28 19:13:49 +09:00
Dean Herbert
b1f653899c
Fix enumeration over modified collection 2024-08-28 19:13:49 +09:00
Dean Herbert
81b36d897d
Fix null reference in change handling code 2024-08-28 19:13:49 +09:00
Dean Herbert
081c9eb21b
Fix incorrect cancellation / disposal handling of DetachedBeatmapStore 2024-08-28 17:21:19 +09:00
Dean Herbert
4d42274771
Use bindable list implementation 2024-08-28 16:03:37 +09:00
Dean Herbert
466ed5de78
Add basic detached beatmap store 2024-08-28 16:03:37 +09:00
Dean Herbert
eb70a1b72d
Change middle text to only animate initially 2024-08-28 15:57:42 +09:00
Dean Herbert
47a52d10eb
Revert "Add slight parallax to centre content"
This reverts commit 90d06d4496.
2024-08-28 15:32:59 +09:00
OliBomby
b5b4f915a9 Automatic seek to sample point on right-click 2024-08-27 19:40:33 +02:00
OliBomby
daad476593 Add float comparison leniency just in case 2024-08-27 19:04:16 +02:00
OliBomby
71044a0766 fix difference in sample time calculation 2024-08-27 19:02:40 +02:00
Bartłomiej Dach
a3b0ff4808
Merge branch 'master' into break-overlay-animation 2024-08-27 11:17:56 +02:00
Bartłomiej Dach
321e509f11
Merge pull request #29615 from peppy/break-overlay-improvements
Add shadow around break overlay middle content to make sure it remains visible
2024-08-27 11:16:08 +02:00
Dean Herbert
90d06d4496
Add slight parallax to centre content 2024-08-27 16:37:27 +09:00
Bartłomiej Dach
8d7053d367
Merge pull request #29560 from peppy/fix-daily-challenge-intro-mod-display
Fix mod icons potentially showing incorrectly at daily challenge intro
2024-08-27 09:37:11 +02:00
Dean Herbert
6f1664f0a6
Add beat-synced animation to break overlay
I've been meaning to make the progress bar synchronise with the beat
rather than a continuous countdown, just to give the overlay a bit more
of a rhythmic feel.

Not completely happy with how this feels but I think it's a start?

I had to refactor how the break overlay works in the process. It no
longer creates transforms for all breaks ahead-of-time, which could be
argued as a better way of doing things. It's more dynamically able to
handle breaks now (maybe useful for the future, who knows).
2024-08-27 16:34:37 +09:00
Dean Herbert
98faa07590
Apply NRT to BreakOverlay 2024-08-27 15:01:51 +09:00
Dean Herbert
797b020747
Add shadow around break overlay middle content to make sure it remains visible 2024-08-27 15:01:50 +09:00
Dean Herbert
abdbe510b8
Move break overlay (and cursor) further forward in depth
I didn't really want to move the cursor in front of the HUD, but we face
a bit of an impossible scenario otherwise (it should definitely be in
front of the break overlay for visibility).

So I'll deal with it for now.
2024-08-27 14:52:11 +09:00
Dean Herbert
84bceca778
Assume we can always fetch the ruleset 2024-08-26 15:38:58 +09:00
Dean Herbert
60271fb0f7
Merge pull request #29564 from peppy/skinnable-components-what-2
Remove requirement of `base` calls to ensure user skin container layouts are retrieved
2024-08-23 17:52:46 +09:00
OliBomby
2de5ecceb8 Merge remote-tracking branch 'upstream/master' into scroll-speed-std 2024-08-22 20:17:14 +02:00
OliBomby
ad8e7f1897 Fix scroll speed visualisation missing on start kiai effect points
They were being drawn far offscreen because the width of the kiai multiplied with the X coordinate of the scroll speed vis.
2024-08-22 20:17:09 +02:00
OliBomby
998b5fdc12 Add property EditorShowScrollSpeed to Ruleset 2024-08-22 19:53:34 +02:00
OliBomby
adbdb39e9f move public member to top of file 2024-08-22 19:18:38 +02:00
OliBomby
0db068e423 allow repeating on seek actions 2024-08-22 19:15:53 +02:00
Bartłomiej Dach
bd6943ebc2
Merge pull request #29537 from normalid-awa/feature/song-select/allow-copy-url-from-context-menu
Allow copying beatmap link in song select carousel context menu
2024-08-22 14:03:39 +02:00
Dean Herbert
58552e9768
Add missing user ruleset to link copying for beatmap panels 2024-08-22 19:18:41 +09:00
Dean Herbert
9a21174582
Move GlobalSkinnableContainers to global scope 2024-08-22 18:46:07 +09:00
Dean Herbert
f37cab0c6e
Rename SkinComponentsContainerLookup to GlobalSkinnableContainerLookup 2024-08-22 18:39:36 +09:00
Dean Herbert
41756520b1
Rename SkinComponentsContainer to SkinnableContainer 2024-08-22 17:42:50 +09:00
Bartłomiej Dach
df94c22a29
Merge pull request #29545 from peppy/timeline-redesign-in-circles
Further timeline usability tweaks
2024-08-22 08:39:34 +02:00
Bartłomiej Dach
d33f4837fa
Merge pull request #29532 from bdach/redesign-timing-table-tracking
Redesign timing table tracking
2024-08-22 08:21:39 +02:00
Dean Herbert
9df12e3d87
Move seek button to left to differentiate mutating operations 2024-08-22 14:15:36 +09:00
Dean Herbert
54e5f1c9f0
Merge pull request #29556 from frenzibyte/kiai-star-bursts
Add star fountains/bursts when entering kiai mode in gameplay
2024-08-22 14:14:25 +09:00
Dean Herbert
f068b7a521
Move copy-to-url method to OsuGame to centralise toast popup support 2024-08-22 14:03:41 +09:00
Dean Herbert
7f5f3a4589
Fix mod icons potentially showing incorrectly at daily challenge intro
Prefer using the beatmap's rulesets over the current user selection.

Closes https://github.com/ppy/osu/issues/29559.
2024-08-22 13:57:19 +09:00
Salman Ahmed
922814fab3 Fix flag reset on connection dropouts 2024-08-22 06:00:37 +09:00
Dean Herbert
ac5a3a0959
Remove one unused parameter 2024-08-22 02:17:11 +09:00
Dean Herbert
87123d99bf
Move URL implementation to extension methods and share with other usages 2024-08-22 02:08:01 +09:00
Dean Herbert
18a3ab2ffd
Use "link" instead of "URL" 2024-08-22 01:45:43 +09:00
Dean Herbert
a943000579
Merge pull request #29435 from OliBomby/improve-snaps
Fix timeline snapping ignoring nearby timing points
2024-08-22 01:36:30 +09:00
Dean Herbert
fb5fb78fd3
Move zero marker below control points to avoid common overlap scenario 2024-08-22 01:09:22 +09:00
Dean Herbert
843b10ef34
Add back incorrectly removed control point display toggle 2024-08-22 01:05:47 +09:00
Dean Herbert
2876cb73bd
Merge pull request #28991 from Layendan/master
Add collection and favourite buttons to results screen
2024-08-21 23:59:26 +09:00
OliBomby
423feadd64 Revert "add arrow indicator"
This reverts commit 1ce9e97fd4.
2024-08-21 14:12:58 +02:00
Bartłomiej Dach
28d0a24555
Fix the fix
The more proper way to do this would be to address the underlying issue,
which is https://github.com/ppy/osu/issues/29546, but let's do this
locally for now.
2024-08-21 12:27:56 +02:00
Salman Ahmed
c92af71029 Add in-gameplay version of kiai star fountains/burst 2024-08-21 17:34:38 +09:00
jkh675
3d5b57454e Fix null reference 2024-08-21 16:21:49 +08:00
Dean Herbert
fef56cc29e
Remove expanding behaviour of timeline completely 2024-08-21 16:57:52 +09:00
Dean Herbert
7e6490133d
Adjust visuals of tick display (and fine tune some other timeline elements) 2024-08-21 16:46:14 +09:00
Dean Herbert
1a48a6f654
Reduce size of hit objects on timeline 2024-08-21 16:46:13 +09:00
Dean Herbert
3065f808a7
Simplify timing point display on timeline 2024-08-21 16:46:13 +09:00
Dean Herbert
a0002943a1
Adjust centre marker visuals a bit 2024-08-21 16:46:12 +09:00
Bartłomiej Dach
c4f08b42ab
Use colours to distinguish buttons better 2024-08-21 09:05:33 +02:00
OliBomby
1ce9e97fd4 add arrow indicator 2024-08-20 23:38:38 +02:00
OliBomby
ae6d855f8d Merge remote-tracking branch 'upstream/master' into doubleclick 2024-08-20 23:19:27 +02:00
Salman Ahmed
637c9aeef0 Add DailyChallengeIntroPlayed session static 2024-08-21 03:37:04 +09:00
Salman Ahmed
0d358a1dae Fix resume overlay appearing behind HUD/skip overlays 2024-08-21 02:53:11 +09:00
jkh675
8e273709f1 Implement copy url in beatmap and beatmap set carousel 2024-08-20 22:48:11 +08:00
Dan Balasescu
5bb94000d3
Merge pull request #29534 from bdach/fix-divisor-crash
Fix crash on attempting to edit particular beatmaps
2024-08-20 22:06:32 +09:00
Dan Balasescu
44213a34ae
Merge pull request #29508 from peppy/hold-for-menu-sometimes
Change "hold for menu" button to only show for touch by default
2024-08-20 21:45:50 +09:00
Bartłomiej Dach
bb964e32fa
Fix crash on attempting to edit particular beatmaps
Closes https://github.com/ppy/osu/issues/29492.

I'm not immediately sure why this happened, but some old locally
modified beatmaps in my local realm database have a `BeatDivisor` of 0
stored, which is then passed to
`BindableBeatDivisor.SetArbitraryDivisor()`, which then blows up.

To stop this from happening, just refuse to use values outside of a sane
range.
2024-08-20 13:51:58 +02:00
Bartłomiej Dach
c9f1ef5361
Fix incorrect bank set / sample addition logic
Closes https://github.com/ppy/osu/issues/29361.

Typical case of a few early-returns gone wrong leading to `NodeSamples`
not being checked correctly.
2024-08-20 12:37:01 +02:00
Dean Herbert
a633fcdb49
Merge branch 'master' into redesign-timing-table-tracking 2024-08-20 19:16:03 +09:00
Bartłomiej Dach
f0ddb6daa4
Merge pull request #29445 from OliBomby/transparent-break
Make break periods in bottom timeline transparent
2024-08-20 11:46:02 +02:00
Bartłomiej Dach
a33294ac42
Redesign timing table tracking
- On entering the screen, the timing point active at the current instant
  of the map is selected. This is the *only* time where the selected
  point is changed automatically for the user.

- The ongoing automatic tracking of the relevant point after the initial
  selection is *gone*. Even knowing the fact that it was supposed to
  track the supposedly relevant "last selected type" of control point,
  I always found the tracking to be fairly arbitrary in how it works.
  Removing this behaviour also incidentally fixes
  https://github.com/ppy/osu/issues/23147.

  In its stead, to indicate which timing groups are having an effect,
  they receive an indicator line on the left (coloured using the
  relevant control points' representing colours), as well as a slight
  highlight effect.

- If there is no control point selected, the table will autoscroll to
  the latest timing group, unless the user manually scrolled the table
  before.

- If the selected control point changes, the table will autoscroll to
  the newly selected point, *regardless* of whether the user manually
  scrolled the table before.

- A new button is added which permits the user to select the latest
  timing group. As per the point above, this will autoscroll the user
  to that group at the same time.
2024-08-20 11:14:42 +02:00
Dean Herbert
bccc797bcb
Move break display to background of summary timeline 2024-08-20 17:45:44 +09:00
Bartłomiej Dach
373ff47a94
Remove dead row attribute classes
These aren't shown on the control point table since difficulty and
sample control points were moved into objects.
2024-08-20 09:53:40 +02:00
Layendan
59ba48bc81 Fix crash if favourite button api request fails 2024-08-19 07:58:20 -07:00
Bartłomiej Dach
7693d4c039
Merge branch 'master' into master 2024-08-19 14:30:20 +02:00
Dean Herbert
6985e2e657
Increase default visibility on touch platforms 2024-08-19 20:32:05 +09:00
Dean Herbert
005b1038a3
Change "hold for menu" button to only show for touch by default 2024-08-19 20:23:25 +09:00
Bartłomiej Dach
24a0a3c47f
Merge pull request #29476 from EVAST9919/buffered-editor-grid
Improve draw performance of editor grids
2024-08-19 12:44:08 +02:00