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

41992 Commits

Author SHA1 Message Date
Bartłomiej Dach
27b97a3c4d
Convert selected legacy skin sprites to grayscale
Matching stable.

Closes https://github.com/ppy/osu/issues/9858.

I would have liked to apply this in the taiko transformer itself, but
the limited accessibility of texture uploads, and as such the raw image
data, sort of prevents that...
2024-02-06 12:33:37 +01:00
Dan Balasescu
c18cd65081
Merge pull request #26694 from chandler14362/hit-object-result-allocations
Avoid closure allocations when applying hit object results
2024-02-06 17:49:26 +09:00
Bartłomiej Dach
86e1e57fab
Merge pull request #27054 from Loreos7/update-related-notifications-localisation
Localise update-related process strings
2024-02-06 09:07:58 +01:00
Dan Balasescu
ca36919f10
Merge pull request #26863 from EVAST9919/scrolling-alloc
Further reduce allocation overhead in `ScrollingHitObjectContainer`
2024-02-06 15:57:31 +09:00
Andrei Zavatski
fc4234214e Merge branch 'master' into results-clean 2024-02-06 08:03:10 +03:00
Salman Ahmed
b78c6ed673 Update design of "unprocessed PP" placeholder to match web 2024-02-05 23:29:24 +03:00
Salman Ahmed
6b7ffc240b Support displaying "unranked PP" placeholder 2024-02-05 23:29:24 +03:00
Salman Ahmed
4be4ed7ab2 Add "ranked" attribute to scores 2024-02-05 23:29:24 +03:00
Bartłomiej Dach
938bbe38b7
Merge pull request #27033 from frenzibyte/fix-rooms-container-something
Fix selected room bindable being set to null regardless of the removed room
2024-02-05 21:04:34 +01:00
Bartłomiej Dach
07c257f387
Merge pull request #26942 from Loreos7/import-from-stable-localisation
Localise remaining strings on import screen of the first-run setup
2024-02-05 20:01:47 +01:00
Bartłomiej Dach
aff7e1fb8c
Merge pull request #27015 from Loreos7/settings-remaining-strings-localisation
Localise remaining strings in settings section
2024-02-05 20:00:42 +01:00
Bartłomiej Dach
f65449375e
Merge branch 'master' into scrolling-alloc 2024-02-05 19:59:47 +01:00
Bartłomiej Dach
951b69d0d5
Merge branch 'master' into fix-rooms-container-something 2024-02-05 19:56:54 +01:00
Bartłomiej Dach
4b5348bbbf
Merge branch 'master' into ur-alloc 2024-02-05 19:14:08 +01:00
Bartłomiej Dach
7b03bebd5f
Move algorithm description to remarks section of xmldoc 2024-02-05 18:57:57 +01:00
Bartłomiej Dach
a5aeb2ff9e
Use better variable names
It's not the 1970s. We can spare a few extra letters.
2024-02-05 18:56:20 +01:00
Bartłomiej Dach
c12a7b3edf
Merge branch 'master' into fix-rooms-container-something 2024-02-05 18:51:46 +01:00
Bartłomiej Dach
1582536f04
Merge pull request #26924 from EVAST9919/user-card-containers
Rework `UserPanel`s to reduce container nesting
2024-02-05 18:46:42 +01:00
Bartłomiej Dach
462a1c5186
Merge pull request #27021 from frenzibyte/fix-rooms-container-performance
Fix multiplayer/playlists lounge screen disposing rooms synchronously
2024-02-05 18:33:13 +01:00
Bartłomiej Dach
26e4b0bacb
Merge branch 'master' into settings-remaining-strings-localisation 2024-02-05 18:07:03 +01:00
Bartłomiej Dach
87381334ff
Use more proper method of formatting 2024-02-05 18:06:51 +01:00
Bartłomiej Dach
2932184d24
Rename localisable string 2024-02-05 18:05:21 +01:00
Dean Herbert
48d42ca7d3
Update framework 2024-02-05 23:58:10 +08:00
Salman Ahmed
7914236516 Add explanatory note 2024-02-05 18:51:30 +03:00
Loreos7
8e82327509 one more dot 2024-02-05 18:45:32 +03:00
Loreos7
4449ccd1d3 bring back missing dot 2024-02-05 18:44:18 +03:00
Salman Ahmed
858f2fc749 Use Clear to trigger async disposal 2024-02-05 18:39:04 +03:00
Bartłomiej Dach
23694c2067
Merge branch 'master' into import-from-stable-localisation 2024-02-05 16:32:12 +01:00
Bartłomiej Dach
148e01327b
Split copy info text into two rather than parameterise
I have very low hopes translators would be able to correctly navigate
this otherwise (especially in languages with different word order).
2024-02-05 16:30:04 +01:00
Bartłomiej Dach
fa894bda05
Fix broken spacing 2024-02-05 16:25:44 +01:00
Bartłomiej Dach
9e1a24fdef
Remove pointless enum 2024-02-05 16:20:50 +01:00
Bartłomiej Dach
e4ef2bdeb9
Merge pull request #26734 from Joehuu/fix-edit-mod-preset-button-flow
Fix edit mod preset popover buttons overflowing on some languages
2024-02-05 16:10:37 +01:00
Bartłomiej Dach
3e29a9c334
Merge pull request #26877 from smoogipoo/adjust-default-minresult
Adjust default min result of `SliderTailHit`, remove override
2024-02-05 14:15:38 +01:00
Dean Herbert
cc5e1e0af3
Merge pull request #26957 from smoogipoo/net8
Update to .NET 8 + C# 12
2024-02-05 20:59:31 +08:00
Susko3
01efd1b353 Move WindowsAssociationManager to osu.Desktop 2024-02-05 13:44:12 +01:00
Bartłomiej Dach
39fe078984
Merge branch 'master' into hit-object-result-allocations 2024-02-05 13:24:10 +01:00
Bartłomiej Dach
2976f225e0
Improve xmldoc of state param 2024-02-05 13:22:58 +01:00
Bartłomiej Dach
efe6bb25b1
Refactor result application around again to remove requirement for fields
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-02-05 13:21:01 +01:00
Bartłomiej Dach
ad69259eb8
Merge branch 'master' into fix-results-f-rank 2024-02-05 13:05:37 +01:00
Salman Ahmed
44a594ba05 Simplify playback logic 2024-02-05 01:03:04 +03:00
Salman Ahmed
6f9ee3f526 Fix selected room bindable being set to null regardless of the removed room 2024-02-05 00:37:33 +03:00
Salman Ahmed
9923c1b6e6 Fix multiplayer/playlists lounge screen disposing rooms synchronously 2024-02-04 17:25:58 +03:00
Bartłomiej Dach
83df6297d2
Merge branch 'master' into new-mods-for-pp 2024-02-04 12:20:31 +01:00
Dean Herbert
c64d414d1b
Merge pull request #26934 from bdach/which-mods-for-pp
Display which mods grant pp
2024-02-04 19:15:11 +08:00
Andrei Zavatski
4e5c9ddbfe Rename notch const to spacing 2024-02-04 03:02:39 +03:00
Andrei Zavatski
397def9ceb Move layout specification outside the GradedCircles class 2024-02-04 02:58:15 +03:00
Andrei Zavatski
7b2adc857a Merge branch 'master' into results-clean 2024-02-04 02:41:12 +03:00
Susko3
cdcf5bddda Uninstall associations when uninstalling from squirrel 2024-02-03 17:56:14 +01:00
Andrei Zavatski
e2e3c61c9c Use AliveEntries where we don't need startTime order 2024-02-03 19:54:08 +03:00
Andrei Zavatski
4aa27482a9 Use SlimReadOnlyDictionaryWrapper for AliveEntries 2024-02-03 19:54:08 +03:00
Susko3
03578821c0 Associate on startup 2024-02-03 17:04:06 +01:00
Susko3
498d93be61 Add way to associate with files and URIs on Windows 2024-02-03 16:59:48 +01:00
Loreos7
24e5c7ed42 fix formatting 2024-02-03 02:02:21 +03:00
Andrei Zavatski
57bc5ee04f Improve readability 2024-02-03 00:19:04 +03:00
Loreos7
4d324a3057 localise remaining parts of the game settings 2024-02-03 00:08:36 +03:00
Andrei Zavatski
dde7e068a4 Incorporate new unstable rate algo 2024-02-02 22:46:52 +03:00
Mike Will
9a5348598a Replace aggregate rounding method with a float cast 2024-02-02 14:22:24 -05:00
Mike Will
2ab967f783 Increase precision of aggregate volume rounding
It should be large enough to account for true accuracy
but small enough to disregard any hair-thin inaccuracy found
at the very end of the float value.
2024-02-02 13:27:26 -05:00
Bartłomiej Dach
8454f7a991
Merge branch 'master' into net8 2024-02-02 16:27:32 +01:00
Dan Balasescu
50f9c61029
Fix multiplayer tests 2024-02-02 22:34:48 +09:00
Dan Balasescu
8e8ba9e77f
Fix more CI inspections 2024-02-02 21:36:41 +09:00
Loreos7
20504c55ef localise storage error popup dialog 2024-02-02 15:32:55 +03:00
Dan Balasescu
c8b4ff2b47
Fix compile error (reserved name) 2024-02-02 21:28:51 +09:00
Dan Balasescu
6e4d52863c
Upgrade to .NET 8 SDK 2024-02-02 21:28:51 +09:00
Dan Balasescu
20ae88b0a0
Revert unnecessary changes 2024-02-02 21:05:50 +09:00
Dan Balasescu
b44f77cee1
Update R# + fix inspections 2024-02-02 21:00:28 +09:00
Mike Will
29a2890582 fix code quality error #2 2024-02-02 03:47:19 -05:00
Dan Balasescu
8c107b4925
Merge pull request #26950 from bdach/2fa-in-registration
Add 2FA verification screen to registration flow
2024-02-02 17:30:20 +09:00
Mike Will
c60e110976 Try to fix code quality issues raised by workflow 2024-02-02 03:09:19 -05:00
Mike Will
f4a2d5f3f4 Round off inaccuracies in the aggregate volume before evaluating 2024-02-02 02:41:58 -05:00
Mike Will
3122211268 Change silence threshold and target restore volume level 2024-02-02 02:12:46 -05:00
Dan Balasescu
108375975d
Merge pull request #26940 from EVAST9919/playfield-mods-alloc
Reduce allocation overhead in `Playfield`
2024-02-02 15:45:46 +09:00
Bartłomiej Dach
a00cf87925
Add 2FA verification screen to registration flow 2024-02-02 07:25:04 +01:00
Bartłomiej Dach
45f60b035e
Enable NRT in AccountCreationOverlay 2024-02-02 07:24:32 +01:00
Bartłomiej Dach
93d34e4115
Enable NRT in ScreenWarning 2024-02-02 07:24:32 +01:00
Bartłomiej Dach
b58ac7950b
Make game dependency in ScreenEntry optional to unbreak tests 2024-02-02 07:24:32 +01:00
Bartłomiej Dach
bb6387bea0
Enable NRT in ScreenEntry 2024-02-02 07:24:32 +01:00
Mike Will
dfd966e039 Improve silence detection in MutedNotification
Instead of checking the master and music volumes separately to
see if they're <= 1%, check the aggregate of the two volumes to
see if it's <= -60 dB.

