Dean Herbert
cbd4b91feb
Merge pull request #24678 from Nabile-Rahmani/bot-scores
...
Fix and use score user's IsBot property in results screen animation
2023-08-30 14:00:35 +09:00
Nabile Rahmani
b658b0e346
Fix and use score user's IsBot property in results screen animation
...
While a mod-created replay did flag itself as performed by a bot, the extension method converting it into a Score did not copy all the generated properties.
As noted, it might be preferable for ModCreatedUser to inherit APIUser and forward it as-is to the Score instance.
Related to PR #24675
2023-08-29 23:28:50 +02:00
Wleter
14ee0ee395
Merge branch 'ppy:master' into skin-editor-selection-negative-scaling
2023-08-29 17:30:55 +02:00
Wleter
d56ab0fe9a
change names
2023-08-29 17:25:52 +02:00
Givikap120
f8adc911cd
Merge branch 'ppy:master' into map_info_on_mod_settings
2023-08-28 23:17:04 +03:00
Givikap120
50235cc245
somewhat working prototype
2023-08-28 23:16:33 +03:00
Wleter
07e126241d
working negative scaling
2023-08-28 16:41:55 +02:00
Bartłomiej Dach
97d1c6e9fc
Merge branch 'master' into carousel-difficulty-split
2023-08-28 11:07:43 +02:00
Bartłomiej Dach
b9795eb3d4
Fix changes to beatmap sets being undone on switching sort mode
2023-08-28 11:02:22 +02:00
Bartłomiej Dach
80ec18d117
Fix incorrect selection restore code in split case
...
The fallback to "any of the added sets" needs to be applied after
they've all been added, rather than with every added one. Otherwise, in
flows that expect a particular difficulty to be selected in the end
(such as exiting from editor) would end up switching away from the
edited beatmap.
2023-08-28 10:06:26 +02:00
Bartłomiej Dach
0af6cc1394
Fix online ID not being propagated in split difficulty mode
...
Would result in failures to re-download the beatmap in update flows, for
instance.
2023-08-28 10:05:59 +02:00
Givikap120
8a1fc7c340
Basic stuff (not working for now)
2023-08-26 01:20:41 +03:00
Dean Herbert
10b1450138
Rename remove method to better explain return type being IEnumerable
2023-08-25 18:10:54 +09:00
Dean Herbert
89eeff515b
Reduce complexity of selection restore
2023-08-25 00:52:54 +09:00
Dean Herbert
9e94f38091
Fix typo in local variable
2023-08-24 18:33:15 +09:00
Dean Herbert
081fb308e1
Merge branch 'master' into new-overlay-sfx
2023-08-24 18:29:00 +09:00
Jamie Taylor
2e27a476bb
Re-enable sample playback for PasswordEntryPopover
and remove sampleJoin
playback instead
2023-08-24 18:04:47 +09:00
Dean Herbert
018be4c20f
Fix selection not being retained when switching between split mode
2023-08-22 18:49:02 +09:00
Dean Herbert
ecbf0f138e
Fix incorrect handling when new beatmaps arrive
2023-08-22 18:48:07 +09:00
Dean Herbert
2b1c6ae612
Ensure ID is maintained in temporary BeatmapSetInfo
s
2023-08-22 18:48:07 +09:00
Dean Herbert
290d18ad69
Split out difficulties in beatmap carousel in a bit of a hacky way
...
Seems like the simplest path forward for now, without a full rewrite.
2023-08-22 18:47:41 +09:00
Dan Balasescu
e8337c592a
Update framework and apply changes to support masking SSBO
2023-08-22 12:50:13 +09:00
Dean Herbert
e7d61e0002
Fix star fountain directions not matching stable
2023-08-21 17:59:24 +09:00
Dean Herbert
4915b2563c
Merge pull request #24366 from Joehuu/supporter-playlist-duration
...
Always show supporter-only playlist durations
2023-08-21 17:46:26 +09:00
Dean Herbert
8120c3f87a
Merge branch 'master' into precise-rotation-2
2023-08-19 23:25:42 +09:00
Dan Balasescu
a2fd7707a1
Allow toggling SVs in the editor
2023-08-18 18:55:24 +09:00
Dean Herbert
9023059bc0
Convert to switch statement
2023-08-18 17:27:09 +09:00
Dean Herbert
75750957c7
Add note about why pop in samples are disabled for PasswordEntryPopover
2023-08-18 17:11:30 +09:00
OliBomby
360f9750e1
Allow selecting empty control point groups
2023-08-17 16:30:18 +02:00
Jamie Taylor
d10d7b6ea4
Change some component samples to go better with overlay pop-in samples
2023-08-17 18:36:37 +09:00
Jamie Taylor
3d7ba0e18c
Add pop-in/pop-out sfx to more overlays
2023-08-17 18:36:37 +09:00
Jamie Taylor
b15a54c914
Use new overlay pop-in/pop-out samples
2023-08-17 18:36:36 +09:00
Dean Herbert
a78c03bd5b
Merge branch 'master' into precise-rotation-2
2023-08-17 17:59:13 +09:00
Dean Herbert
59a31cc868
Merge pull request #24431 from bdach/slider-with-textbox-instantaneous
...
Add instantaneous mode to `SliderWithTextBoxInput`
2023-08-16 20:10:52 +09:00
Bartłomiej Dach
ed84be2f26
Merge pull request #24566 from peppy/multiplayer-spectator-score-diff
...
Add score difference display to multiplayer spectator
2023-08-16 12:57:17 +02:00
Bartłomiej Dach
19f892687a
Add precise rotation control to osu! editor
2023-08-16 11:37:52 +02:00
Bartłomiej Dach
bdf87e43db
Merge branch 'master' into slider-with-textbox-instantaneous
2023-08-16 10:48:45 +02:00
Bartłomiej Dach
35af15f491
Merge branch 'master' into multi-spectator-fix-startup-delay
2023-08-16 10:34:20 +02:00
Dean Herbert
8b9759c569
Apply nullability to MatchScoreDisplay
2023-08-16 17:26:10 +09:00
Dean Herbert
ab826c35b7
Add score diff display to multiplayer spectator
...
Basically pulling changes over from the tournament client implementation
2023-08-16 17:26:10 +09:00
Bartłomiej Dach
add1ef77d0
Fix typo in comment
2023-08-16 10:07:12 +02:00
Bartłomiej Dach
4f47b196c1
Merge branch 'master' into fix-unsafe-realm-access
2023-08-16 09:59:17 +02:00
Dean Herbert
bb98f10ff6
Use CurrentTime
instead of StartTime
for hotfix seek (and update comment)
2023-08-16 16:38:49 +09:00
Dean Herbert
184eabb902
Merge branch 'master' into multi-spectator-fix-startup-delay
2023-08-16 16:27:49 +09:00
Dean Herbert
31c2b7f925
Merge branch 'master' into leaderboard-toggle
2023-08-16 15:49:55 +09:00
Dean Herbert
5bd7370439
Add log output when editor is creating a fresh beatmap
2023-08-16 14:23:17 +09:00
Dean Herbert
e8bde6504a
Fix score being cloned in async method causing random crashes
...
Closes https://github.com/ppy/osu/issues/24445 .
2023-08-15 16:08:13 +09:00
Bartłomiej Dach
1b3806539a
Merge branch 'master' into leaderboard-toggle
2023-08-10 22:50:55 +02:00
Bartłomiej Dach
2698ec9206
Merge branch 'master' into block-exit-if-save-failed
2023-08-08 23:41:03 +02:00
Bartłomiej Dach
500a1363ec
Merge branch 'master' into fix-break-info-decimal-separator
2023-08-08 22:49:00 +02:00
Joseph Madamba
49f5d6813e
Block beatmap editor from testing/exiting/exporting when saving fails
2023-08-04 22:08:25 -07:00
Bartłomiej Dach
785d2ed9b1
Merge branch 'master' into multi-spectator-better-start-time
2023-08-03 22:07:47 +02:00
Bartłomiej Dach
52b1073d93
Fix playfield skin layer not rotating correctly with barrel roll mod
2023-08-03 21:08:00 +02:00
Bartłomiej Dach
dde03b7d46
Merge branch 'master' into playfield-skin-layer
2023-08-03 20:42:15 +02:00
Dean Herbert
71f6e5731d
Fix potential null reference if no frames found
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-08-03 08:58:19 +09:00
Dean Herbert
f38b21110f
Add missing parenthesis to comment
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-08-03 08:57:43 +09:00
Joseph Madamba
aab462fd95
Fix valueText
being replaced even if current is not binding to anything
2023-08-02 09:40:22 -07:00
Dean Herbert
87fee001c7
Fix multiplayer spectator potentially taking too long to start
...
When watching from the middle of gameplay, due to a series of failures,
`SpectatorClock` would not get seeked to the current time, causing all
clients to look like they were out of sync.
This is a hotfix for the issue. A better fix will require framework
changes or considerable restructuring.
I'd recommend testing this works in practice and agreeing that while it
is a hack, it's likely not going to cause issues and is something we
want to see fixed sooner rather than later.
2023-08-02 19:05:43 +09:00
Dean Herbert
14d87e49c7
Improve choice of where to start playback of multiplayer spectator
2023-08-02 18:46:35 +09:00
Dean Herbert
0e510088f9
Ensure background of gameplay is black when storyboard is overriding background display
2023-08-02 15:50:15 +09:00
Dean Herbert
a618ed140e
Move StoryboardReplacesBackground
bindable more local to usage
2023-08-02 15:29:18 +09:00
Bartłomiej Dach
5b6c3321cf
Merge branch 'master' into multi-spectator-flow-fixes
2023-08-01 19:03:48 +02:00
Bartłomiej Dach
a75f42f5a9
Merge branch 'master' into multi-spectator-extended-results
2023-08-01 18:25:41 +02:00
Bartłomiej Dach
f7d5ac9f92
Privatise setter
2023-08-01 18:09:48 +02:00
QuantumSno
054ca5e59c
Merge branch 'master' into leaderboard-toggle
2023-08-01 10:06:03 -04:00
Dean Herbert
70bd1d3cf4
Fix centred player not animating correctly
2023-08-01 20:18:21 +09:00
Dean Herbert
df504e1fc2
Show extended statistics in multiplayer spectator automatically
2023-08-01 20:02:36 +09:00
Dean Herbert
fe47dc291b
Fix onLoadRequested
getting early-exited too early in spectator scenarios
...
In some scenarios, multiplayer spectator would not tick over to the next
beatmap.
Here's an example:
- Room has two items queued
- Local user starts download of both
- First beatmap starts and download is complete
- First beatmap ends (spectating is active)
- Second beatmap starts but download is not complete
In this scenario, the local client will get stuck at the spectator
screen due to the `onLoadRequested`-invoked screen change being early
exited.
It would require manual recovery (clicking back button) to return to a
sane state.
2023-08-01 19:22:41 +09:00
Dean Herbert
9fe9ea2c90
Fix potential crash on multiple StartGameplay
calls in multiplayer spectator
2023-08-01 19:22:41 +09:00
Bartłomiej Dach
2e2b0c4e41
Move SliderWithTextBoxInput
to more general namespace
2023-08-01 01:01:36 +02:00
Dean Herbert
a3afb198a1
Merge pull request #24341 from bdach/selection-operations-refactor
...
Refactor rotation handling in editor to facilitate reuse
2023-07-31 17:18:05 +09:00
Bartłomiej Dach
ebe5dd2ac9
Interface with SelectionRotationHandler
via DI rather than explicit passing
2023-07-30 20:21:41 +02:00
Bartłomiej Dach
262f25dce8
Make SelectionRotationHandler
a Component
2023-07-30 20:18:33 +02:00
Bartłomiej Dach
821cd08f34
Merge branch 'master' into selection-operations-refactor
2023-07-30 19:29:06 +02:00
Bartłomiej Dach
7763f3dd40
Fix osu! logo suddenly disappearing during rapid exit
2023-07-30 19:05:37 +02:00
Bartłomiej Dach
d3435483eb
Fix multiplayer match screen being exited from when not current
...
This was supposed to be fixed by #24255 , but has popped up as a
regression on Sentry since:
https://sentry.ppy.sh/organizations/ppy/issues/22749/?project=2&referrer=regression_activity-email
On a fifteen-minute check I cannot figure out how to reproduce, so
rather than spending further brain cycles on this, just apply the same
explicit guard that like fifteen other places do.
2023-07-30 15:50:10 +02:00
Bartłomiej Dach
1f7f336fd5
Merge branch 'master' into fix-replay-export-queued-op
2023-07-30 14:58:14 +02:00
Bartłomiej Dach
898913f32a
Merge pull request #24415 from peppy/multi-spectator-improvements
...
General visual improvements to mutliplayer spectatator screen
2023-07-30 12:43:26 +02:00
Bartłomiej Dach
e208f38bcb
Merge pull request #24361 from peppy/fix-editor-global-music-hotkey-conflicts
...
Disallow interacting with the global track state in `Player` and `Editor`
2023-07-30 12:28:53 +02:00
Dean Herbert
6d5b3617b3
Remove pending export operation if active score is changed
2023-07-30 16:41:45 +09:00
Dean Herbert
35ec55c1f6
Don't queue export replay operations if button is disabled
2023-07-30 16:41:33 +09:00
Dean Herbert
45ceaba00d
Disable multiplayer spectator zoom when there's only one player's screen visible
2023-07-30 14:40:58 +09:00
Dean Herbert
945d89e955
Move disables to loading screens for better coverage of edge cases
2023-07-30 13:45:42 +09:00
Joseph Madamba
4ddf05602f
Update BreakInfoLine
to formatting standards
2023-07-29 11:05:15 -07:00
Joseph Madamba
6ebfafa9c3
Remove unnecessary text comparison
2023-07-29 11:02:04 -07:00
Joseph Madamba
740898dffb
Remove unnecessary prefix parameter
2023-07-29 10:40:18 -07:00
Joseph Madamba
9d928c0225
Apply NRT to BreakInfoLine
2023-07-29 10:39:50 -07:00
Dean Herbert
75625f089e
Hide toolbar when entering multiplayer spectator
2023-07-30 02:29:14 +09:00
Dean Herbert
38244c081f
Further refactorings along with shadow implementation
2023-07-30 02:29:14 +09:00
Dean Herbert
84bc14c1dd
Improve animation and sizing of maximised screen display
2023-07-30 02:29:14 +09:00
Dean Herbert
1826819663
Move Facade
to nested class
2023-07-30 02:29:14 +09:00
Dean Herbert
5fa0a21b56
Add corner radius around player areas
2023-07-30 02:29:14 +09:00
Bartłomiej Dach
579b0bc570
Merge branch 'master' into fix-autoplay-mod-revert
2023-07-29 16:12:11 +02:00
Joseph Madamba
a3301dc7ff
Fix accuracy break info decimal separator being incorrect in certain languages
2023-07-28 23:26:07 -07:00
Bartłomiej Dach
1fd4a6dc96
Fix tests crashing due to HUDOverlay
not finding DrawableRuleset
in Update()
2023-07-29 01:07:49 +02:00
Bartłomiej Dach
4db203ecc3
Merge branch 'master' into playfield-skin-layer
2023-07-29 00:01:06 +02:00
Bartłomiej Dach
c6f0cf50ca
Use better safety in rectangular grid
...
- Checking `DrawSize != Vector2.Zero` is too specific. It could also
crash on zero-height-but-non-zero-width, or
zero-width-but-non-zero-height.
- Take the `gridCache.Validate()` call out of the zero checks, because
even if the width or height are zero, not generating anything is valid
and there is no reason to validate every frame until `gridCache` gets
invalidated again.
2023-07-28 22:57:02 +02:00
QuantumSno
a4065486c1
bound bind during gameplay
2023-07-28 14:39:41 -04:00
Dean Herbert
0e4db9b439
Add safety in RectangularPositionSnapGrid
that size is greater than zero
...
Would crash otherwise
2023-07-28 16:25:40 +09:00
Dean Herbert
6cf065f6d1
Add playfield layer to skin editor
2023-07-28 15:50:44 +09:00
Dean Herbert
f15394fb6d
Fix temporary auto mod (ctrl+enter at song select) not reverting in all scenarios
2023-07-28 14:49:06 +09:00
Joseph Madamba
9d87ff2986
Improve supporter-only duration notice and fix max duration of non-supporter
...
See 3c54229256/.env.example (L230)
. Might have more duration options in the future.
2023-07-26 01:37:55 -07:00
Dean Herbert
4889864478
Fix files references not correctly being copied after replay import in Player
2023-07-26 15:22:00 +09:00
Dean Herbert
e26afc2b89
Fix ReplayDownloadButton
handling key repeat
2023-07-26 15:21:43 +09:00
Joseph Madamba
30e0e00c52
Rename selectedAvailableDuration
to hasValidDuration
2023-07-25 22:57:01 -07:00
Dean Herbert
7fd6bb9d5f
Fix a couple of code style issues in SelectionBox
2023-07-26 14:04:38 +09:00
Dean Herbert
39c2bb240b
Apply NRT to SelectionBoxRotationHandle
.
2023-07-26 14:04:21 +09:00
Joseph Madamba
0bd34a4f13
Always show supporter-only playlist durations
2023-07-25 21:14:21 -07:00
Bartłomiej Dach
57ccf82f34
Merge branch 'master' into song-select-drain-length
2023-07-25 22:40:45 +02:00
Bartłomiej Dach
3b11559fd0
Revert "Show only the break length instead of total minute breaks"
...
This reverts commit 9edaa6909e
.
2023-07-25 22:17:55 +02:00
Bartłomiej Dach
3b9f250c1b
Merge branch 'master' into menu-star-fountains
2023-07-25 21:58:13 +02:00
Dean Herbert
3485b72eaa
Disallow interacting with the global track state in Player
and Editor
2023-07-25 20:20:53 +09:00
Dean Herbert
6146f30541
Allow screens to change the ability to interact with the global track
2023-07-25 20:20:53 +09:00
Dean Herbert
157b1f301b
Rename AllowTrackAdjustments
to more understandable ApplyModTrackAdjustments
2023-07-25 20:20:53 +09:00
Dean Herbert
eac6271bd0
Add new property to avoid overlapping usages
2023-07-25 18:14:03 +09:00
Dean Herbert
9edaa6909e
Show only the break length instead of total minute breaks
2023-07-25 17:02:27 +09:00
Dean Herbert
480163ec2e
Show drain length in length tooltip at song select
2023-07-25 16:58:53 +09:00
Bartłomiej Dach
a201152b04
Add xmldoc to SelectionRotationHandler
2023-07-23 20:56:22 +02:00
Bartłomiej Dach
aec3ca250c
Migrate SelectionHandler
to use SelectionRotationHandler
2023-07-23 20:56:22 +02:00
Bartłomiej Dach
ba8ebefb50
Add basic structure for new rotation handler
2023-07-23 20:56:22 +02:00
Bartłomiej Dach
4622255cc7
Move out helper methods to static class
2023-07-23 18:24:20 +02:00
Bartłomiej Dach
9f68bb4e4a
Merge pull request #24333 from peppy/editor-menu-spacer
...
Adjust metrics of editor menu spacers (and make visible)
2023-07-23 15:25:27 +02:00
Dean Herbert
4bf300d64d
Merge pull request #24186 from OliBomby/legacy-export
...
Add ability to export beatmaps from editor in a stable-compatible format
2023-07-23 15:25:06 +09:00
Dean Herbert
4ea8495c61
Adjust metrics of editor menu spacers (and make visible)
2023-07-23 14:12:37 +09:00
Dean Herbert
fb34ee94c2
Move export/save options to bottom of menu
2023-07-23 14:07:31 +09:00
Dean Herbert
20359c90bc
Adjust localisations slightly
2023-07-23 14:06:00 +09:00
Dean Herbert
d11e56b8bb
Add common Export
string and use in editor
2023-07-23 14:03:50 +09:00
Bartłomiej Dach
d1c69283b2
Merge branch 'master' into editor-key-count
2023-07-22 16:11:21 +02:00
Bartłomiej Dach
f985bdc10f
Make difficulty sliders private set
2023-07-22 15:55:20 +02:00
Dean Herbert
fd2bdc10c7
Fix "key count" setting showing as "circle size" in osu!mania editor
...
Closes https://github.com/ppy/osu/issues/12904 .
2023-07-21 18:52:29 +09:00
Dean Herbert
82a5ba66e1
Align mode switcher with rest of interface
2023-07-21 15:27:42 +09:00
Dean Herbert
cdcb10e0e7
Fix timeline centre point being ever-so-slight off
2023-07-21 15:26:41 +09:00
Dean Herbert
f489dbd7a9
Reduce width of right toolbar ever so slightly (and use more shared constants)
2023-07-21 14:39:15 +09:00
Dean Herbert
870f3e324a
Adjust "test" button to better align with rest of interface
2023-07-21 14:26:33 +09:00
Dean Herbert
ca3d1538ae
Merge branch 'master' into editor-metrics
2023-07-21 14:26:32 +09:00
Dean Herbert
2cb1a6fdaa
Adjust metrics further
2023-07-21 14:23:53 +09:00
Dean Herbert
b29a2081ac
Merge branch 'master' into menu-star-fountains
2023-07-21 14:21:16 +09:00
Bartłomiej Dach
c77d3cd6bd
Merge pull request #24294 from peppy/toggle-all-freemods
...
Add ability to toggle all free mods quickly at multiplayer song select
2023-07-20 22:32:53 +02:00
Bartłomiej Dach
07e0a703d7
Adjust inline comment
2023-07-20 20:51:39 +02:00
Bartłomiej Dach
708dd355cd
Merge branch 'master' into editor-cyclic-selection
2023-07-20 20:19:46 +02:00
Bartłomiej Dach
210e114f7d
Merge branch 'master' into editor-prefer-closest
2023-07-20 19:16:09 +02:00
Bartłomiej Dach
511948ba56
Add xmldoc to ApplySelectionOrder()
2023-07-20 19:16:04 +02:00
Dean Herbert
c93d6a4008
Invert text colour when freemods is enabled for better contrast
2023-07-20 13:04:26 +09:00
Dean Herbert
18c5fc689f
Don't expose such specific information from ModSelectOverlay
2023-07-20 12:58:13 +09:00
Dean Herbert
4057fcd70e
Merge branch 'master' into toggle-all-freemods
2023-07-20 12:56:46 +09:00
Bartłomiej Dach
285a232cc2
Merge pull request #24290 from peppy/beatmap-offset-all-difficulties
...
Change offset calibration control to adjust for all difficulties of the current beatmap set
2023-07-19 22:31:38 +02:00
Bartłomiej Dach
f3a95d4c13
Merge branch 'master' into menu-star-fountains
2023-07-19 21:26:41 +02:00
Bartłomiej Dach
764029bde1
Fix nullability inspection
2023-07-19 19:23:08 +02:00
Dean Herbert
e47722565a
Clarify guard condition in RoomSubScreen
2023-07-19 19:39:10 +09:00
Dean Herbert
18aace177a
Fix deadlock when logging out while at the create match screen
...
Closes https://github.com/ppy/osu/issues/24275 .
2023-07-19 19:37:38 +09:00
Dean Herbert
eb149942e5
Add ability to toggle all free mods quickly at multiplayer song select
2023-07-19 19:08:32 +09:00
Dean Herbert
cf3949c9e2
Fix double-click handling when cyclic selection is enabled
...
Removes the limitations of cyclic selection as a result.
2023-07-19 17:21:20 +09:00
Dean Herbert
5ec9cd84b2
Change offset calibration control to adjust for all difficulties of the current beatmap set
2023-07-19 17:13:19 +09:00
Dean Herbert
5ade093c5a
Change editor to always perform selection of closest object
2023-07-19 16:56:16 +09:00
Dean Herbert
55a41b0887
Fix overlap between header text and menu items
2023-07-19 15:13:20 +09:00
Dean Herbert
871056790b
Mark editor tile as non-localisable
2023-07-19 15:01:20 +09:00
Dean Herbert
7f336b8dac
Merge branch 'master' into editor-metrics
2023-07-19 15:00:51 +09:00
Dean Herbert
ba237a0e3a
Convert StarFountain
to use ParticleSpewer
...
More efficient
2023-07-18 20:04:52 +09:00
OliBomby
395dd23966
Put 'Export package' and 'Export legacy package' in one nested menu
2023-07-18 12:37:37 +02:00
OliBomby
5d82190b70
Merge remote-tracking branch 'upstream/master' into legacy-export
2023-07-18 12:18:49 +02:00
Dean Herbert
f4acc86df8
Adjust metrics to closer match expectations
2023-07-18 16:26:37 +09:00
Dean Herbert
49bb0b190a
Split out star constant to reuse in pool definition
2023-07-18 16:14:54 +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
Aki
cb354685ca
simplify code
2023-07-16 10:21:32 +08:00
Aki
309c852222
Compute the top local rank directly without an expensive detach call
2023-07-15 23:00:13 +08:00
Dean Herbert
85c780ae5b
Allow the osu! logo to be proxied locally into scenes
2023-07-14 19:19:14 +09:00
Dean Herbert
fe70f24925
Update design of summary timeline current time marker
2023-07-14 17:00:42 +09:00
Dean Herbert
e6b8cd0c06
Add editor header
2023-07-14 16:55:12 +09:00
Dean Herbert
57abb15724
Update design of timeline centre marker and adjust surrounding paddings
2023-07-14 16:37:57 +09:00
Dean Herbert
00e9746174
Implement longer design for timing point piece
2023-07-14 16:37:56 +09:00
Dean Herbert
6b222cfafd
Fix slight misalignment so timeline is now completely centered
2023-07-14 14:29:13 +09:00
Dean Herbert
01750dd091
Update metrics of checkboxes and backgrounds to match design better
2023-07-14 14:29:02 +09:00
Dean Herbert
5b2e704264
Move beat divisor control inside of TimelineArea
and adjust metrics to match design
2023-07-14 14:19:04 +09:00
Dean Herbert
ebaf63b764
Apply NRT to timeline related classes
2023-07-14 14:04:12 +09:00
Dean Herbert
56acc9e3dd
Change BeatDivisorControl
to retrive bindable divisor via DI
2023-07-14 14:03:25 +09: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
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
ded7ec3aa6
Merge branch 'master' into framework-clipboard
2023-07-14 03:32:37 +09:00
Bartłomiej Dach
20bde40ce2
Fix differing anchor specs on statistics panel flow items
2023-07-13 20:00:29 +02:00
Dean Herbert
1051982bc5
Tidy up code with constants
2023-07-13 23:25:50 +09:00
Dean Herbert
8f826a3702
Add skinning support for kiai fountain stars
2023-07-13 22:57:04 +09:00
Dean Herbert
53fccaa3bd
Use skinnable sprite
2023-07-13 22:30:27 +09:00
Dean Herbert
1698caa078
Add kiai fountains to main menu
2023-07-13 22:13:40 +09:00
Dean Herbert
20e4e2581a
Change IBeatSyncProvider.Clock
to always be non-null
2023-07-13 22:13:40 +09:00
Dean Herbert
2c27b17c85
Disable masking on inner scroll container
2023-07-13 19:01:59 +09:00
Dean Herbert
e34839c891
Rename StatisticContainer
to StatisticItemContainer
and add a background
2023-07-13 18:59:11 +09:00
Dean Herbert
b333945cde
Change OverallRanking
to use a two-column layout similar to statistics table
2023-07-13 18:45:32 +09:00
Dean Herbert
0881f4772c
Adjust metrics of HitEventTimingDistributionGraph
2023-07-13 18:45:32 +09:00
Dean Herbert
947b40149f
Adjust metrics of SimpleStatisticTable
2023-07-13 18:45:32 +09:00
Dean Herbert
d54cf63983
Centralise font size specification for statistic items (and reduce slightly)
2023-07-13 18:31:40 +09:00
Dean Herbert
f223fd7c3b
Adjust metrics of PerformanceBreakdown
2023-07-13 18:30:57 +09:00
Dean Herbert
7637a9e603
Adjust metrics of OverallRanking
2023-07-13 18:30:57 +09:00
Dean Herbert
98bf15182e
Remove more GridContainer
nonsense
2023-07-13 18:30:57 +09:00
Dean Herbert
1d62a041cc
Fix animation restarting unexpectedly
2023-07-13 15:07:26 +09:00
Dean Herbert
21f26f98da
Fix graph breaking when resized vertically
2023-07-13 14:57:01 +09:00
Dean Herbert
e2b5abd4e8
Split bar drawable creation into own method
2023-07-13 14:43:41 +09:00
Dean Herbert
fbf14a0f7c
Allow autoplay to fail
...
Feels more correct.
2023-07-13 13:41:35 +09:00
Dean Herbert
4f4c481a67
Fix timing distribution graph sometimes not displaying correctly
...
Weird "basal" height logic just didn't make any sense (was getting stuck at 1 when `DrawHeight` was 0)
2023-07-12 19:21:39 +09:00
Susko3
2dcd790442
Resolve Clipboard
via DI
2023-07-11 11:42:31 +02:00
OliBomby
06e5ef88c0
legacy export broken
2023-07-11 02:30:16 +02:00
Bartłomiej Dach
45194b2b4a
Fix pressing Ctrl-C in composer not copying timestamp to system clipboard
2023-07-09 18:21:43 +02:00
Bartłomiej Dach
84138849cf
Merge pull request #24134 from peppy/skin-retry-sound
...
Add support for skinnable "retry" sound
2023-07-08 15:24:26 +02:00
Bartłomiej Dach
10da80638b
Merge pull request #24152 from peppy/results-screen-tweens
...
Adjust results screen transition tweens to feel better
2023-07-08 14:15:37 +02:00
Bartłomiej Dach
287418e214
Merge branch 'master' into skin-retry-sound
2023-07-08 14:00:52 +02:00
Bartłomiej Dach
832c1c0009
Merge branch 'master' into fix-gameplay-samepl-trigger-source-rewind
2023-07-08 13:33:04 +02:00
Dean Herbert
82babbf8fa
Adjust results screen transition tweens to feel better
2023-07-07 17:39:54 +09:00
Dean Herbert
d72765b6f8
Merge pull request #24114 from peppy/editor-save-local-score-management
...
Ensure scores always have the correct linked `BeatmapInfo`
2023-07-07 15:40:54 +09:00
Dean Herbert
67746e1369
Move retry sample playback to PlayerLoader
2023-07-07 15:36:17 +09:00
Dean Herbert
e0fc97bb93
Replace various local implementations of rewinding checks with new property
2023-07-07 15:21:24 +09:00
Dean Herbert
ddd65f5fe7
Merge pull request #24135 from peppy/update-realm
...
Bring realm library up-to-date
2023-07-07 10:59:38 +09:00
Dean Herbert
2e98ab0a48
Expose rewinding state of IGameplayClock
s
...
The implementation of this requires a bit of a special case
for 0, so makes sense to implement in a central place.
2023-07-06 19:08:42 +09:00
Dean Herbert
f69f6adf67
Remove beatmap info wedge rotation animation
...
It looks jank and also causes framebuffer overheads.
But mostly because it looks jank.
2023-07-06 16:15:42 +09:00
Dean Herbert
a98a36872e
Bring realm library up-to-date
2023-07-06 13:37:43 +09:00
Dean Herbert
9ff6b3fcd3
Merge branch 'master' into editor-save-local-score-management
2023-07-06 12:28:44 +09:00
Dean Herbert
170bc5bfce
Add support for skinnable "retry" sound
2023-07-06 12:25:15 +09:00
Bartłomiej Dach
cdb8a56df4
Remove weird aliased using
...
Doesn't appear to be required.
2023-07-05 22:41:22 +02:00
Dean Herbert
9291895305
Make key for toggling replay settings customisable
2023-07-06 01:00:41 +09:00
Dean Herbert
95a9b532df
Remember state of replay settings visibility
2023-07-06 00:53:37 +09:00
Dean Herbert
fbab5acac1
Remove not-yet-implemented settings group comments
2023-07-06 00:46:09 +09:00
Bartłomiej Dach
e2ddcb2349
Silence a few remaining nullability warnings
2023-07-04 22:39:26 +02:00
Dean Herbert
d74b1e148d
Make ScoreInfo.BeatmapInfo
nullable
2023-07-04 14:50:34 +09:00
Bartłomiej Dach
21f758947d
Merge branch 'master' into availability-fixes
2023-07-02 20:38:37 +02:00
Bartłomiej Dach
9eec1337b3
Use slightly different condition for better UX
2023-07-01 21:39:08 +02:00
Bartłomiej Dach
183777f8df
Fix edge cases where selection buttons go outside playfield bounds
...
Addresses
https://github.com/ppy/osu/discussions/23599#discussioncomment-6300885 .
2023-07-01 21:27:17 +02:00
Dean Herbert
5f880397a9
Increase the minimum size of the scroll bar
...
Allows easier targetting when there is a lot of content in the scroll view
As discussed in https://github.com/ppy/osu/discussions/24095#discussioncomment-6332398 .
2023-07-02 00:04:56 +09:00
Bartłomiej Dach
e4e08c0f5f
Fix selection handlers eating hotkey presses they didn't handle
2023-06-28 20:48:22 +02:00
Dean Herbert
3883c28b15
Add visual display in participants list when availability is still being established
2023-06-28 16:02:46 +09:00
Dean Herbert
91354b1570
Avoid performing any actions when BeatmapAvailability
is updated to Unknown
2023-06-28 16:01:54 +09:00
Dean Herbert
29376ffcc0
Trigger state change when flipping via hotkey in the editor
...
This will trigger a change even if nothing happens. But I think that's
okay (not easy to avoid) because the change handler should be aware that
nothing changed, if anything.
Closes https://github.com/ppy/osu/issues/24065 .
2023-06-28 13:52:51 +09:00
Dean Herbert
1d4380cfd0
Merge pull request #24058 from peppy/full-term-exact-match
...
Add support for matching full terms at song select using suffixed `!`
2023-06-28 12:14:15 +09:00
Dean Herbert
076f41be12
Merge pull request #24059 from peppy/add-editor-rotate-hotkeys
...
Add support for `Ctrl` + `<` / `>` to rotate selection in editor
2023-06-28 12:03:34 +09:00
Bartłomiej Dach
9be2d9d62e
Fix hotkey presses generating unnecessary undo history
...
The buttons don't check whether the operation they correspond to is
possible to perform in the current state of the selection box, so not
checking `Can{Reverse,Rotate}` causes superfluous undo states to be
added without any real changes if an attempt is made to reverse or
rotate a selection that cannot be reversed or rotated.
2023-06-27 22:25:04 +02:00
Bartłomiej Dach
17ed45d07c
Mention hotkeys in button tooltips
2023-06-27 22:04:15 +02:00
Bartłomiej Dach
54280f06be
Switch to == true
2023-06-27 22:02:15 +02:00
Bartłomiej Dach
ad3a470eaf
Enable NRT in SelectionBox
2023-06-27 22:01:44 +02:00
Bartłomiej Dach
eb6bdb5a38
Merge pull request #23926 from ItsShamed/hud/kc-skinnable
...
Make key counter skinnable
2023-06-27 21:57:41 +02:00
Bartłomiej Dach
bf99fc61b8
Trim full phrase filters in a more precise manner
2023-06-27 21:50:36 +02:00
Bartłomiej Dach
e3d97b37f1
Rename MatchMode.{None -> Substring}
2023-06-27 21:28:37 +02:00
Bartłomiej Dach
06654dc618
Merge branch 'master' into full-term-exact-match
2023-06-27 21:27:39 +02:00
Bartłomiej Dach
af66ccbfdf
Merge branch 'master' into hud/kc-skinnable
2023-06-27 20:35:47 +02:00
Dean Herbert
c6d952abe3
Add support for Ctrl
+ <
/ >
to rotate selection in editor
...
As discussed in https://github.com/ppy/osu/discussions/24048 .
2023-06-27 17:01:41 +09:00
Dean Herbert
7ddbf4eaa7
Add a visual effect when keyboard shortcuts are used to trigger selection box buttons
2023-06-27 17:01:13 +09:00
Dean Herbert
41890cfc65
Change JudgementCountController
to a Component
and remove handling overrides
2023-06-27 16:39:21 +09:00
Dean Herbert
8bd6f7a46a
Rename ClicksPerSecondCalculator
to ClicksPerSecondController
2023-06-27 16:38:46 +09:00
Dean Herbert
de23a4691e
Change JudgementCountController
to a Component
2023-06-27 16:38:15 +09:00
Dean Herbert
113b570bd4
Move controllers above skinnable elements in initialisation order
2023-06-27 16:37:23 +09:00
Dean Herbert
e21583ff1b
Refactor InputCountController
to not require being added to foreign body via Attach
...
I've made the flow match `ClicksPerSecondCalculator` as close as
possible. Hopefully this reads better.
2023-06-27 16:36:00 +09:00
Dean Herbert
c423f77d53
Add support for matching full terms using suffixed !
2023-06-27 15:34:33 +09:00
Dean Herbert
702266198b
Add missing "title=" search support at song select
2023-06-27 15:21:13 +09:00
Bartłomiej Dach
9c30b1d3e0
Merge branch 'master' into exact-match-song-select
2023-06-26 22:33:50 +02:00
Bartłomiej Dach
4cb122dad4
Escape user input before embedding into regex
2023-06-26 22:27:48 +02:00
Bartłomiej Dach
8a7a42b7ec
Remove weird nullable enable and double licence header
2023-06-26 22:19:52 +02:00
timiimit
e1cbcabe0b
Fix skip not always triggering in multiplayer
2023-06-26 21:26:41 +02:00
Bartłomiej Dach
7200855d46
Rename Judgement{Tally -> CountController}
2023-06-26 19:30:04 +02:00
Bartłomiej Dach
8d91580dc1
Rename {KeyCounter -> InputCount}Controller
2023-06-26 19:27:42 +02:00
Bartłomiej Dach
4ac48e4cd8
Group input handling members together
2023-06-26 19:25:52 +02:00
Bartłomiej Dach
ff562e2dd7
Remove redundant guard
...
In this particular case guarding with `.IsNull()` makes no sense, as the
`Trigger` is supplied in constructor and cannot feasibly be null. Doing
that only makes sense in scenarios where BDL / dependency injection is
involved.
2023-06-26 19:25:52 +02:00
Bartłomiej Dach
dbd76c1193
Fix attempting to add key counter controller to hierarchy in multiple places
2023-06-26 19:02:49 +02:00
Dean Herbert
a74547c43c
Add exact match support at song select
2023-06-26 18:26:44 +09:00
Dean Herbert
14c95f4584
Apply NRT to FilterCriteria
2023-06-26 17:54:11 +09:00
Dean Herbert
44c08f3944
Add xmldoc for KeyCounterController
2023-06-26 16:47:33 +09:00
Dean Herbert
c8e081c2b6
Remove unused interface
2023-06-26 16:32:19 +09:00
Dean Herbert
ec20942830
Actuall add composite component to hierarchy
2023-06-26 16:24:36 +09:00
Dean Herbert
0c869367e1
Merge branch 'master' into hud/kc-skinnable
2023-06-26 15:53:16 +09:00
Dean Herbert
b240ce295b
Rename class and key to better match expectations
2023-06-26 13:38:34 +09:00
Bastian Pedersen
a7153478d6
Use newly create localised strings for buttons
2023-06-25 21:03:07 +02:00
tsrk
350d722c8d
Merge branch 'master' into hud/kc-skinnable
2023-06-25 15:42:08 +02:00
tsrk
a7088ffe22
revert: bring back old attachment flow
...
As discussed, this would bring more problems that anything.
Refs: 4c39708
, f83a4f4
2023-06-25 15:21:55 +02:00
Dean Herbert
3d1a8aeb54
Use more understandable cancel button text
2023-06-25 21:25:16 +09:00
Bartłomiej Dach
a7202721ff
Merge branch 'master' into no-confirmation-on-update-restart
2023-06-25 13:35:21 +02:00
Bartłomiej Dach
e273c223a8
Fix some more missed CI inspections
2023-06-24 17:11:38 +02:00
Bartłomiej Dach
e3a89a6273
Fix remaining obvious CI inspections
2023-06-24 16:07:01 +02:00
Dean Herbert
df5b389629
Manual fixes to reduce warnings to zero
2023-06-24 01:52:53 +09:00
Dean Herbert
0ab0c52ad5
Automated pass
2023-06-24 01:00:03 +09:00
Dean Herbert
1dc7c05c12
Merge branch 'master' into no-confirmation-on-update-restart
2023-06-23 15:33:01 +09:00
Dean Herbert
f66b787b12
Show ongoing operations in exit confirmation dialog
...
Also changes the button to a dangerous button, forcing user acknowledgement
2023-06-23 15:20:19 +09:00
Dean Herbert
693b7c9906
Reorganise resolved fields in MainMenu
2023-06-23 15:19:47 +09:00
Dean Herbert
20aedc82ac
Remove unused code
2023-06-23 14:47:32 +09:00
Dean Herbert
6df617d536
Rename ExitConfirmOverlay
to be more explicit about purpose
2023-06-23 14:46:38 +09:00
Dean Herbert
11a97e1bb8
Move confirmation bypass implementation to MainMenu
to allow for more correct logic
2023-06-23 14:42:56 +09:00
Bartłomiej Dach
0ce4d17e30
Merge pull request #23888 from peppy/fix-intro-playing-twice
...
Fix music sometimes restarting twice if exiting song select with no beatmap selected
2023-06-22 22:49:15 +02:00
Bartłomiej Dach
a753c89dea
Merge pull request #23974 from peppy/fix-multiplayer-present-beatmap
...
Fix presenting beatmaps while in a multiplayer room not working
2023-06-22 22:48:48 +02:00
Bartłomiej Dach
65d4506ef2
Merge branch 'master' into save-replay-hotkey
2023-06-22 18:51:30 +02:00
Dean Herbert
07a00e8afd
Fix typo in comment
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-06-22 00:02:02 +09:00
Dean Herbert
7b4cbea362
Allow nullable to fix test usages
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-06-22 00:01:48 +09:00
Dean Herbert
59b1f08d53
Don't require exit confirmation when there are no ongoing operations that could be interrupted
2023-06-21 19:06:28 +09:00
Dean Herbert
655491ae2d
Fix potential null ref in ResultsScreen
2023-06-21 17:50:06 +09:00
Dean Herbert
1907beb0c9
Add FireAndForget
to stray Task.Run
2023-06-21 17:48:55 +09:00
Dean Herbert
9ca772421d
Improve and combine logic that exists in two classes
2023-06-21 17:48:12 +09:00
Dean Herbert
2e02b4a85b
Apply more correct fix for double-playing menu track
2023-06-20 18:35:51 +09:00
Dean Herbert
0a81170bca
Merge branch 'master' into fix-intro-playing-twice
2023-06-20 18:34:22 +09:00
Dean Herbert
10ed3787a0
Don't show song select screen when local user doesn't have permission to add an item
2023-06-20 18:27:19 +09:00
Dean Herbert
dc1b4a39aa
Fix presenting beatmaps while in a multiplayer room not working
2023-06-20 18:23:59 +09:00
Dean Herbert
4bd121d3b8
Also add hotkey to export replays
2023-06-20 16:54:37 +09:00
Dean Herbert
1e0e29847f
Apply NRT and hotkey support to save replay button at results screen
2023-06-20 16:29:15 +09:00
Dean Herbert
69526f25bb
Add hotkey to save replay
...
Defaults to `F2` aka stable.
2023-06-19 20:45:29 +09:00
Dean Herbert
84fc6e92db
Fix slightly incorrect calculations
2023-06-19 20:23:46 +09:00
Dean Herbert
4314f9f46a
Merge branch 'master' into fix-distance-snap-grid-centering
2023-06-19 20:22:09 +09:00
tsrk
f83a4f4952
refactor: tidy up attachement flow
...
TODO: find better naming and improve XMLDocs
2023-06-18 22:57:21 +02:00
tsrk
141f9efad5
style(KeyCounterController): remove reliance on Receptor
2023-06-18 21:26:16 +02:00