1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-14 11:35:35 +08:00
Commit Graph

61519 Commits

Author SHA1 Message Date
Dean Herbert
a472fe6789
Merge pull request #24255 from bdach/multiplayer-disconnection-schedule-bomb
Fix several issues in multiplayer exit-on-disconnection flow
2023-07-17 04:04:38 +09:00
Bartłomiej Dach
7fbd47e9ee
Fix MultiplayerMatchSubScreen erroneously pushing exit dialog on API failure
If `IAPIProvider.State` changes from `Online` at any point when being on
an `OnlinePlayScreen`, it will be forcefully exited from. However,
`MultiplayerMatchSubScreen` had local logic that suppressed the exit in
order to show a confirmation dialog.

The problem is, that in the suppression logic,
`MultiplayerMatchSubScreen` was checking
`MultiplayerClient.IsConnected`, which is a SignalR flag, and was not
checking `IAPIAccess.State`, which is maintained separately. Due to
differing timeouts and failure thresholds, it is not impossible to have
`MultiplayerClient.IsConnected == true` but `IAPIAccess.State !=
APIState.Online`.

In such a case, the match subscreen would wrongly consider itself to be
still online and due to that, push useless confirmation dialogs, while
being in the process of being forcefully exited. This then caused the
dialog to cause a crash, as it was calling `.Exit()` on the screen which
would already have been exited by that point, by the force-exit flow.
2023-07-16 19:56:22 +02:00
Bartłomiej Dach
cd02a8a9ca
Fix PopupDialog potentially accumulating schedules during load 2023-07-16 19:43:37 +02:00
Dean Herbert
acb51dfca3
Merge pull request #24246 from bdach/fix-exit-dialog-crash
Fix potential crash in confirm exit dialog while attempting to exit game
2023-07-17 01:11:07 +09:00
Dean Herbert
e25cd03e4b Update framework 2023-07-17 00:55:25 +09:00
Bartłomiej Dach
a42992d3fd
Remove unused local variable 2023-07-16 17:10:26 +02:00
Bartłomiej Dach
d25a03984b
Fix PerformAction<T>() potentially crashing when no matching button is found 2023-07-16 16:55:20 +02:00
Bartłomiej Dach
72bf43e297
Add failing test covering exit dialog crash 2023-07-16 16:55:20 +02:00
Dean Herbert
50e6f0aee9
Merge pull request #24233 from chayleaf/fix-taiko-maps-not-finishing
Fix taiko maps sporadically not completing with Hidden mod active
2023-07-16 13:32:38 +09:00
Dean Herbert
416ee0d99c Fix covariant array spec in new test 2023-07-16 12:48:58 +09:00
Dean Herbert
2d51aa21b7
Merge pull request #24235 from AkiSakurai/toplocalrank
Compute the top local rank directly without an expensive detach call
2023-07-16 12:14:56 +09:00
Dean Herbert
cf70f5e04d
Merge pull request #24219 from peppy/fix-mania-everything
Fix osu!mania scores failing to convert to new standardised score due to cast failure
2023-07-16 11:54:42 +09:00
Aki
cb354685ca
simplify code 2023-07-16 10:21:32 +08:00
Bartłomiej Dach
041e818892
Fix nested hits not being hittable if cut off by parent object ending 2023-07-15 18:44:47 +02:00
Bartłomiej Dach
955aa70e46
Add failing test case for hitting nested hit past parent end time 2023-07-15 18:43:31 +02:00
Bartłomiej Dach
9e960894c2
Add inline commentary about OnKilled() override 2023-07-15 18:22:04 +02:00
Bartłomiej Dach
24d63a4d96
Add test coverage for failing hit judgement with HD active 2023-07-15 18:17:45 +02:00
Bartłomiej Dach
542916f857
Bring back test coverage for fail case from #16475
It was inadvertently dropped during refactoring in
b185194d07.
2023-07-15 18:15:42 +02:00
chayleaf
3e91d30825 move StrongNestedHit OnKilled to DrawableStrongNestedHit 2023-07-15 22:33:16 +07:00
Aki
309c852222
Compute the top local rank directly without an expensive detach call 2023-07-15 23:00:13 +08:00
chayleaf
7f957d3fbe Fix some taiko maps not finishing in some conditions
I don't know how to reproduce this issue in a test, so no tests for now.
Nonetheless, this fixes the issue for me at least on one map:
https://osu.ppy.sh/beatmapsets/1899665#taiko/3915653