When muted notification is activated, restore the aggregate volume
level to -30 dB.
2024-02-02 00:48:42 -05:00
Bartłomiej Dach
2ff46daf5e
Also change icon and tooltip text when pending 2FA 2024-02-02 06:40:56 +01:00
Andrei Zavatski
53c5483eba Reduce allocation in Playfield 2024-02-02 04:53:48 +03:00
Loreos7
8dce158a13 localise update-related strings 2024-02-02 04:49:22 +03:00
Loreos7
7884e5808a localise remaining strings 2024-02-02 04:47:13 +03:00
Salman Ahmed
4dbcb41dd1 Remove unused parameter 2024-02-02 00:44:51 +03:00
Bartłomiej Dach
ea76f7a5d8
Allow pp for Double/Half Time's "adjust pitch" setting 2024-02-01 22:33:49 +01:00
Bartłomiej Dach
96f66aaa2e
Allow pp for Accuracy Challenge
Addresses https://github.com/ppy/osu/discussions/26919.
2024-02-01 22:30:26 +01:00
Bartłomiej Dach
c114fd8f89
Allow pp for Sudden Death and Perfect regardless of "restart on fail" setting
Closes https://github.com/ppy/osu/issues/26844.
2024-02-01 22:28:49 +01:00
Bartłomiej Dach
865f4d76ff
Add unranked indicator to song select footer too 2024-02-01 21:51:41 +01:00
Bartłomiej Dach
f87ab19731
Apply NRT to FooterButtonMods 2024-02-01 21:32:38 +01:00
Bartłomiej Dach
966093f7ce
Transform score multiplier display to also show ranked state 2024-02-01 21:32:37 +01:00
Susko3
f92751a7d2 Don't suggest an update on mobile if it isn't available 2024-02-01 18:56:38 +01:00
Susko3
b9d750cfee Convert to try-get and don't fall back to release URL 2024-02-01 18:55:34 +01:00
Susko3
b0095ee548 Apply NRT 2024-02-01 18:38:18 +01:00
Andrei Zavatski
66350fd148 Refactor UserRankPanel layout 2024-02-01 16:33:54 +03:00
Andrei Zavatski
2bd9dcf646 Rework UserGridPanel to reduce containers nesting 2024-02-01 16:22:07 +03:00
Salman Ahmed
5bbaeb6836 Play legacy applause sound only when rank is B or higher 2024-02-01 16:08:36 +03:00
syscats
0407b5d84a
use ordinal sorting on each method 2024-02-01 14:03:59 +01:00
Salman Ahmed
35c3f5e250 Merge branch 'master' into fix-results-f-rank 2024-02-01 15:29:07 +03:00
Dean Herbert
bf3746daa8
Show login overlay at main menu when 2FA is required 2024-02-01 21:10:53 +09:00
Dean Herbert
563f4a26b1
Show "failing" icon on user panel when 2FA prompt is present
This gives the user a chance to know it's required.
2024-02-01 21:10:37 +09:00
syscats
7165511754 Use ordinal sorting for artist string comparison 2024-01-31 15:49:31 +01:00
Bartłomiej Dach
f89923aeae
Annotate mods that give pp 2024-01-31 14:59:35 +01:00
Dan Balasescu
0642d74014
Expose as ReadOnlyDictionary 2024-01-31 22:52:57 +09:00
Bartłomiej Dach
e71c95f1fe
Reintroduce IMod.Ranked
What goes around, comes around.
2024-01-31 14:48:35 +01:00
Dean Herbert
4248593289
Fix menu banner not updating as often as we want it to 2024-01-31 22:44:24 +09:00
Dean Herbert
56700d672b
Merge pull request #26837 from bdach/2fa-not-verifying-via-link
Fix 2FA verification via link not working correctly
2024-01-31 19:15:33 +09:00
Bartłomiej Dach
e7cfbd3c56
Merge pull request #26876 from peppy/slider-miss-last-longer
Adjust slider tick / end misses to show slightly longer
2024-01-31 10:43:58 +01:00
Dean Herbert
19fe3a15f3
Merge branch 'master' into 2fa-not-verifying-via-link 2024-01-31 18:32:55 +09:00
Dean Herbert
edab05672b
Merge pull request #26834 from bdach/2fa-cancel-crash
Fix crash when logging out during 2FA email verification
2024-01-31 18:32:33 +09:00
Dan Balasescu
0642a0ee11
Adjust default min result of SliderTailHit, remove override 2024-01-31 18:01:29 +09:00
Dean Herbert
fbc923b47e
Revert "Merge pull request #26870 from smoogipoo/adjust-default-minresult"
This reverts commit 1acff746ee, reversing
changes made to 696ecda398.
2024-01-31 17:51:38 +09:00
Dean Herbert
1acff746ee
Merge pull request #26870 from smoogipoo/adjust-default-minresult
Adjust default min result of SliderTailHit, remove override
2024-01-31 17:49:58 +09:00
Dean Herbert
ebf637bd3c
Adjust slider tick / end misses to show slightly longer 2024-01-31 17:41:26 +09:00
Dean Herbert
a7f9f50ce5
Show a better message when score submission fails due to system clock being set wrong 2024-01-31 16:52:50 +09:00
Dean Herbert
3f527081bd
Update framework 2024-01-31 16:12:46 +09:00
Dan Balasescu
9b1bbe5f48
Adjust default min result of SliderTailHit, remove override 2024-01-31 16:12:05 +09:00
Andrei Zavatski
6b1de5446a Reduce allocaations in ScrollingHitObjectContainer 2024-01-31 07:54:28 +03:00
Andrei Zavatski
3aefc91967 Make AliveDrawableMap public 2024-01-31 07:54:07 +03:00
Bartłomiej Dach
c5e118bd10
Revert "Move fade more local to avoid fading twice"
This reverts commit d0421fe206
and fixes https://github.com/ppy/osu/issues/26801.

