Dean Herbert
adac3b65ce
Fix beatmap carousel not preloading panels when off-screen
2024-01-04 19:25:12 +09:00
Dean Herbert
705f25e4b9
Make ScoreProcessor.Rank
read-only
2024-01-04 17:13:24 +09:00
Dean Herbert
0bbc27e380
Add a gameplay configuration flag to disable fail animation
2024-01-04 17:13:24 +09:00
Joseph Madamba
cd9bf0c753
Flash blocking ongoing operations dialog when trying to force quit
2024-01-03 22:30:46 -08:00
wooster0
2c64db0628
Use already existing message placeholder + localized string
2024-01-04 12:15:48 +09:00
CaffeeLake
c7b0a7ff69
Merge branch 'master' into multiplier1x
2024-01-04 05:04:23 +09:00
CaffeeLake
8482d731c3
Merge branch 'master' into multiplier1x
2024-01-03 20:24:45 +09:00
Bartłomiej Dach
04147eb689
Fix lack of correct default value spec
2024-01-03 11:46:28 +01:00
Bartłomiej Dach
e686a6a1dd
Fix player submission test intermittent failures due to audio playback discrepancy logic kicking in
...
See https://github.com/ppy/osu/actions/runs/7384457927/job/20087439457#step:5:133 .
2024-01-03 09:17:01 +01:00
Dean Herbert
bdfaa4b583
Fix crash when dragging rotation control in editor with both mouse buttons
...
Closes https://github.com/ppy/osu/issues/26325 .
2024-01-03 13:34:50 +09:00
Dean Herbert
e4ba7b81b0
Merge pull request #26343 from adryzz/fix-discord-multiplayer-presence
...
update the current activity when the multiplayer room updates
2024-01-03 13:10:56 +09:00
CaffeeLake
79ef032182
Merge branch 'master' into multiplier1x
2024-01-03 07:40:02 +09:00
Lena
17656e9b9c
update the current activity when the multiplayer room updates
2024-01-02 18:38:25 +01:00
Bartłomiej Dach
3c5e9ac9a9
Fix possible double score submission when auto-retrying via perfect mod
...
Closes https://github.com/ppy/osu/issues/26035 .
`submitOnFailOrQuit()`, as the name suggests, can be called both when
the player has failed, or when the player screen is being exited from.
Notably, when perfect mod with auto-retry is active, the two happen
almost simultaneously.
This double call exposes a data race in `submitScore()` concerning the
handling of `scoreSubmissionSource`. The race could be experimentally
confirmed by applying the following patch:
diff --git a/osu.Game/Screens/Play/SubmittingPlayer.cs b/osu.Game/Screens/Play/SubmittingPlayer.cs
index 83adf1f960..76dd29bbdb 100644
--- a/osu.Game/Screens/Play/SubmittingPlayer.cs
+++ b/osu.Game/Screens/Play/SubmittingPlayer.cs
@@ -228,6 +228,7 @@ private Task submitScore(Score score)
return Task.CompletedTask;
}
+ Logger.Log($"{nameof(scoreSubmissionSource)} is {(scoreSubmissionSource == null ? "null" : "not null")}");
if (scoreSubmissionSource != null)
return scoreSubmissionSource.Task;
@@ -237,6 +238,7 @@ private Task submitScore(Score score)
Logger.Log($"Beginning score submission (token:{token.Value})...");
+ Logger.Log($"creating new {nameof(scoreSubmissionSource)}");
scoreSubmissionSource = new TaskCompletionSource<bool>();
var request = CreateSubmissionRequest(score, token.Value);
which would result in the following log output:
[runtime] 2024-01-02 09:54:13 [verbose]: scoreSubmissionSource is null
[runtime] 2024-01-02 09:54:13 [verbose]: scoreSubmissionSource is null
[runtime] 2024-01-02 09:54:13 [verbose]: Beginning score submission (token:36780)...
[runtime] 2024-01-02 09:54:13 [verbose]: creating new scoreSubmissionSource
[runtime] 2024-01-02 09:54:13 [verbose]: Beginning score submission (token:36780)...
[runtime] 2024-01-02 09:54:13 [verbose]: creating new scoreSubmissionSource
[network] 2024-01-02 09:54:13 [verbose]: Performing request osu.Game.Online.Solo.SubmitSoloScoreRequest
[network] 2024-01-02 09:54:14 [verbose]: Request to https://dev.ppy.sh/api/v2/beatmaps/869310/solo/scores/36780 successfully completed!
[network] 2024-01-02 09:54:14 [verbose]: SubmitSoloScoreRequest finished with response size of 639 bytes
[network] 2024-01-02 09:54:14 [verbose]: Performing request osu.Game.Online.Solo.SubmitSoloScoreRequest
[runtime] 2024-01-02 09:54:14 [verbose]: Score submission completed! (token:36780 id:20247)
[network] 2024-01-02 09:54:14 [verbose]: Request to https://dev.ppy.sh/api/v2/beatmaps/869310/solo/scores/36780 successfully completed!
[network] 2024-01-02 09:54:14 [verbose]: SubmitSoloScoreRequest finished with response size of 639 bytes
[runtime] 2024-01-02 09:54:14 [error]: An unhandled error has occurred.
[runtime] 2024-01-02 09:54:14 [error]: System.InvalidOperationException: An attempt was made to transition a task to a final state when it had already completed.
[runtime] 2024-01-02 09:54:14 [error]: at osu.Game.Screens.Play.SubmittingPlayer.<>c__DisplayClass30_0.<submitScore>b__0(MultiplayerScore s) in /home/dachb/Documents/opensource/osu/osu.Game/Screens/Play/SubmittingPlayer.cs:line 250
The intention of the submission logic was to only ever create one
`scoreSubmissionSource`, and then reuse this one if a redundant
submission request was made. However, because of the temporal proximity
of fail and quit in this particular case, combined with the fact that
the calls to `submitScore()` are taking place on TPL threads, means that
there is a read-write data race on `scoreSubmissionSource`, wherein the
source can be actually created twice.
This leads to two concurrent score submission requests, which, upon
completion, attempt to transition only _the second_
`scoreSubmissionSource` to a final state (this is because the API
success/failure request callbacks capture `this`, i.e. the entire
`SubmittingPlayer` instance, rather than the `scoreSubmissionSource`
reference specifically).
To fix, ensure correct synchronisation on the read-write critical
section, which should prevent the `scoreSubmissionSource` from being
created multiple times.
2024-01-02 10:55:52 +01:00
iilwy
fbedcb29e4
Merge branch 'master' into fix-precision
2024-01-01 10:42:15 -06:00
Salman Ahmed
34acb435b8
Merge branch 'master' into multiplier1x
2023-12-31 16:48:00 +03:00
wooster0
0c85fd496f
Don't leave scores screen empty if no scores are present yet
...
Addresses https://github.com/ppy/osu/discussions/23787
I originally wanted to set `allowShowingResults` to false if there are
no results but because this involves an API request to fetch the scores
that would mean all the scores would have to be fetched all at once so
that it knows whether to hide or show the "View results" button on a
beatmap.
Because that would slow things down and be very inefficient, this still
allows the user to view the scores screen but if there aren't any
scores, it shows a text, which I think is at least for now better than
nothing.
As for the testing of this, I wasn't sure how to not generate scores
only for one specific test so I opted into not using `SetUpSteps` and
doing it that way.
2023-12-31 22:42:32 +09:00
iminlikewithyou
5ae5d7f92d
change floor to round
2023-12-30 23:59:47 -06:00
Salman Ahmed
4dc11c4c48
Update existing code to use helper method
2023-12-31 05:18:07 +03:00
iminlikewithyou
45f6c78314
Merge branch 'master' of https://github.com/ppy/osu into menu-button-tweaks
2023-12-30 12:58:10 -06:00
iminlikewithyou
452f201f06
use margins isntead of moving the position of the sprite
2023-12-30 12:56:38 -06:00
CaffeeLake
bca0600482
Use 0.99x or 1.01x
...
Signed-off-by: CaffeeLake <PascalCoffeeLake@gmail.com>
2023-12-31 00:47:09 +09:00
Dean Herbert
61c46b78bd
Update MenuTip.cs
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2023-12-29 22:24:16 +09:00
Dean Herbert
9f0fe6c6ca
Fix common typos
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-12-29 22:20:29 +09:00
Dean Herbert
d00b7c9cdf
Add some new menu tips (and reword some others)
2023-12-29 22:14:51 +09:00
Dean Herbert
2b81f4f557
Merge pull request #26221 from bdach/system-title-only-on-top-level-menu
...
Do not display system title in inital menu state
2023-12-29 21:13:40 +09:00
Bartłomiej Dach
db78d73fa5
Do not display system title in inital menu state
...
Addresses https://github.com/ppy/osu/discussions/26199 .
2023-12-29 11:50:30 +01:00
Bartłomiej Dach
99cddb6317
Use alternative workaround
2023-12-29 11:07:45 +01:00
Bartłomiej Dach
cd1f6b46c4
Fix crash after changing audio track in editor
...
Closes https://github.com/ppy/osu/issues/26213 .
Reproduction scenario: switch audio track in editor after timeline
loads.
Happens because `beatmap.Value.Track.Length` is 0 immediately after a
track switch, until BASS computes the actual track length on the audio
thread.
Yes this is a hack. No I have no better immediate ideas how to address
this otherwise.
2023-12-29 10:37:36 +01:00
Nitrous
c68a850325
Make menu tip about mod select more up to date.
2023-12-29 08:51:54 +08:00
iminlikewithyou
51d26d2d71
make the hover scale bigger
...
as a consequence, the rotation needs to be tweaked to be lower
2023-12-28 17:20:44 -06:00
iminlikewithyou
f1f1221e0e
move text left to be visually centered in the skewed rectangle
2023-12-28 17:18:41 -06:00
iminlikewithyou
4760c6aaee
move icon upwards to be visually centered
2023-12-28 17:17:24 -06:00
iminlikewithyou
637119f7d4
increase the base size of button icons
2023-12-28 17:15:23 -06:00
Bartłomiej Dach
7a10e132ea
Fix crash when retrieval of system title image fails
...
Closes https://github.com/ppy/osu/issues/26194 .
2023-12-28 20:39:13 +01:00
Bartłomiej Dach
6d124513e7
Fix test failures due to player bailing early after failing to load beatmap
2023-12-28 14:15:15 +01:00
Bartłomiej Dach
619b0cc69b
Fix code quality inspection
2023-12-28 14:12:28 +01:00
Bartłomiej Dach
24a80da83f
Merge branch 'master' into universal-offset-from-session-plays
2023-12-28 14:07:46 +01:00
Dean Herbert
e1a376c0a7
Fix using "Back" binding at spectator fail screen not working
2023-12-28 20:14:18 +09:00
Bartłomiej Dach
0fc86a07cb
Merge pull request #26177 from peppy/fix-leaderboard-tab-ordering
...
Fix song select leaderboard tab ordering not matching stable
2023-12-28 12:02:46 +01:00
Dean Herbert
b7f3c83514
Expose the ability to update global offset from the player loader screen
2023-12-28 20:01:34 +09:00
Dean Herbert
bd0e2b4dde
Remove disclaimer screen completely
2023-12-28 17:21:29 +09:00
Dean Herbert
7dc50b9baf
Don't dismiss on hover, and allow dismissing via click
2023-12-28 17:20:01 +09:00
Dean Herbert
1f2339244e
Add supporter display to main menu
2023-12-28 17:20:01 +09:00
Dean Herbert
b19f72481b
Fade out quickly on game exit sequence
2023-12-28 17:19:41 +09:00
Dean Herbert
0ad6ac8b2a
Remove unused variable
2023-12-28 16:48:17 +09:00
Dean Herbert
932d03a4f8
Make toggle more immediately hide/show tips
2023-12-28 16:21:19 +09:00
Dean Herbert
222459d921
Add background and improve layout
2023-12-28 16:16:27 +09:00
Dean Herbert
a1867afbb4
Move menu tips to main menu
...
In preparation for removing the disclaimer screen.
2023-12-28 16:06:08 +09:00
Dean Herbert
6684987289
Reduce refresh interval slightly
2023-12-28 15:19:09 +09:00
Dean Herbert
0ea62d0c5d
Add initial additive blending on fade in
2023-12-28 15:16:42 +09:00
Dean Herbert
972234b1e5
Move re-schedule inside continuation
2023-12-28 15:12:44 +09:00
Dean Herbert
481a251786
Use HandleLink
to allow potentially opening wiki or otherwise
2023-12-28 15:11:02 +09:00
Dean Herbert
289e0f00f9
Add flash on click
2023-12-28 15:10:47 +09:00
Dean Herbert
c70e7d340d
Adjust animation and add delay to URL open
2023-12-28 15:10:47 +09:00
Dean Herbert
ffc8778d67
Fix song select leaderboard tab ordering not matching stable
2023-12-28 14:13:35 +09:00
Bartłomiej Dach
ef39759813
More code quality inspections
2023-12-28 00:18:20 +01:00
Bartłomiej Dach
a3f720bc62
Retrieve system title from online source
2023-12-27 23:37:39 +01:00
Bartłomiej Dach
d9299a8a55
Implement visual appearance of "system title" message in main menu
2023-12-27 23:07:17 +01:00
Bartłomiej Dach
1b7af989ec
Migrate BeatmapOffsetControl
to use session static directly
2023-12-27 19:19:27 +01:00
Bartłomiej Dach
d4423d4933
Store last set score to a SessionStatic
2023-12-27 19:13:42 +01:00
Bartłomiej Dach
53766285ce
Remove remaining hexacons usages
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
288ac930e4
Use new icons in editor
...
Some that exist on figma are purposefully not used due to an editorial
request from @peppy.
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
c45477bd1f
Use new icons in main menu wherever feasible
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
668ce937a8
Merge pull request #26138 from peppy/fix-audio-rate-playback-not-fail
...
Bail from score submission if audio playback rate is too far from reality
2023-12-26 19:13:46 +01:00
Dean Herbert
d70fddb6fd
Fix elapsed time being counted twice on first frame
2023-12-27 00:11:22 +09:00
Dean Herbert
03e2463b06
Add test coverage and refactor to better handle equality edge case
2023-12-26 21:21:08 +09:00
Dean Herbert
1f2f749db6
Fix selection not being retained in control point list when undoing / redoing
2023-12-26 21:04:42 +09:00
Dean Herbert
f2c0e7cf2e
Fix editor's control point list refreshing multiple times for a single change
2023-12-26 21:04:42 +09:00
Bartłomiej Dach
b1a26acdd0
Merge pull request #26136 from peppy/add-waveform-visual-offset
...
Add visual offset to better align editor waveforms with expectations
2023-12-26 12:57:13 +01:00
Dean Herbert
225528d519
Bail from score submission if audio playback rate is too far from reality
...
Closes https://github.com/ppy/osu/issues/23149 .
2023-12-26 19:20:58 +09:00
Dean Herbert
f9e47242db
Add visual offset to better align editor waveforms with expectations
2023-12-26 17:44:49 +09:00
Nathan Tran
060bf8beff
Fix rewind backtracking
2023-12-25 15:27:32 -08:00
Dean Herbert
686b2a4394
Disable positional interaction for now
2023-12-24 03:00:51 +09:00
Dean Herbert
72bec527fd
Add conditions to match stable offset adjust limitations
2023-12-24 02:36:27 +09:00
Dean Herbert
92b490f2e7
Don't bother with alt support for now
2023-12-24 01:59:48 +09:00
Dean Herbert
6f11885d4b
Add control to allow changing offset from gameplay
2023-12-23 20:51:30 +09:00
Dean Herbert
7e9522a722
Allow external use of offset text explanation
2023-12-23 20:46:12 +09:00
Dean Herbert
27a9dcc5a1
Add basic hotkey offset adjust support (via existing offset control)
2023-12-23 19:55:05 +09:00
Simon G
b31b9e96d0
adjust beatmap length and drain based on rate changing mods
2023-12-22 03:04:48 +01:00
Bartłomiej Dach
81bbdccee7
Rename ScoreInfo.{ -> Client}Version
2023-12-21 12:56:43 +01:00
Dean Herbert
a4baa0a716
Add versioning of local scores
...
For any potential future usage
2023-12-21 18:37:15 +09:00
rushiiMachine
ebbc8333e8
Prevent ExportReplay
being spammed on fail by being held down
...
This was already handled in ReplayDownloadButton (98efff0bd6/osu.Game/Screens/Ranking/ReplayDownloadButton.cs (L114-L115)
) but seemingly missed for SaveFailedScoreButton
2023-12-20 08:41:16 -08:00
Dean Herbert
7fa4dcf0fb
Fix selection retention logic copy paste failure
2023-12-20 19:27:57 +09:00
Dean Herbert
e003462f7d
Fix beatmap updates causing one extra carousel selection
2023-12-20 19:15:02 +09:00
Dean Herbert
64f62e7d90
Fix song select running updates when screen is not active
...
Who would have guessed that `Schedule` calls were there for a reason!
I've tidied things up. Most of the changes I've made here are not
required – the schedule is the main thing here. The reason the sound was
playing is because one-too-many schedules was removed causing beatmap
updates to update carousel specifics while still at the player loader
screen.
Note that the selection sound still plays on returning to song select,
but this is not a regression. I'm looking at fixing this in a separate
PR because I'm in a good place as far as understanding the logic right
now and it would be a waste to leave it broken.
Closes https://github.com/ppy/osu/issues/25875 .
2023-12-20 17:31:09 +09:00
Bartłomiej Dach
9a5027e556
Merge pull request #25900 from peppy/editor-from-any-carousel
...
Allow choosing "Edit" from any beatmap carousel item
2023-12-20 08:35:42 +01:00
Dan Balasescu
3818977a36
Merge pull request #25898 from peppy/song-select-stats
...
Update song select to always show difficulty stats
2023-12-20 14:39:35 +09:00
Dean Herbert
85e5d74a16
Apply proposed changes
2023-12-20 12:42:06 +09:00
OliBomby
c167f10ad5
fix crash from dragging near zero-length repeating object in timeline
2023-12-19 21:20:45 +01:00
Bartłomiej Dach
e306cc35ba
Merge branch 'master' into fix-song-select-realm-refresh-performance
2023-12-19 14:14:46 +01:00
Dean Herbert
bbfdd6892d
Allow choosing "Edit" from any beatmap carousel item
2023-12-19 19:58:49 +09:00
Dean Herbert
502e3edac3
Add missing invalidation call
2023-12-19 19:39:48 +09:00
Dean Herbert
3b848e8503
Tidy up visual look
2023-12-19 19:28:02 +09:00
Dean Herbert
07bb0805e9
Move advanced stats to a more permanent location on song select
2023-12-19 19:10:43 +09:00
Dean Herbert
0a64d631e2
Add support for dual-column advanced stats
2023-12-19 19:09:47 +09:00
Dean Herbert
8f5d21dc70
Actually fix realm selection retention regression
2023-12-19 18:10:55 +09:00
Dean Herbert
7e9c1b2acb
Use sender
's realm (because we can)
2023-12-19 17:27:52 +09:00
Bartłomiej Dach
7c05d66bd7
Add more detail to exception
2023-12-19 08:57:18 +01:00
Dean Herbert
44efa2c540
Fix incorrect ordering of items at song select when certain sort modes are used
2023-12-19 15:09:03 +09:00
Dean Herbert
d81cabc063
Revert "Improve performance of attemptSelection
using new cached count and LastSelected
"
...
This reverts commit 25df42630e
.
2023-12-18 22:46:02 +09:00
Dean Herbert
25e3a8e82e
Fix a few of silly issues
2023-12-18 22:45:58 +09:00
Dean Herbert
25df42630e
Improve performance of attemptSelection
using new cached count and LastSelected
2023-12-18 20:47:08 +09:00
Dean Herbert
5755fa214a
Cache non-filtered beatmap counts to massively improve count performance
2023-12-18 20:44:08 +09:00
Dean Herbert
034c5cd654
Debounce count updates for good measure
2023-12-18 20:43:23 +09:00
Dean Herbert
6fa1f5ef9b
Simplify invalidation logic
...
The only case where this was checking is guaranteed by realm to only be called once.
2023-12-18 20:31:02 +09:00
Dean Herbert
87b7699fcc
Avoid calling invalidation logic per beatmap set updated
...
Realm will batch the updates. We don't want to do expensive operations per set when we don't need to.
2023-12-18 20:31:02 +09:00
Dean Herbert
32cc3f9ef7
Combine multiple similar invalidation logic into single event
2023-12-18 20:31:02 +09:00
Dan Balasescu
d7aca2f641
Add IApplicableHealthProcessor
2023-12-17 19:27:03 +09:00
Bartłomiej Dach
b3c6e80f5c
Merge pull request #25770 from peppy/show-back-button-spectator
...
Show back button when spectating
2023-12-15 09:08:24 +01:00
Dean Herbert
48e89b903c
Merge pull request #25760 from bdach/if-i-speak-i-am-in-big-trouble-pt-1
...
Fix `AdjustedAttributesTooltip` being broken by design
2023-12-15 12:26:10 +09:00
Dean Herbert
27296c59de
Show back button when spectating
...
Avoids getting stuck at some screens.
It's a bit ugly having the back button visible like this,
but is the best approach we have for now.
2023-12-15 11:26:17 +09:00
Dan Balasescu
fbef40bb1f
Reduce some allocations in SongSelect in the mania ruleset
2023-12-15 11:01:15 +09:00
Bartłomiej Dach
9e5b6b97ff
Fix AdjustedAttributesTooltip
being broken by design
...
Fixes issue described in the following comment:
https://github.com/ppy/osu/pull/25759#issuecomment-1855954637
That is just not how the tooltip system is supposed to be used.
To name the individual sins:
- Caching and returning a tooltip instance like the classes that used
tooltips is incorrect. The lifetime of tooltip instances is managed by
the tooltip container. `GetCustomTooltip()` is called by it
exclusively. It should return a fresh instance every time.
- Not putting actual data in `IHasCustomTooltip.TooltipContent` is
wrong.
- Having `Tooltip.SetContent()` be a no-op is *grossly and flagrantly*
wrong.
I'm not even sure which particular combination of the above
transgressions caused the issue as it presented itself, but at this time
I frankly do not care.
2023-12-14 16:15:56 +01:00
Givikap120
b22a7cf520
Update AdvancedStats.cs
2023-12-14 14:31:58 +02:00
Givikap120
c2373bb37b
change the order of attributes
...
+ simplifying the bug fix
2023-12-14 14:31:19 +02:00
Givikap120
8698835db2
fixed bug
...
fixed the bug where it's not updates tooltip when there are no mods
2023-12-14 14:00:35 +02:00
Dean Herbert
e296730b37
Merge pull request #24642 from Givikap120/arod_rate_adjust
...
Show adjusted AR/OD when using DT/HT
2023-12-13 22:17:10 +09:00
Dean Herbert
76c4931f3a
Merge pull request #25673 from frenzibyte/fix-argon-initial-display
...
Fix `ArgonHealthDisplay` not displaying miss correctly during initial transition
2023-12-13 22:16:34 +09:00
Dean Herbert
9235f3d935
Merge pull request #25747 from peppy/fix-hit-error-clear
...
Fix hit error displays not clearing on seek
2023-12-13 17:36:24 +09:00
Dean Herbert
5062c53e36
Refactor everything for sanity
2023-12-13 17:33:39 +09:00
Dean Herbert
3131d37621
Clear transformations with more fire
2023-12-13 17:00:21 +09:00
Dean Herbert
fb44fb18e0
Update in line with upstream changes
2023-12-13 16:42:20 +09:00
Dean Herbert
0259ab761b
Merge branch 'master' into arod_rate_adjust
2023-12-13 16:35:18 +09:00
Dean Herbert
fdcf87569c
Merge pull request #25711 from smoogipoo/mania-convert-song-select-keycount
...
Display osu!mania keycount in song select carousel panels and details
2023-12-13 16:31:25 +09:00
Dean Herbert
ec6200b4ad
Merge pull request #25743 from peppy/merge-everything-at-once
...
Merge everything at once
2023-12-13 16:17:06 +09:00
Dean Herbert
f2c6c348be
Fix HitError
Clear
methods not correctly returning pooled drawables
2023-12-13 16:13:23 +09:00
Dean Herbert
110749205d
Cache GameplayClockContainer
to allow usage of OnSeek
2023-12-13 16:13:08 +09:00
Dean Herbert
5e10f9f899
Fix failing tests due to more textboxes being present with searchable dropdowns
2023-12-13 15:11:47 +09:00
Dean Herbert
eb30a603d9
Fix typo in argument name
2023-12-13 15:01:36 +09:00
Dean Herbert
0be6743e87
Apply Bindable.Parse
refactorings
2023-12-13 14:07:38 +09:00
Dean Herbert
5b00cf283d
Merge branch 'master' into drawnode-subtree-draw-cleanup
2023-12-13 14:01:01 +09:00
Dan Balasescu
c31ff84417
Fix possible nullref
2023-12-13 13:32:27 +09:00
Givikap120
2d94841929
fixed one test
2023-12-10 02:00:32 +02:00
Givikap120
faf54bca43
Merge branch 'master' into arod_rate_adjust
2023-12-10 01:49:18 +02:00
Givikap120
1d0c37e138
fixed test errors
2023-12-10 00:40:05 +02:00
Dan Balasescu
b36db3518c
Add keycount to song select details panel and carousel panels
2023-12-09 22:31:51 +09:00
Dean Herbert
a500f55ec6
Merge pull request #25688 from peppy/match-default-sv
...
Change default slider velocity for new beatmaps to match osu!stable
2023-12-07 11:52:16 +09:00
Bartłomiej Dach
f69a5b44cc
Merge branch 'master' into fix-argon-initial-display
2023-12-06 09:30:28 +01:00
Bartłomiej Dach
4585a169b1
Merge pull request #25686 from peppy/fix-song-select-match
...
Fix searching at song select matching incorrect ruleset
2023-12-06 09:25:47 +01:00
Dean Herbert
0af16732b8
Change default slider velocity to 1.4
...
This is the default in osu!stable and plays better than 1.0.
2023-12-06 13:38:46 +09:00
Dean Herbert
4da6d53c72
Merge pull request #25672 from frenzibyte/fix-argon-health-display-2
...
Fix `ArgonHealthDisplay` sometimes behaving weirdly on miss judgements (alternative)
2023-12-06 12:24:39 +09:00
Dean Herbert
8286d3896f
Fix searching at song select matching incorrect ruleset
...
Regressed with https://github.com/ppy/osu/pull/25679 .
2023-12-06 11:32:26 +09:00
Salman Ahmed
20fd458fac
Perserve miss animation when followed by a hit at same frame
2023-12-05 21:59:28 +03:00
Salman Ahmed
9496cdf42b
Add explanatory note for scheduling
2023-12-05 21:59:28 +03:00
Salman Ahmed
927cfe4257
Fix health processor event leaks
2023-12-05 21:59:28 +03:00
Bartłomiej Dach
88095aaefa
Merge pull request #25637 from smoogipoo/multiplayer-abort
...
Add ability for the host to abort an in-progress match
2023-12-05 13:51:00 +01:00
Bartłomiej Dach
4644c4e7a2
Remove unused class
2023-12-05 12:43:32 +01:00
Bartłomiej Dach
566d336470
Merge pull request #25679 from peppy/song-select-search-performance
...
Improve song select search performance
2023-12-05 11:06:31 +01:00
Dean Herbert
5a2240838b
Merge branch 'master' into multiplayer-abort
2023-12-05 17:01:54 +09:00
Dean Herbert
02178d8e61
Remove usage of case-when
2023-12-05 16:58:16 +09:00
Dean Herbert
f317e06da1
Use DangerousActionDialog
2023-12-05 16:54:44 +09:00
Dean Herbert
45e499778f
Search terms before performing other criteria checks
...
Very minor, but putting the more common case towards the
start of the method allows early return.
2023-12-05 15:28:56 +09:00
Dean Herbert
42010574b5
Avoid list construction when doing filtering
2023-12-05 15:26:14 +09:00
Dean Herbert
27e778ae09
Avoid sorting items when already in the correct sort order
2023-12-05 14:47:32 +09:00
Dean Herbert
7fda38d0b0
Use ordinal comparison when searching at song select
...
Bypasses various overheads. In theory should be fine? (until it's not on some language)
2023-12-05 14:14:13 +09:00
Guido
8756dd25c6
Changed file chooser in resource selection to show file name when file is selected
2023-12-04 22:51:56 +01:00
Salman Ahmed
629e64d50a
Fix ArgonHealthDisplay
not displaying miss correctly during initial transition
2023-12-04 23:55:31 +03:00
Salman Ahmed
4d82a55594
Remove method for being unused
2023-12-04 23:24:28 +03:00
Salman Ahmed
5723715ea0
Fix ArgonHealthDisplay
sometimes behaving weirdly on miss judgements
2023-12-04 23:24:28 +03:00
Dan Balasescu
8587652869
Fix countdown button being enabled
2023-12-04 11:00:11 +09:00
Dan Balasescu
c2644a5d5e
Correctly implement button enabled state
2023-12-04 10:18:37 +09:00
Dan Balasescu
b56a78c6ec
Adjust with framework changes
2023-12-04 08:51:21 +09:00
Dan Balasescu
1b0fc8ca9d
Refactor
2023-12-01 20:41:41 +09:00
Dan Balasescu
15c9416244
Rename method
2023-12-01 18:47:40 +09:00
Dan Balasescu
a94180c8c6
Rename LoadAborted -> GameplayAborted, AbortGameplayReal -> AbortMatch
2023-12-01 18:26:59 +09:00
Dan Balasescu
894c31753b
Add initial support for aborting multiplayer games
2023-12-01 15:31:06 +09:00
Dean Herbert
1cfcaee121
Reorder badges so that SS shows above others
...
This isn't perfect and probably needs much more consideration, but let's
at least give the "better" ranks more visibility by bringing them to the
front.
Of note, this is only important due to the changes to osu!catch
accuracy-grade cutoffs, which brings things closer in proximity than
ever before.
2023-11-29 20:29:52 +09:00
Dan Balasescu
295a1b01d6
Adjust catch score grade cutoffs
2023-11-29 19:05:31 +09:00
Dean Herbert
537c9e031d
Merge pull request #25522 from bdach/no-concurrent-connections
...
Implement flow allowing disconnection from online services when another client instance for same user is detected
2023-11-28 19:09:38 +09:00
Dean Herbert
a4be28a2ae
Don't show buttons on fail overlay when player interaction is disabled
2023-11-27 12:25:24 +09:00
Bartłomiej Dach
98ab9853ce
Merge branch 'master' into show-spectator-fail-2
2023-11-27 12:24:59 +09:00
Bartłomiej Dach
19639de299
Merge branch 'master' into fix-spectator-quit-2
2023-11-27 11:36:10 +09:00
Dean Herbert
a6cf1e5d2e
Make osu! logo do something when in edit submenu
2023-11-25 00:53:25 +09:00
Dean Herbert
a44edfdedd
Fix incorrect sample for top level edit button
2023-11-24 19:37:57 +09:00
Dan Balasescu
289cda71b2
Fix inspections
2023-11-24 15:06:51 +09:00
Dean Herbert
7ceb49fbc0
Add extra test coverage and handle case where still at loading screen
2023-11-24 15:05:39 +09:00
Dean Herbert
d3a55d83c0
Schedule FailScore
inside onFail
instead of onFailComplete
2023-11-24 14:44:57 +09:00
Dean Herbert
ef5dd24589
Update failing test coverage and fix onFail
being called too often
2023-11-24 14:44:57 +09:00
Dean Herbert
4ad3cb3b49
Submit and send failed spectator state more aggressively
2023-11-24 14:44:57 +09:00
Dean Herbert
8375dd72d6
Add xmldoc to new AllowFail
method
2023-11-24 14:44:57 +09:00
Dean Herbert
ca93fdc94b
Add visualisation of when a spectated player fails
...
Create a new stack each time for isolation and safety
2023-11-24 14:44:57 +09:00
Dean Herbert
b024065857
Remove implicit schedule of abstract
methods in SpectatorScreen
...
This allows each implementation to have control over scheduling. Without
this, the solo implementation would not be able to handle quit events
while watching a player, as it would push a child (gameplay) screen to
the stack where the `SpectatorScreen` would usually be.
2023-11-24 14:26:09 +09:00
Dean Herbert
335e8efff7
Apply NRT to SoloSpecatorScreen
2023-11-24 14:26:09 +09:00
Dean Herbert
dabbdf674b
Rename SoloSpectator
to SoloSpectatorScreen
2023-11-24 14:26:08 +09:00
Dean Herbert
4c7d2bb0fb
Apply NRT to SpectatorScreen
2023-11-24 14:26:08 +09:00
Dean Herbert
b8179aa875
Use better(?) icons and full strings
2023-11-24 13:23:47 +09:00
Dean Herbert
a069a673fa
Allow buttons to be displayed on more than one state (and share the back button)
2023-11-24 13:18:17 +09:00
Dean Herbert
1d1b3ca982
Apply NRT to MainMenuButton
2023-11-24 13:18:17 +09:00
Dean Herbert
8ad414488a
Play out previous transforms immediately to avoid flow issues with multiple sub menus
2023-11-24 13:18:17 +09:00
Dean Herbert
7e59a1d0be
Apply NRT to ButtonSystem
2023-11-24 13:18:17 +09:00
Dean Herbert
5905ca6492
Add second level menu for skin editors
2023-11-24 13:18:17 +09:00
Dean Herbert
340227a06d
Replace all hexacon lookups with strongly typed properties
2023-11-24 13:17:39 +09:00
Dean Herbert
95c00f9666
Add HexaconIcons
lookup to allow usage with SpriteIcon
2023-11-24 13:17:39 +09:00
Dean Herbert
537b0ae870
Add silly annotation for now (more new r# rules)
2023-11-24 12:47:42 +09:00
Givikap120
c2a44cf118
Made custom tooltip
2023-11-23 23:30:18 +02:00
Dean Herbert
5239fee947
Allow use of skin username/flag/avatar components outside of gameplay
2023-11-23 17:15:03 +09:00
Dean Herbert
9a6857bfad
Merge pull request #25530 from yesseruser/FlagHUD
...
Fix skin element "PlayerFlag" responding to clicks/hovers
2023-11-23 16:51:09 +09:00
Dan Balasescu
30309cdf11
Merge pull request #25415 from Poyo-SSB-forks/unify-ur
...
Change unstable rate calculation to account for rate-change mods
2023-11-23 09:53:28 +09:00
yesseruser
82fec4194d
Disabled RecievePositionalInputAtSubTree in PlayerFlag.
2023-11-22 15:45:32 +01:00
yesseruser
08e0279d72
Revert "Renamed UpdateableFlag to ClickableUpdateableFlag."
...
This reverts commit 671177e871
.
2023-11-22 15:25:43 +01:00
yesseruser
be8b59e59d
Revert "Created and implemened a BaseUpdateableFlag."
...
This reverts commit cd7e0bf620
.
2023-11-22 15:25:35 +01:00
yesseruser
cd7e0bf620
Created and implemened a BaseUpdateableFlag.
...
The tooltip still shows.
2023-11-21 19:27:33 +01:00
yesseruser
671177e871
Renamed UpdateableFlag to ClickableUpdateableFlag.
2023-11-21 19:02:23 +01:00
Dean Herbert
21bf288277
Merge pull request #25520 from peppy/context-menu-spacers
...
Allow context menus to have visible spacers
2023-11-21 16:56:36 +09:00
Bartłomiej Dach
bf972a04ee
Merge pull request #25409 from Tom94/bspline-sliders
...
Add free-hand drawing of sliders to the editor
2023-11-21 16:28:14 +09:00
Bartłomiej Dach
d83b2e24e7
Merge pull request #25371 from RatinFX/open-editor-timestamp
...
Implement opening editor timestamp links
2023-11-21 15:48:36 +09:00
Bartłomiej Dach
aa3ff151c0
Fix RoomManager
attempting to part room when not online
2023-11-21 15:15:46 +09:00
Bartłomiej Dach
42fada578e
Centralise and improve messaging around online state
...
When the server requests a disconnect due to a user connecting
via a second device, the client will now log the user out on the first
device and show a notification informing them of the cause of
disconnection.
2023-11-21 15:15:46 +09:00
Dean Herbert
7c5345bf7e
Use SimpleErrorNotification
for error display
2023-11-21 15:10:41 +09:00
Dean Herbert
917a68eac3
Adjust localisablel strings and keys
2023-11-21 15:08:15 +09:00
Dean Herbert
405ab499e9
Allow context menus to have visible spacers
2023-11-21 14:24:10 +09:00
Bartłomiej Dach
b6215b2809
Rename and document SelectFromTimestamp
2023-11-20 21:57:14 +09:00
Bartłomiej Dach
234ef6f923
Rectify selection keep-alive logic
2023-11-20 21:57:14 +09:00
Bartłomiej Dach
246aacb216
Remove unnecessary guard
...
Setting a bindable's value to something if that value is already there
is a no-op (doesn't trigger bindings / callbacks).
2023-11-20 21:57:14 +09:00
Bartłomiej Dach
0e0ab66148
Simplify parsing code
...
Less methods, less smeared around logic, saner data types.
2023-11-20 21:57:12 +09:00
Bartłomiej Dach
b6e3e42445
Merge branch 'master' into bspline-sliders
2023-11-20 12:03:29 +09:00
Dean Herbert
9172632b0b
Rename method and adjust xmldoc to be very explicit about how wrong this is
2023-11-17 17:04:20 +09:00
Dean Herbert
d1cea10f21
Add note about localisation
2023-11-17 16:52:40 +09:00
Dean Herbert
0a8ede6274
Merge pull request #25469 from Joehuu/argon-hide-counter-labels
...
Add ability to toggle labels on argon counter components
2023-11-16 17:01:03 +09:00
Bartłomiej Dach
1e2f1b3ef2
Merge branch 'master' into unload-main-menu-storyboard
2023-11-16 15:46:44 +09:00
Bartłomiej Dach
dbd4f26436
Use alternative method of scheduling storyboard unload
2023-11-16 15:37:53 +09:00
Dean Herbert
b45872d2e0
Merge branch 'master' into argon-hide-counter-labels
2023-11-16 14:20:13 +09:00
Dean Herbert
73eda6c09c
Move non-matching default value to argon skin default speficiation instead
2023-11-16 14:18:49 +09:00
Dean Herbert
7f90db7603
Merge pull request #25472 from bdach/argon-health-folding-in-on-self
...
Fix argon health bar folding in on itself when too narrow
2023-11-15 19:02:30 +09:00
Dean Herbert
2987c0e802
Add note about enfocing size methodology
2023-11-15 19:01:52 +09:00
Dean Herbert
189fca2eb6
Merge pull request #25339 from joshika39/change-clickable-avatars-tooltip-for-usergrid
...
Add `UserGridPanel` as the `ClickableAvatar` tooltip
2023-11-15 18:01:24 +09:00
Bartłomiej Dach
8cd1f08a92
Fix argon health bar folding in on itself
2023-11-15 15:42:45 +09:00
Joseph Madamba
62352ce5f3
Add ability to toggle labels on argon counter components
2023-11-14 20:46:42 -08:00
Joseph Madamba
87ace7565d
Use existing localisation for argon counter component labels
2023-11-14 20:44:33 -08:00
Bartłomiej Dach
159cf41f82
Fix default argon health bar width being zero
...
Closes #25460 .
2023-11-15 12:53:09 +09:00
Bartłomiej Dach
711bf14c06
Merge pull request #25443 from peppy/fix-argon-custom-skins
...
Fix customised argon skins no longer loading due to incorrect resource store specification
2023-11-14 23:11:39 +09:00
Dean Herbert
a745642f76
Fix customised argon skins no longer loading due to incorrect resource store spec
2023-11-14 22:01:56 +09:00
Bartłomiej Dach
83f8f03c7e
Fix argon health bar not relative sizing correctly
2023-11-14 21:54:06 +09:00
Bartłomiej Dach
70d2de5669
Move song select touch detector to solo implementation
...
It should not run in multiplayer. Even if we wanted to allow touch-only
playlist items at some point, the current behaviour of multiplayer song
selects with respect to touch device mod is currently just broken.
2023-11-14 16:35:16 +09:00
Givikap120
26d493986c
Fixed precision and updated AdvancedStats
2023-11-12 18:05:18 +02:00
Dean Herbert
798e677c09
Refactor KeyCounterDisplay
to use autosize
...
A previous attempt at this was unsuccessful due to a partially
off-screen elements not getting the correct size early enough (see
https://github.com/ppy/osu/issues/14793 ). This can be accounted for by
setting `AlwaysPresent` when visibility is expected.
This fixes [test failures](https://github.com/ppy/osu/actions/runs/6838444698/job/18595535795 )
due to the newly added `Width` / `Height` being persisted with
floating-point errors (by not persisting the values in the first place,
via `AutoSize.Both`).
2023-11-12 17:19:25 +09:00
Dean Herbert
6bd5eda2a0
Merge branch 'master' into arod_rate_adjust
2023-11-12 15:49:07 +09:00
ratinfx
4e1e19728c
Refactor HitObject selection in Composer
2023-11-11 14:02:42 +01:00
Thomas Müller-Höhne
926636cc03
Generalize Bezier curves to BSplines of Nth degree
2023-11-11 13:32:53 +01:00
Bartłomiej Dach
ea556abad8
Merge branch 'skin-size-editing' into gameplay-hud-redesign/counters
2023-11-11 21:28:29 +09:00
Bartłomiej Dach
50789d2e18
Fix song progress bars not sizing vertically properly
2023-11-11 21:28:04 +09:00
Bartłomiej Dach
870e4ce27e
Fix argon health display not handling invalidation correctly
2023-11-11 20:42:45 +09:00
Bartłomiej Dach
b7972e3c84
Merge branch 'skin-size-editing' into gameplay-hud-redesign/counters
2023-11-11 20:16:14 +09:00
Poyo
064857c40b
Calculate unstable rate using rate-adjusted offsets
2023-11-10 19:57:44 -08:00
Salman Ahmed
96da7a07bb
Add detailed explaination on existence of ScheduleUntilTransitionEnd
2023-11-11 02:57:29 +03:00
Salman Ahmed
080f13e34d
Schedule outside of UnloadStoryboard
and fix disposal happening on update thread
2023-11-11 02:56:45 +03:00
Givikap120
60c3e7250b
fixed naming incconvinence
2023-11-10 15:13:40 +02:00
Bartłomiej Dach
c522a703eb
Merge branch 'master' into skin-size-editing
2023-11-10 18:19:27 +09:00
Bartłomiej Dach
374e13b496
Remove argon health display bar length setting
...
It is no longer needed.
Intentionally not doing backwards migration to simplify things; users
can fix their skins.
2023-11-10 18:18:58 +09:00