1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-30 08:42:55 +08:00
Commit Graph

1084 Commits

Author SHA1 Message Date
mk56-spn
a107fca5d0 Hide "Full" option from counter flow directions 2022-12-12 00:33:28 +01:00
mk56-spn
161894da3b Add more test checks and fix deserialisation test 2022-12-11 23:58:10 +01:00
mk56-spn
4c17b27273 Add Display, Counter, Tests 2022-12-11 23:47:17 +01:00
mk56-spn
f798951f09 Create Judgement Info struct 2022-12-11 22:09:14 +01:00
mk56-spn
ffbe68bd26 Add judgementTally to HUD overlay 2022-12-11 22:08:48 +01:00
mk56-spn
fc630165fd Adjust formatting of BPM text 2022-12-06 15:08:21 +01:00
mk56-spn
f69c084969 Add roll duration 2022-12-05 17:08:00 +01:00
mk56-spn
b6a6db1160 Add dynamic BPM counter to SkinEditor 2022-12-05 12:29:23 +01:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Dean Herbert
d59befc9d3 Fix initial visual state of positions before sort runs 2022-11-18 16:08:27 +09:00
Dean Herbert
aff218dfd5 Redirect through validity function rather than overriding Sort 2022-11-18 16:03:40 +09:00
Dean Herbert
20af8217f4 Tidy up bindable flow 2022-11-18 15:50:41 +09:00
Dean Herbert
e4f522aad1 Fix inspections / typos 2022-11-18 15:47:37 +09:00
Dean Herbert
d17c091d63 Move constant to a better location 2022-11-18 15:47:31 +09:00
Dean Herbert
3faa7f5f74
Merge branch 'master' into gameplay-leaderboard-fix 2022-11-18 15:44:30 +09:00
Dan Balasescu
57b8495c7a Merge branch 'master' into long-standard 2022-11-18 14:24:04 +09:00
Dawid Sośnia
0dbf491872
Merge branch 'master' into gameplay-leaderboard-fix 2022-11-17 22:06:51 +01:00
Piggey
eb691266c1 cleanup 2022-11-17 21:50:39 +01:00
Piggey
fa00fc5c6d change scoresType to be a bindable 2022-11-17 13:27:56 +01:00
Piggey
dea2a6ed8d override sort() function in SoloGameplayLeaderboard 2022-11-17 12:12:36 +01:00
Dean Herbert
489dca79a1 Remove upper limit for pooling 2022-11-15 12:31:25 +09:00
Dean Herbert
308ed1abd1 Fix number of judgements shown potentially exceeding upper limit 2022-11-15 12:31:25 +09:00
Dean Herbert
59a8603728 Ensure flowing animation starts correctly from zero 2022-11-15 12:04:40 +09:00
Dean Herbert
aef6ee23eb Apply pooling support to ColourHitErrorMeter 2022-11-15 12:04:40 +09:00
Dean Herbert
a86b50d62a Apply nullability to BarHitErrorMeter 2022-11-15 11:33:27 +09:00
Dean Herbert
576f462f59 Add pooling support to BarHitErrorMeter 2022-11-15 11:33:27 +09:00
Piggey
0011f4e7be fix comment lol 2022-11-09 19:59:04 +01:00
Piggey
ab53fb17d3 change displayed text from #? to - 2022-11-09 19:53:36 +01:00
Piggey
d48c56818f change positionText to display "#?" if tracked score is being 51st on the leaderboard 2022-11-08 20:02:21 +01:00
maromalo
8eef2ba8de quality shenanigans 2022-11-06 20:12:26 -03:00
maromalo
b7ef9b176d Make score type consistent 2022-11-06 19:59:27 -03:00
Joseph Madamba
87328dd1f5 Fix bar hit error meter labels not clearing when setting to none 2022-10-27 23:59:01 -07:00
Dean Herbert
71970d83cf Remove obsoleted ShowProgressGraph global setting
This was moved to the component itself.
2022-10-28 12:47:45 +09:00
Dean Herbert
1e7b8cd227 Fix formatting issues 2022-10-17 13:22:06 +09:00
outfoxxed
85de802793
Only create hit error bar icon containers once
Move icon container creation to BDL, and only recreate the contained
icon when `recreateLabels` is called
2022-10-16 11:47:21 -07:00
outfoxxed
d6030891a2
Reuse existing code in hit error bar fix
Use `UprightAspectMaintainingContainer` instead of a local fix for
hit error bar orientation
2022-10-16 10:06:38 -07:00
outfoxxed
cd1885a17b
Fix hit error bar icon orientation
Icons now keep their original orientation when the hit error bar is
flipped
2022-10-16 02:55:10 -07:00
Dean Herbert
19f3810020 Revert namespace change
Let's not
2022-10-12 18:50:47 +09:00
Dario Headley
b72c8970eb Max Combo Counter added 2022-10-12 09:50:01 +02:00
Dan Balasescu
c18d4afdcc Merge branch 'master' into fix-leaderboard-first-place-fade 2022-10-07 19:55:16 +09:00
Dean Herbert
276021dd85 Remove now unnecessary ScheduleAfterChildren 2022-10-05 14:20:01 +09:00
Dean Herbert
42aac16b37 Adjust leaderboard score panels sizing based on accuracy/combo width 2022-10-03 18:12:36 +09:00
nanashi-1
2493468800 display highest combo instead of current combo 2022-10-02 18:40:31 +08:00
Dean Herbert
cbbca616c1 Merge branch 'master' into fix-leaderboard-first-place-fade 2022-09-28 17:58:45 +09:00
Dean Herbert
cdcc8494c9 Fix fade being applied for too long when leaderboard scrolls to start 2022-09-28 16:10:19 +09:00
Dean Herbert
c8643ed265 Set ClampExtension to zero to stop jittering 2022-09-28 15:58:00 +09:00
Dean Herbert
8edb1cb98a Add test coverage of current score staying on screen 2022-09-28 15:57:50 +09:00
Dean Herbert
0296685c74 Start key counter / gameplay leaderboard hidden to avoid initial fade out 2022-09-27 17:25:24 +09:00
Dean Herbert
320f134634 Use same logic as KeyCounterDisplay 2022-09-27 15:01:18 +09:00
nanashi-1
5d18001d75 move config 2022-09-26 21:11:38 +08:00
nanashi-1
4295d9c169 revert 2022-09-26 21:11:14 +08:00
nanashi-1
ee4d1b2d58 add config visibility 2022-09-26 20:13:07 +08:00
Dean Herbert
20da1051d9 Apply NRT to GameplayLeaderboard hierarchy
Just some cleanup work that I wanted to do as part of my last changes.
2022-09-26 16:21:24 +09:00
Dan Balasescu
1d1012e196
Merge pull request #20286 from peppy/gameplay-leaderboards
Add basic gameplay leaderboard display
2022-09-22 21:16:12 +09:00
Dan Balasescu
445e026a32
Merge pull request #20389 from peppy/fix-gameplay-leaderboard-layout
Fix gameplay leaderboard sometimes not showing up
2022-09-22 20:51:54 +09:00
Dean Herbert
8f7a306d81 Inline comment regarding margin necessity 2022-09-22 19:53:16 +09:00
Dean Herbert
f0dcda9acc Decrease precision of spacing setting 2022-09-22 15:49:02 +09:00
Dean Herbert
26d98323ff Fix bindable flow, code quality, everything 2022-09-22 15:45:23 +09:00
Dean Herbert
0f663deda0 Fix changing shape causing alpha to be permanently reset to zero 2022-09-22 15:24:57 +09:00
Dean Herbert
ae70b2c32f Fix other weirdness in variable and description naming 2022-09-22 15:21:27 +09:00
Dean Herbert
19db7c5977 Remove "Opacity" setting
This should be implemented at a higher level
2022-09-22 15:19:01 +09:00
Dean Herbert
f3898da37a Rename judgement count to not mention "shape" 2022-09-22 15:18:20 +09:00
Dean Herbert
29c4d06d36 Merge branch 'fix-gameplay-leaderboard-layout' into gameplay-leaderboards 2022-09-21 14:58:58 +09:00
Dean Herbert
b04871f40a Animate scroll for a better visual experience 2022-09-21 14:51:12 +09:00
Dean Herbert
087ca59ebb Add extra margin space to flow equal to height of leaderboard
This ensures the content is always on screen, but also accounts for the
fact that scroll operations without animation were actually forcing the
local score to a location it can't usually reside at.

