Dean Herbert
c06703d662
Add ability to select which display the game runs on
2022-03-02 18:29:07 +09:00
Dean Herbert
dc6fa13337
Merge branch 'master' into mod-overlay/columns
2022-03-02 15:04:37 +09:00
Dean Herbert
763f881d4a
Use more correct mod check to encompass more than just autoplay
2022-03-02 14:42:10 +09:00
Dean Herbert
e184b26cdd
Remove Precision
call for database write shortcutting
...
Shouldn't be required.
2022-03-02 14:39:29 +09:00
Dean Herbert
8bd66f1ed7
Fix incorrect precision specification for button disable check
2022-03-02 14:36:49 +09:00
Dean Herbert
3cbcb702f6
Fix calibration button disabled state not checking in corrrect direction
2022-03-02 14:36:15 +09:00
Dean Herbert
c07f754565
Enable nullable
on BeatmapOffsetControl
2022-03-02 14:34:24 +09:00
Dean Herbert
d4a2645510
Add localisation support for leaderboard error text
2022-03-02 14:14:44 +09:00
Dean Herbert
c342030b2c
Add specific placeholder message for custom rulesets rather than showing network error
2022-03-02 14:10:59 +09:00
Dean Herbert
09a74cdfc6
Merge pull request #17023 from peppy/realm-async-write
...
Add `RealmAccess.WriteAsync` method and more statistics of realm reads/writes
2022-03-02 12:31:16 +09:00
Henry Lin
c6934b4bce
Improve adaptive speed algorithm and add rewind support
2022-03-02 10:35:03 +08:00
Henry Lin
783f43ccfb
Add initial rate setting
2022-03-02 09:57:52 +08:00
Henry Lin
c9b205afeb
Add adaptive speed mod
2022-03-02 09:57:52 +08:00
Salman Ahmed
97c54de3bf
Fix performance statistic not handling rulesets with unimplemented calculator
2022-03-01 20:43:20 +03:00
Dean Herbert
222f50d211
Fix calibration being back-to-front
2022-03-01 20:41:54 +09:00
Dean Herbert
6c09237956
Reorder fields in BeatmapOffsetControl
and MasterGameplayClockContainer
2022-03-01 20:16:55 +09:00
Dean Herbert
7d11cfb301
Add detach mapping for BeatmapUserSettings
2022-03-01 20:12:59 +09:00
Dean Herbert
9792f0653a
Don't show calibration controls for autoplay
2022-03-01 20:12:59 +09:00
Dean Herbert
4aee57c9c1
Add localisation of all beatmap offset strings
2022-03-01 20:12:59 +09:00
Dean Herbert
4d9efe771b
Don't display calibration options when the previous play was too short to be useful
2022-03-01 20:12:59 +09:00
Dean Herbert
bc2a15db96
Handle cases of beatmaps not existing in realm for tests
2022-03-01 20:12:59 +09:00
Dean Herbert
99c1ba19aa
Allow BeatmapOffsetControl
to react to external changes to offset
2022-03-01 20:12:59 +09:00
Dean Herbert
bb8caabb8b
Subscribe to changes in offset
2022-03-01 20:12:59 +09:00
Dean Herbert
071ba5c1df
Make writes asynchronously to avoid synchronous overhead
2022-03-01 20:12:59 +09:00
Dean Herbert
047e801da9
Store and retrieve offset from realm
2022-03-01 20:12:59 +09:00
Dean Herbert
acf8db13ac
Store user settings to realm
2022-03-01 18:44:15 +09:00
Dean Herbert
2901d2a650
Hook offset adjustment control up to last play via PlayerLoader
2022-03-01 18:44:15 +09:00
Dean Herbert
7215f3f66b
Fix CalculateAverageHitError
throwing if there are zero HitEvent
s
2022-03-01 18:44:15 +09:00
Dean Herbert
350b0b488c
TODO: Get score from previous play session for further analysis
2022-03-01 18:44:15 +09:00
Dean Herbert
1847f69bf9
Add basic beatmap offset adjustment control
2022-03-01 18:44:15 +09:00
Dean Herbert
4117a6adf7
Move player loader audio settings to new group
2022-03-01 18:44:15 +09:00
Dean Herbert
9a117467b5
Add RealmAccess.WriteAsync
method
2022-03-01 18:44:05 +09:00
Dean Herbert
7fa5842783
Add global statistics output for all realm reads/writes
2022-03-01 18:31:18 +09:00
Dan Balasescu
f42c72c800
Merge branch 'master' into legacy-score-encoder-no-beatmap-required
2022-03-01 12:21:01 +09:00
Dean Herbert
eb75a29b20
Use constant for maximum legacy ruleset id
2022-03-01 12:07:03 +09:00
Bartłomiej Dach
899b95e61b
Do not delay inital mod update by a frame
2022-02-28 21:46:58 +01:00
Bartłomiej Dach
e8701f46f1
Add xmldoc to Filter
to explain usage
2022-02-28 21:39:21 +01:00
Bartłomiej Dach
6cc972aa6a
Fix test failures by waiting for panel load
2022-02-28 21:36:13 +01:00
Dean Herbert
159db38f8a
Add missing xmldoc
2022-02-28 19:14:43 +09:00
Dean Herbert
a41e1c80f1
Show hit error on results screen
...
Leading up to implementation of "local offset", this feels like a good
thing to have visible first and foremost.
2022-02-28 19:11:06 +09:00
Dean Herbert
52e50db6b9
Enable nullable
for LegacyScoreEncoder
2022-02-28 18:42:23 +09:00
Dean Herbert
723e96309a
Only convert non-legacy frames (and throw on conversion failure)
2022-02-28 18:42:23 +09:00
Dean Herbert
2e96f74c94
Allow LegacyScoreEncoder
to be used without a beatmap if frames are already legacy frames
2022-02-28 18:42:23 +09:00
Dean Herbert
2be40f36f7
Reword popup text to read better (or more vaguely)
...
Removed some words but also don't mention "smaller" because it's...
musically incorrect and also functionally incorrect – entering 1/[8]
will result in 1/16 also being populated for instance.
2022-02-28 15:26:50 +09:00
Dean Herbert
368eadd8d1
Remove unused using statement
2022-02-28 15:24:02 +09:00
Dean Herbert
3634e12e66
Automatically focus divisor textbox and hide popover after successful change
2022-02-28 15:23:01 +09:00
Dean Herbert
4a555d067d
Change ModPanel
to not handle OnMouseDown
to allow drag scrolling in ModColumn
2022-02-28 14:32:50 +09:00
Bartłomiej Dach
774952adda
Rescale components from figma to real dimensions
2022-02-27 23:08:31 +01:00
Bartłomiej Dach
16c6b9b3b3
Add keyboard selection support to mod column
2022-02-27 22:51:29 +01:00
Bartłomiej Dach
b690df05de
Hide multiselection checkbox if everything is filtered
2022-02-27 22:51:29 +01:00
Bartłomiej Dach
a83f96b026
Add filtering support to mod column
2022-02-27 22:51:29 +01:00
Bartłomiej Dach
a80b4334ff
Tweak layout of column display for better spacing
2022-02-27 22:51:28 +01:00
Bartłomiej Dach
53e8072632
Port multiselection from previous design
2022-02-27 22:51:28 +01:00
Bartłomiej Dach
f40bd39487
Add toggle all checkbox to column display
2022-02-27 22:51:28 +01:00
Bartłomiej Dach
2e04a83554
Implement column display for new mod design
2022-02-27 22:51:27 +01:00
Bartłomiej Dach
7de5dad4f0
Add test coverage for divisor behaviour
2022-02-27 19:23:02 +01:00
Bartłomiej Dach
423838a649
Add flow for specifying entirely custom snaps
2022-02-27 17:55:20 +01:00
Bartłomiej Dach
d0c01afc2e
Add flow for changing set of valid divisors between presets
2022-02-27 15:37:51 +01:00
Bartłomiej Dach
36137e0619
Add simple carousel divisor type selector
2022-02-27 15:37:51 +01:00
Dean Herbert
67082b8c5d
Remove verbose logging from SpectatorClient
for now
2022-02-25 22:25:36 +09:00
Dan Balasescu
e947c97e10
Merge branch 'master' into spectator-reliability
2022-02-25 20:20:30 +09:00
Dean Herbert
926abf7a0c
Merge pull request #16985 from smoogipoo/multi-spectator-chat
...
Add chat display to multiplayer spectator
2022-02-25 20:19:07 +09:00
Dan Balasescu
8eef1774d5
Use Logger.Log instead of console
2022-02-25 20:18:22 +09:00
Dan Balasescu
a86bc344da
Merge pull request #16977 from peppy/pause-at-results
...
Allow pausing audio via hotkey at multiplayer lobby and results screen
2022-02-25 19:13:06 +09:00
Dan Balasescu
3a03833912
Merge pull request #16890 from peppy/beatmap-decoder-ruleset-store
...
Fix `LegacyBeatmapDecoder` not populating correct rulesets
2022-02-25 19:03:43 +09:00
Dan Balasescu
387ae59bc4
Fix nullref in tests
2022-02-25 16:12:25 +09:00
Dan Balasescu
48ed9c6144
Enable high chat polling rate
2022-02-25 16:03:56 +09:00
Dan Balasescu
f9d9ad388b
Add chat display to multiplayer spectator screen
2022-02-25 16:03:28 +09:00
Dean Herbert
a9e7e8fb18
Merge pull request #16924 from Susko3/android-allow-exiting
...
Allow exiting/minimizing the game on Android when on the initial screen
2022-02-25 11:01:35 +09:00
Susko3
33a87976a8
Rewrite to read better
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2022-02-24 21:11:49 +01:00
Bartłomiej Dach
769dc9b00b
Merge branch 'master' into mod-overlay/panel
2022-02-24 21:02:28 +01:00
Bartłomiej Dach
c189cc5d00
Remove unused using directive
2022-02-24 21:01:37 +01:00
Dan Balasescu
80fc13fc1f
Merge pull request #16976 from peppy/dont-expose-mark-as-read-errors-to-user
...
Don't expose "mark as read" errors to the user via notifications
2022-02-24 23:20:34 +09:00
Dan Balasescu
16a3bbbcb4
Merge pull request #16944 from peppy/rooms-request-faster
...
Update playlists/multiplayer to use new compact response
2022-02-24 23:20:07 +09:00
Dean Herbert
35302aa297
Merge pull request #16980 from smoogipoo/fix-union-workaround-resolver
...
Fix SignalR union workaround resolver failing on multiple union'd types
2022-02-24 22:24:48 +09:00
Dan Balasescu
c5b1e5cbf8
Fix union resolver failing on multiple derived types
2022-02-24 20:27:22 +09:00
Dean Herbert
d69446ff6e
Merge pull request #16979 from smoogipoo/fix-playlists-partial-mod
...
Fix playlists not allowing entry with partial mods
2022-02-24 19:37:10 +09:00
Susko3
6f29cbccd1
Remove unused using
2022-02-24 10:36:10 +01:00
Susko3
255b3b067b
Remove track fade
2022-02-24 10:13:27 +01:00
Dan Balasescu
7193bc8554
Fix playlists comparing mod equality via APIMod
2022-02-24 17:04:16 +09:00
Dan Balasescu
2acaffd5e7
Fix APIMod storing bindables instead of value
2022-02-24 17:01:12 +09:00
Dean Herbert
bb1aa032bd
Combine SelectedItem
and CurrentPlaylistItem
into same storage
2022-02-24 16:21:20 +09:00
Dean Herbert
c6d78b9325
Fix several oversights in data linking causing drawable rooms not updating as expected
2022-02-24 16:12:15 +09:00
Dean Herbert
b4a54b38e7
Remove redundant parameter specification
2022-02-24 16:02:16 +09:00
Dean Herbert
401cf2a955
Allow pausing game-wide audio via hotkey as long as LocalUserPlaying
is not set
...
`Player` seems to handle this correctly locally already, which is to say
if the user attempts to toggle the pause state incorrectly, it will
still recover.
The logic stoppic this operation was only in the key binding handler,
which meant it was already possible from the now playing overlay this
whole time, so I *think* this should be quite safe.
2022-02-24 16:00:14 +09:00
Dean Herbert
3f6bdc5585
Don't expose "mark as read" errors to the user via notifications
...
This can happen if the user leaves the channel before the request is
fired. You can't mark a channel as read when you're not in the channel.
Addresses https://github.com/ppy/osu/discussions/16973 .
2022-02-24 15:40:07 +09:00
Dean Herbert
435bdd0b4a
Combine and simplify state management logic
...
This makes a few changes to bring things into a better shape during
mouse interactions with the mod panels:
- Dragging away from the panel now works in line with other buttons (ie.
`OsuButton`)
- Hovering now uses a lightened version of the current state, rather
than always using the active colour. I think this feels better.
- Mouse down now uses a transform point of 0.5. This is to give the
button a feeling of one of those latching light switches which resists
until reaching a point of overcoming the spring and switching state. I
think 0.4 (non-active) and 0.6 (from active) may work better, but left
at 0.5 for simplicity of implementation and I think it's good enough?
- Border always uses the gradiented version. I did this for simplicity
of implementation, but also think it looks better.
- Adjusted transform durations to feel better to me.
2022-02-24 15:25:30 +09:00
Dean Herbert
6e8daa06fa
Merge branch 'master' into mod-overlay/panel
2022-02-24 14:34:59 +09:00
Dean Herbert
2a2b8912c1
Merge branch 'master' into android-allow-exiting
2022-02-24 13:22:52 +09:00
Dean Herbert
8f951f8e8a
Merge pull request #16969 from peppy/update-framework
...
Update framework
2022-02-24 11:32:34 +09:00
Bartłomiej Dach
713f89a59c
Implement incompatibility-displaying variant of mod panel
2022-02-23 23:19:06 +01:00
Bartłomiej Dach
bbe2dfa458
Move out incompatibility displaying tooltip to own class
2022-02-23 23:18:15 +01:00
Bartłomiej Dach
8a0aba6c59
Implement mod panel for new mod select screen
2022-02-23 23:18:14 +01:00
Bartłomiej Dach
29d77a29aa
Merge branch 'master' into startup-protocol-handling
2022-02-23 21:10:27 +01:00
Dean Herbert
3f2ef030e4
Group SpectatorClient
private fields together
2022-02-24 02:31:55 +09:00
Dean Herbert
5ffdd57895
Rename weirdly named parameter
2022-02-24 02:28:13 +09:00
Dean Herbert
694c6ad872
Fix frames potentially getting lost due to non-matching Schedule
usage
2022-02-24 02:28:13 +09:00
Dean Herbert
260cf793fe
Add test coverage of more advanced frame delivery scenarios to TestSceneSpectatorPlayback
2022-02-24 02:28:13 +09:00
Dean Herbert
47b84295a6
Fix bundle send logic not correctly waiting for task completion (due to nested schedule)
2022-02-24 02:23:48 +09:00
Dean Herbert
c94e7e2abe
Add ability to simulate network failures to TestSpectatorClient
2022-02-24 02:23:48 +09:00
Dean Herbert
14c8ce50a0
Prefix all test send methods in TestSpectatorClient
with Send
2022-02-24 02:23:48 +09:00
Dean Herbert
cff6f85472
Add note about reconnection being insufficient currently
2022-02-24 02:23:48 +09:00
Dean Herbert
5ff4d3f8e5
Add support to SpectatorClient
to resend failed frame bundles
2022-02-24 02:21:29 +09:00
Susko3
5dd0d48df9
Move the key handling logic to MainMenu and simplify it
...
Also makes use of the host.SuspendToBackground() return value.
2022-02-23 14:06:22 +01:00
Dean Herbert
53bbd00675
Also make APIUser
opt-in and remove the remaining serialization exclusion rule
2022-02-23 17:12:38 +09:00
Dean Herbert
43c83d2de1
Add note about why RoomID
is nulled in DeepClone
2022-02-23 17:10:11 +09:00
Dean Herbert
f14a9af801
Make Room
opt-in rather than opt-out for json serialization
2022-02-23 17:10:10 +09:00
Dean Herbert
28c9c5ab6a
Remove unnecessary ShouldSerialize
rules in Room
2022-02-23 17:10:10 +09:00
Dean Herbert
5d73691de4
Use existing HandleLink
flow rather than reimplmenting
2022-02-23 17:02:39 +09:00
Dean Herbert
87da650dfb
Update framework
2022-02-23 14:06:56 +09:00
Dean Herbert
5e7dd31f6d
Merge branch 'master' into mod-overlay/switches
2022-02-23 13:49:23 +09:00
Dan Balasescu
71a012bea6
Don't update count twice immediately
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-02-23 13:42:47 +09:00
Dan Balasescu
2bea485af8
Fix currently playing text not showing in lounge
2022-02-23 13:37:47 +09:00
Susko3
7bdcb5952e
Fix handling badly-formatted osu:// urls
2022-02-23 00:36:56 +01:00
Bartłomiej Dach
d8fa443ea0
Extract default mod switch measurements to constants
...
For use later when specific sizes/scales of the mod switches are
desired.
2022-02-22 23:22:11 +01:00
Bartłomiej Dach
1a358698fb
Merge branch 'master' into startup-protocol-handling
2022-02-22 22:42:16 +01:00
Bartłomiej Dach
d1d6847d32
Add comment about split usage in osu:// protocol link handling
2022-02-22 22:24:37 +01:00
Dean Herbert
6de4e05e49
Fix current selection not being correctly maintained when BeatmapPicker
updates its display
2022-02-22 17:17:08 +09:00
Dean Herbert
ed008267d7
Fix one more case of escaping not being present
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-02-22 16:45:18 +09:00
Dean Herbert
ca0a041153
Fix missing escaping causing test failures
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-02-22 16:45:04 +09:00
Dean Herbert
61b3280de1
Add missing property copies in Room.CopyFrom
implementation
2022-02-22 15:47:00 +09:00
Dean Herbert
71ae425fb2
Merge branch 'master' into rooms-request-faster
2022-02-22 15:45:05 +09:00
Dean Herbert
057fd6c352
Add mention of StarRatingRangeDisplay
fallback scenario being wrong for multiplayer
2022-02-22 15:37:42 +09:00
Dean Herbert
f12044b03e
Add mention of PlaylistItem.Beatmap
being a placeholder in many cases
2022-02-22 15:31:08 +09:00
Dean Herbert
cde3d9c08b
Change precedence order to favour playlist as a source for beatmap count
2022-02-22 15:15:57 +09:00
Dean Herbert
e744840d07
Ensure old results are cleared from beatmap overlay on logout
2022-02-22 14:56:04 +09:00
Dean Herbert
d6032a2335
Fix beatmap overlay not re-fetching results after login
2022-02-22 14:55:52 +09:00
Dan Balasescu
a676acd80d
Merge pull request #16945 from peppy/three-column-playlist
...
Update playlist room display to a three column layout
2022-02-22 12:21:56 +09:00
Bartłomiej Dach
cfc41a0a36
Implement small mod switch
2022-02-22 00:26:35 +01:00
Bartłomiej Dach
5186693dad
Implement tiny mod switch
2022-02-22 00:26:35 +01:00
Bartłomiej Dach
cd3641137b
Add OsuColour
method mapping colours from basic theme to mod types
2022-02-22 00:02:54 +01:00
Bartłomiej Dach
d71e511413
Merge branch 'master' into spotlights-on-top
2022-02-21 23:42:02 +01:00
Bartłomiej Dach
959f0330e0
Merge branch 'master' into three-column-playlist
2022-02-21 23:40:21 +01:00
Bartłomiej Dach
e3ae52360e
Merge branch 'master' into leaderboard-score-timeref
2022-02-21 20:50:00 +01:00
Susko3
3eee505aa2
Update "exit" flow when pressing back on Android
2022-02-21 20:24:17 +01:00
Susko3
8d70b85e41
Revert changes
2022-02-21 20:20:24 +01:00
Dean Herbert
897f0ecd5f
Merge pull request #16938 from smoogipoo/classic-score-hitobject-factor
...
Scale classic score by hitobject count instead of max combo
2022-02-22 00:40:56 +09:00
Dean Herbert
113153e6a3
Fix remaining filter tests
2022-02-22 00:25:00 +09:00
Dean Herbert
2aa0364092
Fix null reference in tests during attempted ruleset filtering
2022-02-22 00:14:33 +09:00
Dean Herbert
98c008b95f
Fix test failures due to order change
2022-02-21 19:48:39 +09:00
Dean Herbert
655b23f408
Update playlist room display to a three column layout
...
Similar to the changes made to multiplayer.
2022-02-21 19:46:33 +09:00
Dean Herbert
c7e9cf904b
Fix incorrect null check on now-bindable DifficultyRange
2022-02-21 19:38:26 +09:00
Dean Herbert
ffa5291b74
Add fallback handling for item count to support different request types
2022-02-21 19:37:36 +09:00
Dean Herbert
b5348e0407
Update ruleset filtering to use newly provided array return
2022-02-21 19:05:32 +09:00
Dean Herbert
b43008b9f6
Add cover and count handling from newer response version
2022-02-21 19:05:22 +09:00
Dean Herbert
39d64e779c
Handle API returned difficulty range for rooms
2022-02-21 19:05:19 +09:00
Dean Herbert
7f4cc221d2
Add API versioning
2022-02-21 19:02:03 +09:00
Dan Balasescu
3e0e77394b
Merge branch 'master' into beatmap-decoder-ruleset-store
2022-02-21 18:26:22 +09:00
Dan Balasescu
0cfb85f3bb
Merge pull request #16939 from peppy/fix-intro-import-failure-ruleset-test-projects
...
Add safeties to skip attempted import of the intro beatmap when osu! ruleset not present
2022-02-21 18:24:56 +09:00
Dean Herbert
02a8500500
Ensure spotlights always show at the top of the lounge listing
...
As proposed at https://github.com/ppy/osu/discussions/16936 . Spotlights
are intended to have focus, so let's make sure they are the first thing
the user sees for the time being.
2022-02-21 18:01:46 +09:00
Dean Herbert
1737128334
Allow room category to be copied even if Spotlight
...
I remember that this conditional copy was added to support making copies
of spotlight rooms without carrying across the `Spotlight` type, but in
testing this is already handled web side to the point that it's not
required.
The rationale for allowing the copy is that this method is used for
tests, where it was not being copied correctly from the input as
expected (used at
bdc3b76df0/osu.Game/Tests/Visual/OnlinePlay/TestRoomManager.cs (L38)
).
2022-02-21 17:47:56 +09:00
Dan Balasescu
c466d6df94
Ensure to not multiply by 0
2022-02-21 17:19:35 +09:00
Dean Herbert
2f6e65a9a2
Gracefully handle undefined DateTimeOffset
values
...
Only seems to happen in tests, but best to safeguard against this
regardless.
2022-02-21 16:35:40 +09:00
Dean Herbert
656c58567d
Add safeties to skip attempted import of the intro beatmap when osu! ruleset not present
...
In general running this import will not cause any critical failures, but
the import itself *will* fail – and more loudly with the upcoming
changes to `RulesetStore` (https://github.com/ppy/osu/pull/16890 ). Due
to it being a loud failure, it will cause the notification overlay to
display a parsing error, which can interrupt the flow of some tests.
See test failure at
https://github.com/ppy/osu/runs/5268848949?check_suite_focus=true as an
example (video coverage at
https://github.com/ppy/osu/pull/16890#issuecomment-1046542243 ).
2022-02-21 16:21:38 +09:00
Dean Herbert
3d0caa44c8
Remove unused utils class
2022-02-21 13:43:30 +09:00
Dean Herbert
fc1877b6fa
Move to extension method and revert logic to match previous implementation
2022-02-21 13:42:26 +09:00
Dan Balasescu
c3b365cf6b
Scale classic score by hitobject count
2022-02-21 13:31:03 +09:00
Dean Herbert
79408f6afc
Add xmldoc and clean up ScoreboardTimeUtils
extension methods a touch
2022-02-21 13:30:58 +09:00
Dean Herbert
2ded7d281b
Remove unused using statement
2022-02-21 13:17:19 +09:00
Dean Herbert
abe1a3990a
Merge branch 'master' into leaderboard-score-timeref
2022-02-21 12:11:10 +09:00
Bartłomiej Dach
36a00c1ee2
Remove static OverlayColourProvider
s
2022-02-20 21:09:08 +01:00
Bartłomiej Dach
ce0db9d4db
Remove all references to static OverlayColourProvider
s
2022-02-20 21:09:08 +01:00
Bartłomiej Dach
79ba37bbab
Add Colour0
to OverlayColourProvider
2022-02-20 21:09:08 +01:00
Bartłomiej Dach
2592f0900d
Add comments about OverlayColourProvider
vs OsuColour
distinction
2022-02-20 21:08:58 +01:00
Bartłomiej Dach
e20ae5b871
Add all colour constants for "basic" colour theme to OsuColour
2022-02-20 21:00:49 +01:00
dekrain
262751a98a
Revert highlighting recent scores
2022-02-19 21:23:35 +01:00
dekrain
31b7ce053d
Fix CI issues
2022-02-19 21:18:26 +01:00
dekrain
0d83c5a39a
Add colour highlighting recent scores
2022-02-19 20:47:30 +01:00
dekrain
15ed9ec4fa
Merge scoreboard and leaderboard implementations together
2022-02-19 20:47:02 +01:00
Susko3
7ef710de22
Allow exiting/minimizing on Android when on the initial cookie screen
2022-02-19 18:15:49 +01:00
Dean Herbert
c869be87d1
Update FlatFileWorkingBeatmap
to not require a ruleset store
2022-02-19 20:53:04 +09:00
Dan Balasescu
65ffcefdf9
Merge pull request #16910 from peppy/fix-storyboard-background-replacement
...
Fix storyboard background replacement logic not working for beatmaps with multiple backgrounds
2022-02-18 19:08:52 +09:00
Dean Herbert
a029e418cf
Use internal
instead of protected internal
2022-02-18 17:06:04 +09:00
Dean Herbert
3abbf07fb3
Revert local registrations in test scenes
2022-02-18 16:52:34 +09:00
Dean Herbert
cf1dd1ebd3
Disallow registering a null RulesetStore
2022-02-18 16:52:34 +09:00
Dean Herbert
420e2c538f
Automatically use an AssemblyRulesetStore
if no custom store is registered
2022-02-18 16:52:34 +09:00
Dean Herbert
631c23ea3a
Merge branch 'master' into beatmap-decoder-ruleset-store
2022-02-18 16:52:33 +09:00
Dean Herbert
e49da2948d
Fix storyboard background replacement logic not working for beatmaps with multiple backgrounds
...
In the case where the background image of individual difficulties is
different, querying the beatmap *set*'s metadata as we were will cause
issues.
I haven't added test coverage for this but can if required. Can be
manually tested using https://osu.ppy.sh/beatmapsets/1595773#osu/3377474
(specifically the highest difficulty).
Closes https://github.com/ppy/osu/discussions/16873 .
2022-02-18 16:24:19 +09:00
Dean Herbert
29c5683ba3
Add handling of beatmap links on startup
2022-02-18 16:14:37 +09:00
Dean Herbert
98aaf83177
Add a centralised constant for the osu URL schema protocol
2022-02-18 15:57:37 +09:00
dekrain
1abbb9ab39
Align the bar to be on baseline of score components
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-02-17 21:26:59 +01:00
OctopuSSX
08317b4265
Update ScreenshotManager.cs
2022-02-17 20:43:36 +03:00
Dean Herbert
d7ef0e4174
Merge pull request #16895 from bdach/better-new-difficulty-naming
...
Name newly created difficulties in a better way
2022-02-17 21:54:09 +09:00
Dean Herbert
9d0023c750
Fix incorrect mappings
2022-02-17 21:12:51 +09:00
Dean Herbert
3d5ed24e20
Fix beatmap overlay leaderboards and links not working
...
Completely aware that this isn't how it should be done, but would like
to get this out in a hotfix release today. Maybe changes opinions on
https://github.com/ppy/osu/pull/16890 structure?
2022-02-17 21:05:00 +09:00
Dean Herbert
bbc4ea1203
Merge branch 'master' into better-new-difficulty-naming
2022-02-17 19:21:33 +09:00
dekrain
f4d1e6f600
Add tests for timerefs
2022-02-17 10:38:29 +01:00
dekrain
7bd731ae08
Move the date next to the flag icon
2022-02-17 10:12:35 +01:00
Dean Herbert
2a1edcdf73
Merge branch 'master' into remove-playlistitem-beatmap
2022-02-17 17:19:26 +09:00
Dean Herbert
dc74d17478
Update framework
2022-02-17 16:45:20 +09:00
Dean Herbert
7307e68e9c
Revert "Merge pull request #16889 from smoogipoo/remove-mod-multiplier"
...
This reverts commit 252b945d3b
, reversing
changes made to a1b39a96cf
.
2022-02-17 13:26:12 +09:00
Stedoss
aac1c53b06
Remove creator name from playlist item panel beatmap text
2022-02-17 03:04:16 +00:00
Bartłomiej Dach
8a08bb7aaf
Use best-name-finding helper in new difficulty creation flow
2022-02-17 00:28:18 +01:00
Bartłomiej Dach
e09570c31b
Implement best-name-finding helper method
2022-02-17 00:28:17 +01:00
Bartłomiej Dach
cb9ffc655a
Add tests showing expected behaviour of naming helper
2022-02-17 00:28:13 +01:00
dekrain
333a305af3
Use floor instead of ceiling
2022-02-17 00:09:17 +01:00
dekrain
c124034cf3
Add text displaying recent score time
2022-02-16 23:18:14 +01:00
Dean Herbert
23933fc881
Update xmldoc to mention that multipliers are not applied anywhere
2022-02-16 17:32:22 +09:00
Dean Herbert
5ffd3ff82a
Add xmldoc and allow constructing an AssemblyRulesetStore
with a directory path
2022-02-16 17:25:16 +09:00
Dean Herbert
5477af08c5
Register an AssemblyRulesetStore
in tests which don't use OsuGameBase
2022-02-16 17:21:57 +09:00
Dean Herbert
d0efecfc9c
Add RulesetStore
for use where realm is not present (ie. other projects)
2022-02-16 17:13:54 +09:00
Dean Herbert
13086541f0
Add static RulesetStore
to LegacyBeatmapDecoder
2022-02-16 17:13:54 +09:00
Dean Herbert
7a69de0060
Split out realm portion of RulesetStore
2022-02-16 17:13:31 +09:00
Dean Herbert
3d3f0a89c2
Remove legacy RulesetID
property from BeatmapInfo
2022-02-16 16:46:53 +09:00
Dan Balasescu
4c1413e0c7
No longer require Mod implementation
2022-02-16 16:36:02 +09:00
Dan Balasescu
5dd9771c5f
Remove mod multipliers from being applied to scores
2022-02-16 16:27:27 +09:00
Dan Balasescu
55d9f0b44b
Store beatmap to a field instead
2022-02-16 16:03:08 +09:00
Dan Balasescu
edd31bf3aa
Revert styling change
2022-02-16 15:51:18 +09:00
Dean Herbert
7e24b36f26
Merge branch 'master' into remove-playlistitem-beatmap
2022-02-16 14:24:57 +09:00
Dan Balasescu
84e82ef5e4
Add XMLDocs to difficulty attribute properties
2022-02-16 14:09:19 +09:00
Dan Balasescu
5db63a8751
Expose read-only list from request
2022-02-16 11:30:03 +09:00
Dean Herbert
6a08fd57ef
Rename "client" fields in tests to specify whether spectator or multiplayer
2022-02-16 09:52:18 +09:00
Dean Herbert
187870b794
Merge branch 'master' into fix-multi-cache-dependencies
2022-02-16 09:44:37 +09:00
Dean Herbert
954ae60b81
Merge branch 'master' into copy-existing-difficulty
2022-02-16 08:55:12 +09:00
Dan Balasescu
ea5bb46fb8
Merge branch 'master' into net6
2022-02-16 00:40:04 +09:00
Dan Balasescu
b1dbd4abfe
Fix incorrect playlist item <-> availability tracker logic
...
Results in revert to some prior logic for the tracker implementation.
2022-02-15 23:50:12 +09:00
Dan Balasescu
48573d2401
Move test request handling earlier in setup
2022-02-15 23:50:10 +09:00
Dan Balasescu
bdc3b76df0
Remove beatmap bindable from PlaylistItem
2022-02-15 23:50:08 +09:00
Dan Balasescu
94a974e1c9
Make OnlinePlayBeatmapAvailabilityTracker look up the online beatmap
2022-02-15 23:41:50 +09:00
Dan Balasescu
afcb7a4630
Make DrawableRoomPlaylistItem look up the online beatmap
2022-02-15 23:41:50 +09:00
Dan Balasescu
73ce1b324e
Make DrawableRoom look up the online beatmap
2022-02-15 23:41:50 +09:00
Dan Balasescu
ccd265ebe7
Handle beatmap lookup requests in TestRoomRequestsHandler
2022-02-15 23:41:50 +09:00
Dan Balasescu
a5183cec77
Add helper to construct APIBeatmap
2022-02-15 23:41:08 +09:00
Dan Balasescu
2675bb87ff
Add BeatmapLookupCache as another dependency
2022-02-15 21:05:25 +09:00
Dan Balasescu
c48a0dc993
Move UserLookupCache to online play test dependencies
2022-02-15 20:56:46 +09:00
Dan Balasescu
b2276baf71
Seal OnlinePlayTestScene.CreateChildDependencies()
2022-02-15 20:55:57 +09:00
Dan Balasescu
5b765581d8
Fix free mod selection not showing allowed mods
2022-02-15 16:28:15 +09:00
Dan Balasescu
efeba30b9f
Remove ruleset and mod bindables from PlaylistItem
2022-02-15 16:28:15 +09:00
Dean Herbert
334fe1f120
Add AsSplitQuery
specification to avoid optimisation recommendation log messages
2022-02-15 15:23:17 +09:00
Dean Herbert
8ec28dc8bc
Update OsuDbContext
in line with EF changes
2022-02-15 15:19:50 +09:00
Dean Herbert
28b45fa899
Add assertions against null reference for connection usages
2022-02-15 15:19:50 +09:00
Dean Herbert
60153bb69d
Update nuget packages to highest usable versions
...
EF packages are intentionally pinned to 5.0.14 as higher versions no
longer support `netstandard2.1`, which we require for xamarin projects.
2022-02-15 15:19:23 +09:00
Salman Ahmed
f5d0eb41cb
Update further ChangeFocus
usages
2022-02-15 02:42:39 +03:00
Bartłomiej Dach
e45a2ae0fc
Restructure difficulty copy flow to adapt to latest changes
2022-02-14 22:02:37 +01:00
Bartłomiej Dach
6221447164
Append copy suffix on creating copy of difficulty
2022-02-14 20:19:12 +01:00
Bartłomiej Dach
40cfee3421
Explicitly reset online ID and beatmap status on copy
2022-02-14 19:54:40 +01:00
Bartłomiej Dach
7e75fa7117
Revert "Change BeatmapInfo
copy logic to be opt-in rather than opt-out"
...
This reverts commit 5dabc9282c
.
2022-02-14 19:52:08 +01:00
Bartłomiej Dach
4bd58cfde1
Update one more custom transform with BorderColour
type change
2022-02-14 18:52:19 +01:00
Dean Herbert
8da0800d7f
Update ChangeFocus
usage in line with framework changes
2022-02-15 02:47:35 +09:00
Dean Herbert
b581ca14cc
Update usages in line with BorderColour
type change
2022-02-15 02:32:38 +09:00
Dean Herbert
e304c031dc
Update framework
2022-02-14 22:06:37 +09:00
Dean Herbert
5b30921cbf
Merge branch 'master' into net6
2022-02-14 22:06:35 +09:00
Dean Herbert
e324287f79
Reduce expansion delay on ExpandingButtonContainer
...
Felt too long.
2022-02-14 18:08:17 +09:00
Dean Herbert
3aa5908de8
Remove unused using statement
2022-02-14 18:01:56 +09:00
Dean Herbert
b9d9fc56af
Move files to UI namespace
2022-02-14 17:51:39 +09:00
Dean Herbert
80ba06b0e3
Merge branch 'master' into expandable-controls
2022-02-14 16:57:45 +09:00
Bartłomiej Dach
5dabc9282c
Change BeatmapInfo
copy logic to be opt-in rather than opt-out
2022-02-13 19:04:11 +01:00
Bartłomiej Dach
ecd6a68c6f
Clear hash when creating copy of existing difficulty
2022-02-13 14:01:23 +01:00
Bartłomiej Dach
6fd663a718
Apply some renames to convey difference between creation options better
2022-02-13 14:01:23 +01:00
Bartłomiej Dach
a144d6f8d6
Fix beatmap skin properties not copying
2022-02-13 14:01:22 +01:00
Bartłomiej Dach
1bf5375e74
Fix BeatmapInfo
-associated member not copying
2022-02-13 14:01:21 +01:00
Bartłomiej Dach
a2c2b2bbb3
Add flow for copying existing difficulty content
2022-02-13 14:01:20 +01:00
Dan Balasescu
8b05b35b8c
Merge pull request #16854 from peppy/combine-score-submission-request-implementation
...
Standardise and combine base implementation of score submission requests
2022-02-11 17:31:55 +09:00
Dean Herbert
28bbf34b14
Remove unnecessary this.
prefix
2022-02-11 16:21:49 +09:00
Dan Balasescu
43f1044987
Merge pull request #16850 from frenzibyte/readonly-pinned-scores
...
Add read-only pinned scores view in user profile overlay
2022-02-11 16:15:46 +09:00
Dean Herbert
908c31c687
Update stream read operations to use new helper methods
2022-02-11 16:02:25 +09:00
Dean Herbert
beb3731c0b
Standardise and combine base implementation of score submission requests
...
These share too much yet have very different constructor signatures and
property exposure. Just a clean-up pass as I begin to look at replay
submission.
2022-02-11 15:53:47 +09:00
Salman Ahmed
ccd6648961
Update pinned score container header to use localised title
2022-02-11 09:22:09 +03:00
Salman Ahmed
b06caf2bf7
Update resources
2022-02-11 09:12:02 +03:00
Salman Ahmed
92e22c57a7
Introduce private APIRuleset
for online ID equality comparison
2022-02-11 08:27:01 +03:00
Salman Ahmed
6f0e32826c
Standardise ordering/grouping of IRulesetInfo
/RulesetInfo
s
2022-02-11 04:27:11 +03:00
Salman Ahmed
26839f6ad8
Consider OnlineID
s during ruleset equality if available
...
Required for `APIBeatmap`s, which provide `Ruleset` instances with `OnlineID` available only.
Also consistent with the comparer implementation.
2022-02-11 04:26:58 +03:00
Salman Ahmed
1b729e891d
Update pointless CompareTo
implementation once again
2022-02-11 04:17:30 +03:00
Salman Ahmed
9574bc1382
Allow IRulesetInfo
s of same type to be comparable
...
At first I was planning on making `CompareTo` implemented at
`IRulesetInfo` itself and shared across classes, but turns out it only
implements it explicitly and not allow direct `IRulesetInfo.Equals`
calls.
It messed with my head enough that I decided to just let each class have
its own implementation and only allow same type.
2022-02-11 04:03:23 +03:00
Salman Ahmed
4f7003928a
Add score container for pinned scores in ranks section
2022-02-10 21:32:18 +03:00
Salman Ahmed
9cd88ec2b8
Update API models with score pinning changes
2022-02-10 21:23:38 +03:00
Dean Herbert
2939bc4644
Update resources
2022-02-11 01:49:52 +09:00
Dean Herbert
eda213e4de
Merge pull request #16827 from smoogipoo/spectator-state-rework
...
Add user state to SpectatorState, allowing multiplayer to continue to results
2022-02-11 01:48:47 +09:00
Dean Herbert
44f2d8a448
Allow game folder migration to fail gracefully when cleanup cannot completely succeed
2022-02-10 19:30:26 +09:00
Dean Herbert
88bb9d4237
Fix migration errors not outputting the call stack to logs
2022-02-10 15:50:03 +09:00
Dan Balasescu
ebd105422f
Remove unused using
2022-02-10 14:22:08 +09:00
Dan Balasescu
f7fb7825cc
Simplify disposal
2022-02-10 14:21:51 +09:00
Dan Balasescu
a3896a8ebd
Remove allowance of null dependency
2022-02-10 14:21:50 +09:00
Dan Balasescu
18251c9285
Clean up SpectatorScreen based on suggestions
2022-02-09 12:20:07 +09:00
Dan Balasescu
ffc4c64f7e
Unify namings across the board
2022-02-09 12:10:07 +09:00
Dean Herbert
c242a63b11
Fix playlist overlay null reference when attempting an empty selection
...
As reported at https://github.com/ppy/osu/discussions/16829 .
2022-02-09 10:16:45 +09:00
Dan Balasescu
886d1d2df6
Refactorings
2022-02-08 21:29:43 +09:00
Dean Herbert
79d1d54e33
Rename parameter to match other usages
2022-02-08 20:35:38 +09:00
Dan Balasescu
c1766d8a41
Add paused state
2022-02-08 20:29:53 +09:00
Dan Balasescu
4c76027178
Rename completed state to passed
2022-02-08 20:29:49 +09:00
Dan Balasescu
45b3f472ab
Merge branch 'master' into spectator-state-rework
2022-02-08 19:51:50 +09:00
Dan Balasescu
b1a73996ba
Fix incorrect check for beatmap availability
2022-02-08 19:36:42 +09:00
Henry Lin
10bdb7240f
Pre-check for divisor zero and add explanation
2022-02-08 14:36:29 +08:00
Dean Herbert
8cca12da64
Merge branch 'master' into display-performance-attributes
2022-02-08 14:45:35 +09:00
Dan Balasescu
c2416c490e
Fix crash on disconnection during multi-spectate
2022-02-08 11:29:39 +09:00
Henry Lin
56c90a21ce
Add a todo
2022-02-06 11:22:12 +08:00
Henry Lin
f78c853bc7
Calculate max combo locally in PerformanceBreakdownCalculator
2022-02-06 10:59:53 +08:00
Henry Lin
0b1fef38af
Use the playable beatmap provided in CreateStatisticsForScore
2022-02-05 21:36:34 +08:00
Henry Lin
c35ef917a1
Remove tooltip from performance statistic
2022-02-05 21:18:23 +08:00
Henry Lin
2e1a9f1379
Add performance breakdown as statistic item in extended statistics panel
2022-02-05 21:13:16 +08:00
Henry Lin
f29301cd1e
Merge branch 'master' into display-performance-attributes
2022-02-05 16:59:46 +08:00
Dean Herbert
eb25730b61
Revert "Merge pull request #16716 from peppy/carousel-less-invalidations"
...
This reverts commit 8d13e0514b
, reversing
changes made to 95582a9023
.
2022-02-05 16:12:58 +09:00
Dean Herbert
fd81842ade
Merge pull request #16778 from smoogipoo/simplify-test-spectator-client
...
Refactor TestSpectatorClient implementation
2022-02-05 00:26:44 +09:00
Salman Ahmed
5f5db2ae82
Merge branch 'master' into mvp-safe-area-support
2022-02-04 17:01:46 +03:00
Dan Balasescu
3a8ec205b3
Merge branch 'simplify-test-spectator-client' into spectator-state-rework
2022-02-04 22:42:53 +09:00
Dan Balasescu
09728a29ed
Merge branch 'fix-broken-test-scene' into spectator-state-rework
2022-02-04 22:42:10 +09:00
Dan Balasescu
750f90e728
Simplify TestSpectatorClient implementation
2022-02-04 22:38:40 +09:00
Dean Herbert
d62885f30b
Don't schedule call to updateSize
in LoadComplete
to ensure following FinishTransforms
runs as expected
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-02-04 22:31:41 +09:00
Salman Ahmed
5e47ce333c
Change SafeAreaOverrideEdges
to be get-only and protected
2022-02-04 16:10:49 +03:00
Dean Herbert
b5dde6f1ad
Update resources
2022-02-04 21:38:52 +09:00