This workaround is similar to #16475 (the test from that commit got
eventually removed for some reason).
2023-07-15 20:24:40 +07:00
Dean Herbert
eb81eac635 Flag decoded scores more correctly 2023-07-15 12:19:18 +09:00
Dean Herbert
e58488d04a Fix incorrect comparer implementation 2023-07-15 11:19:34 +09:00
Dean Herbert
1868826d69 Update framework 2023-07-15 01:12:10 +09:00
Dean Herbert
480259b8d2 Ensure migration is never run on scores with new-enough TotalScoreVersions 2023-07-14 20:02:25 +09:00
Dean Herbert
d4fb0bef95 Fix osu!mania scores failing to convert to new standardised score due to cast failure
Regressed in https://github.com/ppy/osu/pull/23917.
Closes #24217.
2023-07-14 19:38:10 +09:00
Bartłomiej Dach
cdbb6f90be
Merge pull request #24199 from peppy/revert-to-default-design-change
Update design of "revert to default" button
2023-07-13 23:44:24 +02:00
Bartłomiej Dach
ff56e35093
Merge pull request #24197 from peppy/allow-autoplay-failure
Allow autoplay to fail
2023-07-13 23:44:07 +02:00
Bartłomiej Dach
e7dbe3c938
Fix broken test 2023-07-13 22:28:26 +02:00
Bartłomiej Dach
cef0dd1d61
Merge pull request #24190 from novialriptide/emoji-fix
Replace emoji unicode with `[emoji]`
2023-07-13 22:05:12 +02:00
Bartłomiej Dach
96e4b8d792
Merge pull request #24204 from peppy/results-screen-component-metrics
Touch up various results screen component's metrics
2023-07-13 22:03:49 +02:00
Dean Herbert
34e3276d23
Merge pull request #24183 from Susko3/framework-clipboard
Resolve `Clipboard` via DI
2023-07-14 05:01:50 +09:00
Bartłomiej Dach
9cc2150b5a
Fix mixed [cC]urrent usage 2023-07-13 22:00:21 +02:00
Bartłomiej Dach
3ca767b7a2
Remove outdated comment 2023-07-13 21:58:55 +02:00
Bartłomiej Dach
6b9dabbd3c
Rewrite test scene to show non-themed and themed variants 2023-07-13 21:54:30 +02:00
Bartłomiej Dach
eeb50e2700
Do not rely on OverlayColourProvider presence 2023-07-13 21:45:06 +02:00
Bartłomiej Dach
674eb1a36b
Remove unused property 2023-07-13 21:25:43 +02:00
Bartłomiej Dach
a1e83b20e6
Make autoplay compatible with ModFailCondition 2023-07-13 21:23:57 +02:00
Bartłomiej Dach
ae7ed697ec
Adjust failing test after permitting autoplay and no fail combo 2023-07-13 21:22:48 +02:00
Bartłomiej Dach
4859b8c994
Add some extra text coverage against potential emoji-to-link misparses 2023-07-13 20:51:52 +02:00
Dean Herbert
ded7ec3aa6
Merge branch 'master' into framework-clipboard 2023-07-14 03:32:37 +09:00
Dean Herbert
4114fab8ea Update framework 2023-07-14 03:31:36 +09:00
Bartłomiej Dach
632077319f
Fix taiko statistics table not using 2-column layout 2023-07-13 20:06:53 +02:00
Bartłomiej Dach
20bde40ce2
Fix differing anchor specs on statistics panel flow items 2023-07-13 20:00:29 +02:00
Bartłomiej Dach
d5912165e9
Merge branch 'master' into results-screen-component-metrics 2023-07-13 19:53:52 +02:00
Bartłomiej Dach
9b771ee798
Merge pull request #24202 from peppy/save-preset-on-select
Allow saving changes to mod presets using enter key
2023-07-13 19:50:16 +02:00
Bartłomiej Dach
16540d69d5
Merge pull request #24206 from peppy/results-screen-misc
Fix some minor issues with results screen
2023-07-13 19:49:49 +02:00
Bartłomiej Dach
601e3fe24f
Merge pull request #24203 from peppy/results-screen-testability
Make results / statistics visual testing easier with better data population
2023-07-13 19:43:01 +02:00
Bartłomiej Dach
56409fa5a5
Merge branch 'master' into results-screen-testability 2023-07-13 19:06:04 +02:00
Bartłomiej Dach
4b06b6f34e
Crudely fix crashes when switching between TestResultsWithPlayer cases
In the visual test browser, if two `TestResultsWithPlayer` test cases
are ran consecutively, the second would die on `SoloStatisticsWatcher`
seeing duplicated online score IDs. This surfaced after
6ef39b87fe, which changed
`TestResultsScreen` to inherit `SoloResultsScreen` rather than
`ResultsScreen`.

This is probably _not_ a very good fix, but I'm trying to be pragmatic
for now. `SoloStatisticsWatcher` should probably not live in
`OsuGameBase`.
2023-07-13 19:06:02 +02:00