Basically, the local score was in the scroll extension region (due to always trying
to scroll the local player to the middle of the display, but there being
no other content below the local player to scroll up by).
2022-09-21 14:51:12 +09:00
Dean Herbert
a8338c4efd Add local score after existing scores to avoid initial re-sort 2022-09-21 13:38:40 +09:00
Ryuki
ecf71df8a2
Change CornerRadius Max Value 2022-09-18 00:04:56 +02:00
Ryuki
c1077d909c
Basic avatar HUD implementation 2022-09-17 21:09:34 +02:00
Dean Herbert
4c4fdfd153 Provide scores directly to Player instance rather than relying on DI 2022-09-16 18:15:17 +09:00
HiddenNode
8286ab0d04 Revert "Fix SongProgress invalidating too often"
This reverts commit 2b4b14ca99.
2022-09-15 11:11:58 +01:00
Dean Herbert
fcf54f1bc8 Fix gameplay leaderboard not being sorted correctly in tie situations 2022-09-14 14:18:12 +09:00
Dean Herbert
8a6977213a Fix displayed scores in gameplay leaderboard not tracking display mode changes 2022-09-14 14:02:35 +09:00
Dean Herbert
6d167070f8 Add back DI leaderboard retrieval via bindable pathway 2022-09-13 18:45:11 +09:00
Dean Herbert
70e6b595f1 Refactor SoloGameplayLeaderboard to not read scores via DI
Also allows updating scores if they arrive late.
2022-09-13 18:00:21 +09:00
Dean Herbert
d2b80645ab Change Leaderboard to use IUser instead of APIUser 2022-09-13 18:00:21 +09:00
Dean Herbert
368faa0084 Make constructor protected in base implementation 2022-09-13 18:00:21 +09:00
Dean Herbert
4c669e2bce Track local Player.Score's user rather than using APIProvider 2022-09-13 18:00:21 +09:00
Salman Ahmed
3490b16056 Add simplified SoloGameplayLeaderboard implementation
Note that this doesn't support waiting until leaderboard finishes fetching scores.
2022-09-13 18:00:21 +09:00
Dean Herbert
2b4b14ca99 Fix SongProgress invalidating too often
This regressed with https://github.com/ppy/osu/pull/19556. Rather than
try and figure whether that new container needs to handle size
differently, this is a simple solution.

