Bartłomiej Dach
320373e3e0
Rename method to match convention better
2024-03-19 18:28:13 +01:00
Bartłomiej Dach
feaf59e15f
Use HashSet
instead of SortedSet
...
No need for it to be sorted.
2024-03-19 18:26:58 +01:00
Dean Herbert
0de5ca8d2d
Update incorrect xmldoc
2024-03-20 01:26:39 +08:00
Dean Herbert
35df381717
Merge branch 'master' into tcm-resume
2024-03-20 01:25:40 +08:00
Andrei Zavatski
7ca45c75b3
Don't iterate backwards on children without a reason
2024-03-18 20:46:38 +03:00
Andrei Zavatski
0edc249637
Make Timeline non-nullable
2024-03-18 20:38:19 +03:00
Andrei Zavatski
57399e9899
Merge branch 'master' into editor-performance
2024-03-18 20:34:48 +03:00
Vlad Frangu
77119b2cdb
chore: correct doc string
2024-03-18 16:44:42 +02:00
Vlad Frangu
d0678bfbee
chore: requested changes
2024-03-18 15:30:43 +02:00
Vlad Frangu
e1c1609271
chore: correct equal logic
2024-03-16 21:48:44 +02:00
Vlad Frangu
0a6960296e
feat: Support filtering for multiple statuses
2024-03-16 21:32:55 +02:00
Andrei Zavatski
34a5e2d606
Don't update subtree masking in TimelineTickDisplay
2024-03-16 15:20:37 +03:00
Andrei Zavatski
981ee54cdc
Fix transforms overhead in TimelineTickDisplay
2024-03-16 15:05:52 +03:00
Andrei Zavatski
e825db61ee
Fix enumerator allocation
2024-03-16 12:26:56 +03:00
Andrei Zavatski
854d7c6fb4
Merge branch 'master' into editor-performance
2024-03-16 12:26:39 +03:00
Andrei Zavatski
ea3a9314f9
Improve TimelineControlPointDisplay performance
2024-03-16 11:57:18 +03:00
Dean Herbert
15c0b1a2ec
Remove redundant cast
2024-03-16 13:18:42 +08:00
Dean Herbert
a49c4ebea6
Match settings panels' backgrounds visually and behaviourally
2024-03-16 10:23:21 +08:00
Dean Herbert
0f8d526453
Adjust timings and delay disclaimers the same as settings
2024-03-16 10:09:49 +08:00
Bartłomiej Dach
a78210c88f
Handle hover so that users can hover disclaimer to block load & read it
2024-03-15 11:45:27 +01:00
Bartłomiej Dach
e6883b8418
Tweak visuals further
2024-03-15 11:38:51 +01:00
Bartłomiej Dach
51568ba06a
Add background to disclaimers
2024-03-15 11:31:45 +01:00
Bartłomiej Dach
5513a72748
Improve hiding transition when multiple disclaimers are visible
2024-03-15 11:01:34 +01:00
Bartłomiej Dach
49a087f7fc
Add localisation support
2024-03-15 10:59:49 +01:00
Bartłomiej Dach
4688a53cf4
Stay on player loader a bit longer if disclaimers are present
...
Just to make reading the text easier.
2024-03-15 09:53:20 +01:00
Bartłomiej Dach
f3a444b7ac
Add disclaimer for loved/qualified status
2024-03-15 09:53:20 +01:00
Bartłomiej Dach
42ae18976f
Replace existing epilepsy warning with inline display
2024-03-15 09:53:20 +01:00
Bartłomiej Dach
1aa695add9
Implement alternate design of player loader disclaimers
2024-03-15 09:53:18 +01:00
Dean Herbert
23975d4dd1
Add flash and reduce overall time for countdown to 2 seconds
2024-03-14 22:49:53 +08:00
Dean Herbert
2845303a74
Fix non-matching scale outwards animation
2024-03-14 22:45:05 +08:00
Dean Herbert
888245b44f
Reorder methods
2024-03-14 22:44:26 +08:00
Dean Herbert
d7769ec3e2
Adjust animation
2024-03-14 22:44:23 +08:00
Dean Herbert
42bd558d7c
Only update text when necessary (reducing unnecessary string allocadtions)
2024-03-14 22:43:08 +08:00
Salman Ahmed
b4cee12db9
Use defined colours for counter background
2024-03-14 09:22:03 +03:00
Dan Balasescu
b431bb1176
Resolve post-merge issues
2024-03-14 12:24:12 +09:00
Dan Balasescu
0beaa8e8c5
Merge branch 'master' into tcm-resume
2024-03-14 12:22:46 +09:00
Dan Balasescu
789a9f4dfa
Initial redesign following flyte's design
2024-03-14 11:38:16 +09:00
Andrei Zavatski
6ecef33fd7
Fic incorrect ExtendableCircle gradient
2024-03-10 22:45:29 +03:00
Andrei Zavatski
549a8d678e
Reduce allocations in ControlPointList
2024-03-09 20:50:54 +03:00
Dean Herbert
d9cc619693
Merge branch 'master' into argon-pp-counter
2024-03-08 10:32:16 +08:00
Dean Herbert
0ebb12f67f
Move skinnable interface specification to non-abstract
classes
2024-03-08 10:23:46 +08:00
Dean Herbert
ae2ef8ee1e
Fix typo in wireframe description
2024-03-08 10:19:00 +08:00
Dean Herbert
87b4406bdc
Pad at minimum three digits for argon pp display
2024-03-08 09:41:28 +08:00
Dan Balasescu
ca92a31cf9
Fix missing event unbinds
2024-03-07 21:10:11 +09:00
Bartłomiej Dach
fba44e67a0
Merge pull request #27214 from Givikap120/freemod_mapinfo_fix
...
Fix mod selection in online-play rooms not accounting for mods of selected item
2024-03-07 12:45:14 +01:00
Bartłomiej Dach
3d8fdc52a4
Merge pull request #27501 from turbedi/throw_helper
...
Use ThrowHelper methods in more places
2024-03-07 11:36:21 +01:00
Bartłomiej Dach
e99030c515
Merge pull request #27516 from frenzibyte/editor-screen-selector
...
Change editor screen switcher control design and behaviour to act like a button
2024-03-07 11:04:18 +01:00
Bartłomiej Dach
644553d5b4
Merge branch 'master' into freemod_mapinfo_fix
2024-03-07 09:24:44 +01:00
Dan Balasescu
1cafb09977
Increase border thickness
2024-03-07 17:22:38 +09:00
Joseph Madamba
c36232bc02
Fix results screen accuracy circle not showing correctly for failed S with no flair
2024-03-07 00:10:30 -08:00
Salman Ahmed
0fe139a189
Adjust editor screen switcher control design and behaviour
2024-03-07 08:20:46 +03:00
Bartłomiej Dach
b740481eaf
Merge pull request #27504 from peppy/replay-state-sanity-1
...
Never set `waitingOnFrames` if a replay is not attached
2024-03-06 09:51:09 +01:00
Bartłomiej Dach
53fffc6a75
Remove unused using directives
2024-03-06 07:57:59 +01:00
Dean Herbert
06c7483347
Merge branch 'master' into update-framework
2024-03-06 12:36:05 +08:00
Dean Herbert
85364d25dc
Merge pull request #27276 from bdach/medals
...
Add flow for displaying achieved medals
2024-03-06 12:31:55 +08:00
Dean Herbert
b53b752e54
Update usage of MathUtils
2024-03-06 12:13:12 +08:00
Dean Herbert
6455c0583b
Update usage of CircularProgress.Current
2024-03-06 12:13:10 +08:00
Dean Herbert
57daaa7fed
Add logging for GameplayClockContainer
starting or stopping
2024-03-06 04:37:11 +08:00
Bartłomiej Dach
e6f1a722cb
Remove unused field and commented-out code
2024-03-05 18:49:19 +01:00
Berkan Diler
a891303484
Use ArgumentOutOfRangeException throw helper methods
2024-03-05 10:20:30 +01:00
Salman Ahmed
49b3e81e8a
Migrate DefaultPerformancePointsCounter
and rename it
2024-03-05 04:35:39 +03:00
Salman Ahmed
d7f1e50d66
Add "Argon" performance points counter
2024-03-05 03:34:29 +03:00
Salman Ahmed
3ee57cdfba
Refactor performance points test scene to support skinning
2024-03-05 03:34:25 +03:00
Salman Ahmed
92f455f199
Abstractify performance points calculation to a base class
2024-03-05 03:33:48 +03:00
Dan Balasescu
6635d9be04
Add countdown display
2024-03-04 16:50:24 +09:00
Dan Balasescu
bce3bd55e5
Fix catch by moving cursor-specific handling local
2024-03-04 16:08:17 +09:00
Salman Ahmed
17e167cc1e
Merge branch 'master' into hide-beatmap-details
2024-03-01 16:21:03 +03:00
Dean Herbert
c6201ea5de
Remove unused ruleset parameter when testing beatmap in editor
2024-03-01 20:28:52 +08:00
cdwcgt
4ad8bbb9e2
remove useless DrawablePool
2024-03-01 13:20:37 +09:00
Dean Herbert
4b3a5bde28
Merge pull request #27424 from frenzibyte/taiko-slider-storyboard
...
Hide osu!taiko scroller when the beatmap has storyboard
2024-03-01 10:49:12 +08:00
Andrei Zavatski
eb0933c3a5
Fix allocations in EffectPointVisualisation
2024-02-29 20:35:20 +03:00
Bartłomiej Dach
ee2dac35e0
Merge branch 'master' into taiko-slider-storyboard
2024-02-29 08:50:58 +01:00
Dean Herbert
f44aadaaa8
Merge pull request #27331 from bdach/statistics-updates-in-multi
...
Show user statistics updates on multiplayer and playlists results screens
2024-02-29 12:26:48 +08:00
Salman Ahmed
7f5f3804f1
Expose beatmap storyboard as part of GameplayState
2024-02-29 05:39:36 +03:00
Salman Ahmed
a7a758400c
Merge branch 'master' into fix-wireframe
2024-02-29 01:56:50 +03:00
Salman Ahmed
8f97f0503f
Move away from Solo
namespace
2024-02-29 01:21:17 +03:00
Salman Ahmed
de48c51715
Apply renaming in remaining usages
2024-02-29 01:11:08 +03:00
Salman Ahmed
c3a7e99849
Remove unnecessary max operation
2024-02-29 01:01:55 +03:00
Salman Ahmed
4a4ef91bc9
Simplify active mods computation
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-02-29 00:42:52 +03:00
Salman Ahmed
92eb206b49
Merge branch 'master' into spectator-remove-back-button
2024-02-29 00:12:24 +03:00
Joseph Madamba
5ca6e8c68a
Fix some NRT changes
2024-02-28 11:03:09 -08:00
Bartłomiej Dach
a5948d38ac
Merge pull request #27380 from frenzibyte/fix-advanced-stats-display
...
Fix advanced stats in beatmap info overlay showing "key count" on non-mania beatmaps
2024-02-28 18:02:48 +01:00
Bartłomiej Dach
6a3a7cca58
Merge branch 'master' into adjust-carousel-padding
2024-02-28 16:00:43 +01:00
Bartłomiej Dach
ce994a7a73
Fix wireframe misalignment in argon accuracy counter
...
- Closes https://github.com/ppy/osu/issues/27385 .
- Supersedes / closes https://github.com/ppy/osu/pull/27392 .
2024-02-28 13:42:45 +01:00
Joseph Madamba
6e03384c6b
Apply NRT to SoloSpectatorPlayer
2024-02-28 00:01:16 -08:00
Joseph Madamba
8e462fbb38
Apply NRT to touched files
2024-02-27 23:58:28 -08:00
Joseph Madamba
dee57c7e72
Refactor test to only allow init of actions
2024-02-27 23:24:16 -08:00
Joseph Madamba
351160f94e
Move back/quit button from bottom left to fail overlay when spectating
2024-02-27 23:24:16 -08:00
Dean Herbert
31f667224f
Merge branch 'master' into medals
2024-02-28 13:48:57 +08:00
Sheepposu
7687ab63ed
fix code formatting
2024-02-27 22:03:45 -05:00
Bartłomiej Dach
2889cf39d7
Merge pull request #27391 from smoogipoo/high-performance-session-redux
...
Use high performance session during gameplay
2024-02-27 16:28:04 +01:00
Dan Balasescu
069b400dd0
Move manager to desktop game
2024-02-27 19:36:03 +09:00
Salman Ahmed
3f9fbb9318
Introduce the concept of ActiveMods
in mod select overlay and rewrite once more
2024-02-26 22:25:06 +03:00
Bartłomiej Dach
3833f2cfa7
Merge pull request #27393 from peppy/main-menu-key-delay
...
Fix main menu eating keys if user presses too fast
2024-02-26 16:22:27 +01:00
Dean Herbert
fe59a3b9be
Merge branch 'master' into medals
2024-02-26 22:49:55 +08:00
Dean Herbert
4c6e8a606f
Fix main menu eating keys if user presses too fast
2024-02-26 22:24:39 +08:00
Dan Balasescu
bfb5098238
Use high performance session during gameplay
2024-02-26 22:32:48 +09:00
Dean Herbert
c686dfd361
Apply safeties for AudioFilter
usage around drawables which go non-present
2024-02-26 21:22:25 +08:00
Dean Herbert
8e336610d0
Add xmldoc explaining Ruleset
bindable's usage
2024-02-26 18:31:40 +08:00
Dean Herbert
8962be2ed5
Allow better menu navigation using same hotkey to progress to destination
...
As touched on in https://github.com/ppy/osu/discussions/27102 .
You can now use:
- `L L L` to get to playlists
- `M M M` to get to multiplayer
- `S` to get to settings
2024-02-26 17:24:04 +08:00
Dean Herbert
4421ff975b
Add local function to perform iteration to better explain the "why"
2024-02-26 09:04:39 +08:00
Salman Ahmed
5c049feca1
Fix advanced stats in beatmap info overlay showing "key count" on non-mania beatmaps
2024-02-25 21:18:15 +03:00
Andrei Zavatski
f948f8ee5c
Fix HUDOverlay allocations
2024-02-25 17:59:20 +03:00
Sheepposu
4d669c56a2
implement pooling
...
Uses pooling for all analysis objects and creates the lifetime entries from replay data when the analysis container is constructed.
2024-02-23 23:32:35 -05:00
Dean Herbert
05f0b4796c
Merge pull request #27344 from bdach/editor-combo-colours-rotate
...
Fix editor displaying combo colours in effectively incorrect order
2024-02-24 10:44:02 +08:00
Salman Ahmed
618819ba9f
Merge branch 'master' into freemod_mapinfo_fix
2024-02-23 18:34:41 +03:00
Bartłomiej Dach
869f0a82de
Use hashset for faster lookup
2024-02-23 15:38:52 +01:00
Salman Ahmed
fdc0636554
General code cleanup
2024-02-23 17:31:54 +03:00
Salman Ahmed
9ce07a96b2
Rewrite mods flow and remove RoomBeatmapAttributesDisplay
2024-02-23 17:30:13 +03:00
Salman Ahmed
323d7f8e2d
Change BeatmapAttributesDisplay
retrieval to proper method
2024-02-23 16:59:43 +03:00
Salman Ahmed
918577d530
Compute required mods list once per update
2024-02-23 16:53:41 +03:00
Bartłomiej Dach
f86b7f0702
Enable NRT in EditorBeatmapSkin
2024-02-23 14:52:44 +01:00
Salman Ahmed
f94cd4483c
Avoid relying on game-wide ruleset bindable
2024-02-23 16:50:33 +03:00
Salman Ahmed
ae9c58be30
Remove "multiplayer" references from subclass and move to appropriate place
2024-02-23 16:50:33 +03:00
Bartłomiej Dach
d1d32fc16c
Fix editor displaying combo colours in effectively incorrect order
...
Addresses https://github.com/ppy/osu/discussions/27316 .
Stable lies about the first combo colour being first; in the `.osu`
file it is actually second. It does a thing in editor itself to correct
for this.
https://github.com/peppy/osu-stable-reference/blob/master/osu!/GameModes/Edit/Forms/SongSetup.cs#L233-L234
2024-02-23 14:49:46 +01:00
Dean Herbert
157819c199
Materialise realm collection hashes during song select search process
...
Without this, there's a large overhead to do a realm-live `Contains`
search when a collection is selected.
This may also help considerably alleviate
https://github.com/ppy/osu/discussions/27298#discussioncomment-8552508
as we will be performing the native realm search much less.
2024-02-23 11:41:27 +08:00
Sheepposu
45444b39d4
fix formatting issues
2024-02-22 19:01:52 -05:00
Bartłomiej Dach
eac4c5f69d
Rename {Solo -> User}StatisticsWatcher
et al.
...
The "solo" prefix is a bit unbecoming now. The updates are not only
for solo.
2024-02-22 20:36:24 +01:00
Bartłomiej Dach
1e53503608
Show user statistics after completing a playlists / multiplayer score
2024-02-22 20:35:50 +01:00
Bartłomiej Dach
0074bdc5a1
Change ResultsScreen
constructor boolean params to init-only properties
2024-02-22 20:15:03 +01:00
Bartłomiej Dach
f9e92c69a8
Merge branch 'master' into fix-skin-editor-init-fail
2024-02-22 14:08:38 +01:00
Bartłomiej Dach
82b2edd4b7
Merge pull request #26769 from EVAST9919/results-clean
...
Rework `AccuracyCircle` to not use `BufferedContainer`s
2024-02-22 13:46:28 +01:00
Bartłomiej Dach
46c8560ca5
Merge branch 'master' into multiplayer-difficulty-tooltip
2024-02-22 12:08:29 +01:00
Bartłomiej Dach
d06c67ad8f
Substitute two jank interdependent bool flags for single tri-state enums
2024-02-22 12:05:50 +01:00
Bartłomiej Dach
1a831145ce
Merge branch 'master' into fix-bpm-differences
2024-02-22 10:41:22 +01:00
Bartłomiej Dach
81a9908c60
Extract common helper for BPM rounding
2024-02-22 10:27:37 +01:00
Andrei Zavatski
4cefa8bb8d
Reduce allocations in TimelineBlueprintContainer
2024-02-21 23:13:10 +03:00
Dean Herbert
fb593470d5
Use DEFAULT
instead of INSTANCE
or static field
...
Matches other similar comparers.
2024-02-21 21:02:20 +08:00
Bartłomiej Dach
929858226a
Use custom comparer in beatmap carousel for expected sort behaviour
2024-02-21 12:43:18 +01:00
Dean Herbert
9c40ff2911
Merge pull request #27278 from EVAST9919/grid-update
...
Apply padding to `GridContainer`s directly where possible
2024-02-21 17:29:21 +08:00
Andrei Zavatski
2543a48ac8
Apply padding to GridContainers directly
2024-02-20 23:18:37 +03:00
Andrei Zavatski
871bdb9cf7
Reduce string allocations in TimeInfoContainer
2024-02-20 20:31:18 +03:00
Andrei Zavatski
6678c4783b
Fix PlaybackControl string allocations
2024-02-20 19:31:28 +03:00
Bartłomiej Dach
611e3fe76b
Delay medal display when wanting to show results animation
2024-02-20 16:31:31 +01:00
Dean Herbert
3ea47e64f0
Merge pull request #27258 from Loreos7/storage-error-localisation
...
Localise storage error popup dialog
2024-02-20 13:37:10 +08:00
Dean Herbert
c87bc8b597
Merge pull request #27180 from bdach/better-submission-failure-messaging
...
Add better submission failure messaging
2024-02-19 21:38:23 +08:00
Bartłomiej Dach
ec26ab51d1
Use different wording
2024-02-19 13:56:21 +01:00
Givikap120
a6b63efe7d
Fixed NVika code quality errors
2024-02-18 03:28:24 +02:00
Givikap120
2df5787dc7
Packed changes into separate class
2024-02-18 03:13:57 +02:00
Givikap120
ed819fde15
Fixed bugs and added ranked status update
2024-02-17 23:01:31 +02:00
Dean Herbert
6960f87509
Merge pull request #26895 from vmfunc/ordinal-sorting
...
Consider case sensitivity when sorting beatmaps in song select
2024-02-18 04:05:22 +08:00
Salman Ahmed
583e71634f
Always bring master/music volume to 50%
2024-02-16 11:20:07 +03:00
Salman Ahmed
952c5b0d18
Use Precision.AlmostBigger
2024-02-16 11:13:41 +03:00
Salman Ahmed
9f53185fa9
Revert changes to muted notification action
2024-02-16 10:47:56 +03:00
Salman Ahmed
df40f55c07
Merge branch 'master' into mute_detection
2024-02-16 01:35:02 +03:00
Salman Ahmed
7530b1f362
Adjust comment again
2024-02-16 01:31:52 +03:00
Salman Ahmed
5431781f80
Bring back target volume to 50%
2024-02-16 01:23:26 +03:00
Salman Ahmed
d81b148b09
Remove mention of decibel units in comment
...
Decibels are irrelevant in the volume bindables, as mentioned in PR already.
2024-02-16 01:23:18 +03:00
Salman Ahmed
a9eac5924d
Remove seemingly unnecessary float casts
2024-02-16 01:18:13 +03:00
Bartłomiej Dach
898d5ce88b
Show selected submission failure messages even in solo
...
Previously, if a `SubmittingPlayer` instance deemed it okay to proceed
with gameplay despite submission failure, it would silently log all
errors and proceed, but the score would still not be submitted. This
feels a bit anti-user in the cases wherein something is genuinely wrong
with either the client or web, so things like token verification
failures or API failures are now shown as notifications to give the user
an indication that something went wrong at all.
Selected cases (non-user-playable mod, logged out, beatmap is not
online) are still logged silently because those are either known and
expected, or someone is messing with things.
2024-02-15 10:55:08 +01:00
Bartłomiej Dach
95e745c6fb
Use better messaging for selected submission failure reasons
...
These have been cropping up rather often lately, mostly courtesy of
linux users, but not only:
https://github.com/ppy/osu/issues/26840
https://github.com/ppy/osu/issues/27008
https://github.com/ppy/osu/discussions/26962
so this is a proposal for slightly improved messaging for such cases to
hopefully get users on the right track.
The original error is still logged to network log, so there's no
information loss.
2024-02-15 10:51:27 +01:00
Dean Herbert
728f65b6d3
Merge pull request #27173 from EVAST9919/song-select-sort
...
Reduce allocations during aggregate beatmap sorts in song-select screen
2024-02-15 12:50:16 +08:00
Dean Herbert
674ee91bb5
Define aggregate max delegates as static to further reduce allocations
2024-02-15 11:40:50 +08:00
Dean Herbert
80abf6aab3
Avoid some further enumerator allocations
2024-02-15 09:45:24 +08:00
Andrei Zavatski
6e1b4152c0
Redice allocations during aggregate beatmap sort
2024-02-15 00:01:55 +03:00
Dean Herbert
59efd22ba2
Merge branch 'master' into score-statistics-updates-working-2
2024-02-15 02:55:12 +08:00
Bartłomiej Dach
ae9a2661ac
Sprinkle some raw string prefixes
2024-02-14 16:20:47 +01:00
Bartłomiej Dach
414066fd34
Inline problematic function (and rename things to make more sense)
2024-02-14 16:07:42 +01:00
Bartłomiej Dach
a8ae0a032f
Simplify parsing
2024-02-14 15:58:38 +01:00
Bartłomiej Dach
c24328dda3
Abandon date filter if no meaningful time bound found during parsing
2024-02-14 15:56:32 +01:00
Bartłomiej Dach
f0f37df67f
Revert unnecessary change
2024-02-14 15:37:02 +01:00
Bartłomiej Dach
1113355753
Merge branch 'master' into add-last-played-filter
2024-02-14 15:36:19 +01:00
Bartłomiej Dach
eae43f5fd9
Consume SoloStatisticsWatcher
updates in toolbar button
2024-02-13 14:28:24 +01:00
Bartłomiej Dach
21b9fb95e2
Move SoloStatisticsWatcher
to OsuGame
...
Doesn't feel like it needs to be in base, and it being in base was
causing problems elsewhere before.
2024-02-13 14:28:24 +01:00
Bartłomiej Dach
da4ebd0681
Refactor SoloStatisticsWatcher
to no longer require explicit subscription callbacks
2024-02-13 13:49:01 +01:00
Bartłomiej Dach
5d81d83fb2
Merge branch 'master' into alias-author-creator
2024-02-12 18:02:42 +01:00
Stoppedpuma
ca0819cf7a
Alias "mapper" as well
2024-02-11 20:28:16 +01:00
Dan Balasescu
bfeb90c1b6
Add additional gameplay metadata to room score request
2024-02-10 17:20:17 +09:00
Stoppedpuma
7c04e8bfba
Alias author to creator
...
Allows "author" to show the results of "creator"
2024-02-10 07:48:24 +01:00
Berkan Diler
6adf0ac01e
Use new LINQ Order() instead of OrderBy() when possible
2024-02-08 18:01:00 +01:00
Dan Balasescu
dcb195f3c8
Add delayed resume for taiko/catch/mania
2024-02-08 02:16:08 +09:00
Andrei Zavatski
ff7cd67909
Move all the circles into their own container
2024-02-06 21:14:36 +03:00
Andrei Zavatski
f03c4a0961
Merge branch 'master' into results-clean
2024-02-06 21:09:23 +03:00
Sheppsu
d255976279
Merge branch 'ppy:master' into replay-analysis-settings
2024-02-06 03:13:09 -05:00
Dan Balasescu
ca36919f10
Merge pull request #26863 from EVAST9919/scrolling-alloc
...
Further reduce allocation overhead in `ScrollingHitObjectContainer`
2024-02-06 15:57:31 +09:00
Andrei Zavatski
fc4234214e
Merge branch 'master' into results-clean
2024-02-06 08:03:10 +03:00
Bartłomiej Dach
f65449375e
Merge branch 'master' into scrolling-alloc
2024-02-05 19:59:47 +01:00
Bartłomiej Dach
c12a7b3edf
Merge branch 'master' into fix-rooms-container-something
2024-02-05 18:51:46 +01:00
Bartłomiej Dach
462a1c5186
Merge pull request #27021 from frenzibyte/fix-rooms-container-performance
...
Fix multiplayer/playlists lounge screen disposing rooms synchronously
2024-02-05 18:33:13 +01:00
Salman Ahmed
7914236516
Add explanatory note
2024-02-05 18:51:30 +03:00
Salman Ahmed
858f2fc749
Use Clear
to trigger async disposal
2024-02-05 18:39:04 +03:00
Bartłomiej Dach
ad69259eb8
Merge branch 'master' into fix-results-f-rank
2024-02-05 13:05:37 +01:00
Salman Ahmed
44a594ba05
Simplify playback logic
2024-02-05 01:03:04 +03:00
Salman Ahmed
6f9ee3f526
Fix selected room bindable being set to null regardless of the removed room
2024-02-05 00:37:33 +03:00
Salman Ahmed
9923c1b6e6
Fix multiplayer/playlists lounge screen disposing rooms synchronously
2024-02-04 17:25:58 +03:00
Dean Herbert
c64d414d1b
Merge pull request #26934 from bdach/which-mods-for-pp
...
Display which mods grant pp
2024-02-04 19:15:11 +08:00
Andrei Zavatski
4e5c9ddbfe
Rename notch const to spacing
2024-02-04 03:02:39 +03:00
Andrei Zavatski
397def9ceb
Move layout specification outside the GradedCircles class
2024-02-04 02:58:15 +03:00
Andrei Zavatski
7b2adc857a
Merge branch 'master' into results-clean
2024-02-04 02:41:12 +03:00
Andrei Zavatski
e2e3c61c9c
Use AliveEntries where we don't need startTime order
2024-02-03 19:54:08 +03:00
Mike Will
9a5348598a
Replace aggregate rounding method with a float cast
2024-02-02 14:22:24 -05:00
Mike Will
2ab967f783
Increase precision of aggregate volume rounding
...
It should be large enough to account for true accuracy
but small enough to disregard any hair-thin inaccuracy found
at the very end of the float value.
2024-02-02 13:27:26 -05:00
Loreos7
20504c55ef
localise storage error popup dialog
2024-02-02 15:32:55 +03:00
Dan Balasescu
b44f77cee1
Update R# + fix inspections
2024-02-02 21:00:28 +09:00
Mike Will
29a2890582
fix code quality error #2
2024-02-02 03:47:19 -05:00
Mike Will
c60e110976
Try to fix code quality issues raised by workflow
2024-02-02 03:09:19 -05:00
Mike Will
f4a2d5f3f4
Round off inaccuracies in the aggregate volume before evaluating
2024-02-02 02:41:58 -05:00
Mike Will
3122211268
Change silence threshold and target restore volume level
2024-02-02 02:12:46 -05:00
Mike Will
dfd966e039
Improve silence detection in MutedNotification
...
Instead of checking the master and music volumes separately to
see if they're <= 1%, check the aggregate of the two volumes to
see if it's <= -60 dB.
When muted notification is activated, restore the aggregate volume
level to -30 dB.
2024-02-02 00:48:42 -05:00
Salman Ahmed
0502997ae9
Stop blocking player loader when hovering over osu! logo
2024-02-02 01:26:04 +03:00
Salman Ahmed
4dbcb41dd1
Remove unused parameter
2024-02-02 00:44:51 +03:00
Bartłomiej Dach
865f4d76ff
Add unranked indicator to song select footer too
2024-02-01 21:51:41 +01:00
Bartłomiej Dach
f87ab19731
Apply NRT to FooterButtonMods
2024-02-01 21:32:38 +01:00
OliBomby
576d6ff799
Fix masking in circular snap grid
2024-02-01 17:07:57 +01:00
OliBomby
f807a3fd97
Remove Masking from PositionSnapGrid
...
This caused issues in rendering the outline of the grid because the outline was getting masked at some resolutions.
2024-02-01 16:57:45 +01:00
OliBomby
1428cbfbc3
Remove Masking from PositionSnapGrid
...
This caused issues in rendering the outline of the grid because the outline was getting masked at some resolutions.
2024-02-01 16:56:57 +01:00
Sheepposu
b5dbf24d27
early replay analysis settings version
...
committing early version for others in the discussion to do their own testing with it
2024-02-01 10:19:09 -05:00
Salman Ahmed
5bbaeb6836
Play legacy applause sound only when rank is B or higher
2024-02-01 16:08:36 +03:00
syscats
0407b5d84a
use ordinal sorting on each method
2024-02-01 14:03:59 +01:00
Salman Ahmed
35c3f5e250
Merge branch 'master' into fix-results-f-rank
2024-02-01 15:29:07 +03:00
Dean Herbert
bf3746daa8
Show login overlay at main menu when 2FA is required
2024-02-01 21:10:53 +09:00
syscats
7165511754
Use ordinal sorting for artist string comparison
2024-01-31 15:49:31 +01:00
Dean Herbert
a7f9f50ce5
Show a better message when score submission fails due to system clock being set wrong
2024-01-31 16:52:50 +09:00
Bartłomiej Dach
acc2614090
Apply alternative solution
...
Fixes the logo flying out of the wrong corner when transitioning from
song select to gameplay.
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-01-29 20:07:27 +01:00
Dean Herbert
f2546d72c2
Fix osu! logo being mispositioned in song select on very wide resolutions
2024-01-29 20:45:51 +09:00
Dean Herbert
811b31386b
Merge pull request #26616 from peppy/dont-round-sv
2024-01-29 20:42:38 +09:00
Dean Herbert
f1c1d9cb14
Merge pull request #26772 from peppy/update-framework
...
Update framework
2024-01-29 20:15:01 +09:00
Bartłomiej Dach
11ec8a1cad
Merge branch 'master' into dont-round-sv
2024-01-29 11:52:46 +01:00
Bartłomiej Dach
8a11ff1227
Apply local precision workaround to editor effect section
2024-01-29 11:52:38 +01:00
Dean Herbert
a1fe5eedd5
Merge pull request #26751 from frenzibyte/fix-multiplayer-fail-freezing-score
...
Fix score processor no longer applying results when failing in multiplayer match
2024-01-29 19:51:31 +09:00
Dean Herbert
dc28a6b873
Update resources
2024-01-29 19:33:13 +09:00
Dean Herbert
fb24c66342
Mark ResultsScreen.Score
as nullable
...
Is nullable in playlist results at very least.
2024-01-29 16:43:26 +09:00
Dean Herbert
eb90ee5415
Add safety in ResultsScreen.Exit
to ensure HitEvents
are not holding references
...
This is a catch-all safety disconnecting `ScoreInfo` from `HitObject`s.
2024-01-29 16:16:17 +09:00
Dean Herbert
76832a1495
Remove ScorePerformanceCache
...
This class was only used in two places, both on the results screen, but
was holding references to `OsuPlayfield` game-wide (due to unrelated
issues, but still).
Because I can't really think of future use cases for this, and running
the calculation twice at results screen isn't a huge overhead, let's
just do that for now to keep things simple.
2024-01-29 15:28:20 +09:00
Andrei Zavatski
0c0ba7abef
Adjust values to visually match previous
2024-01-29 06:28:38 +03:00
Andrei Zavatski
3987faa21c
Rework GradedCircles to not use BufferedContainer
2024-01-29 06:13:52 +03:00
Andrei Zavatski
809ca81b9c
Add TestSceneGradedCircles
2024-01-29 05:29:29 +03:00
Andrei Zavatski
9c411ad48d
Simplify notch math
2024-01-29 05:19:28 +03:00
Andrei Zavatski
5783838b07
Move graded circles into a separate class
2024-01-29 05:14:24 +03:00
Andrei Zavatski
32b0e0b738
Remove RankNotch
2024-01-29 05:05:18 +03:00
Andrei Zavatski
5d456c8d68
Rework drawing of graded circles
2024-01-29 04:55:21 +03:00
Dean Herbert
462dab3c90
Remove unnecessary bindable
2024-01-29 02:13:39 +09:00
Dean Herbert
f4dd84fa77
Fix various inconsistencies and document better
2024-01-29 02:10:33 +09:00
Dean Herbert
23f12e1ea3
Should not be a container
2024-01-29 01:50:27 +09:00
Andrei Zavatski
b48f99ba4b
Stop using SliderBar as a base
2024-01-28 18:06:09 +03:00
Andrei Zavatski
ed9e0fe1db
Merge branch 'master' into progress-bar-improvements
2024-01-28 17:59:29 +03:00
Salman Ahmed
64b61108ad
Move solution to multiplayer flow instead
2024-01-28 00:42:04 +03:00
Salman Ahmed
a25be9927d
Fix score processor no longer applying results when failing in multiplayer match
2024-01-27 23:23:10 +03:00
Salman Ahmed
ea641bb8d2
Rename GameplayState.HasFailed
to properly clarify its meaning
2024-01-27 23:23:10 +03:00
Andrei Zavatski
9d73d0e04d
Clamp logo triangles along both axes
2024-01-27 19:06:04 +03:00
Dean Herbert
3cad5fe292
Merge pull request #26704 from peppy/new-logo
...
Update logo
2024-01-27 19:34:22 +09:00
Andrei Zavatski
3387565ba9
Fix song progress value may go beyond 1
2024-01-27 03:11:12 +03:00
Andrei Zavatski
567d2bedbf
Refactor ArgonSongProgress for same CurrentTime meaning
2024-01-27 03:03:01 +03:00
Salman Ahmed
d25262944e
Force results screen to play default D rank applause sound on fail (regardless of skin)
2024-01-27 01:46:43 +03:00
Salman Ahmed
47f0b86018
Fix results screen showing other rank badges on F rank
2024-01-27 01:46:12 +03:00
Dean Herbert
45f2980dc0
Fix potential editor data loss if exiting while a textbox is focused
2024-01-26 13:59:32 +09:00
Dean Herbert
6e3eb674f6
Move cast to local function and make direct cast
2024-01-26 12:55:36 +09:00
Andrei Zavatski
9b5b313193
Move common logic into own SongProgressBar class
2024-01-26 05:03:40 +03:00
Andrei Zavatski
d2af05b30e
Remove useless bindable from ArgonSongProgressBar
2024-01-26 04:09:00 +03:00
Andrei Zavatski
542f571dee
Remove LINQ cast in HUDOverlay
2024-01-26 01:03:22 +03:00
Dean Herbert
6a338ce555
Adjust spawn ratio up slightly
2024-01-25 21:59:38 +09:00
Dean Herbert
d66a2c452f
Merge branch 'master' into multiplayer-difficulty-tooltip
2024-01-25 21:18:16 +09:00
Dean Herbert
baaf33d995
Merge pull request #26689 from myQwil/divisor_cycle
...
Prevent custom divisor ranges from halting divisor preset cycling
2024-01-25 20:46:16 +09:00
Dean Herbert
4a629fbc79
Update logo to new version
2024-01-25 20:37:50 +09:00
OliBomby
c2d57dc77c
Merge remote-tracking branch 'upstream/master' into edit-nodesample
2024-01-25 11:33:29 +01:00
Mike Will
a264ac9f38
Change name and description of force
parameter in SetArbitraryDivisor
2024-01-25 05:12:54 -05:00
Nguyên Minh Hồ
d5b70ed09a
Move CanRotatePlayfieldOrigin bindable to generic rotation handler
2024-01-25 16:58:44 +07:00
Nguyên Minh Hồ
2fa52de87a
Fix formatting
2024-01-25 16:29:44 +07:00
Nguyên Minh Hồ
94ada87cba
Un-hardcode tooltip from EditorRadioButton and add disabled tooltip for rotation popover
2024-01-25 14:32:48 +07:00
Nguyên Minh Hồ
500bed0121
Split editor toolbox radio button disabling logic from EditorRadioButton, then add disabling logic for rotate popover
2024-01-25 14:24:35 +07:00
Dean Herbert
cc341b4119
Adjust beatmap carousel padding to avoid scrollbar disappearing underneath logo
2024-01-25 15:21:19 +09:00
Dean Herbert
37e370e654
Fix crash at results screen when hidden is enabled and S rank becomes A due to miss
...
Closes https://github.com/ppy/osu/issues/26692 .
2024-01-25 15:02:44 +09:00
Nguyên Minh Hồ
e1f8bc9692
Rename CanRotate property of SelectionRotationHandler to a more descriptive name
2024-01-25 12:10:50 +07:00
Andrei Zavatski
7811968582
Fix ArgonScoreCounter is still using localisation
2024-01-25 03:28:02 +03:00
Mike Will
9e1c242713
Prevent custom divisor ranges from halting preset cycling
...
A custom divisor like 24 or 32 will result in a range containing
many divisors that are already in the `Common` and `Triplets` presets.
When this happens, it can become impossible to cycle between presets,
because the preset can only be changed if the new divisor isn't already
contained within the current preset's range.
2024-01-24 18:31:39 -05:00
Dean Herbert
b272d34960
Merge pull request #26630 from peppy/s-rank-change
...
Change S rank to require no miss
2024-01-24 13:27:40 +09:00
Dean Herbert
0cf90677e6
Apply more correct visual offset adjustment
...
Co-authored-by: Walavouchey <36758269+Walavouchey@users.noreply.github.com>
2024-01-23 19:16:55 +09:00
Dean Herbert
02bb506cce
Avoid using .Children
for enumeration in other locations
2024-01-23 05:32:11 +09:00
Dean Herbert
069af13aaf
Reduce enumerator overhead in GameplayLeaderboard
2024-01-23 05:31:53 +09:00
Bartłomiej Dach
45dc9de1e0
Remove remnant of old implementation of showing "A due to misses"
2024-01-22 19:58:11 +01:00
Bartłomiej Dach
5bae9074aa
Merge branch 'master' into s-rank-change
2024-01-22 19:54:53 +01:00
Bartłomiej Dach
4cd1573a4c
Merge pull request #26612 from peppy/fix-back-sample-playback
...
Fix back sound being too loud when exiting many screens
2024-01-22 16:18:32 +01:00
Bartłomiej Dach
3cf83e7106
Merge pull request #26667 from peppy/fix-star-fountains
...
Fix star fountains sometimes resetting visually
2024-01-22 16:13:55 +01:00
Bartłomiej Dach
43fa89ebcd
Merge branch 'master' into fix-back-sample-playback
2024-01-22 15:36:32 +01:00
Bartłomiej Dach
9aa7c7f591
Revert incorrect removal of exitConfirmed
flag
...
Removing it meant that it was _literally impossible_ to exit
multiplayer.
2024-01-22 15:35:03 +01:00
Bartłomiej Dach
49c117793c
Merge pull request #26609 from peppy/fix-per-ruleset-hud-positioning
...
Fix gameplay elements not correctly offsetting to avoid per-ruleset skin layout
2024-01-22 15:00:03 +01:00
Bartłomiej Dach
95435ecd13
Merge pull request #26591 from peppy/offset-awareness
...
Show offset explanation tooltip on settings offset adjust slider bar
2024-01-22 14:59:31 +01:00
Bartłomiej Dach
b8dd78eec8
Merge branch 'master' into fix-per-ruleset-hud-positioning
2024-01-22 13:55:56 +01:00
Dean Herbert
15df6b1da1
Revert keyboard seek speed change
2024-01-22 21:47:38 +09:00
Bartłomiej Dach
99d3fcc326
Fix crash if ruleset components container is not present
2024-01-22 13:45:55 +01:00
Dean Herbert
83f9118b22
Adjust results screen to handle S->A rank adjustment when misses are present
2024-01-22 21:43:32 +09:00
Bartłomiej Dach
0d6c681275
Merge pull request #26649 from peppy/fix-more-allocations
...
Remove `FillFlow` overhead of argon counters
2024-01-22 12:57:16 +01:00
Bartłomiej Dach
b7f0102461
Merge pull request #26662 from peppy/fix-player-crash
...
Fix potential null reference in player screen transition handling
2024-01-22 11:07:16 +01:00
Dean Herbert
cd551b1abd
Fix star fountains sometimes resetting visually
...
Addresses https://github.com/ppy/osu/discussions/26622 .
2024-01-22 18:01:21 +09:00
Bartłomiej Dach
1ac682e2c9
Merge branch 'master' into replay-seek-single-frame
2024-01-22 09:36:15 +01:00
Dean Herbert
3dd18c777a
Remove a couple more overrides
2024-01-22 17:00:35 +09:00
Dean Herbert
f6fa965252
Merge pull request #26661 from frenzibyte/fix-mouse-blueprint
...
Fix blueprint container not handling right clicks correctly while moving a blueprint
2024-01-22 16:53:54 +09:00
Bartłomiej Dach
493d495992
Merge pull request #26605 from peppy/simplify-gameplay-pause
...
Simplify gameplay pause sequence
2024-01-22 08:49:08 +01:00
Dean Herbert
3e5fe66e58
Fix potential null reference in player screen transition handling
...
See https://github.com/ppy/osu/actions/runs/7607677219/job/20715418536?pr=26660 .
2024-01-22 16:37:56 +09:00
Dean Herbert
1f0ad5cff2
Apply same fix in more places
2024-01-22 15:56:16 +09:00
Dean Herbert
74f05a5c4b
Use container itself rather than ScrollContent
2024-01-22 15:54:24 +09:00
Salman Ahmed
2bd9cd5d34
Fix blueprint container not handling right clicks correctly while moveing an element
2024-01-22 04:39:08 +03:00
Andrei Zavatski
cec4f670d1
Reduce allocation overhead in BeatmapCarousel
2024-01-22 03:12:23 +03:00
Dean Herbert
02369139b3
Remove FillFlow
overhead of argon counters
2024-01-21 13:22:58 +09:00
OliBomby
78e87d379b
fix divide by zero
2024-01-20 16:53:11 +01:00
OliBomby
5f40d3aed9
rename variable
2024-01-20 16:29:26 +01:00
OliBomby
9b9485f656
fix adjust axes detection
2024-01-20 15:39:38 +01:00
OliBomby
1596776a81
fix imports
2024-01-20 15:15:49 +01:00
OliBomby
0fc448f4f3
fix adjusting scale from anchor
2024-01-20 15:12:48 +01:00
OliBomby
6a4129dad8
fix aspect ratio transform
2024-01-20 15:11:35 +01:00
OliBomby
fcaa5ec20e
remove debug logs
2024-01-20 13:26:08 +01:00
OliBomby
6a57be0a50
clean up code and fix flipping
2024-01-20 13:04:05 +01:00
OliBomby
a4f771ec08
refactor CanScale properties
2024-01-20 01:13:01 +01:00
OliBomby
26c0d1077a
Refactor scale handling in editor to facilitate reuse
2024-01-20 00:22:53 +01:00
Dean Herbert
c50534c819
Move seek/step logic into ReplayPlayer
2024-01-18 20:38:15 +09:00
Dean Herbert
8c4af58109
Keep replay controls expanded by default
2024-01-18 20:13:32 +09:00
Dean Herbert
60e972cd15
Add ability to step forward/backwards single frames
2024-01-18 20:13:32 +09:00
Dean Herbert
dafff26d0e
Tidy up implementation of PlaybackSettings
2024-01-18 20:13:32 +09:00
Dean Herbert
c4e9bcd140
Remove test guarantee of audio time not advancing
2024-01-18 20:06:53 +09:00
Bartłomiej Dach
2be989b9f5
Merge pull request #26542 from peppy/non-touch-fade-button
...
Fade hold-for-menu button out completely on non-touch devices
2024-01-18 11:27:50 +01:00
Dean Herbert
fd9c7184e4
Only play back sample once when traversing up multiple screens in stack
2024-01-18 16:31:33 +09:00
Dean Herbert
ef0b5c9406
Stop playing back samples for nested screens in multiplayer
...
I'd argue this sounds better.
2024-01-18 16:31:20 +09:00
Dean Herbert
ee3de9c522
Fix gameplay elements not correcly offsetting to avoid per-ruleset skin layout
...
Closes https://github.com/ppy/osu/issues/26601 .
2024-01-18 15:44:27 +09:00
Dean Herbert
8ab8c90e33
Remove "pause rate adjust" flow
2024-01-18 14:21:02 +09:00
Dean Herbert
799c74cfe5
Simplify gameplay pause sequence
2024-01-18 14:17:19 +09:00
smallketchup82
060ea1d4fd
Switch from using a constructor argument to using a public field for ShowExtendedTooltip
2024-01-17 14:04:13 -05:00
smallketchup82
b6422bc8bd
Apply suggested changes
...
- Change difficultyicon mods parameter docstring to be more professional
- Add a parameter for controlling whether the difficulty statistics show or not. Defaults to false
- Round the BPM in the tooltip to make sure it displays correctly
2024-01-17 09:07:17 -05:00
Bartłomiej Dach
b718897b30
Merge pull request #26593 from peppy/rolling-counter-unstick
...
Change rolling counters to use quicker easing types
2024-01-17 14:37:52 +01:00
Dean Herbert
6a8a45bb13
Merge pull request #26585 from frenzibyte/fix-editor-ux
...
Fix timing point changes not applying after selecting another one
2024-01-17 19:53:35 +09:00
Bartłomiej Dach
5cb17bcacf
Merge pull request #26502 from frenzibyte/prevent-submission-with-invalid-mods
...
Add guard against submitting score with invalid mod instances
2024-01-17 11:39:32 +01:00
Dean Herbert
456a8e6e82
Merge pull request #26549 from bdach/hit-error-meter-pooling-bad
...
Fix `ColourHitErrorMeter` not loading pooled drawables ahead of time
2024-01-17 18:43:47 +09:00
Dean Herbert
a66ddc7813
Change rolling counters to use quicker easing types
2024-01-17 18:18:53 +09:00
Dean Herbert
cc7be137bc
Show tooltip on global offset adjust slider bar
2024-01-17 17:57:49 +09:00
Dean Herbert
123e36a999
Change display text for beatmap audio offset adjust to make more sense
2024-01-17 17:51:46 +09:00
Dean Herbert
c1c2e61723
Merge pull request #26446 from LeNitrous/add/replay-playback-controls
...
Add replay playback controls
2024-01-17 17:06:15 +09:00
Dean Herbert
e97b31d82e
Fix test failures
2024-01-17 16:40:45 +09:00
Dean Herbert
e7732caaf7
Make PlayerSettingsOverlay
's api more stringent
2024-01-17 15:13:59 +09:00
Dean Herbert
2788bd912e
Add tooltips and localisation
2024-01-17 15:12:33 +09:00
Dean Herbert
e53989faeb
Change replay playback adjustment to skew frequency, not tempo
2024-01-17 15:02:42 +09:00
Dean Herbert
042e852a3e
Adjust playback speed range to allow slower minimum speed
2024-01-17 15:02:42 +09:00
Dean Herbert
42f64c2c44
Move load procedure to async method and simplify code
2024-01-17 15:02:42 +09:00
Salman Ahmed
46429c5074
Schedule control point switch for settings modifications to apply first
2024-01-17 08:15:01 +03:00
Bartłomiej Dach
a9d086c119
Fix touch device not always activating when it should
...
See https://github.com/ppy/osu/discussions/26574
2024-01-16 17:12:40 +01:00
Dean Herbert
2be8d66d4c
Fix argon health bar showing "miss" bar for bananas
2024-01-16 15:52:18 +09:00
Dean Herbert
34905b2052
Apply NRT to new classes
2024-01-16 14:17:21 +09:00
Dean Herbert
1fd85b79db
Merge branch 'master' into argon-health-rework
2024-01-16 13:35:29 +09:00
Bartłomiej Dach
97e08f5071
Fix ColourHitErrorMeter
not loading pooled drawables ahead of time
2024-01-15 21:40:07 +01:00
Bartłomiej Dach
744cb8e10c
Merge pull request #26538 from peppy/save-multiplayer-filter-mode
...
Remember multiplayer room filter mode
2024-01-15 19:53:50 +01:00
Bartłomiej Dach
a41108057f
Merge pull request #26287 from wooster0/no-scores-yet
...
Don't leave scores screen empty if no scores are present yet
2024-01-15 19:49:20 +01:00
Bartłomiej Dach
c5a276a7de
Merge pull request #26543 from peppy/offset-toast-limit
...
Only display offset toast when in local gameplay
2024-01-15 19:19:21 +01:00
Bartłomiej Dach
4d39c91972
Merge pull request #26449 from peppy/playlist-room-buttons
...
Allow interacting with playlist item buttons when not selected
2024-01-15 19:12:01 +01:00
Andrei Zavatski
8661edfc2f
Organize consts better
2024-01-15 21:07:12 +03:00
Bartłomiej Dach
9d2c82452c
Revert "simplify the code even more"
...
This reverts commit 9bc9db9138
.
2024-01-15 18:47:49 +01:00
Andrei Zavatski
c406135487
Merge branch 'master' into argon-health-rework
2024-01-15 20:40:19 +03:00
Bartłomiej Dach
64e94a8b6c
Merge pull request #26544 from peppy/fix-background-dim-failure
...
Fix background dim occasionally getting in a bad state when exiting gameplay
2024-01-15 15:16:37 +01:00
Bartłomiej Dach
c5351bd14d
Fix back-to-front set
2024-01-15 14:20:07 +01:00
Bartłomiej Dach
d206acac63
Merge pull request #26540 from peppy/fix-double-counters
...
De-dupe displayed hits in judgement counter
2024-01-15 14:02:11 +01:00
Bartłomiej Dach
cd9b6656ba
Merge pull request #26536 from peppy/cache-fonts
...
Fix gameplay counter textures not being cached ahead of time
2024-01-15 13:11:40 +01:00
Salman Ahmed
1d7b63e204
Move checking logic inside ModUtils
and somewhat optimise
2024-01-15 14:58:59 +03:00
wooster0
9bc9db9138
simplify the code even more
2024-01-15 20:58:43 +09:00
Bartłomiej Dach
6dee2860d2
Merge branch 'master' into fix-multiplayer-mods-cheesing
2024-01-15 12:19:29 +01:00
Dean Herbert
8e32780888
Fix background dim occasionally getting in a bad state when exiting gameplay
2024-01-15 19:21:19 +09:00
Dean Herbert
0aa8a20d57
Fix regression in interaction when panels are not selectable
2024-01-15 18:34:32 +09:00
Dean Herbert
2a2a4c416e
Only display offset toast when in local gameplay
2024-01-15 18:17:49 +09:00
Dean Herbert
52f8348ee3
Fade hold-for-menu button out completely on non-touch devices
2024-01-15 17:55:37 +09:00
Dean Herbert
e6453853c2
De-dupe displayed hits in judgement counter
2024-01-15 16:02:59 +09:00
Dean Herbert
6940579b9e
Remember multiplayer room filter mode
...
As proposed in https://github.com/ppy/osu/discussions/26218 .
2024-01-15 14:30:34 +09:00
Dean Herbert
0b5cc8fb10
Fix gameplay counter textures not being cached ahead of time
...
Part of https://github.com/ppy/osu/issues/26535 .
2024-01-15 14:01:21 +09:00
Dean Herbert
68496f7a0e
Fix scores not showing up on leaderboards during gameplay
2024-01-14 15:13:20 +09:00
Salman Ahmed
0c02062780
Add guard against starting gameplay with invalid mod instances
...
Move guard to `Player` instead
2024-01-13 16:25:02 +03:00
Salman Ahmed
c514550dfa
Fix multiplayer potentially selecting mods of wrong ruleset when starting match
2024-01-13 11:17:08 +03:00
Bartłomiej Dach
6572fa4378
Only validate playback rate when in submission context
...
Temporary workaround for https://github.com/ppy/osu/issues/26404 .
It appears that some audio files do not behave well with BASS, leading
BASS to report a contradictory state of affairs (i.e. a track that is
in playing state but also not progressing). This appears to be related
to seeking specifically, therefore only enable the validation of
playback rate in the most sensitive contexts, namely when any sort of
score submission is involved.
2024-01-12 14:59:15 +01:00
Andrei Zavatski
c1e4e51a5f
Add comment explaining negative container padding
2024-01-12 15:34:07 +03:00
Andrei Zavatski
8d4ba6d466
Remove PathPadding property
2024-01-12 15:30:19 +03:00
Nitrous
ccbba8a00b
Avoid NRE due to a beatmap loading with no hit objects.
2024-01-12 17:19:59 +08:00
Nitrous
c545a9c242
remove extra new line
2024-01-12 15:13:38 +08:00
Nitrous
c404628113
move creation of PlaybackSettings
to ReplayPlayer
2024-01-12 15:12:02 +08:00
Andrei Zavatski
e861661037
Remove invalidations in update
...
oops
2024-01-12 03:03:41 +03:00
Andrei Zavatski
101a26a53e
Update start and end progress in one go
2024-01-12 02:54:07 +03:00
Andrei Zavatski
bbb36da323
Don't pass start and end progress to the background
2024-01-11 18:58:40 +03:00
Andrei Zavatski
d75bf55c58
CI fixes
2024-01-11 18:28:00 +03:00
Andrei Zavatski
f1db7db259
Implement ArgonHealthDisplayBar
2024-01-11 17:52:34 +03:00
Andrei Zavatski
90ab306a96
Implement ArgonHealthDisplayBackground
2024-01-11 17:52:33 +03:00
Nitrous
6cd255f549
Contains
+ Add
to TryAdd
2024-01-11 11:36:58 +08:00
Dean Herbert
5d6f767dbd
Reduce excessive Color4
allocations during path colour updates
2024-01-11 00:31:39 +09:00
Dean Herbert
49d13cda6b
Fix failing test by setting health on source of truth
2024-01-10 23:09:43 +09:00
Dean Herbert
f912a1ba31
Merge branch 'master' into health-less-value-changed
2024-01-10 18:03:34 +09:00
Nitrous
72e302dfac
Enumerate nested hit objects
2024-01-10 15:27:41 +08:00
Nitrous
b74c3b1c5c
Make all hit objects before the start time marked as hit.
2024-01-10 15:19:38 +08:00
Nitrous
484e9e8ee6
Fix binding order of IsPaused
bindable and disable playback controls in spectator mode.
2024-01-09 22:09:20 +08:00
Bartłomiej Dach
8110c995dd
Merge branch 'master' into allocs-off-the-charts
2024-01-09 14:11:00 +01:00
Bartłomiej Dach
92ba770314
Fix missing wireframe behind percent sign on accuracy counter
2024-01-09 14:00:58 +01:00
Bartłomiej Dach
77bf6e3244
Fix missing wireframe behind "x" sign on combo counter display
2024-01-09 13:59:27 +01:00
wooster0
8ad697ff4c
apply some suggestions/corrections
2024-01-09 21:28:46 +09:00
Dean Herbert
4110adc4c0
Fix missing wireframe on argon combo counter
2024-01-09 20:16:28 +09:00
Bartłomiej Dach
66b3945cd6
Move current screen check to better place
2024-01-09 10:44:30 +01:00
Dean Herbert
9c7e555237
Fix initial animation not playing correctly
2024-01-09 18:27:37 +09:00
Dean Herbert
80892f3167
Fix misses not displaying properly
2024-01-09 18:18:11 +09:00
Dean Herbert
b6505ba063
Reduce colour tween overhead and mark other calls of concern
2024-01-09 18:16:54 +09:00
Dean Herbert
12a59eb34c
Remove vertex update overheads
2024-01-09 17:35:01 +09:00
Nitrous
c081ca2145
Make field to a local.
2024-01-09 16:30:48 +08:00
Dean Herbert
b3533d270c
Remove delegate overhead of HealthBarValue
/GlowBarValue
2024-01-09 17:20:49 +09:00
Nitrous
63961ea276
use RepeatingButtonBehavior
for seek buttons
2024-01-09 16:08:29 +08:00
Dean Herbert
d83b8dbdaf
Refactor ArgonHealthDisplay
to user interpolation and less bindable events
2024-01-09 16:50:27 +09:00
Dean Herbert
1837b31f9b
Remove usage of HealthDisplay.BindValueChanged
...
Health updates very often when using HP drain. Let's avoid bindable overheads.
2024-01-09 16:38:05 +09:00
Nitrous
bdecac6d79
Inverse check.
2024-01-09 15:19:54 +08:00
Nitrous
99c7685495
use GameplayClock.IsPaused
bindable instead of polling in Update
2024-01-09 15:18:21 +08:00
Dean Herbert
1f6e1cbe56
Allow interacting with playlist item buttons when not selected
2024-01-09 14:45:21 +09:00
Dean Herbert
765d41faa9
Change second occurrence of debug.assert with early return for fallback safety
2024-01-09 14:07:48 +09:00
Dean Herbert
3f5899dae0
Fix incorrect implementation of wireframe digits
2024-01-09 14:07:48 +09:00
Nitrous
afa808695b
Make resolved properties nullable.
2024-01-09 12:48:11 +08:00
Nitrous
2e041823a1
Perform null check on gameplay state.
2024-01-09 12:24:09 +08:00
Nitrous
bb2b7d3c31
Add playback controls.
2024-01-09 12:23:01 +08:00
Bartłomiej Dach
58db39ec32
Fix crash when clicking osu! logo in song select immediately after exiting
...
Closes https://github.com/ppy/osu/issues/26415 .
The crash report with incomplete log was backwards, the exit comes
first. Sentry events and the reproducing test in
8a87301c55
confirm this.
2024-01-08 21:37:25 +01:00
Bartłomiej Dach
70ba5dd0d3
Merge pull request #26385 from peppy/carousel-thing
...
Fix beatmap carousel not preloading panels when off-screen
2024-01-08 19:37:34 +01:00
Dean Herbert
51bd32bf7e
Restore comment regarding usage of MinBy
2024-01-09 01:08:47 +09:00
Dean Herbert
e77d203a24
Refactor delayed load logic to hopefully read better
2024-01-09 01:08:17 +09:00
Bartłomiej Dach
5337d999b5
Merge branch 'master' into disable-intro-track-pause
2024-01-08 12:54:37 +01:00
Bartłomiej Dach
b6ce57b777
Use override that was intended to steer global track control rather than local sets
2024-01-08 12:54:16 +01:00
Bartłomiej Dach
3e9d222d67
Merge pull request #26409 from peppy/overall-ranking-overlap
...
Fix overall ranking text overlapping at some aspect ratios
2024-01-08 12:29:42 +01:00
Dean Herbert
16ea7f9b77
Avoid completely unnecessary string allocations in ArgonCounterTextComponent
2024-01-07 14:31:22 +09:00
Dean Herbert
b809d4c068
Remove delegate overhead from argon health display's animation updates
2024-01-07 14:31:22 +09:00
Dean Herbert
d3710f0bfd
Remove scores from song select leaderboard when leaving the screen
2024-01-06 20:53:20 +09:00
Dean Herbert
14a43375a7
Fix overall ranking text overlapping at some aspect ratios
...
Can't confirm on the actual ranking screen due to stuff not working.
Maybe it'll work tomorrow.
Closes https://github.com/ppy/osu/issues/26341 .
2024-01-06 20:25:07 +09:00
Zachary
091241634c
Make IntroScreen set AllowTrackControl
to false instead
2024-01-05 23:55:17 +10:00
Dean Herbert
fbc40ffc65
Merge pull request #26381 from Joehuu/flash-ongoing-operations-dialog
...
Flash blocking ongoing operations dialog when trying to force quit
2024-01-05 18:34:06 +09:00
Dean Herbert
91bb3f6c57
Cache argon character glyph lookups to reduce string allocations
2024-01-05 01:24:00 +09:00
Zachary
9b734bac25
Allow track control after intro screen finishes.
2024-01-05 01:14:34 +10:00
Dean Herbert
35b9940c4e
Merge pull request #26140 from CaffeeLake/multiplier1x
...
Fix mod score multiplier rounding to 1.00x with specific mod combinations
2024-01-04 19:26:49 +09:00
Dean Herbert
81c6fd5589
Load items closer to the centre of the screen as a priority
2024-01-04 19:25:12 +09:00
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
OliBomby
6bb72a9fcc
Revert "Remove other grid types"
...
This reverts commit de14da95fa
.
2024-01-01 15:46:07 +01:00
OliBomby
de14da95fa
Remove other grid types
2024-01-01 15:44:20 +01:00
OliBomby
f649fa106f
Added bindables and binding with BindTo
2024-01-01 15:13:11 +01:00
OliBomby
d0ca3f2b2b
Add circular grid
2024-01-01 15:13:11 +01:00
OliBomby
847f04e63a
reduce opacity of middle cardinal lines
2024-01-01 15:13:10 +01:00
OliBomby
8a331057b0
Make it actually possible to change grid type
2024-01-01 15:13:10 +01:00
OliBomby
f223487e1c
improve code
2024-01-01 15:13:10 +01:00
OliBomby
0ce1a48e68
Add comment
2024-01-01 15:13:10 +01:00
OliBomby
a20c430d6f
fix wrong grid cache being used
2024-01-01 15:13:10 +01:00
OliBomby
d0c8b285ce
clean up code duplication
2024-01-01 15:13:10 +01:00
OliBomby
92c3b142a4
Added Triangular snap grid
2024-01-01 15:11:50 +01:00
OliBomby
f2edd705ea
add rotation to snapped position
2024-01-01 15:11:49 +01:00
OliBomby
f3b88c318b
Add rotation to snap grid visual
2024-01-01 15:11:49 +01: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
Salman Ahmed
02f5ea200e
Fix failing tests
2023-12-30 07:41:55 +03: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
rushiiMachine
1d4db3b7a9
Fix SkinEditorOverlay
freezing when ReplayPlayer
screen exits early
...
Originally when popping in, the ReplayPlayer was loaded first (if previous screen was MainMenu), and afterwards the SkinEditor component was loaded asynchronously. However, if the ReplayPlayer screen exits quickly (like in the event the beatmap has no objects), the skin editor component has not finished initializing (this is before it was even added to the component tree, so it's still not marked `Visible`), then the screen exiting will cause `OsuGame` to call SetTarget(newScreen) -> setTarget(...) which sees that the cached `skinEditor` is not visible yet, and hides/nulls the field. This is the point where LoadComponentAsync(editor, ...) finishes, and the callback sees that the cached skinEditor field is now different (null) than the one that was loaded, and never adds it to the component tree. This occurrence is unhandled and as such the SkinEditorOverlay never hides itself, consuming all input infinitely.
This PR changes the loading to start loading the ReplayPlayer *after* the SkinEditor has been loaded and added to the component tree.
Additionally, this lowers the exit delay for ReplayPlayer and changes the "no hit objects" notification to not be an error since it's a controlled exit.
2023-12-26 12:22:00 -08: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
smallketchup82
f7c1e66165
Make the difficulty stats change based on the currently applied mods
2023-12-22 17:28:02 -05: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
Dean Herbert
1c63f1f89d
Merge pull request #25348 from bdach/less-basic-touchscreen-detection
...
Implement basic touchscreen detection
2023-11-10 18:01:40 +09:00
Dean Herbert
35e11c7c63
Rename diagonal scale variable and update xmldoc
2023-11-10 17:55:02 +09:00
Dean Herbert
a02aeed50a
Adjust combo animation slightly
2023-11-10 16:53:16 +09:00
Dean Herbert
67312a2db9
Remove ArgonScoreWedge
and use ArgonWedgePiece
directly
2023-11-10 16:53:16 +09:00
Dean Herbert
b4ec62473e
Remove width/height bindables from ArgonWedgePiece
2023-11-10 16:53:15 +09:00
Dean Herbert
4f90ac15fa
Reduce the default wireframe opacity a bit
2023-11-10 15:53:05 +09:00
Dean Herbert
7e0b41219c
Change animation to only affect number portion, add miss animation
2023-11-10 15:53:05 +09:00
Dean Herbert
e861681cd4
Adjust argon rolling easings
2023-11-10 15:53:05 +09:00
Dean Herbert
7c3a626f4b
Add basic animation for combo counter
2023-11-10 15:53:05 +09:00
Dean Herbert
6c1d48dfaf
Remove unused function
2023-11-10 15:53:05 +09:00
Dean Herbert
f31c1c9c79
Rename and move skinnable line component to a more commomn place
2023-11-10 15:53:05 +09:00
Dean Herbert
ec3b6e47fb
Change selection handling to adjust Size
instead of Scale
for edge nodes
2023-11-10 14:22:28 +09:00
Dean Herbert
7fc2050f72
Rename variables and mak seconary tooltip type work again
2023-11-10 11:52:34 +09:00
Salman Ahmed
d3af3c615f
Merge branch 'master' into gameplay-hud-redesign/counters
2023-11-10 01:04:03 +03:00
Salman Ahmed
6f5d905ce7
Update argon accuracy counter design
2023-11-10 01:02:05 +03:00
Salman Ahmed
59998b507a
Hide background sprite when storyboard finishes loading
2023-11-09 23:23:57 +03:00
Salman Ahmed
768a31b2f5
Fix background crash on a beatmap with no storyboard
2023-11-09 22:57:20 +03:00
Salman Ahmed
bd8409219f
Unload beatmap storyboard background when no longer present
2023-11-09 17:20:11 +03:00
Susko3
0c4c9aa4b5
Show touch taps setting in player loader on mobile platforms
2023-11-09 14:52:33 +01:00
Joshua Hegedus
ccb9ff826a
fixed tests
2023-11-09 13:09:59 +01:00
Dean Herbert
02966bc02f
Merge branch 'master' into change-clickable-avatars-tooltip-for-usergrid
2023-11-09 18:19:23 +09:00
Dean Herbert
67dc3aa5b7
Merge pull request #25366 from Susko3/better-touch-settings
...
Add "disable taps during gameplay" to touch input settings and related UI
2023-11-09 18:19:02 +09:00
Bartłomiej Dach
63a0ea5410
Fix PlayerTouchInputDetector
applying touch device mod when other inactive mods present
2023-11-09 17:51:01 +09:00
Bartłomiej Dach
13b599b9b6
Merge branch 'master' into less-basic-touchscreen-detection
2023-11-09 17:36:48 +09:00
Jamie Taylor
8a47f05b16
Always play 'swoosh' sample when transitioning back to logo
2023-11-09 14:01:33 +09:00
Jamie Taylor
f69c2ea39b
Implement sample choking/muting for ButtonSystem
samples
2023-11-08 22:21:24 +09:00
Jamie Taylor
f0a1df06ac
Add 'swoosh' samples to accentuate MainMenu
animations
2023-11-08 22:21:24 +09:00
Jamie Taylor
17aa079cb1
Use new tiered 'back' samples
2023-11-08 22:21:24 +09:00
Jamie Taylor
fc1a0cf645
Update ButtonSystem
to use new sample names
2023-11-08 22:21:24 +09:00
Salman Ahmed
2ef17c56b1
Remove unused local
2023-11-08 02:13:35 +03:00
Salman Ahmed
18c71c95cc
Merge branch 'master' into gameplay-hud-redesign/counters
2023-11-08 02:12:37 +03:00
Salman Ahmed
4de5454538
Bring back left-side line next to health display
...
Makes the score counter not look weird when it reaches 8 digits
2023-11-08 02:07:15 +03:00
Salman Ahmed
fdc714a248
Support percentages and ignore dot characters in wireframes part
2023-11-08 02:06:14 +03:00
Salman Ahmed
d30bac3f49
Move "required display digits" feature to reside in argon score counter
2023-11-08 02:06:14 +03:00
Salman Ahmed
e6d3085353
Update accuracy counter design
2023-11-08 02:06:14 +03:00
Salman Ahmed
cbea2db4be
Support absolute-sized health bar and use it for default layout
2023-11-08 02:06:14 +03:00
Dean Herbert
c00a1d948a
Merge branch 'master' into better-touch-settings
2023-11-07 23:21:59 +09:00
Dean Herbert
3e257f1e6c
Remove unused using statements
2023-11-07 23:21:51 +09:00
Susko3
fcd73e62d2
Remove mobile specific changes
...
Will be added back in a separate PR
2023-11-07 13:06:14 +01:00
ratinfx
544d5d1d86
Forgot a clock.Stop call
2023-11-07 12:23:22 +01:00
ratinfx
bdbeb2bce4
Renamed CollectionChanged event handler
2023-11-07 11:11:32 +01:00
ratinfx
aa87e0a44d
HitObject Selection logic and separation for gamemodes
...
+ moved time_regex into EditorTimestampParser
2023-11-07 01:36:58 +01:00
ratinfx
44f127c8a8
Renamed method and made private
2023-11-07 01:02:45 +01:00
ratinfx
0834b79cc7
Renamed method and moved Notifications inside
2023-11-07 00:56:24 +01:00
Susko3
7385c3c97b
Move InputSettings
children creation code to BDL
...
- Avoids now obsolete variable name
- Makes changing to touch detection easier (access to session statics in BDL)
2023-11-07 00:17:15 +01:00
Susko3
05d9418718
Rename setting to TouchDisableGameplayTaps
for better visibility when searching
2023-11-07 00:13:46 +01:00
Salman Ahmed
0dbba13686
Split argon score sprite text and update combo counter design
2023-11-07 01:59:36 +03:00
Salman Ahmed
7c1c62ba8a
Remove argon combo wedge and update combo counter position
2023-11-07 01:59:36 +03:00
Salman Ahmed
ce36884ef0
Make score wireframes display up to required digits count
2023-11-07 01:59:36 +03:00
Salman Ahmed
754e05213c
Update argon score wedge design
2023-11-07 01:59:36 +03:00
Susko3
f8b5ecc92a
Update UI to use the new setting
2023-11-06 21:07:15 +01:00
Salman Ahmed
b2749943e2
Display "required save" popup when creating another difficulty on a new beatmap
2023-11-06 21:54:40 +03:00
Dean Herbert
51c891e2e4
Automatically refresh the verify screen's issue list on re-entering it
...
Addresses https://github.com/ppy/osu/discussions/25365 .
2023-11-06 19:34:36 +09:00
Bartłomiej Dach
682668ccf0
Remove touch device toasts entirely
2023-11-06 10:54:32 +01:00
Bartłomiej Dach
97fee6143c
Rename touch "input handlers" to detectors
2023-11-06 10:08:19 +01:00
Joshua Hegedus
4a70f2435c
fixed showUsernameTooltip
2023-11-06 09:22:50 +01:00
Dean Herbert
0915ac8891
Use left aligned text for non-rotate key counter
2023-11-06 16:32:12 +09:00
ratinfx
277cf7dc12
Ensure every SelectedItem is alive and has Blueprint
2023-11-05 18:26:51 +01:00
Susko3
9947897c5f
Use appropriate clicks/taps text in player loader input settings
2023-11-05 12:53:40 +01:00
Susko3
fa1d1df594
Rename mouse button string to Disable clicks during gameplay
2023-11-05 12:43:14 +01:00
Salman Ahmed
1d4f4cf4c3
Merge branch 'master' into gameplay-hud-redesign/counters
2023-11-05 02:02:36 +03:00
Salman Ahmed
6c3169a0ed
Remove PP wedge and logic for gameplay layout
2023-11-05 01:56:54 +03:00
Salman Ahmed
a23dfbeab5
Revert "Abstractify PP counter logic from the "Triangles" implementation"
...
This reverts commit daf4a03fd0
.
2023-11-05 01:55:54 +03:00
Salman Ahmed
58a830fc5b
Revert "Add "Argon" performance points counter"
...
This reverts commit 56eeb117ce
.
2023-11-05 01:55:54 +03:00
Salman Ahmed
1c844a155e
Remove health line detail
2023-11-05 01:55:54 +03:00
Salman Ahmed
91cf237fc1
Revert health display settings changes
2023-11-05 01:55:54 +03:00
ratinfx
7492d953ae
Moved error checks into Editor
...
- Invoke Action on error to Notify user
- added some comments
2023-11-04 21:17:58 +01:00
Givikap120
d0b2b4f7b9
Update AdvancedStats.cs
2023-11-04 21:57:42 +02:00
Givikap120
820519c37d
improved tooltip
2023-11-04 21:55:46 +02:00
Givikap120
57170501cd
Improve code quality
2023-11-04 17:25:09 +02:00
ratinfx
60f62faec3
Renamed Editor method
2023-11-04 03:30:38 +01:00
ratinfx
43ab7f4942
Added OpenEditorTimestamp base implementation
2023-11-04 02:01:18 +01:00
Joseph Madamba
16731ff85f
Fix text positioning
2023-11-02 20:42:28 -07:00
Joseph Madamba
b3dfe19472
Fix UprightAspectMaintainingContainer
not being centred
2023-11-02 20:42:28 -07:00
Joseph Madamba
090601b485
Apply peppy's upright key counter attempt diff
...
Co-Authored-By: Dean Herbert <pe@ppy.sh>
2023-11-02 20:42:23 -07:00
Bartłomiej Dach
a78fab0e7d
Do not hardcode ruleset name in touch device detection toast
2023-11-03 00:17:29 +01:00
Bartłomiej Dach
a613292802
Fix unknown mod test failure
2023-11-02 23:44:40 +01:00
Bartłomiej Dach
0dd0a84312
Move player touch handler to SubmittingPlayer
...
Shouldn't be there in `ReplayPlayer`.
2023-11-02 22:56:43 +01:00
Bartłomiej Dach
8784dd42c0
Do not attempt to turn on Touch Device in song select with autoplay active
2023-11-02 22:56:43 +01:00
Bartłomiej Dach
3a6d65d395
Touch up PlayerTouchInputHandler
2023-11-02 21:24:58 +01:00
Bartłomiej Dach
c588f434e5
Fix song select touch handler causing crashes when song select is suspended
2023-11-02 21:24:58 +01:00
Bartłomiej Dach
f2df02b60f
Automatically activate touch device mod in player
2023-11-02 21:24:58 +01:00
Bartłomiej Dach
2f6ff893b5
Automatically activate and deactivate touch device mod in song select
2023-11-02 19:45:48 +01:00
Bartłomiej Dach
850866e7f4
Merge pull request #25316 from peppy/metronome-always-play-tick
...
Decouple metronome tick playback from pendulum movement
2023-10-31 09:37:29 +01:00
Bartłomiej Dach
144006fbe8
Update autoselect implementation to work correctly with framework changes
2023-10-31 08:38:22 +01:00
Bartłomiej Dach
8a68333425
Merge branch 'master' into beat-divisor-select-text-on-click
2023-10-31 08:36:53 +01:00
Dean Herbert
64efc3d251
Decouple metronome tick playback from pendulum movement
...
Not super happy about doing this, but it seems like it's in the best
interest of editor usability.
2023-10-31 15:33:46 +09:00
Dean Herbert
7ceced7012
Scope TestPauseWithLargeOffset
to focus on what matters
...
See https://github.com/ppy/osu/actions/runs/6693917410/job/18186111009
This test is to make sure we don't seek before the original
pause time, so I've exposed that value precisely to avoid
CI woes.
2023-10-31 14:47:04 +09:00
Dean Herbert
f706fd2fca
Merge pull request #25307 from bdach/slider-velocity-undo
...
Fix slider velocity changes not being undone correctly
2023-10-31 01:44:18 +09:00
Bartłomiej Dach
b2d3aa982d
Merge branch 'master' into fix-click-through-timeline
2023-10-30 12:52:00 +01:00
Bartłomiej Dach
cea24298cb
Privatise setters
2023-10-30 12:42:34 +01:00
Bartłomiej Dach
de89b7e53c
Fix slider velocity changes not being undone correctly
...
Closes https://github.com/ppy/osu/issues/25239 .
`LegacyEditorBeatmapPatcher.processHitObjectLocalData()` was already
supposed to be handling changes to hitobjects that will show up neither
when comparing the hitobjects themselves or the timing point with
"legacy" info stripped - so, in other words, changes to slider velocity
and samples.
However, a change to slider velocity requires default application to
take effect, so just resetting the value would visually fix the timeline
marker but not change the actual object. Calling
`EditorBeatmap.Update()` fixes this by way of triggering default
re-application.
This could probably be smarter (by only invoking the update when
strictly necessary, etc.) - but I'm not sure it's worth the hassle. This
is intended to be a quick fix, rather than a complete solution - the
complete solution would indeed likely entail a wholesale restructuring
of the editor's change handling.
2023-10-30 10:59:02 +01:00
Dean Herbert
8828562512
Merge pull request #25277 from Susko3/fix-cut-in-filter-textbox
...
Fix cut and copy not working in song select search filter textbox
2023-10-30 18:18:46 +09:00
Dean Herbert
63e6eaf538
Fix failing tests
2023-10-30 18:06:11 +09:00
Dean Herbert
57d88a0ac4
Fix right clicks on timeline objects potentially getting eaten by playfield area
...
`SelectionHandler` is receiving input from anywhere out of necessity:
19f892687a/osu.Game/Screens/Edit/Compose/Components/SelectionHandler.cs (L119-L125)
Also important is that `BlueprintContainer` will selectively not block
right clicks to make sure they fall through to the
`ContextMenuContainer`:
19f892687a/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs (L122-L126)
But because the whole editor is sharing a `ContextMenuContainer` and
it's at a higher level than both components, we observe here the
playfield's `SelectionHandler` intercepting the right click before it
can reach the `ContextMenuContainer`.
The fix here is similar to what we're already doing in
`TimelineBlueprintContaienr`.
2023-10-30 18:06:11 +09:00
Bartłomiej Dach
19d10e5e45
Merge pull request #25300 from peppy/better-submission-logging
...
Improve log output surrounding score submission
2023-10-30 09:04:06 +01:00
Dean Herbert
caddbacfe8
Merge branch 'master' into gameplay-hud-redesign/counters
2023-10-30 16:35:10 +09:00
Dean Herbert
a91b704d21
Fix some new nullable inspections
2023-10-30 15:10:10 +09:00
Dean Herbert
d90f29a5ff
Improve log output surrounding score submission
2023-10-30 15:07:26 +09:00
Susko3
366e41f111
Use local workaround instead of disabling clipboard entirely
2023-10-28 12:23:23 +02:00
Dean Herbert
5a9d4170e8
Merge pull request #24794 from bdach/score-encoding-cleanup
...
Correctly handle multiple online score ID types
2023-10-28 02:29:56 +09:00
Bartłomiej Dach
35f30d6135
Scale back debug assertion
...
The import preparation task can actually be non-null when exiting even
if the player hasn't passed:
- fail beatmap
- click import button to import the failed replay
2023-10-27 14:39:58 +02:00
Bartłomiej Dach
dc7f5cd6ed
Add preventive assertions concerning submission flow state
2023-10-27 13:30:51 +02:00
Bartłomiej Dach
2d5b1711f6
Share !HasPassed
condition
2023-10-27 13:27:48 +02:00
Bartłomiej Dach
96d784e06b
Delete ScoreInfo.HasReplay
as no longer needed
2023-10-27 12:39:54 +02:00
Bartłomiej Dach
86a8ab6db6
Fix quick retry immediately after completion marking score as failed
...
Closes https://github.com/ppy/osu/issues/25247 .
The scenario involved here is as follows:
1. User completes beatmap by hitting all notes.
2. `checkScoreCompleted()` determines completion, and calls
`progressToResults(withDelay: true)`.
3. `progressToResults()` schedules `resultsDisplayDelegate`, which
includes a call to `prepareAndImportScoreAsync()`, a second in the
future.
4. User presses quick retry hotkey.
This calls `Player.Restart(quickRestart: true)`,
which invokes `Player.RestartRequested`,
which in turn calls `PlayerLoader.restartRequested(true)`,
which in turn causes `PlayerLoader` to make itself current,
which means that `Player.OnExiting()` will get called.
5. `Player.OnExiting()` sees that `prepareScoreForDisplayTask` is null
(because `prepareAndImportScoreAsync()` - which sets it -
is scheduled to happen in the future), and as such assumes that
the score did not complete. Thus, it marks the score as failed.
6. `Player.Restart()` after invoking `RestartRequested` calls
`PerformExit(false)`, which then will unconditionally call
`prepareAndImportScoreAsync()`. But the score has already been marked
as failed.
The flow above can be described as "convoluted", but I'm not sure I have
it in me right now to try and refactor it again. Therefore, to fix,
switch the `prepareScoreForDisplayTask` null check in
`Player.OnExiting()` to check `GameplayState.HasPassed` instead, as it
is not susceptible to the same out-of-order read issue.
2023-10-27 12:17:03 +02:00
Dean Herbert
fc25e24397
Merge branch 'master' into score-encoding-cleanup
2023-10-27 18:03:38 +09:00
Bartłomiej Dach
fdb81bfa4c
Rename methods to not mention "source clock" anymore
2023-10-26 19:38:52 +02:00
Bartłomiej Dach
565ae99e0d
Fix StopUsingBeatmapClock()
applying adjustments to track it was supposed to stop using
...
- Closes https://github.com/ppy/osu/issues/25248
- Possibly also closes https://github.com/ppy/osu/issues/20475
Regressed in e33486a766
.
`StopUsingBeatmapClock()` intends to, as the name says, stop operating
on the working beatmap clock to yield its usage to other components on
exit. As part of that it tries to unapply audio adjustments so that
other screens can apply theirs freely instead.
However, the aforementioned commit introduced a bug in this. Previously
to it, `track` was an alias for the `SourceClock`, which could be
mutated in an indirect way via `ChangeSource()` calls. The
aforementioned commit made `track` a `readonly` field, initialised in
constructor, which would _never_ change value. In particular, it would
_always_ be the beatmap track, which meant that
`StopUsingBeatmapClock()` would remove the adjustments from the beatmap
track, but then at the end of the method, _apply them onto that same
track again_.
This was only saved by the fact that clock adjustments are removed again
on disposal of the `MasterGameplayClockContainer()`. This - due to async
disposal pressure - could explain infrequently reported cases wherein
the track would just continue to speed up ad infinitum.
To fix, fully substitute the beatmap track for a virtual track at the
point of calling `StopUsingBeatmapClock()`.
2023-10-26 19:38:52 +02:00
Bartłomiej Dach
2fa2217381
Fix left side of carousel blocking volume adjust hotkeys
...
Closes https://github.com/ppy/osu/issues/25234 .
A little ad-hoc, but probably fine...?
2023-10-26 16:26:35 +02:00
Bartłomiej Dach
5d6a58d443
Add failing test scene for scroll handling in song select
2023-10-26 16:24:16 +02:00
Bartłomiej Dach
cbb2a0dd70
Use both score ID types to deduplicate score on solo results screen
2023-10-26 15:09:59 +02:00
Bartłomiej Dach
ca4b09f8ef
Merge branch 'master' into score-encoding-cleanup
2023-10-26 09:04:05 +02:00
Salman Ahmed
07e7d533bf
Bake external scale factors into glyph scale
2023-10-26 10:01:27 +03:00
Salman Ahmed
df80b4dcab
Update "Argon" health display specifications to match design
...
Also adds a little white bar next to the display to match with the
components below it (score/accuracy/combo counters).
2023-10-26 09:12:05 +03:00
Salman Ahmed
50af1574cf
Add "Argon" background wedges
2023-10-26 09:10:56 +03:00
Salman Ahmed
56eeb117ce
Add "Argon" performance points counter
2023-10-26 09:10:10 +03:00
Salman Ahmed
daf4a03fd0
Abstractify PP counter logic from the "Triangles" implementation
2023-10-26 09:09:55 +03:00
Salman Ahmed
0aa0562dc0
Add "Argon" combo counter
2023-10-26 09:09:55 +03:00
Salman Ahmed
1f36acca1a
Add "Argon" accuracy counter
2023-10-26 09:09:52 +03:00
Salman Ahmed
9ca672d689
Add "Argon" total score counter
2023-10-26 08:58:25 +03:00
Dean Herbert
6934e045df
Fix editor not prompting before saving beatmap for export
2023-10-25 14:39:46 +09:00
Dean Herbert
34505b3933
Merge pull request #25185 from bdach/minimum-sample-volume
2023-10-24 22:04:43 +09:00
Bartłomiej Dach
19be0055d5
Merge pull request #24921 from Pasi4K5/diff-name-search
...
Add ability to search for difficulty names using square brackets
2023-10-24 12:07:02 +02:00
Dean Herbert
c9161a7bfc
Remove incorrect copy paste fail
2023-10-24 17:32:01 +09:00
Bartłomiej Dach
abfe2ce0fe
Fix comment
2023-10-24 10:05:20 +02:00
Dean Herbert
fcb366af4d
Add diff=
support for more advanced usages
2023-10-24 16:09:05 +09:00
Dean Herbert
6865d8894d
Simplify implementation and remove unsupported test coverage
2023-10-24 16:01:32 +09:00
Bartłomiej Dach
05d7516479
Merge pull request #25182 from peppy/song-select-scroll-improvemets
...
Improve mouse interactions at song select
2023-10-24 08:26:20 +02:00
Dean Herbert
1274829193
Block scroll and click operations on the left side of song select
2023-10-24 14:51:40 +09:00
Pasi4K5
c5339f440e
Apply code review suggestions
2023-10-23 23:30:54 +02:00
Bartłomiej Dach
12282fff5c
Disallow setting sample volume lower than 5% in editor
2023-10-20 15:50:21 +02:00
Dean Herbert
0ae0b0c353
Fix carousel "reset position" marging not scaling with UI scale correctly
2023-10-20 20:04:26 +09:00
Dean Herbert
137a1d948d
Allow interacting with the carousel anywhere in empty space at song select
2023-10-20 20:04:11 +09:00
Susko3
5bbbca3e44
Also support D
for those with muscle memory from stable
2023-10-20 12:22:00 +02:00
Susko3
4a3a4ee17f
Change beatmap listing key to B to match Ctrl-B shortcut
2023-10-20 11:47:00 +02:00
Dean Herbert
52c2eb93de
Merge branch 'master' into taiko-beat-snap-grid
2023-10-19 23:53:01 +09:00
Dean Herbert
e081fa48a2
Fix various other inspections
2023-10-17 17:48:51 +09:00
Dean Herbert
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Dean Herbert
2a89a25790
Add beat snap grid to osu!taiko editor
...
Addresses https://github.com/ppy/osu/discussions/25150 .
2023-10-17 16:59:56 +09:00
Dean Herbert
1b9acdf55c
Abstract out common implementation of BeatSnapGrid
2023-10-17 16:42:52 +09:00
Bartłomiej Dach
fb2293821a
Allow watching replay from multi/playlist results screens
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
c4af8591a5
Preserve OnlineID
when importing scores
...
Previously, for lazer scores, the ID returned from `osu-web` was
discarded and replaced with -1, due to the fact that the appropriate
structures for unification with stable, as well as unification across
solo and multiplayer, were not in place yet.
Now we're at the point where scores from all the aforementioned sources
receive a `solo_scores` DB row, and as such, we can start treating
`solo_scores`-scheme IDs as canonical "online IDs" for a score.
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
9cd33d9bb2
Merge pull request #25139 from peppy/collection-ordering-fix
...
Fix collections not being sorted alphabetically in context menus
2023-10-16 10:53:43 +02:00
Dean Herbert
7139592e43
Fix collections not being sorted correctly in context menus
2023-10-16 16:03:12 +09:00
Dean Herbert
48832c64ac
Fix health bar animating when it shouldn't be
...
It wasn't correctly checking the current underlying health, which could
be zero in usages of `AccumulatingHealthProcessor`, for instance.
Closes #25046 .
2023-10-16 13:12:04 +09:00
Jamie Taylor
d97b618d02
Use new generic-error
sample in appropriate places
2023-10-13 21:06:50 +09:00
Bartłomiej Dach
5f51b8a7c9
Merge pull request #25097 from peppy/results-screen-progress-fast
...
Show results immediately if user hits "back" key after finishing gameplay
2023-10-13 11:54:34 +02:00
Bartłomiej Dach
79cec7707d
Privatise setter
2023-10-13 09:56:46 +02:00
Bartłomiej Dach
6c8490bc7e
Revert changes to LoungeSubScreen.Join()
...
- `virtual` modifier was used in mocking.
- The spacing change revert is just mostly to keep it out of the final
diff.
2023-10-12 20:39:40 +02:00
Dean Herbert
fa47309eef
Fix exit key during storyboard outro not progressing to results
2023-10-12 19:31:54 +09:00
Dean Herbert
d174a6ce61
Remove dead code which was only there for the exit-specific scenario
2023-10-12 19:27:35 +09:00
Dean Herbert
32eda99c3a
Add missing xmldoc returns
2023-10-12 19:06:34 +09:00
Dean Herbert
56e27f1c27
Merge branch 'master' into multiplayer-invites
2023-10-12 18:17:15 +09:00
Dean Herbert
94d7a65e40
Schedule Join
operations rather than using OnLoadComplete
for added safety
2023-10-12 17:42:02 +09:00
Dean Herbert
242a41371c
Fix HotkeyOverlay
fade out occurring when exit is blocked
2023-10-12 15:42:54 +09:00
Dean Herbert
7c0d496730
Show results immediately if user hits "back" key after finishing gameplay
...
I've gone ahead and matched the osu!stable behaviour for this, as it
seems like it's what people are used to and they will settle for no
less.
Closes https://github.com/ppy/osu/issues/18089 .
2023-10-12 15:42:23 +09:00
Dean Herbert
b9dbc8139b
Merge branch 'master' into fix-argon-health-bar-flash
2023-10-11 00:20:08 +09:00
Bartłomiej Dach
d701e88a08
Merge pull request #25076 from peppy/fix-argon-health-bar-perf
...
Ensure health displays don't pile up transforms when off-screen
2023-10-10 16:33:32 +02:00
Dean Herbert
b9dadc52b7
Adjust comment to match current behaviour
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-10-10 22:54:19 +09:00
Dean Herbert
e2e28ef0ca
Remove comment regarding inlined delegate
2023-10-10 22:12:20 +09:00
Dean Herbert
682aa06acf
Remove JudgementResult
from Miss
/Flash
as it is not used
2023-10-10 22:10:44 +09:00
Dean Herbert
f0bd975393
Change GameplayClockContainer.Reset
to directly call GameplayClock.Stop
...
The reasoning is explained in the inline comment, but basically this was
getting blocked by `isPaused` being in an initial `true` state (as it is
on construction), while the source clock was still `IsRunning`.
There's no real guarantee of sync between the source and the `isPaused`
bindable right now. Maybe there should be in the future, but to restore
sanity, let's ensure that a call to `Reset` can at least stop the track
as we expect.
2023-10-10 18:16:14 +09:00
Dean Herbert
100c0cf533
Fix MultiplayerPlayer
never calling Reset
on GameplayClockContainer
...
This call is responsible for ensuring the clock is in a stopped state.
2023-10-10 17:58:37 +09:00