Dean Herbert
791416c8f1
Merge pull request #30937 from frenzibyte/fix-quick-restart-not-saving-score
...
Fix score no longer being saved when quick-restarting after pass
2024-12-04 23:48:18 -08:00
Salman Alshamrani
fa87df6c6a
Move non-current handling to PerformExit
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-12-04 04:55:55 -05:00
Bartłomiej Dach
6c0ccc5ebe
Merge pull request #30863 from frenzibyte/improve-back-button-display
...
Delay back button appearance when performing a quick restart
2024-12-02 11:49:45 +01:00
Bartłomiej Dach
52b8753a12
Merge pull request #30749 from Sheppsu/multi-spectator-settings-sidebar
...
Add player settings to multi spectator screen
2024-12-02 11:34:57 +01:00
Dean Herbert
5b2558cec2
Merge pull request #28473 from bdach/beatmap-info-purge
...
Move unnecessary properties from `BeatmapInfo` / realm to `IBeatmap`
2024-12-02 16:19:12 +09:00
Dean Herbert
23522b02d8
Use local instead of field for local only usage
2024-12-01 19:53:57 +09:00
Dean Herbert
6afe083ec9
Fix settings showing up during gameplay
2024-12-01 18:44:26 +09:00
Dean Herbert
ddac71628d
Merge branch 'master' into multi-spectator-settings-sidebar
2024-12-01 18:33:46 +09:00
Salman Alshamrani
53dce83b56
Fix restarting no longer working from results screen
...
Thanks to tests for pointing that out :blobsweat:
2024-12-01 02:13:20 -05:00
Salman Alshamrani
9140893249
Fix score no longer being saved when quick-restarting after pass
2024-11-30 23:36:02 -05:00
Bartłomiej Dach
d0e80ce982
Merge pull request #30895 from peppy/watch-replay-reliability
...
Fix watch replay button sometimes not loading the replay on first click
2024-11-28 13:16:40 +01:00
Dean Herbert
ced8dda1a2
Clear previous LastLocalUserScore
when returning to song select
...
This seems like the lowest friction way of fixing
https://github.com/ppy/osu/issues/30885 .
We could also only null this on application, but this feels worse
because
- It would require local handling (potentially complex) in
`BeatmapOffsetControl` if we want to continue displaying the graph and
button after clicking it.
- It would make the session static very specific in usage and
potentially make future usage not possible due to being nulled in only
a very specific scenario.
One might argue that it would be nice to have this non-null until the
next play, but if such a usage comes up I'd propose we rename this
session static and add a new one with that purpose.
2024-11-28 18:01:28 +09:00
Dean Herbert
0f73941808
Combine new implementation back into the old one and use everywhere
2024-11-27 17:47:42 +09:00
Dean Herbert
782ce24ca6
Move player settings out of right flow
2024-11-27 17:09:15 +09:00
Dean Herbert
5260a401d4
Use RealmLive
in SaveFailedScoreButton
...
This also optimises the manager classes to better support `Live` usage
where the managed object is already in a good state (ie. doesn't require
re-fetching).
2024-11-27 15:25:42 +09:00
HenintsoaSky
a477bb7bfe
Renaming of 'StarFountainEnabled'
2024-11-27 07:38:33 +03:00
Salman Alshamrani
3e1b4f4ac5
Rename AllowBackButton
to AllowUserExit
and rewrite visibility flow structure
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-11-26 16:52:39 -05:00
HenintsoaSky
80a66085a9
rename and remove again
2024-11-27 00:41:02 +03:00
HenintsoaSky
460471e73f
Rename of the setting
2024-11-27 00:27:22 +03:00
HenintsoaSky
df74a177ae
Add option to disable star fountain in gameplay
2024-11-27 00:13:32 +03:00
Bartłomiej Dach
3e373ae85e
Merge pull request #30868 from peppy/ur-perf-fix
...
Improve performance of UR calculations
2024-11-26 13:54:17 +01:00
Bartłomiej Dach
cf905d0f5c
Merge branch 'master' into beatmap-info-purge
2024-11-26 10:21:16 +01:00
Dean Herbert
e3ea38a366
Add setting to allow hold-for-pause to still exist
...
Users have asked for this multiple times since last release.
Not sure on the best default value, but I'm going with the
stable/classic one, at least for the initial release to avoid needing
migrations.
In the future we may reconsider this for new users.
2024-11-26 15:14:19 +09:00
Dean Herbert
bbe8f2ec44
Only update unstable rate counter when an applicable hitobject is reached
2024-11-25 21:13:18 +09:00
Dean Herbert
5668258182
Add incremental processing
2024-11-25 21:13:17 +09:00
Dean Herbert
33d725e889
Address unstable rate calculations as a list for marginal gains
2024-11-25 19:44:11 +09:00
Dean Herbert
605fe71f46
Make empty hitwindows readonly static and slightly improve comparison performance
2024-11-25 19:17:32 +09:00
Dean Herbert
82bdd8fbfc
Merge pull request #30861 from frenzibyte/fix-multiplayer-missing-hold-delay
...
Fix pause shortcut on multiplayer no longer requiring hold
2024-11-25 16:22:56 +09:00
Salman Alshamrani
ae9119eef0
Hide back button when quick-restarting unless load time takes long
2024-11-24 05:40:06 -05:00
Salman Alshamrani
6d0d7f3e75
Don't play fail animation if restarting on failure
2024-11-24 04:45:48 -05:00
Salman Alshamrani
f3155bfc7d
Fix pause shortcut on multiplayer not delayed
2024-11-24 04:24:31 -05:00
Dean Herbert
086a34f5c0
Merge branch 'master' into beatmap-info-purge
2024-11-22 18:47:32 +09:00
Dean Herbert
ae98f63b51
Fix beatmap load not continuing when when settings slider is focused
...
Regressed with recent sliderbar focus changes.
Closes #30716 .
2024-11-21 02:28:35 +09:00
Fivoka
7726ca02b0
Changed multiplier from 2 to 3.5
2024-11-20 12:29:29 +01:00
Dean Herbert
6fba6de4dc
Merge branch 'master' into multiplayer-remove-cmc-and-composite
2024-11-20 17:24:55 +09:00
Salman Alshamrani
b014bfea3e
Fix key counter not updating activation state on initial load
2024-11-17 09:56:19 -05:00
Dean Herbert
0a1f589c80
Fix black layer not fading fast enough when exiting quickly from quick restart
2024-11-16 11:52:02 +09:00
Bartłomiej Dach
21d407680b
Merge pull request #30623 from peppy/fix-flash-transition-player
...
Fix occasional flash when quick exiting / retrying from player
2024-11-15 08:42:43 +01:00
Dean Herbert
1a31e56d4a
Fix double restart call still existing
2024-11-14 23:59:55 +09:00
Bartłomiej Dach
5d3f55fe4d
Fill out xmldoc
2024-11-14 15:05:46 +01:00
Dean Herbert
d1b5d31ea6
Add explicit parameter in
2024-11-14 22:23:42 +09:00
Dean Herbert
3262b6d989
Refactor to avoid dual-boolean mess
2024-11-14 22:10:45 +09:00
Dean Herbert
afeb138ea0
Fix occasional flash when quick exiting / retrying from player
...
The gist of the issue is that `fadeOut` was being called *twice* in the
quick exit/retry scenarios, causing weirdness with transforms.
I've restructured things to ensure it's only called once.
2024-11-14 21:54:34 +09:00
Bartłomiej Dach
bd1d3cad49
Do not show timing distribution graph in offset control if there's not enough timed hits
...
Intended to address concerns raised in
https://github.com/ppy/osu/pull/30620#issuecomment-2475744164 .
2024-11-14 13:17:03 +01:00
Bartłomiej Dach
1355fa636d
Merge pull request #30603 from peppy/quick-restart-faster-better
...
Make quick restart even faster
2024-11-14 12:30:13 +01:00
Dean Herbert
36d48a01c8
Add missing expire call
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-11-14 19:33:34 +09:00
Dean Herbert
9849a88eef
Adjust transition further to avoid brief "jumpscare" display of metadata
2024-11-14 18:28:27 +09:00
Dean Herbert
2dbc275bb8
Make quick restart even faster
2024-11-13 18:11:25 +09:00
Dean Herbert
2ae8c36d17
Increase idle time before gameplay loads when hovering controls
2024-11-13 17:39:21 +09:00
Dan Balasescu
99762da7b8
Make RoomID non-bindable
...
Most important changes are to `RoomSubScreen` and `PlaylistsRoomSubScreen`, because those are the only two cases that now bind to the event instead.
2024-11-13 16:28:54 +09:00
Joseph Madamba
9acfb3c900
Fix break overlay grades not using localised string
2024-11-09 16:45:18 -08:00
Bartłomiej Dach
b0c6042b2a
Fix HUD elements shifting in unintended manner when partially off-screen flipped skin elements are present
...
Closes https://github.com/ppy/osu/issues/30286 .
2024-11-07 14:01:34 +01:00
cdwcgt
69b5bd3b50
Fix existing friend logic
2024-11-01 12:53:13 +08:00
Bartłomiej Dach
9902c22f5c
Do not fall back to beatmap's original ruleset if conversion fails
...
I don't know why this was ever a good idea, and would say that we want
this to fail *hard* not soft. If things ever get in this state, things
have gone *seriously* wrong elsewhere, and need to be fixed there.
2024-10-25 13:16:24 +02:00
Bartłomiej Dach
e89a4561ab
Fix playfield skinning layer no longer correctly rotating with the playfield
...
Closes https://github.com/ppy/osu/issues/30353 .
Regressed in
4a39873e2a
.
2024-10-21 13:49:12 +02:00
Bartłomiej Dach
47f10693c4
Add relative size toggle to DefaultSongProgress
too
2024-10-18 11:43:03 +02:00
Bartłomiej Dach
bb4f3c71e0
Add localisation support for "use relative size" setting label
2024-10-18 11:39:55 +02:00
SupDos
7d0da79db7
Add Use relative size setting to ArgonSongProgress
2024-10-18 01:47:54 +02:00
Dean Herbert
b29a17364d
Remove hold-to-confirm delay when pausing using keyboard shortcuts
2024-10-16 20:41:24 +09:00
Dean Herbert
868a7db9e9
Start preparing player earlier when quick retrying
...
Should help with https://github.com/ppy/osu/issues/9039 .
2024-10-13 22:29:00 +09:00
Bartłomiej Dach
938c3d78ce
Fix argon song progress bar tooltip showing during active gameplay
...
Closes https://github.com/ppy/osu/issues/30197 .
Pretty bad one, might be worth a hotfix...
2024-10-10 14:36:28 +02:00
Dan Balasescu
8dece70097
Merge branch 'master' into updates-outside-of-gameplay-only-2
2024-10-07 17:41:42 +09:00
Dan Balasescu
944f8f5f67
Merge pull request #30078 from CloneWith/update/progresshover
...
Add progress tooltip for ArgonSongProgressBar
2024-10-07 15:20:50 +09:00
Dean Herbert
6e4eed657c
Fix weird mouse position handling and don't return true
to event
2024-10-07 14:32:31 +09:00
Dean Herbert
b5cc45bdda
Simplify format code (and adjust formatting slightly)
2024-10-07 14:26:42 +09:00
CloneWith
d7ba4ce7f2
Refactor progress tooltip updating method
...
* Rewrite calculating logic
* Remove useless variables
2024-10-04 23:30:50 +08:00
CloneWith
fd5655455a
Adjust tooltip text format
2024-10-04 16:56:16 +08:00
CloneWith
2d7fdaf892
Override OnMouseMove for cursor position fetching
2024-10-04 16:42:48 +08:00
Dean Herbert
24d6ea5444
Change failed states to be considered as NotPlaying
2024-10-03 17:11:41 +09:00
CloneWith
5dd28d5352
Fix extra newline
2024-10-01 21:08:31 +08:00
CloneWith
5af05f1cc9
Use play length for timestamp calculation
2024-10-01 20:53:15 +08:00
CloneWith
4f16ecdf1b
Add progress tooltip for ArgonSongProgressBar
2024-10-01 20:22:46 +08:00
Dean Herbert
8773c34fdd
Rename enum to non-plural now that it won't conflict
2024-10-01 19:55:46 +09:00
Dean Herbert
8dba4cf760
Passing means NotPlaying
2024-10-01 19:55:31 +09:00
Dean Herbert
3d54f4a5ab
Make states better defined
2024-10-01 17:53:58 +09:00
Dean Herbert
ad3007eaad
Adjust ILocalUserPlayInfo
to expose whether gameplay is in a paused/break state
2024-10-01 17:53:46 +09:00
Bartłomiej Dach
a00ed8dd77
Merge pull request #29914 from peppy/fix-judgement-counter-sync
...
Fix judgement counter not showing correct counts when spectating user mid-play
2024-09-27 10:57:26 +02:00
Dean Herbert
1dd6082aa9
Rename method to be more appropriate
2024-09-27 16:56:22 +09:00
Dean Herbert
19a96bcc50
Merge pull request #29967 from bdach/storyboard-full-dim
...
Continue displaying storyboard even if fully dimmed in specific circumstances
2024-09-27 16:33:58 +09:00
Dean Herbert
5efdc6cdd7
Merge pull request #29936 from u4vh3/skinning-colour-customisation
...
Add colour customisation to layout editor
2024-09-27 14:20:58 +09:00
Bartłomiej Dach
9f4e48dde7
Actually use bindables rather than stick things in Update()
2024-09-24 15:15:28 +02:00
Dean Herbert
b7d8cb2371
Merge pull request #29968 from bdach/cache-for-spectate-screen
...
Use cache for beatmap lookups on spectate screen
2024-09-24 20:59:33 +09:00
Bartłomiej Dach
4f57a67ea4
Merge branch 'master' into skinning-colour-customisation
2024-09-24 13:02:22 +02:00
Bartłomiej Dach
4c2ebdb2db
Simplify accent colour assignment in argon wedge piece
2024-09-24 12:53:54 +02:00
Bartłomiej Dach
4b349ba387
Use cache for beatmap lookups on spectate screen
...
@peppy noticed recently that attempting to spectate just a few users was
very likely to end up in requests very quickly being rejected with code
429 ("Too Many Requests").
I'm somewhat certain that the reason for that is that a significant
number of players is wont to retry a lot in quick succession. That means
that spectator server is going to note a lot of gameplay start and end
messages in quick succession, too. And as it turns out, every gameplay
start would end up triggering a new beatmap set fetch request:
ccf1acce56/osu.Game/Screens/Spectate/SpectatorScreen.cs (L131-L134)
ccf1acce56/osu.Game/Screens/Play/SoloSpectatorScreen.cs (L168-L172)
ccf1acce56/osu.Game/Screens/Play/SoloSpectatorScreen.cs (L243-L256)
To attempt to curtail that, use the beatmap cache instead, which should
prevent these unnecessary requests from firing in the first place,
therefore reducing the chance of the client getting throttled.
This technically means that a different endpoint is used to fetch the
data (`GET /beatmaps/?ids[]=` rather than `GET
/beatmapsets/lookup?beatmap_id={id}`), but docs claim that both should
return the same data, and it looks to work fine in practice.
2024-09-23 12:15:19 +02:00
Bartłomiej Dach
0f758ca25f
Continue displaying storyboard even if fully dimmed in specific circumstances
...
Closes https://github.com/ppy/osu/issues/9315 .
Closes https://github.com/ppy/osu/issues/29867 .
Notably, this does nothing about
https://github.com/ppy/osu/issues/25075 , but I'm not sure what to do
with that one in the first place.
2024-09-23 11:19:31 +02:00
Bartłomiej Dach
881c9dfbba
Fix score being cloned in async method causing random errors (again)
...
Compare: https://github.com/ppy/osu/pull/24548 .
I don't have a reproduction scenario (judging from the stack trace
of the crash it's likely to be nigh-impossible to concoct a reliable
one), but there is some circumstantial evidence that this might help,
namely that that previous fix above worked, and the pathway that's
failing here is similarly async to the one that pull fixed. So I'm just
gonna start with that and hope that it does the job.
2024-09-23 09:51:02 +02:00
Daniel Cios
ec575e9de4
Rename Colour to AccentColour
2024-09-20 16:38:26 +02:00
Daniel Cios
94c2f522ff
Fix spacing
2024-09-19 17:31:33 +02:00
Daniel Cios
e81e356d59
Add colour customisation to skin components
2024-09-19 17:27:25 +02:00
Dean Herbert
d5c2484109
Always transfer updated counts once
2024-09-19 19:23:14 +09:00
Dean Herbert
cd61aecad1
Merge pull request #29925 from nekupaw/skip-overlay-beat-synced-animation
...
Implement beat-synchronized animation in skip overlay
2024-09-19 18:53:45 +09:00
Dean Herbert
fd45644d0f
Fix skin layout editor PlayerAvatar
applying corner radius weirdly after scale
...
Closes #29919 .
I've also made this handle resizing better, so now you can have
non-square avatar displays.
2024-09-19 16:55:04 +09:00
Bartłomiej Dach
fdd94aa845
Remove pointless max
...
The clamp should already ensure this.
2024-09-19 09:43:50 +02:00
Neku
d0519238a3
Implement beat-synchronized animation in skip overlay
2024-09-19 09:43:45 +02:00
Dean Herbert
8f49876fe7
Re-sync judgement counter display after replay frame reset
2024-09-18 15:28:11 +09:00
Dean Herbert
c46e9cbce3
Tidy up JudgementCounter
classes
2024-09-18 15:28:10 +09:00
Dean Herbert
58fe502af4
Merge branch 'master' into beatmap-info-purge
2024-09-15 04:53:35 +09:00
Bartłomiej Dach
4e9ad1388f
Fix stall when attempting to import replay after hitting nothing
2024-09-06 13:16:58 +02:00
Dean Herbert
37f61b26ea
Fix offset adjust control not correctly applying changes after song select quit
...
This is an interesting scenario where we arrive at a fresh
`BeatmapOffsetControl` but with a reference score (from the last play).
Our best assumption here is that the beatmap's offset hasn't changed
since the last play, so we want to use it for the `lastPlayBeatmapOffset`.
But due to unfortunate order of execution, `Current.Value` was not yet
initialised.
2024-09-05 19:04:52 +09:00