https://github.com/ppy/osu/pull/26703#discussion_r1469409667
was correct in saying that the early fade-out needs to be restored, and
that's because of the early-return. Legacy judgements that are the
temporary displayed judgement from new piece should also receive the
fade-out, and d0421fe206 broke that.
2024-01-30 22:16:46 +01:00
Bartłomiej Dach
4126dcbe28
Fix 2FA verification via link not working correctly
Closes https://github.com/ppy/osu/issues/26835.

I must have not re-tested this correctly after all the refactors...

Basically the issue is that the websocket connection would only come
online when the API state changed to full `Online`. In particular
the connector would not attempt to connect when the API state was
`RequiresSecondFactorAuth`, giving the link-based flow no chance to
actually work.

The change in `WebSocketNotificationsClientConnector` is relevant in
that queueing requests does nothing before the API state changes to full
`Online`. It also cleans up things a bit code-wise so... win?

And yes, this means that the _other_ `PersistentEndpointClientConnector`
implementations (i.e. SignalR connectors) will also come online earlier
after this. Based on previous discussions
(https://github.com/ppy/osu/pull/25480#discussion_r1395566545) I think
this is fine, but if it is _not_ fine, then it can be fixed by exposing
a virtual that lets a connector to decide when to come alive, I guess.
2024-01-30 21:49:06 +01:00
Bartłomiej Dach
000ddc14ac
Fix broken locking in OAuth
Closes https://github.com/ppy/osu/issues/26824... I think?

Can be reproduced via something like

diff --git a/osu.Game/Online/API/OAuth.cs b/osu.Game/Online/API/OAuth.cs
index 485274f349..e6e93ab4c7 100644
--- a/osu.Game/Online/API/OAuth.cs
+++ b/osu.Game/Online/API/OAuth.cs
@@ -151,6 +151,11 @@ internal string RequestAccessToken()
         {
             if (!ensureAccessToken()) return null;

+            for (int i = 0; i < 10000; ++i)
+            {
+                _ = Token.Value.AccessToken;
+            }
+
             return Token.Value.AccessToken;
         }

The cause is `SecondFactorAuthForm` calling `Logout()`, which calls
`OAuth.Clear()`, _while_ the `APIAccess` connect loop is checking if
`authentication.HasValidAccessToken` is true, which happens to
internally check `Token.Value.AccessToken`, which the clearing of
tokens can brutally interrupt.
2024-01-30 21:05:23 +01:00
Dean Herbert
d895a91cd5
Update endpoints to final production endpoints 2024-01-30 18:40:17 +09:00
Dean Herbert
99f4b2c113
Merge pull request #26788 from EVAST9919/scrolling-alloc
Reduce allocation overhead in `ScrollingHitObjectContainer`
2024-01-30 14:06:27 +09:00
Andrei Zavatski
87f853fcd2 Reduce overhead in ScrollingHitObjectContainer 2024-01-30 00:59:31 +03:00
Bartłomiej Dach
6888cda02c
Make LegacyScoreDecoder.PopulateMaximumStatistics() public
For `osu-tools` consumption.
2024-01-29 21:42:38 +01:00
Dean Herbert
b3919bff56
Merge pull request #26780 from bdach/fix-websocket-very-bad-not-good
Fix incorrect handling of `StartChatRequest` in websocket chat client
2024-01-30 05:11:55 +09:00
Bartłomiej Dach
1fbc92ca7e
Merge branch 'master' into fix-song-select-osu-logo-position 2024-01-29 20:11:52 +01:00
Bartłomiej Dach
acc2614090
Apply alternative solution
Fixes the logo flying out of the wrong corner when transitioning from
song select to gameplay.

Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-01-29 20:07:27 +01:00
Bartłomiej Dach
996ae0ecc1
Fix incorrect handling of StartChatRequest in websocket chat client
Fixes this happening on staging:

	[network] 2024-01-29 17:48:24 [verbose]: WebSocketNotificationsClientConnector connected!
	[network] 2024-01-29 17:48:24 [verbose]: WebSocketNotificationsClientConnector connect attempt failed: Can't use WaitSafely from inside an async operation.

I'm not sure how I ever allowed that `.WaitSafely()` to be there. It
did feel rather dangerous but then I must have forgotten and never
noticed it failing. Which is weird because you'd think that would be
caught by testing that chat isn't working but I'm pretty sure that I
tested that chat *was* indeed working.

Anyway now that entire flow is replaced by something that should
hopefully be somewhat more sane? It has a whole retry flow with logging
now which should be more robust than what was there previously (failing
to start to listen to chat events killing the entire websocket
connection for very little good reason).
2024-01-29 19:22:40 +01:00
Dean Herbert
16c06169ed
Update framework 2024-01-30 01:06:32 +09:00
Bartłomiej Dach
2667cb8b36
Merge pull request #26703 from peppy/smaller-slider-misses
Adjust slider tick / end defaults again
2024-01-29 13:51:07 +01:00
Dean Herbert
f2546d72c2
Fix osu! logo being mispositioned in song select on very wide resolutions 2024-01-29 20:45:51 +09:00
Dean Herbert
811b31386b
Merge pull request #26616 from peppy/dont-round-sv 2024-01-29 20:42:38 +09:00
Dean Herbert
f1c1d9cb14
Merge pull request #26772 from peppy/update-framework
Update framework
2024-01-29 20:15:01 +09:00
Bartłomiej Dach
11ec8a1cad
Merge branch 'master' into dont-round-sv 2024-01-29 11:52:46 +01:00
Bartłomiej Dach
8a11ff1227
Apply local precision workaround to editor effect section 2024-01-29 11:52:38 +01:00
Dean Herbert
a1fe5eedd5
Merge pull request #26751 from frenzibyte/fix-multiplayer-fail-freezing-score
Fix score processor no longer applying results when failing in multiplayer match
2024-01-29 19:51:31 +09:00
Dean Herbert
1efdf2ae25
Update framework 2024-01-29 19:45:56 +09:00
Dean Herbert
8341da7586
Revert "Remove dead code" (mostly)
This reverts commit 6070eac6ee.
2024-01-29 19:43:40 +09:00
Dean Herbert
dc28a6b873
Update resources 2024-01-29 19:33:13 +09:00
Dean Herbert
cbbe2f9dc0
Merge pull request #25480 from peppy/2fa
Add two factor authentication flow
2024-01-29 19:14:55 +09:00
Dean Herbert
540ff0da5b
Add loading layer when requesting a code reissue 2024-01-29 17:54:34 +09:00
Bartłomiej Dach
4c5dacd559
Merge pull request #26770 from peppy/fucking-hitobject-references
Fix `OsuPlayfield` being retained indefinitely after gameplay
2024-01-29 09:40:56 +01:00
Dean Herbert
6a469f2cb6
Use switch instead of if-else 2024-01-29 17:18:17 +09:00
Bartłomiej Dach
96811a8874
Fix APIAccess spamming requests while waiting for second factor 2024-01-29 09:14:30 +01:00
Bartłomiej Dach
363fd1d54f
Remove no longer relevant changes 2024-01-29 09:05:03 +01:00
Dean Herbert
4a2602a775
Merge branch 'master' into 2fa 2024-01-29 16:57:29 +09:00
Dean Herbert
48fc0545c2
Merge pull request #26724 from bdach/decouple-notification-websocket-from-chat
Decouple notifications websocket handling from chat operations
2024-01-29 16:57:13 +09:00
Dean Herbert
ef94eff574
Rename PollingChatClientConnector to better describe usage 2024-01-29 16:56:28 +09:00
Dean Herbert
fb24c66342
Mark ResultsScreen.Score as nullable
Is nullable in playlist results at very least.
2024-01-29 16:43:26 +09:00
Dean Herbert
760368709a
Mark some delegates as static because we can 2024-01-29 16:16:28 +09:00
Dean Herbert
eb90ee5415
Add safety in ResultsScreen.Exit to ensure HitEvents are not holding references
This is a catch-all safety disconnecting `ScoreInfo` from `HitObject`s.
2024-01-29 16:16:17 +09:00
Dean Herbert
76832a1495
Remove ScorePerformanceCache
This class was only used in two places, both on the results screen, but
was holding references to `OsuPlayfield` game-wide (due to unrelated
issues, but still).

Because I can't really think of future use cases for this, and running
the calculation twice at results screen isn't a huge overhead, let's
just do that for now to keep things simple.
2024-01-29 15:28:20 +09:00
Dean Herbert
de32e7815b
Clean up DrawableHitObject events on Dispose
This is just general safeties to avoid cases where
components don't correctly unbind events.
2024-01-29 15:28:20 +09:00
Andrei Zavatski
0c0ba7abef Adjust values to visually match previous 2024-01-29 06:28:38 +03:00
Andrei Zavatski
3987faa21c Rework GradedCircles to not use BufferedContainer 2024-01-29 06:13:52 +03:00
Andrei Zavatski
809ca81b9c Add TestSceneGradedCircles 2024-01-29 05:29:29 +03:00
Andrei Zavatski
9c411ad48d Simplify notch math 2024-01-29 05:19:28 +03:00
Andrei Zavatski
5783838b07 Move graded circles into a separate class 2024-01-29 05:14:24 +03:00
Andrei Zavatski
32b0e0b738 Remove RankNotch 2024-01-29 05:05:18 +03:00
Andrei Zavatski
5d456c8d68 Rework drawing of graded circles 2024-01-29 04:55:21 +03:00
Dean Herbert
462dab3c90
Remove unnecessary bindable 2024-01-29 02:13:39 +09:00
Dean Herbert
f4dd84fa77
Fix various inconsistencies and document better 2024-01-29 02:10:33 +09:00
Dean Herbert
23f12e1ea3
Should not be a container 2024-01-29 01:50:27 +09:00
Andrei Zavatski
b48f99ba4b Stop using SliderBar as a base 2024-01-28 18:06:09 +03:00
Andrei Zavatski
ed9e0fe1db Merge branch 'master' into progress-bar-improvements 2024-01-28 17:59:29 +03:00
Salman Ahmed
64b61108ad Move solution to multiplayer flow instead 2024-01-28 00:42:04 +03:00
Salman Ahmed
5f68999893 Fix TestSceneFailJudgement asserts no longer being correct 2024-01-27 23:23:32 +03:00
Salman Ahmed
a25be9927d Fix score processor no longer applying results when failing in multiplayer match 2024-01-27 23:23:10 +03:00
Salman Ahmed
ea641bb8d2 Rename GameplayState.HasFailed to properly clarify its meaning 2024-01-27 23:23:10 +03:00
Andrei Zavatski
9d73d0e04d Clamp logo triangles along both axes 2024-01-27 19:06:04 +03:00
Salman Ahmed
b25f4455d5
Merge branch 'master' into fix-edit-mod-preset-button-flow 2024-01-27 18:01:16 +03:00
Dean Herbert
4c34d2e352
Update framework 2024-01-27 20:21:27 +09:00
Dean Herbert
3cad5fe292
Merge pull request #26704 from peppy/new-logo
Update logo
2024-01-27 19:34:22 +09:00
Andrei Zavatski
3387565ba9 Fix song progress value may go beyond 1 2024-01-27 03:11:12 +03:00
Andrei Zavatski
567d2bedbf Refactor ArgonSongProgress for same CurrentTime meaning 2024-01-27 03:03:01 +03:00
Joseph Madamba
bb6c7a0a82 Fix edit mod preset popover buttons overflowing on some languages 2024-01-26 15:26:22 -08:00
Salman Ahmed
d25262944e Force results screen to play default D rank applause sound on fail (regardless of skin) 2024-01-27 01:46:43 +03:00
Salman Ahmed
47f0b86018 Fix results screen showing other rank badges on F rank 2024-01-27 01:46:12 +03:00
Dean Herbert
9dc2a1d6f8
Update resources 2024-01-27 01:02:16 +09:00
Bartłomiej Dach
b39b112548
Merge branch 'decouple-notification-websocket-from-chat' into 2fa 2024-01-26 11:21:33 +01:00
Bartłomiej Dach
243c2bc9b4
Make sure the polling connector actually auto-starts itself 2024-01-26 11:21:23 +01:00
Bartłomiej Dach
a2e69d37e8
Add basic testing of failure flow 2024-01-26 11:17:32 +01:00
Dean Herbert
cf97cb1e0c
Merge branch 'master' into dont-round-sv 2024-01-26 19:16:58 +09:00
Bartłomiej Dach
04cae874b0
Handle forced logouts due to password change too 2024-01-26 10:53:27 +01:00
Dean Herbert
347e88f597
Add note about using static callback 2024-01-26 16:21:48 +09:00
Dean Herbert
6e3eb674f6
Move cast to local function and make direct cast 2024-01-26 12:55:36 +09:00
Andrei Zavatski
9b5b313193 Move common logic into own SongProgressBar class 2024-01-26 05:03:40 +03:00
Andrei Zavatski
d2af05b30e Remove useless bindable from ArgonSongProgressBar 2024-01-26 04:09:00 +03:00
Andrei Zavatski
542f571dee Remove LINQ cast in HUDOverlay 2024-01-26 01:03:22 +03:00
Chandler Stowell
93bd3ce5ae update DrawableHitCircle.ApplyResult to pass this to its callback 2024-01-25 11:25:41 -05:00
Dean Herbert
14067c2e57
Remove unused using statements 2024-01-26 00:39:29 +09:00
Bartłomiej Dach
3d3506b906
Merge branch 'decouple-notification-websocket-from-chat' into 2fa 2024-01-25 14:51:42 +01:00
Bartłomiej Dach
c463aa5ba1
xmldoc everything 2024-01-25 14:47:29 +01:00
Bartłomiej Dach
de52f0a80c
Decouple notifications websocket handling from chat operations
This is a prerequisite for https://github.com/ppy/osu/pull/25480.

The `WebSocketNotificationsClient` was tightly coupled to chat specifics
making it difficult to use in the second factor verification flow.
This commit's goal is to separate the websocket connection and message
handling concerns from specific chat logic concerns.
2024-01-25 14:47:29 +01:00
Dean Herbert
6a338ce555
Adjust spawn ratio up slightly 2024-01-25 21:59:38 +09:00
Dean Herbert
d66a2c452f
Merge branch 'master' into multiplayer-difficulty-tooltip 2024-01-25 21:18:16 +09:00
Dean Herbert
50300adef8
Tidy things up 2024-01-25 21:17:56 +09:00
Dean Herbert
aeac0a2a9d
Nullability 2024-01-25 21:16:12 +09:00
Dean Herbert
3c18efed05
Remove transparency 2024-01-25 21:13:47 +09:00
Dean Herbert
64ba95bbd6
Remove pointless comments 2024-01-25 21:13:47 +09:00
Dean Herbert
baaf33d995
Merge pull request #26689 from myQwil/divisor_cycle
Prevent custom divisor ranges from halting divisor preset cycling
2024-01-25 20:46:16 +09:00
Dean Herbert
4a629fbc79
Update logo to new version 2024-01-25 20:37:50 +09:00
Dean Herbert
56a9b059e9
Add back ScaleAdjust to triangles 2024-01-25 20:37:50 +09:00
Dean Herbert
107b37494e
Update triangles skin judgment display 2024-01-25 19:31:57 +09:00
Dean Herbert
d0421fe206
Move fade more local to avoid fading twice 2024-01-25 19:31:57 +09:00
Dean Herbert
6070eac6ee
Remove dead code 2024-01-25 19:31:57 +09:00
Dean Herbert
dda96d7106
Rename JudgementPiece to TextJudgementPiece 2024-01-25 19:31:57 +09:00
Dean Herbert
8aea6e07c3
Change slider end miss colour to gray 2024-01-25 19:31:57 +09:00
Mike Will
a264ac9f38 Change name and description of force parameter in SetArbitraryDivisor 2024-01-25 05:12:54 -05:00
Bartłomiej Dach
088397b0c3
Merge pull request #26699 from peppy/fix-log-save-failure
Add retry loop to avoid log export failing occasionally on windows
2024-01-25 09:51:14 +01:00
Bartłomiej Dach
3e13fb87f2
Merge pull request #26700 from peppy/accuracy-circle-crash
Fix crash at results screen when hidden is enabled and S rank becomes A due to miss
2024-01-25 09:32:47 +01:00
Dean Herbert
cc341b4119
Adjust beatmap carousel padding to avoid scrollbar disappearing underneath logo 2024-01-25 15:21:19 +09:00
Dean Herbert
45b4edcd23
Merge pull request #26697 from LeNitrous/add/scaled-screenshot
Crop screenshots to scaling container
2024-01-25 15:03:56 +09:00
Dean Herbert
37e370e654
Fix crash at results screen when hidden is enabled and S rank becomes A due to miss
Closes https://github.com/ppy/osu/issues/26692.
2024-01-25 15:02:44 +09:00
Dean Herbert
69e822f3c5
Refactor crop logic slightly 2024-01-25 14:30:26 +09:00
Dean Herbert
85927e0682
Move configuration retrieval to non-bindable inline for readability 2024-01-25 14:22:27 +09:00
Dean Herbert
0cbba7e011
Apply NRT to ScreenshotManager 2024-01-25 14:18:20 +09:00
Dean Herbert
d2990170d0
Add retry loop to avoid log export failing occasionally on windows
Closes https://github.com/ppy/osu/issues/26693.
2024-01-25 13:53:36 +09:00
Nitrous
b20051fd55
offset crop rectangle to scaling container 2024-01-25 10:35:41 +08:00
Nitrous
30e335233d
Crop screenshot image to scaling container. 2024-01-25 09:27:10 +08:00
Andrei Zavatski
7811968582 Fix ArgonScoreCounter is still using localisation 2024-01-25 03:28:02 +03:00
Mike Will
9e1c242713 Prevent custom divisor ranges from halting preset cycling
A custom divisor like 24 or 32 will result in a range containing
many divisors that are already in the `Common` and `Triplets` presets.
When this happens, it can become impossible to cycle between presets,
because the preset can only be changed if the new divisor isn't already
contained within the current preset's range.
2024-01-24 18:31:39 -05:00
Andrei Zavatski
67010fcd03 Reduce allocation overhead in ScoreCounter 2024-01-24 23:45:07 +03:00
Bartłomiej Dach
e3eb7a8b42
Support verification via clicking link from e-mail 2024-01-24 21:35:58 +01:00
Bartłomiej Dach
62a0c236bc
Split out raw websocket logic from conjoined notifications client contrivance 2024-01-24 21:35:30 +01:00
Bartłomiej Dach
602c3bc2d9
Hook up reissue request 2024-01-24 21:35:21 +01:00
Bartłomiej Dach
445a7450e0
Implement verification from within client 2024-01-24 21:35:20 +01:00
Chandler Stowell
d2775680e6 use stack to pass action state when applying hit results
this removes closure allocations
2024-01-24 13:13:45 -05:00
Bartłomiej Dach
ddc2bbeb9b
Add session_verified attribute to /me response 2024-01-24 14:24:33 +01:00
Bartłomiej Dach
7b47215657
Split /me request from /users requests
Them being together always bothered me and led to the abject failure
that is `APIUser` and its sprawl. Now that I'm about to add a flag that
is unique to `/me` for verification purposes, I'm not repeating the
errors of the past by adding yet another flag to `APIUser` that is never
present outside of a single usage context.
2024-01-24 14:22:57 +01:00
Bartłomiej Dach
7c140408ea
Add request structures for verification endpoints 2024-01-24 13:53:40 +01:00
Dean Herbert
b272d34960
Merge pull request #26630 from peppy/s-rank-change
Change S rank to require no miss
2024-01-24 13:27:40 +09:00
Bartłomiej Dach
5d26afc531
Fix OsuGameTestScene not clearing second auth factor 2024-01-23 17:00:16 +01:00
Bartłomiej Dach
2cfaa1c103
Merge branch 'master' into 2fa 2024-01-23 16:51:23 +01:00
Bartłomiej Dach
871683a3dc
Merge pull request #26674 from peppy/use-better-enumerator
Reduce enumerator overhead in `GameplayLeaderboard`
2024-01-23 16:31:17 +01:00
Bartłomiej Dach
0486c77a74
Merge pull request #26680 from peppy/fix-now-playing-centering
Fix now playing beatmap backgrounds not being correctly centred
2024-01-23 16:17:34 +01:00
Bartłomiej Dach
6c169e3156
Do not reprocess ranks for custom rulesets
Chances are that because we've broken rank API, it would utterly fail
for all custom rulesets anyhow.
2024-01-23 12:59:36 +01:00
Bartłomiej Dach
cb87d6ce50
Move transferal of LegacyTotalScore back to original spot
This subtle detail was messing with server-side score import flows.
Server-side, legacy total score will *already* be in `LegacyTotalScore`
from the start, and `TotalScore` will be zero until recomputed via
`StandardisedScoreMigrationTools.UpdateFromLegacy()` - so in that
context, attempting to move it across is incorrect.
2024-01-23 12:42:57 +01:00
Dean Herbert
0cf90677e6
Apply more correct visual offset adjustment
Co-authored-by: Walavouchey <36758269+Walavouchey@users.noreply.github.com>
2024-01-23 19:16:55 +09:00
Dean Herbert
c8cd7ebe6c
Fix now playing beatmap backgrounds not being correctly centred
https://github.com/ppy/osu/discussions/26679
2024-01-23 17:30:00 +09:00
Andrei Zavatski
da992ccc55 Implement per-axis triangles clamping 2024-01-23 04:54:27 +03:00
Bartłomiej Dach
4d253ebf3c
Remove redundant assertion
It does look pretty dumb to be checking if something is `null` *after
calling an instance method on it*...
2024-01-22 22:01:03 +01:00
Bartłomiej Dach
fdd499a485
Fix rank background processing not working (and not bumping score version) 2024-01-22 21:34:28 +01:00
Dean Herbert
02bb506cce
Avoid using .Children for enumeration in other locations 2024-01-23 05:32:11 +09:00
Dean Herbert
069af13aaf
Reduce enumerator overhead in GameplayLeaderboard 2024-01-23 05:31:53 +09:00
Bartłomiej Dach
24be6d92ce
Expand xmldoc 2024-01-22 21:13:59 +01:00
Bartłomiej Dach
cdd6e71d01
Remove legacy computation of accuracy & ranks 2024-01-22 20:52:54 +01:00
Bartłomiej Dach
217cbf684b
Remove superfluous recomputation of accuracy 2024-01-22 20:52:54 +01:00
Bartłomiej Dach
db4849442e
Unify legacy total score / accuracy / rank recomputation flows 2024-01-22 20:52:51 +01:00
Bartłomiej Dach
2958631c5d
Use lazer accuracy & rank implementations across the board 2024-01-22 20:30:16 +01:00
Bartłomiej Dach
aa8eee0796
Move maximum statistics population to LegacyScoreDecoder 2024-01-22 20:01:24 +01:00
Bartłomiej Dach
45dc9de1e0
Remove remnant of old implementation of showing "A due to misses" 2024-01-22 19:58:11 +01:00
Bartłomiej Dach
cb8ec48717
Make RankFromScore()'s dictionary param readonly
Just to make sure nobody tries any "funny" business.
2024-01-22 19:56:30 +01:00
Bartłomiej Dach
5bae9074aa
Merge branch 'master' into s-rank-change 2024-01-22 19:54:53 +01:00
Bartłomiej Dach
4cd1573a4c
Merge pull request #26612 from peppy/fix-back-sample-playback
Fix back sound being too loud when exiting many screens
2024-01-22 16:18:32 +01:00
Bartłomiej Dach
3cf83e7106
Merge pull request #26667 from peppy/fix-star-fountains
Fix star fountains sometimes resetting visually
2024-01-22 16:13:55 +01:00
Bartłomiej Dach
43fa89ebcd
Merge branch 'master' into fix-back-sample-playback 2024-01-22 15:36:32 +01:00
Bartłomiej Dach
9aa7c7f591
Revert incorrect removal of exitConfirmed flag
Removing it meant that it was _literally impossible_ to exit
multiplayer.
2024-01-22 15:35:03 +01:00
Bartłomiej Dach
b85a861175
Merge pull request #26668 from peppy/adjust-tick-end-misses
Adjust slider tick / end miss animations to be less busy
2024-01-22 15:03:33 +01:00
Bartłomiej Dach
49c117793c
Merge pull request #26609 from peppy/fix-per-ruleset-hud-positioning
Fix gameplay elements not correctly offsetting to avoid per-ruleset skin layout
2024-01-22 15:00:03 +01:00
smallketchup82
2305a53a02 Remove max combo reading & remove unnecessary commas 2024-01-22 08:59:37 -05:00
Bartłomiej Dach
95435ecd13
Merge pull request #26591 from peppy/offset-awareness
Show offset explanation tooltip on settings offset adjust slider bar
2024-01-22 14:59:31 +01:00
Bartłomiej Dach
17d05b0fdf
Fix non-miss drawable judgements fading out instantly on triangles skin
`else if` proves to be insidious once again.
2024-01-22 14:23:46 +01:00
Bartłomiej Dach
b8dd78eec8
Merge branch 'master' into fix-per-ruleset-hud-positioning 2024-01-22 13:55:56 +01:00
Dean Herbert
15df6b1da1
Revert keyboard seek speed change 2024-01-22 21:47:38 +09:00
Bartłomiej Dach
99d3fcc326
Fix crash if ruleset components container is not present 2024-01-22 13:45:55 +01:00
Dean Herbert
83f9118b22
Adjust results screen to handle S->A rank adjustment when misses are present 2024-01-22 21:43:32 +09:00
Dean Herbert
644e7d6fe6
Add migration 2024-01-22 21:43:32 +09:00
Dean Herbert
4eba3b5d70
Move BackgroundDataStoreProcessor to better namespace 2024-01-22 21:43:32 +09:00
Dean Herbert
c8521b49cd
Change S rank to require no miss 2024-01-22 21:43:32 +09:00
Bartłomiej Dach
7f31070b87
Merge pull request #26648 from peppy/fix-followpoint-pooling
Fix `FollowPointConnection` pool filling up when follow points are hidden
2024-01-22 13:31:43 +01:00
Bartłomiej Dach
0d6c681275
Merge pull request #26649 from peppy/fix-more-allocations
Remove `FillFlow` overhead of argon counters
2024-01-22 12:57:16 +01:00
Bartłomiej Dach
c8053a8077
Merge pull request #26600 from peppy/frame-stable-catchup-zoom
Change frame stable catch-up method to allow for much faster sync
2024-01-22 11:29:15 +01:00
Bartłomiej Dach
b7f0102461
Merge pull request #26662 from peppy/fix-player-crash
Fix potential null reference in player screen transition handling
2024-01-22 11:07:16 +01:00
Dean Herbert
47e9846315
Adjust slider tick / end miss animations to be less busy 2024-01-22 18:48:48 +09:00
Bartłomiej Dach
77ef12ebb0
Merge branch 'master' into frame-stable-catchup-zoom 2024-01-22 10:37:06 +01:00
Bartłomiej Dach
daa9279a23
Merge pull request #26607 from peppy/replay-seek-single-frame
Add ability to step forward/backwards single frames when watching replays
2024-01-22 10:36:13 +01:00
Dean Herbert
319af2d0c6
Merge branch 'master' into fix-storyboard-sprites-3 2024-01-22 18:03:24 +09:00
Dean Herbert
cd551b1abd
Fix star fountains sometimes resetting visually
Addresses https://github.com/ppy/osu/discussions/26622.
2024-01-22 18:01:21 +09:00
Dean Herbert
993e733fce
Merge pull request #26598 from frenzibyte/fix-storyboard-sprites-2
Remove handling for non-legacy texture lookup paths in `LegacySkin`
2024-01-22 17:50:55 +09:00
Bartłomiej Dach
1ac682e2c9
Merge branch 'master' into replay-seek-single-frame 2024-01-22 09:36:15 +01:00
Bartłomiej Dach
af5e6700af
Merge pull request #26606 from peppy/frame-stable-update-while-paused
Allow seeking while paused
2024-01-22 09:35:52 +01:00
Dean Herbert
3dd18c777a
Remove a couple more overrides 2024-01-22 17:00:35 +09:00
Dean Herbert
f6fa965252
Merge pull request #26661 from frenzibyte/fix-mouse-blueprint
Fix blueprint container not handling right clicks correctly while moving a blueprint
2024-01-22 16:53:54 +09:00
Bartłomiej Dach
cd9cb7d6c8
Merge branch 'master' into frame-stable-update-while-paused 2024-01-22 08:52:15 +01:00
Bartłomiej Dach
493d495992
Merge pull request #26605 from peppy/simplify-gameplay-pause
Simplify gameplay pause sequence
2024-01-22 08:49:08 +01:00
Dean Herbert
62965549e7
Merge pull request #26660 from EVAST9919/carousel-alloc
Reduce allocation overhead in `BeatmapCarousel`
2024-01-22 16:47:28 +09:00
Dean Herbert
3e5fe66e58
Fix potential null reference in player screen transition handling
See https://github.com/ppy/osu/actions/runs/7607677219/job/20715418536?pr=26660.
2024-01-22 16:37:56 +09:00
Dean Herbert
1f0ad5cff2
Apply same fix in more places 2024-01-22 15:56:16 +09:00
Dean Herbert
74f05a5c4b
Use container itself rather than ScrollContent 2024-01-22 15:54:24 +09:00
Salman Ahmed
2bd9cd5d34 Fix blueprint container not handling right clicks correctly while moveing an element 2024-01-22 04:39:08 +03:00
Andrei Zavatski
cec4f670d1 Reduce allocation overhead in BeatmapCarousel 2024-01-22 03:12:23 +03:00
Dean Herbert
3b7a47aded
Merge branch 'master' into update-framework 2024-01-21 13:49:44 +09:00
Dean Herbert
02369139b3
Remove FillFlow overhead of argon counters 2024-01-21 13:22:58 +09:00
Andrei Zavatski
1393f52b2b Rename Masking to ClampToDrawable 2024-01-21 05:20:42 +03:00
Dean Herbert
a69fd8198d
Update framework and other nuget packages
- Moq held back because dicks
- NUnit held back because large API changes (trivial but effort)
- SignalR held back due to api deprecations
2024-01-21 11:00:53 +09:00
Andrei Zavatski
e003ecb593 Change default masking value to true 2024-01-21 04:57:48 +03:00
Dean Herbert
2dedead1d1
Allow debug instances to coexist alongside release instances 2024-01-21 10:56:55 +09:00
Dean Herbert
1999e772f6
Fix FollowPointConnection pool filling up when follow points are hidden
Closes https://github.com/ppy/osu/issues/26642.

I think this applied to all pooling cases here.
2024-01-21 10:31:27 +09:00
Andrei Zavatski
6ba3546be5 Enable masking in RoundedButton 2024-01-21 02:28:14 +03:00