Height was taken from a runtime check (maxes out at about 14.5).

Closes #20235.
2022-09-12 20:06:53 +09:00
Mk-56spn
c00bf61273 Framework change adressed 2022-09-10 21:24:29 +02:00
MK56
8661dc3c93
Merge branch 'ppy:master' into Colour_hit_meter_improved 2022-09-10 21:16:23 +02:00
Mk-56spn
f6aef73f9e fixed shape bindable not working, test creation, removal of Clear(), adjusted settings names 2022-09-10 20:30:43 +02:00
Dean Herbert
27f745b980
Merge branch 'master' into fix_progress_bar_info 2022-09-09 17:34:13 +09:00
Dean Herbert
05797cb9e5 Fix enum to STRING????????? conversion (and use bindable flow) 2022-09-09 16:30:08 +09:00
Dean Herbert
45239fc737 Update TrueGameplayRate accessing 2022-09-08 23:03:15 +09:00
Dean Herbert
d4afc3629c
Merge branch 'master' into kps 2022-09-08 23:00:36 +09:00
Dean Herbert
a98c6b2c1f Add comment metioning why we need to use DrawableRuleset lookup 2022-09-08 19:14:23 +09:00
Mk-56spn
07c16224d2 Fix Main file issues 2022-09-08 11:58:14 +02:00
Dean Herbert
5c2fb3e434 Simplify calculation method 2022-09-08 18:22:53 +09:00
Acid Chicken (硫酸鶏)
267465df18
chore(osu.Game): combine Osu.Colour.{Draw,Text}ForHitResult into OsuColour.ForHitResult 2022-09-07 23:34:46 +09:00
Mk-56spn
aace334fb3 Fix some test issues 2022-09-05 04:49:48 +02:00
Acid Chicken (硫酸鶏)
5f0832ead7
refactor(osu.Game): separate OsuColour.ForHitResult by usage 2022-09-05 01:58:57 +09:00
Mk-56spn
0c6d8efa28 Large code refactor, Implementation of shapes option drop down 2022-09-04 17:24:12 +02:00
Mk-56spn
51061c3a12 Bug fixing and parameter adjustments 2022-09-03 01:27:22 +02:00
Mk-56spn
534c40e18e Initial version 2022-09-02 23:07:30 +02:00
Dean Herbert
bc5340e33a
Merge branch 'master' into fix_progress_bar_info 2022-09-02 18:00:35 +09:00
HiddenNode
4a630b5384 Implemented SizePreservingSpriteText 2022-08-31 22:05:06 +01:00
Dean Herbert
7337d4c1aa Merge branch 'master' into kps 2022-08-31 15:41:42 +09:00
Dean Herbert
2c780eab5f Merge branch 'master' into fix_progress_bar_info 2022-08-26 16:14:21 +09:00
Dean Herbert
23efec6505 Fix naming and comment typos 2022-08-26 15:57:36 +09:00
HiddenNode
d98357aa57 Made text inside SongProgressInfo scale. 2022-08-26 01:30:44 +01:00
Ryuki
5cddc7ed1f
Code cleanup (CPS) 2022-08-24 17:13:23 +02:00
HiddenNode
1098e24c40 Improved UprightUnscaledContainer 2022-08-22 14:24:52 +01:00
Ryuki
5cf54a788a
Code cleanup for CPS counter 2022-08-21 16:00:58 +02:00
Dean Herbert
da407aa827
Merge branch 'master' into kps 2022-08-20 15:24:58 +09:00
Ryuki
3de35a1518
Update calculator and tests to match changes on clocks 2022-08-18 18:40:02 +02:00
Dean Herbert
2c6fd1ec6e Fix `GameplayClockContainer potentially resetting external seeks 2022-08-18 18:54:10 +09:00
Dean Herbert
c8764cb333 Move all usage of GameplayClock to IGameplayClock 2022-08-15 18:30:53 +09:00
Dean Herbert
623e90a7b2 Fix div-by-zero in SongProgress when no object duration could be calculated 2022-08-15 15:05:35 +09:00
Ryuki
2aa3a1b50d
Rename all "KeysPerSecond" usages to "ClicksPerSecond" 2022-08-14 20:12:11 +02:00
Ryuki
9dc806506e
Make ActionListener and KeysPerSecondCalculator not rely on events to add timestamps 2022-08-14 19:31:14 +02:00
Ryuki
e08f71797e
Change displayed metric from "KPS" to "clicks/s" 2022-08-13 04:27:26 +02:00
Ryuki
d29cba80e9
Remove useless comment in KeysPerSecondCounter 2022-08-11 11:01:16 +02:00
Ryuki
3c6461b9e4
Remove KPS acronym usage 2022-08-11 10:01:39 +02:00
Ryuki
0a94fb4039
Make KPS counter strictly depending only on KPS calculator
`KeysPerSecondCounter` now depends on `KeysPerSecondCalculator` via the
`BackgroundDependencyLoaderAttribute` method, making it appear only in a
gameplay context without requiring `GameplayClock` without using it.
2022-08-11 00:46:39 +02:00
Ryuki
46e372cb99
Add more readiness checks in KeysPerSecondCalculator 2022-08-11 00:43:15 +02:00
Ryuki
9e80d3f71c
Re-adjust timespan conditions in KeysPerSecondCalculator 2022-08-11 00:42:22 +02:00
Ryuki
b52a07c16a
Use DI to provide dependencies for KPS Calculator and improve input
gathering

KPS Calculator now uses DI to retrieve the clocks. Using `HUDOverlay` it
is now cached for `KeysPerSecondCounter`s to resolve it. This also
allows to make an "Attach" flow like `KeyCounter`.
2022-08-08 21:54:06 +02:00
HiddenNode
ed86255e2b Use UprightUnscaledContainer instead of KeepUprightAndUnscaled 2022-08-07 13:20:22 +01:00
Ryuki
b2557a8d2d
Refactor KPS
- Remove '#nullable disable' in KeysPerSecondCalculator and
  KeysPerSecondCounter
- Remove KeysPerSecondCalculator IDisposable implementation
- Make KeysPerSecondCalculator static instance initialized once by
  KeysPerSecondCounters
- Auto transfer dependencies from KeysPerSecondCounter to
  KeysPerSecondCalculator using Resolved properties
- Add internal reset logic to KeysPerSecondCalculator and make it
  independent from Player
- Use GameplayClock.TrueGameplayRate to get real-time rate. If 0 then it
  defaults to the last non 0 rate if no such mod is enabled
2022-08-07 00:53:00 +02:00
Ryuki
0886137e39
Prevent KeysPerSecondCounter from NRE when no instance is initialized 2022-08-05 21:03:00 +02:00
HiddenNode
b46bc5d65b Remove empty line 2022-08-05 14:57:33 +01:00
Ryuki
24c29b7e2f
Do not add KPS calculation when gameplay rate is 0 2022-08-05 15:51:07 +02:00
HiddenNode
0243f8d6ac Clean up 2022-08-05 14:28:15 +01:00
HiddenNode
12ef99a1a1 Fix text position 2022-08-05 12:56:08 +01:00
Ryuki
42d1bdfc95
Move KPS calculation to a standalone class 2022-08-05 04:17:01 +02:00
Dean Herbert
6ad6561e1c Fix LegacySongProgress incorrectly blocking mouse input from gameplay
Closes #19555.
2022-08-03 17:42:29 +09:00
HiddenNode
bc21a2ed56 Remove unnecessary using directive 2022-08-02 17:41:17 +01:00
HiddenNode
78a98cdb9c Prevent TextSprites inside SongProgressInfo from being stretched or flipped 2022-08-02 17:37:31 +01:00
HiddenNode
df85bd74d7 Keep TextSprites in SongProgressInfo upright 2022-08-01 21:46:37 +01:00
Dean Herbert
5b98a73edc Apply nullability to SkinComponentToolbox and split out reflection method to get all skinnable components 2022-08-01 14:04:08 +09:00
Ryuki
89855cc1d6
Change KPS Counter implementation base and add better replay integration
The counter implementaiton is now list based, and will not invalidate
previous hits by removing them but by testing if they are within the 1
second span, allowing better integration with replays and spectators.
2022-07-31 01:29:57 +02:00
Salman Ahmed
905bbdc8ee Remove caching of GameplayClockContainer in favour of GameplayClock
Also fixes `SongProgress` being displayed in skin editor on non-gameplay
screens, due to `GameplayClock` not marked as a required dependency.
2022-07-29 16:45:29 +03:00
Ryuki
b2e7da5aa0
Add basic Queue based implementation of KPS 2022-07-28 18:37:12 +02:00
Dean Herbert
3005ff1b9f Merge branch 'master' into pie-chart-progress 2022-07-28 22:19:27 +09:00
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
sh0ckR6
f6e279baa1
Add xmldoc to HitErrorMeter.Clear
Explains how the method is called and what inheritors should do when implementing it.
2021-09-18 12:18:11 -04:00
sh0ckR6
b2b3108afa
Resolve addressed issues
+ Stopped using testing methods in non-testing classes
+ Resolve Player and add OnSeek event
+ Take bindings away from BarHitErrorMeter
+ Add support for ColourHitErrorMeter
2021-09-17 16:19:41 -04:00
smoogipoo
f9d5abff8a Update with keybinding changes 2021-09-16 18:26:12 +09:00
AbstractQbit
3c75094f43 Move BarHitErrorMeter's icon reorintation to Update() 2021-09-13 19:41:55 +03:00
AbstractQbit
7267602b95 Fix icon orientation for horizontal bar hit error meter 2021-09-13 17:14:39 +03:00
sh0ckR6
bde092f816
Clear UR bar display on seek with mouse 2021-09-09 20:08:16 -04:00
sh0ckR6
bf0150bab4
Clear UR bar display on keyboard input 2021-09-09 16:21:51 -04:00
Dean Herbert
c25ab6835c Remove IJsonSerializable interface
Was pretty pointless and made it hard to use the custom serialisation
terms arbitrarily in tests.
2021-08-31 14:39:20 +09:00
Salman Ahmed
e374ef163d Update localisable formattable extensions usages inline with framework change 2021-08-29 15:00:28 +03:00
Dean Herbert
a10ba17b64
Merge pull request #14250 from peppy/leaderboard-limit-player-count
Add ability for gameplay leaderboard scroll when too many users are displayed
2021-08-14 14:08:18 +09:00
Bartłomiej Dach
e2cc96097f
Unify match score display formatting
Commas are already applied on the multiplayer leaderboard, as well as
the results screen.
2021-08-13 23:57:51 +02:00
Bartłomiej Dach
00317c0e30
Round when totalling up team scores instead of truncating
Matches score handling in `ScoreManager`.
2021-08-13 23:44:07 +02:00
Dean Herbert
90755c0307 Replace condition with matching precalculated bool 2021-08-13 14:50:59 +09:00
Dean Herbert
93574acf72 Fix exception messaging 2021-08-13 14:46:57 +09:00
Dean Herbert
641d57e5e1 Change scroll container subclass name to hopefully read better 2021-08-13 14:46:28 +09:00
Dean Herbert
e84224f64c Rename AddPlayer method now that there's no conflict 2021-08-12 16:20:37 +09:00
Dean Herbert
68dbbc17e8 Add support for automatic scrolling in gameplay leaderboard 2021-08-12 16:20:37 +09:00
Dean Herbert
735c5085dd Fix match score display not doing an initial value update 2021-08-11 14:50:47 +09:00
Dean Herbert
ee3b373e8a Correctly handle tied scores 2021-08-11 14:48:37 +09:00
Dean Herbert
a503274e1d Pass through MultiplayerRoomUsers instead of ints to avoid re-retrieval 2021-08-10 18:39:20 +09:00
Dean Herbert
58714dbe71 Fix ordering of teams to match colours 2021-08-09 19:48:53 +09:00
Dean Herbert
490f9e1848 Fix overlap in spectator view 2021-08-09 19:45:16 +09:00
Dean Herbert
551929cf5a Simplify method of marking players as playing in test scenes 2021-08-09 19:18:13 +09:00
Dean Herbert
121648b593 Add gameplay-specific team score display which can expand and contract 2021-08-09 19:17:51 +09:00
Dean Herbert
ebbf6467e8 Support more than two teams 2021-08-09 17:23:02 +09:00
Dean Herbert
cdc173e867 Add tracking of team totals to leaderboard implementation 2021-08-09 17:08:32 +09:00
Dean Herbert
77c9aadd05 Add team colour support to multiplaye gameplay leaderboard panels 2021-08-09 17:06:25 +09:00
Dean Herbert
e1d4eee1d2 Add the ability to set custom overriding colours on GameplayLeaderboardScores 2021-08-09 17:06:21 +09:00
Dean Herbert
0fa1f085df Store MultiplayerRoomUser as part of tracked data 2021-08-09 16:31:18 +09:00
Dean Herbert
aa4c6b9341 Bring across tournament score display for game usage 2021-08-09 16:30:37 +09:00
Lucas A
ff3d38de6f Localise accuracy display. 2021-07-23 22:37:08 +02:00
Dean Herbert
b910c21230 Add ModFlowDisplay and consume in ContractedPanelMiddleContent 2021-07-21 16:53:04 +09:00
Dean Herbert
396ad79d50 Remove unnecessary UnbindAll call 2021-07-21 16:43:08 +09:00
Dean Herbert
a63065dbe9 Tidy up ModDisplay 2021-07-21 16:38:25 +09:00
Dan Balasescu
32e6c9c5d3
Merge pull request #13786 from peppy/multiplayer-test-fixes
Fix multiplayer test failures due to leaderboard load process
2021-07-06 16:33:41 +09:00
Dean Herbert
1a6b8b2c73 Populate UserScores as early as possible to avoid weird ordering requirements 2021-07-06 14:53:31 +09:00
Bartłomiej Dach
686dd2b5ce Remove unused constant 2021-07-05 20:35:14 +02:00
Dean Herbert
f5ddd2a53b Fix critical failure causing scores to not update on the leaderboard 2021-07-06 01:15:30 +09:00
PercyDan54
e1c646b9b2
Remove redundant arguments 2021-07-05 23:52:39 +08:00
Dean Herbert
f1014af284 Move LoadComplete content to run after user retrieval has completed
Feels safer, I think.
2021-07-05 21:35:41 +09:00
Dean Herbert
459f9a0465 Handle nulls and fix missing documentation 2021-07-05 21:35:37 +09:00
Dean Herbert
77adf687c6 Consume ability to lookup multiple users in MultiplayerGameplayLeaderboard
Avoids syncrhonously blocking on asynchronous operations (which was
leading to LCA starvation in tests).
2021-07-05 19:56:37 +09:00
Dean Herbert
c751e087ca
Merge branch 'master' into skin-editor-closest-anchor 2021-06-18 18:54:07 +09:00
Dan Balasescu
a44fd887ee
Merge branch 'master' into no-unranked-display 2021-06-10 17:09:46 +09:00
Dean Herbert
7774344f0e Remove "Unranked" text from ModDisplay 2021-06-09 13:45:09 +09:00
smoogipoo
00efed2c39 Add colours for tick judgements 2021-06-08 23:10:21 +09:00
smoogipoo
c8e14d7710 Ignore non-scorable and bonus judgements 2021-06-08 23:09:23 +09:00
Robin Avery
dc50ae40b9
Rename OverridesClosestAnchor to UsesFixedAnchor 2021-06-08 08:28:42 -04:00
Bartłomiej Dach
0531c2dcd9 Move empty window check to bar error meter
It's not valid in the base `HitErrorMeter`, as the colour meter only
displays colour for a given judgement, so it is still valid to add new
items to it even if the hit window is 0, as misses are still possible.
2021-06-07 13:16:07 +02:00
Bartłomiej Dach
37d062c7cd Add failing assertions to hit error meter test 2021-06-07 13:16:07 +02:00
Robin Avery
29fa4fdf57
Refactor unacceptable syntax 2021-06-07 01:08:39 -04:00
Robin Avery
133d72a8c0
Rename UsingClosestAnchor
It is now "OverridesClosestAnchor". The logic is inverted accordingly.
2021-06-07 00:14:36 -04:00
Robin Avery
f28916e30f
Remove all UsingClosestAnchor() extension logic
It is replaced with ISkinnableDrawable.UsingClosestAnchor.
2021-06-07 00:04:53 -04:00
Robin Avery
ce635af83e
Add UsingClosestAnchor to ISkinnableDrawable
Also implement it as an auto property in its inheritors.
The auto properties default to true.
2021-06-06 23:47:47 -04:00
Robin Avery
da1c38d5a9
Uninvert logic of SkinnableInfo.UsingClosestAnchor
Also rename "IsUsingClosestAnchor" to simply "UsingClosestAnchor".
2021-06-06 10:13:35 -04:00
Robin Avery
11b1b8c633
Add serialization support via SkinnableInfo 2021-06-06 07:18:08 -04:00
Salman Ahmed
4e186b0cf5 ContentVisible -> HiddenByRulesetImplementation 2021-05-31 09:24:26 +03:00
Salman Ahmed
fb111e23d8 Remove "temporarily" 2021-05-31 07:24:59 +03:00
Salman Ahmed
3fbd4e276d Add simple xmldoc 2021-05-31 00:07:29 +03:00
Salman Ahmed
fb81e5133f Merge branch 'master' into catch-hide-combo-workaround 2021-05-30 14:16:46 +03:00
Firmatorenio
471f17547a switch determining the hit result by offset to getting it from the judgement directly 2021-05-24 16:49:58 +06:00
Firmatorenio
e5f586f2a6 fix colour hit error meter not pushing misses when wrong colour note is hit in taiko 2021-05-24 13:29:12 +06:00
smoogipoo
5a8b8782d3 Fix WatchUser being called asynchronously in BDL 2021-05-20 19:44:43 +09:00
smoogipoo
a74405d0ed Merge branch 'master' into restructure-spectator-client 2021-05-20 18:53:42 +09:00
smoogipoo
6beeb7f7c4 Rename SpectatorStreamingClient -> SpectatorClient 2021-05-20 15:55:07 +09:00
smoogipoo
d197a7f6f5 Rename multiplayer client classes 2021-05-20 15:39:45 +09:00
Salman Ahmed
43094425e2 Merge branch 'legacy-beatmap-skin-hud-fallback' into catch-hide-combo-workaround 2021-05-19 23:18:27 +03:00
Dean Herbert
00ed699340 Fix origin specifications using incorrect flags 2021-05-20 01:53:24 +09:00
Salman Ahmed
ff419af512 Hide the combo counter content rather than full death 2021-05-18 09:10:15 +03:00
Dean Herbert
829d326e36 Remove alignment logic completely for the time being
This was overly complex and does not play well with the new layout
customisation system. We can add it back as required.
2021-05-18 14:55:34 +09:00
Dean Herbert
7137315fa7 Remove HitErrorDisplay container and hook up data 2021-05-17 19:46:50 +09:00
Dean Herbert
c8b7cfc753 Merge branch 'skin-serialisation' into remove-skinnable-hud-classes 2021-05-13 19:05:08 +09:00
Dean Herbert
7921dc7ece Rename ISkinnableComponent to ISkinnableDrawable 2021-05-13 17:06:00 +09:00
Dean Herbert
cdcd31b546 Replace ISkinSerialisable with IsEditable property 2021-05-13 17:03:17 +09:00
Dean Herbert
3b862798e9 Standardise naming of methods related to SkinnableInfo 2021-05-13 13:14:49 +09:00
Dean Herbert
6caf4e3879 Add xmldoc to SkinnableInfo 2021-05-13 12:57:28 +09:00
Dean Herbert
0a895fff15 Remove remaining test usage of SkinnableXXX HUD components 2021-05-12 18:53:25 +09:00
Dean Herbert
494a1b01a5 Move SkinnableElementTargetContainer out of HUD namespace 2021-05-12 15:59:33 +09:00
Dean Herbert
4aad7b96ea Merge branch 'health-bar-hud-overlay-dependency' into skin-serialisation 2021-05-12 12:54:37 +09:00
Dean Herbert
184dbaf202 Improve safety of bindings in HealthDisplay 2021-05-12 12:53:30 +09:00
Dean Herbert
8e226319e2 Remove downwards dependency from HUDOverlay to HealthDisplay 2021-05-11 23:18:23 +09:00
Dean Herbert
a88a8b7d8d Use ISkinnableComponent wherever possible (and expose as BindableList) 2021-05-11 18:39:15 +09:00
Dean Herbert
944f09ec98 Move default skin cross-component dependencies out to default specifications 2021-05-11 18:39:14 +09:00
Dean Herbert
c94df672e5 Also serialise Origin out 2021-05-11 18:39:14 +09:00
Dean Herbert
f53ce951dc Remove DefaultScoreCounter animation for the time being
May add this back in the future, but for now it's causing issues as it
operates on `this`. The default skin may be changing quite a bit in the
near future, so we can decide what to do about animation at that point
in time.
2021-05-11 18:39:14 +09:00
Dean Herbert
4c4d75e6f9 Remove AccuracyCounter sizing dependency in HUDOverlay 2021-05-11 18:39:14 +09:00
Dean Herbert
2396ba42a6 Change HealthDisplay to be a CompositeDrawable 2021-05-11 18:39:14 +09:00
Dean Herbert
bf65547eec Allow some serialised components to not be mutable by the user 2021-05-11 18:39:14 +09:00
Dean Herbert
4769a95b49 Fix encapsulation and remove target lookup overhead 2021-05-11 18:39:14 +09:00
Dean Herbert
b248b2e5e3 Hook up full save/load flow 2021-05-11 18:39:14 +09:00
Dean Herbert
004798d61d Update Legacy components to not require skin in ctor 2021-05-11 18:39:14 +09:00
Dean Herbert
b54eb56169 Move new judgement binding to LoadComplete to ensure containers are loaded 2021-05-11 18:39:14 +09:00
Dean Herbert
6a88b8888b Add basic support for child serialisation 2021-05-11 18:39:14 +09:00
Dean Herbert
df72656aa1 Remove downwards dependency from HUDOverlay to HealthDisplay 2021-05-11 18:39:14 +09:00
Dean Herbert
95a497e9df Remove unused interface class for simplicity 2021-05-11 18:39:14 +09:00
Dean Herbert
95a8f21ab2 Add the concept of skinnable target containers and mark a basic one for HUD elements 2021-05-11 18:39:14 +09:00
Dean Herbert
67ea4a7e97 Read from skin config 2021-05-11 18:39:14 +09:00
Dean Herbert
b9ab9342fa Setup basics to allow extracting serializable content from skinnable Drawables 2021-05-11 18:39:14 +09:00
Dean Herbert
2ecd638f7f Merge branch 'master' into skin-components-list 2021-05-10 18:13:10 +09:00
smoogipoo
fa872858b5 Remove unnecessary check 2021-05-10 16:40:06 +09:00
Dean Herbert
97e72849af Fix regressed HitErrorDisplay behaviour (and localise binding to meter implementations) 2021-05-10 15:24:13 +09:00
Dan Balasescu
78952c07b0
Merge branch 'master' into remove-hud-overlay-unused-pieces 2021-05-10 14:39:32 +09:00
smoogipoo
35a7226cd8 Add newline 2021-05-10 13:41:04 +09:00
Dean Herbert
b274fdf20d Merge branch 'master' into skin-components-bind-outwards-health 2021-05-10 11:13:44 +09:00
Bartłomiej Dach
67cea6e762 Remove explicit binding to accuracy counter from overlay 2021-05-08 21:38:06 +02:00
Bartłomiej Dach
0bc6a026eb
Merge branch 'master' into skin-components-bind-outwards-accuracy 2021-05-08 21:08:53 +02:00
Dean Herbert
a1aeac5677 Remove remaining cruft from SkinnableAccuracyCounter 2021-05-07 18:12:18 +09:00
Dean Herbert
68de870986 Merge branch 'skin-components-bind-outwards-health' into remove-hud-overlay-unused-pieces 2021-05-07 18:11:14 +09:00
Dean Herbert
9fe6e1096a Remove cruft from SkinnableHealthDisplay 2021-05-07 18:11:08 +09:00
Dean Herbert
1cb10c2a22 Remove unnecessary binding logic from HUDOverlay 2021-05-07 17:51:46 +09:00
Dean Herbert
a7acecc52b Merge branch 'skin-components-bind-outwards-health' into remove-hud-overlay-unused-pieces 2021-05-07 17:51:41 +09:00
Dean Herbert
04d35826a3 Merge branch 'skin-components-bind-outwards-accuracy' into remove-hud-overlay-unused-pieces 2021-05-07 17:25:39 +09:00
Dean Herbert
755588258e Update HealthDisplay components to use DI to attach data source 2021-05-07 17:22:45 +09:00
Dean Herbert
01eff7f316 Merge branch 'skin-components-bind-outwards' into skin-components-bind-outwards-score-display 2021-05-07 16:30:08 +09:00
Dean Herbert
93f10330e3 Merge branch 'skin-components-bind-outwards' into skin-components-bind-outwards-accuracy 2021-05-07 16:29:10 +09:00