Dean Herbert
86c2b7e449
Apply nullability to DefaultSongProgress
and clean up more stuff
2022-07-28 18:37:17 +09:00
Dean Herbert
ea027eda46
Move initial show to base implementation and add transition for legacy version
2022-07-28 18:29:49 +09:00
Dean Herbert
d5e5761892
Fix DefaultSongProgress
graph not resetting if time is in intro
2022-07-28 18:25:24 +09:00
Dean Herbert
7108553883
Tidy up various things everywhere
2022-07-28 18:25:14 +09:00
Nitrous
0d36907cad
apply code quality fixes
2022-07-28 15:30:45 +08:00
Nitrous
bca3994d91
set FirstHitTime
and LastHitTime
once
2022-07-28 15:25:12 +08:00
Nitrous
db62d4be3a
apply suggestions
...
- refactor `SongProgress`
- make`UpdateProgress` more readable
- enable NRT on new classes
- refactor `TestSceneSongProgress` to use `GameplayClockContainer`
2022-07-28 15:15:41 +08:00
Nitrous
9088caa377
move LegacyComboCounter
to osu.Game.Skinning
2022-07-28 08:36:26 +08:00
Nitrous
45c11f2b7b
account for gameplay start time
2022-07-28 08:01:38 +08:00
Nitrous
37e642b0bd
make SongProgress
abstract
...
- move unrelated logic to `DefaultSongProgress`
- make `LegacySongProgress` inherit `SongProgress`
2022-07-27 15:19:21 +08:00
Bartłomiej Dach
6f37487528
Replace calls to defective Humanizer methods with correct version
2022-07-18 22:34:58 +02:00
Dean Herbert
31a447fda0
Update parameter discards
2022-06-24 21:26:19 +09:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Dean Herbert
bd9ea9bd6f
Revert most unnecessary changes
...
Turns out `AlwaysPresent` at top level is actually enough.
This reverts commit 86163d2225
.
2022-06-13 23:58:14 +09:00
Dean Herbert
86163d2225
Fix hit error meters not updating visual state when hidden
...
It is an expectation of users that when the HUD is shown after a period
of being hidden, it will visually reflect the state based on recent
judgements.
To achieve this, I've added `AlwaysPresent` and moved the transform
application to the meter level, rather than at a child level. If this is
seen as a bad direction, `AlwaysPresent` can be applied to the drawable
children and the transforms can be moved back.
Also of note, `ColourHitErrorMeter` is pretty weird. The flow class
could potentially be removed and reduce `AlwaysPresent` usage by one.
Can do that refactor as part of this PR if preferred.
Closes #18624 .
2022-06-13 16:38:57 +09:00
Dean Herbert
17eaf7bb5c
Add failing test coverage showing hit meters don't update when not visible
2022-06-13 16:36:22 +09:00
Dan Balasescu
22d998dc2a
Use new score processor in MultiplayerGameplayLeaderboard
2022-05-30 19:26:26 +09:00
Bartłomiej Dach
1641918c51
Revert "Avoid throwing unobserved exception when PerformancePointsCounter
requests timed attributes"
...
This reverts commit 19b655d75b
.
2022-05-28 15:23:28 +02:00
Bartłomiej Dach
f5026bbbeb
Bind to button's activation delay directly
2022-05-06 10:04:36 +02:00
Bartłomiej Dach
f39fcee41b
Remove commented-out code
2022-05-06 10:04:00 +02:00
Dean Herbert
78959a6e05
Add animation to denote a dangerous player exit
2022-05-06 15:02:22 +09:00
Dean Herbert
1c4aa12585
Rename non-descript Button
nested class
2022-05-06 14:45:53 +09:00
Dean Herbert
a11771c11b
Better encapsulate exposed bindables of HoldToConfirmContainer
2022-05-06 14:45:53 +09:00
Dean Herbert
be960eb092
Move dangerous hold specification to base class
2022-05-06 14:34:31 +09:00
Dean Herbert
2896612c5c
Make exiting multiplayer a dangerous operation, requiring hold
2022-05-03 16:06:04 +09:00
Joseph Madamba
5e5c8e78a6
Use existing web localisation for most hardcoded strings
2022-04-20 16:31:11 -07:00
Dean Herbert
017f3852c8
Replace incorrectly chosen ??=
with ??
2022-04-13 13:32:36 +09:00
Dean Herbert
8b1cee75fa
Use BindableLong
instead of BindableInt
for user score tracking
2022-04-12 14:13:07 +09:00
Dean Herbert
0ba95a4483
Ensure all users are shown on leaderboard (even when API lookup fails)
2022-04-12 11:54:30 +09:00
Dean Herbert
ebee9e6888
Fix MultiplayerGameplayLeaderboard
not immediately updating totals on scoring mode change
2022-04-12 11:27:27 +09:00
Dean Herbert
19b655d75b
Avoid throwing unobserved exception when PerformancePointsCounter
requests timed attributes
2022-04-11 13:30:21 +09:00
Dean Herbert
01829cf2d8
Move SkinnableInfo
error handling to lower level
...
Handling was recently added to handle the usage in
`Skin.GetDrawableCompoent`, but it turns out this is also required for
`DrawableExtensions.ApplySkinnableInfo` which can throw in a similar
fashion.
Found while working on sprite support for the editor, where this becomes
an actual issue (ie. switching to a branch where the new sprite support
is not present can cause unexpected crashes).
2022-04-01 14:30:04 +09:00
Salman Ahmed
9c19ae1df8
Remove no longer necessary ruleset field
2022-03-31 06:40:38 +03:00
Dan Balasescu
6e94a9780b
Remove ScoreInfo allocations in multi leaderboard
2022-03-31 12:23:00 +09:00
Sebastian Krajewski
cb62d3d4b9
Remove skin dependency as component is reinitialized on skin change
2022-03-30 01:09:05 +02:00
Sebastian Krajewski
7582c943a4
Use In/Out instead of {In/Out}Quad
2022-03-30 00:48:59 +02:00
Dean Herbert
8948bcce19
Restructure transforms slightly
2022-03-29 13:18:31 +09:00
Sebastian Krajewski
caf641e1ab
Remove redundant ClearTransforms
2022-03-28 23:50:35 +02:00
Sebastian Krajewski
981ef735cf
Always start small pop out from its initial size
2022-03-28 19:57:59 +02:00
Sebastian Krajewski
e3289bb080
Don't scale big pop out as much
2022-03-28 19:33:00 +02:00
Sebastian Krajewski
265b2111ef
Remove comment
2022-03-28 18:08:51 +02:00
Sebastian Krajewski
001a98e069
Fix LegacyComboCounter not unsubscribing from skin
2022-03-28 18:08:35 +02:00
Sebastian Krajewski
05a978ce8c
Update LegacyComboCounter layout and scaling
2022-03-28 16:36:37 +02:00
Salman Ahmed
ad9b119e3d
Reduce "hold for menu" radius of visibility
2022-03-19 05:04:54 +03:00
Salman Ahmed
486be83177
Calculate position adjustment distance in local parent space
2022-03-19 05:04:13 +03:00
Dean Herbert
ed90dc6d6b
Fix centering of labels using Height
instead of location to better handle rotations
2022-03-18 20:17:04 +09:00
Dean Herbert
bd488d139d
Better centre text labels for hit error meter
2022-03-18 20:11:05 +09:00
Dean Herbert
7c9fe4036c
Add setting to change the style of the early/late markers
2022-03-18 17:50:37 +09:00
Dean Herbert
919583137e
Add line style for centre marker
2022-03-18 17:50:37 +09:00
Dean Herbert
cdeab1b14e
Add setting to change the style of the centre marker
2022-03-18 17:50:37 +09:00
Dean Herbert
331cb2aa80
Add setting to show or hide the moving average arrow
2022-03-18 17:50:37 +09:00
Dean Herbert
3f92bef9df
Add setting for judgement line thickness
2022-03-18 17:50:37 +09:00
Dean Herbert
ac739c9dae
Change PerformancePointsCounter
resolution requirements to be required
...
All other similar UI components have required dependencies, so this is
mainly to bring things in line with expectations. I am using this fact
in the skin editor to only show components which can be used in the
current editor context (by `try-catch`ing their
`Activator.CreateInstance`).
2022-03-17 14:56:35 +09:00
Dan Balasescu
d80830b415
Merge pull request #17226 from peppy/skin-component-settings
...
Allow skin components to have settings
2022-03-16 17:12:11 +09:00
Dean Herbert
1814a325d8
Move GetSettingUnderlyingValue
to a SettingSource
extension method
2022-03-15 14:54:00 +09:00
Dean Herbert
6fb06d69cc
Merge branch 'master' into pp-counter-alloc-reduction
2022-03-15 13:31:57 +09:00
Dean Herbert
deb4aeb4b2
Merge pull request #17242 from smoogipoo/performance-calculator-cleanup
...
Restructure PerformanceCalculator to not require ScoreInfo argument
2022-03-15 13:31:34 +09:00
Dean Herbert
163cd48bf6
Further metrics tweaking
2022-03-14 19:27:53 +09:00
Dean Herbert
e91b3ae5f1
Move constants closer to usages
2022-03-14 19:18:47 +09:00
Dean Herbert
6eed2c35a4
Adjust visual appearance of BarHitErrorMeter
for easier reading
2022-03-14 19:16:38 +09:00
Dan Balasescu
028750936c
Apply review suggestions
2022-03-14 17:10:37 +09:00
Dan Balasescu
3fff7f4b7e
Require ScoreProcessor to receive ruleset
2022-03-14 15:51:10 +09:00
Dan Balasescu
926827207a
Reduce calculator allocations in counter
2022-03-14 14:44:06 +09:00
Dan Balasescu
4a3e3aba65
Restructure PerformanceCalculator to not require ScoreInfo argument
2022-03-14 14:25:28 +09:00
Dean Herbert
c99397f75a
Add the ability to add settings to skinnable elements
2022-03-13 17:03:25 +09:00
Dan Balasescu
f1c40bd9ed
Rework GetScore() method signatures + implementations
...
Rename legacy-facing overload to mention as much
2022-03-08 22:30:44 +09:00
Dan Balasescu
2c382bd1d9
Rename GetImmediateScore() as overload of GetScore()
2022-03-08 21:49:40 +09:00
Dean Herbert
7854a0a913
Use double
instead of float
for UIHoldActivationDelay
configuration value
...
All times use double, so let's also use double here.
2022-03-04 12:22:56 +09:00
Dean Herbert
b2efce2656
Merge branch 'master' into expandable-controls
2022-02-03 19:23:34 +09:00
Bartłomiej Dach
a94702b3ae
Remove unused parameters in LegacyComboCounter
...
No longer used since 9bb8a43bce
.
2022-02-01 21:35:41 +01:00
Bartłomiej Dach
1fa2bf5d69
Remove unused parameter from createColourBars()
...
No longer used since b61aa660c6
.
2022-02-01 21:35:40 +01:00
Dean Herbert
28c8e07e3f
Ensure hold for menu button fades out if the cursor is never moved
...
Closes https://github.com/ppy/osu/discussions/16669 .
2022-01-28 14:48:35 +09:00
Salman Ahmed
326f12f847
Add IExpandable
support for SettingsToolboxGroup
2022-01-23 05:41:16 +03:00
Susko3
19467e58c1
Remove unused params from BDL methods
2022-01-15 01:06:39 +01:00
Dean Herbert
00177a3ae1
Update usages to new naming
2022-01-06 22:54:43 +09:00
Dean Herbert
3ea7588a91
Update continuation usages to use GetCompletedResult
2022-01-06 22:53:07 +09:00
Dean Herbert
73b40e6833
Replace usage of .Result
with .WaitSafelyForResult
2022-01-04 11:51:41 +09:00
Joseph Madamba
7de43e3aba
Fix most open compound words in identifiers being closed
2021-12-27 20:26:28 -08:00
Bartłomiej Dach
5a591713ae
Fix legacy combo counter not fully hiding for rulesets that implement their own
2021-12-26 16:49:20 +01:00
Dan Balasescu
98f044881e
Merge branch 'master' into refactor-diffcalc
2021-12-22 12:31:28 +09:00
StanR
cca02a8016
Create PerformanceAttributes
2021-12-21 13:08:31 +03:00
Dean Herbert
edcbd4de6d
Fix incorrect event unbind logic
2021-12-21 13:05:26 +09:00
Dean Herbert
52db7b36fc
Move Schedule
call to base implementation of error meter for extra safety
2021-12-21 12:55:21 +09:00
Dean Herbert
28d6ff5d9c
Fix potential wrong thread mutation in ColourHitErrorMeter
2021-12-21 12:36:04 +09:00
Dean Herbert
6ec3f41839
Fix LegacyComboCounter
not handling non-default anchor/origin specifications correctly
2021-12-08 15:07:15 +09:00
Dean Herbert
1eed2436e6
Clean up unused resolved properties
2021-12-03 18:49:49 +09:00
Bartłomiej Dach
6100bf66a6
Clean up cancellation handling in WorkingBeatmap
...
After the recent changes introducing cancellation support to
`WorkingBeatmap`, it turned out that if the cancellation support was
used, `GetPlayableBeatmap()` would raise timeout exceptions rather than
the expected `OperationCanceledException`.
To that end, split off a separate overload for the typical usage, that
catches `OperationCanceledException` and converts them to beatmap load
timeout exceptions, and use normal `OperationCanceledException`s in the
overload that requires a cancellation token to work.
2021-11-20 17:23:55 +01:00
Dan Balasescu
6ebe54b183
Merge pull request #15494 from Tollii/beatmap-cancellation-token
...
Add support for cancellation tokens for beatmap difficulty calculation
2021-11-19 10:54:32 +09:00
Dean Herbert
3de8125eac
Update UI cases where repeat should not be handled
2021-11-18 13:13:36 +09:00
Dean Herbert
0715d40ea0
Merge branch 'master' into beatmap-cancellation-token
2021-11-17 11:16:10 +09:00
Dean Herbert
13f3e2eea9
Add back default timeout to GetPlayableBeatmap
2021-11-17 11:06:31 +09:00
Dean Herbert
6cca657a2d
Standardise naming of CancellationToken
parameters
2021-11-16 14:45:51 +09:00
Dean Herbert
53c0682a08
Merge branch 'master' into beatmap-cancellation-token
2021-11-16 14:43:13 +09:00
Dean Herbert
369b4ba789
Update DifficultyCalculator
to take an IRulesetInfo
2021-11-15 19:16:48 +09:00
Bartłomiej Dach
759450502f
Merge branch 'master' into pp-counter-fixed-width
2021-11-12 08:05:56 +01:00
Dean Herbert
b9f9c27770
Standardise spacing and padding between UR and PP counters
2021-11-12 13:59:22 +09:00
Dean Herbert
e31ea49dd4
Use fixed width font for performance points counter
...
Matches all other display counters for in-game metrics.
As mentioned in https://github.com/ppy/osu/discussions/15584 .
2021-11-12 13:18:47 +09:00
Bartłomiej Dach
b66758dac7
Fix missing unsubscribe from JudgementReverted
2021-11-11 18:11:18 +01:00
Bartłomiej Dach
2e3acffd1d
Perform initial update of PP counter value on load complete
2021-11-11 16:33:33 +01:00
Bartłomiej Dach
576417947e
Round unstable rate in counter rather than truncating
2021-11-11 13:36:06 +01:00
Bartłomiej Dach
69809390d3
Fix HUD unstable rate counter not including judgements before load complete
...
Also unifies UR calculation logic with the results screen statistic item
to reduce duplication.
2021-11-11 13:36:05 +01:00
Bartłomiej Dach
74c37e248d
Merge branch 'master' into master
2021-11-09 08:40:52 +01:00
Chinmay Patil
d5ad776c33
Remove decimal part of UR Counter and rename methods
2021-11-08 06:27:25 -07:00
Dean Herbert
97345ac9e6
Remove unnecessary TimeSpan timeout
parameter (CancellationToken
can now be used)
2021-11-08 14:33:32 +09:00
Dean Herbert
e338340c6a
Merge branch 'master' into beatmap-cancellation-token
2021-11-08 14:32:56 +09:00
Chinmay Patil
a8c9ad73c1
Make UR Counter isValid into a bindable boolean
2021-11-07 18:06:13 -07:00
Chinmay Patil
cc0bcf6b2c
Clean up judgement checks and clean up setter/getter for UR counter Text
2021-11-07 17:44:50 -07:00
Dean Herbert
0ecf5f201c
Rename User
to APIUser
and move to correct namespace
2021-11-07 11:26:01 +09:00
Tollii
cf0b757b16
Fix PR comments.
...
Nitpick, more cancellation token checks.
2021-11-06 16:03:53 +01:00
Tollii
f0caa10066
Add support for a provided cancellation token for GetPlayableBeatmap()
2021-11-05 23:53:48 +01:00
Chinmay Patil
77e853ce25
Optimized UR Counter and removed redundant code
2021-11-05 12:16:58 -06:00
Chinmay Patil
8bfcb89221
Fixed issue where UR counter was always invalid
2021-11-04 21:24:25 -06:00
Chinmay Patil
0ffd41bb70
Slight logical error in the setValid method
2021-11-04 14:32:28 -06:00
Chinmay Patil
8923561b05
Removed Unnessicary class in the Test file, and optimized UR counter
2021-11-04 14:27:48 -06:00
Chinmay Patil
a76878e053
A bit more formatting
2021-11-04 09:52:16 -06:00
Chinmay Patil
c568888500
Edited to remove unessicary blank lines
2021-11-04 09:47:52 -06:00
Chinmay Patil
9aa3021bbc
Added Unstable Rate Counter as a skinable element
2021-11-03 22:22:44 -06:00
Dean Herbert
6944151486
Apply batch fixing of built-in types using var
2021-10-27 13:04:41 +09:00
Dean Herbert
794b4c46cf
Split score counter class into two distinct classes to simplify usages
2021-10-10 17:56:32 +09:00
Dean Herbert
06cce0119c
Use localisable format string for comma separator mode
2021-10-10 17:41:16 +09:00
Dean Herbert
446f091d32
Use comma separator for tournament score displays
2021-10-10 16:06:12 +09:00
Dean Herbert
9705c7b546
Use cloned mods in one more place
2021-10-06 21:30:30 +09:00
Dean Herbert
433e7cd403
Fix rate mods not working if pp counter is displayed
2021-10-06 21:26:30 +09:00
Dean Herbert
98fef6ece2
Handle judgement reverts with actual display updates
2021-10-05 19:08:30 +09:00
Dean Herbert
0859c336de
Also dim counter during initial calculation phase
2021-10-05 17:24:36 +09:00
Dean Herbert
f64226ded6
Fix display not displaying correctly after initial load
2021-10-05 17:10:32 +09:00
Dean Herbert
599d82e383
Avoid returning a live IEnumerable
2021-10-05 17:01:07 +09:00
Dean Herbert
fa7f11d906
Add easing to rolling counter value
2021-10-05 16:51:49 +09:00
Dean Herbert
565e888f58
Tidy up attribute retrieval code
2021-10-05 16:40:07 +09:00
smoogipoo
45b63cbad9
Remove unnecessary dependency
2021-10-05 16:03:25 +09:00
Dean Herbert
676df55a0e
Fade display out during rewind (as the value displayed is no longer valid)
2021-10-05 15:39:29 +09:00
Dean Herbert
81a13566bc
Adjust default location slightly, fix alignment of "pp" subtext
2021-10-05 15:28:03 +09:00
Dean Herbert
b6af93d434
Apply some code quality refactoring
2021-10-05 15:14:49 +09:00
smoogipoo
5624dd9af6
Fix incorrect CancellationToken usage
...
Apparently I wrote the BDL system and don't know how this works. I
believe you need `CancellationToken?` or CanBeNull=true, however that doesn't actually
play well when actually using the token in code...
2021-10-05 12:07:41 +09:00
smoogipoo
593da79bbc
Further asyncify load process
2021-10-05 11:26:13 +09:00
smoogipoo
0b0316e27e
Fix missing CanBeNull
2021-10-04 20:59:31 +09:00
smoogipoo
1837e1bf3c
Share rounding with PerformanceStatistic
2021-10-04 20:35:53 +09:00
smoogipoo
fb63e5ed87
Add todo
2021-10-04 20:35:26 +09:00
smoogipoo
221cc1747c
Drop "default" prefix
2021-10-04 20:34:28 +09:00
smoogipoo
5aae673240
Use GameplayState
2021-10-04 20:33:54 +09:00
smoogipoo
0ee148b53f
Extra guard against no attributes
2021-10-01 21:31:26 +09:00
smoogipoo
a1f880a36a
Split classes
2021-10-01 21:00:39 +09:00
smoogipoo
5820a71652
Fix mania difficulty calculator crashing
2021-10-01 19:57:45 +09:00
smoogipoo
4d8418e072
Fix possible nullrefs
2021-09-30 17:54:56 +09:00
smoogipoo
d2a8f35b4c
Update styling
2021-09-30 17:54:52 +09:00
smoogipoo
84bddf0885
Initial PP counter implementation
2021-09-30 17:00:24 +09:00
Bartłomiej Dach
761548e533
Merge branch 'master' into 14470-ur-not-updating
2021-09-20 22:07:33 +02:00
sh0ckR6
9a1db04920
Resolve GameplayClockContainer
instead of Player
2021-09-20 10:28:58 -04:00
sh0ckR6
36a20ab0b3
Resolve failed test compilation
2021-09-20 10:26:07 -04:00
sh0ckR6
10fe2382b0
Address most issues
2021-09-20 10:07:42 -04:00