1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-15 10:27:35 +08:00
Commit Graph

1030 Commits

Author SHA1 Message Date
Bartłomiej Dach
ce0d4bd0df
Fix health display potentially desyncing from actual if health was changed during initial animation 2023-10-06 21:35:08 +02:00
Dean Herbert
58448d3dd9
Fix health animation affecting failing tint 2023-10-07 01:06:31 +09:00
Dean Herbert
d87ab9c82d
Adjust transition time based on miss/hit 2023-10-06 19:34:38 +09:00
Dean Herbert
3f2a00d90d
Add argon health display to default skin layout 2023-10-06 19:34:27 +09:00
Dean Herbert
f40e910c51
Remove left line from health display 2023-10-06 19:34:27 +09:00
Dean Herbert
db5178e453
Change ArgonHealthDisplay to be relative sized for now 2023-10-06 18:56:39 +09:00
Dean Herbert
f2e56bbb65
Fix publicly-settable bindables 2023-10-06 16:51:24 +09:00
Bartłomiej Dach
bd71403309
Merge branch 'master' into health-animates-in-intro 2023-10-04 13:53:42 +02:00
Bartłomiej Dach
844a3b6c1b
Merge pull request #24980 from frenzibyte/gameplay-hud-redesign/health-display
Implement redesigned health bar display for "Argon" skin
2023-10-03 11:26:21 +02:00
Dean Herbert
4f3c433946 Move vertex related constants local to method 2023-10-03 17:41:52 +09:00
Dean Herbert
32b2ac4974 Rename and refactor glow/miss bars to hopefully make more sense 2023-10-03 17:41:11 +09:00
Dean Herbert
4f9daa1c14 Tidy up ArgonHealthDisplay code quality 2023-10-03 17:32:35 +09:00
Dean Herbert
8178cf3a8d Tidy up background colour gradient logic
This changes things visually a touch, but I think it feels better.
And reads better.
2023-10-03 17:17:11 +09:00
Dean Herbert
82ba545358 Add initial animation for health bars 2023-10-02 17:01:58 +09:00
Dean Herbert
3a45bcad15 Improve flash and glow further 2023-10-02 02:11:07 +09:00
Dean Herbert
c4f47974bc Improve glow further 2023-10-02 02:11:07 +09:00
Dean Herbert
88d608e1fa Tidy up common animation code 2023-10-02 02:11:07 +09:00
Dean Herbert
df51e61234 Improve animation 2023-10-02 00:42:51 +09:00
Dean Herbert
22aa7ffd06 Use additive colour 2023-10-01 22:09:59 +09:00
Salman Ahmed
eef099e69d Do not display "miss" bar if health is already zero 2023-10-01 15:25:34 +03:00
Salman Ahmed
7825bea959 Use interpolation for health bar opacity instead of transforms 2023-10-01 15:25:23 +03:00
Salman Ahmed
30d9004ef9 Fix small mistake 2023-10-01 13:41:11 +03:00
Salman Ahmed
446c9c2efe Apply adjustments on the "miss" bar display 2023-10-01 13:39:36 +03:00
Salman Ahmed
9e2b8254d9 Add argon-specific health display test scene 2023-10-01 13:26:47 +03:00
Salman Ahmed
a331fb993a Adjust health bar outer stroke colour 2023-10-01 01:21:37 +03:00
Salman Ahmed
319208ca3d Adjust health bar glow intensity 2023-10-01 01:18:05 +03:00
Salman Ahmed
776536e816 Add "Argon" health display implementation 2023-10-01 00:56:16 +03:00
Salman Ahmed
33b0cb15a8 Add handling for miss judgements in HealthDisplay 2023-10-01 00:21:25 +03:00
Dean Herbert
7d74d84e6c Display mod icons using stable ordering
In discussion with nanaya, we likely want this now that we're adding the
ability for some icons to be extended. Historically mod icons have been
displayed in a stable but arbitrary order (based on their position in
the `Mods` enum).

This change aims to make them stable across lazer scores (where they are
stored based on .. the order the user selected them).
2023-09-28 16:48:09 +09:00
Dean Herbert
71ac5cfc79 Don't bother binding to friends changes for score display purposes 2023-09-20 14:14:37 +09:00
cdwcgt
68752f95e5
color friend score to pink 2023-09-06 22:58:03 +09:00
Dean Herbert
8b9759c569 Apply nullability to MatchScoreDisplay 2023-08-16 17:26:10 +09:00
Dean Herbert
ab826c35b7 Add score diff display to multiplayer spectator
Basically pulling changes over from the tournament client implementation
2023-08-16 17:26:10 +09:00
Dean Herbert
95a9b532df Remember state of replay settings visibility 2023-07-06 00:53:37 +09:00
Dean Herbert
fbab5acac1 Remove not-yet-implemented settings group comments 2023-07-06 00:46:09 +09:00
Dean Herbert
41890cfc65 Change JudgementCountController to a Component and remove handling overrides 2023-06-27 16:39:21 +09:00
Dean Herbert
8bd6f7a46a Rename ClicksPerSecondCalculator to ClicksPerSecondController 2023-06-27 16:38:46 +09:00
Dean Herbert
de23a4691e Change JudgementCountController to a Component 2023-06-27 16:38:15 +09:00
Dean Herbert
e21583ff1b Refactor InputCountController to not require being added to foreign body via Attach
I've made the flow match `ClicksPerSecondCalculator` as close as
possible. Hopefully this reads better.
2023-06-27 16:36:00 +09:00
Bartłomiej Dach
7200855d46
Rename Judgement{Tally -> CountController} 2023-06-26 19:30:04 +02:00
Bartłomiej Dach
8d91580dc1
Rename {KeyCounter -> InputCount}Controller 2023-06-26 19:27:42 +02:00
Bartłomiej Dach
4ac48e4cd8
Group input handling members together 2023-06-26 19:25:52 +02:00
Bartłomiej Dach
ff562e2dd7
Remove redundant guard
In this particular case guarding with `.IsNull()` makes no sense, as the
`Trigger` is supplied in constructor and cannot feasibly be null. Doing
that only makes sense in scenarios where BDL / dependency injection is
involved.
2023-06-26 19:25:52 +02:00
Dean Herbert
44c08f3944 Add xmldoc for KeyCounterController 2023-06-26 16:47:33 +09:00
Dean Herbert
c8e081c2b6 Remove unused interface 2023-06-26 16:32:19 +09:00
tsrk
350d722c8d
Merge branch 'master' into hud/kc-skinnable 2023-06-25 15:42:08 +02:00
tsrk
a7088ffe22
revert: bring back old attachment flow
As discussed, this would bring more problems that anything.

Refs: 4c39708, f83a4f4
2023-06-25 15:21:55 +02:00
Dean Herbert
df5b389629 Manual fixes to reduce warnings to zero 2023-06-24 01:52:53 +09:00
Dean Herbert
0ab0c52ad5 Automated pass 2023-06-24 01:00:03 +09:00
tsrk
f83a4f4952
refactor: tidy up attachement flow
TODO: find better naming and improve XMLDocs
2023-06-18 22:57:21 +02:00
tsrk
141f9efad5
style(KeyCounterController): remove reliance on Receptor 2023-06-18 21:26:16 +02:00
tsrk
1a8219adf6
style: guard event handler unsubscriptions 2023-06-18 20:20:56 +02:00
Ruki
aba8219d06
Merge branch 'master' into hud/kc-skinnable 2023-06-15 15:48:43 +02:00
tsrk
fcdaf72915
style(KeyCounter): remove useless IsCounting bindable
Counting logic has been moved to the `Trigger`
2023-06-15 12:40:47 +02:00
tsrk
184c793f56
style(KeyCounter): remove useless Content override 2023-06-15 12:39:22 +02:00
tsrk
a61c1116f5
style: remove unused IAttachableSkinComponent on KCD 2023-06-15 12:27:37 +02:00
Dan Balasescu
e78950a162
Merge pull request #23884 from peppy/argon-progress-visibility-light-background
Adjust argon progress display to work well on bright backgrounds
2023-06-15 15:50:53 +09:00
tsrk
42b740a175
Merge branch 'master' into hud/kc-skinnable 2023-06-14 22:19:45 +02:00
tsrk
e26aeea589
feat: make KeyCounterDisplay skinnable 2023-06-14 21:15:12 +02:00
tsrk
c637fddf73
refactor: decouple Trigger logic from KeyCounterDisplay
This allows to keep a coeherent state regardless of the progress of the play
2023-06-14 21:13:35 +02:00
tsrk
e9ef270e46
refactor: move count logic in InputTrigger
This will allow us to keep track of the real count regardless of whether
the key counter has been placed mid-replay or not.
2023-06-14 19:39:28 +02:00
Bartłomiej Dach
af3fbdbfbe
Merge pull request #23829 from Joehuu/truncating-text-tooltips
Add tooltips to truncated text
2023-06-12 23:43:31 +02:00
Dean Herbert
855185ca85 Adjust argon song progress bar's background fill to always display 2023-06-12 16:43:28 +09:00
Dean Herbert
84670d4c90 Adjust argon graph to use a non-gray colour range 2023-06-12 16:22:40 +09:00
Dean Herbert
c2663f27a1 Fix audio settings not displaying while watching a replay 2023-06-09 17:58:44 +09:00
Joseph Madamba
85fedbd025
Add tooltips to truncated text 2023-06-08 19:44:07 -07:00
Dean Herbert
a842f79ad4 Refactor IWorkingBeatmap.Background to GetBackground() 2023-06-08 16:19:32 +09:00
Bartłomiej Dach
be59eb1116
Fix triangles song progress bar blinking during gameplay
Closes #23760.
2023-06-06 18:36:25 +02:00
tsrk
4c397085c5
refactor: improve attachement flow
This removes the hard reliance on individual classes and makes its usage easiser to ingreate anywhere
else.
2023-06-06 00:12:53 +02:00
Dean Herbert
1558723420 Merge branch 'master' into scorev2 2023-05-29 20:06:32 +09:00
Dean Herbert
1a6d9e9ff0 Apply NRT to GameplayLeaderboardScore and change GetDisplayedScore handling
I don't feel too confident with the default scoring function being
assigned in the constructor to a publicly settable delegate. This just
feels a bit more elegant, and handles the (likely-never-used) case where
we need to restore the default function.

An alternative would be to provide the function as a `ctor` argument,
but I believe that wasn't done here to allow using the
`ILeaderboardScore` interface.
2023-05-29 20:00:29 +09:00
Dean Herbert
fcd7a1d51a Move GetDisplayScore xmldoc to interface and remove getter 2023-05-29 19:41:53 +09:00
Dean Herbert
9a886125ad Ensure GameplayScoreCounter's display score is updated on ScoringMode change
This isn't strictly required, but only because of a kind of hacky
behaviour where `HUDOverlay` will recreate all components on a scoring
mode change currently (see
8f6df5ea0f/osu.Game/Screens/Play/HUDOverlay.cs (L410-L418)).

Best we do this just in case that happens to go away in the future.
2023-05-29 19:00:02 +09:00
Dean Herbert
22be045de3 Apply NRT to GameplayScoreCounter 2023-05-29 18:48:17 +09:00
Dean Herbert
6b0e215246 Add (int) flooring and handle potential NaN value 2023-05-26 20:44:13 +09:00
Dean Herbert
57c63dbb29 Add xmldoc for GetDisplayScore 2023-05-25 19:24:15 +09:00
Dean Herbert
058edb5d5f Centralise beatmap playable duration and bounds lookups 2023-05-25 17:32:48 +09:00
Dan Balasescu
035d0d5c9c Fix multiplayer leaderboard not working 2023-05-19 13:16:57 +09:00
Dan Balasescu
510b8e4c78 Remove ScoreManager.Mode, handle per-use 2023-05-18 20:08:49 +09:00
Dean Herbert
6b4032e34b Add missing binding of IsCounting with contained counters 2023-04-25 21:37:19 +09:00
Dean Herbert
0a861ffcee Restructure key counters to use a common flow 2023-04-25 21:37:19 +09:00
Dean Herbert
7630958633 Stop using Drawable.Name to convey actual UI information 2023-04-25 20:24:36 +09:00
Dean Herbert
b0c09df259 Merge branch 'master' into gameplay/key-counter-abstraction 2023-04-03 15:33:35 +09:00
Dean Herbert
5f9b13a775 Rename Add/AddRange methods as they are no longer conflicting with Container 2023-03-15 18:02:41 +09:00
Dean Herbert
9e444af380 Use object initialisers and fix order of initialisation vs add 2023-03-15 18:02:26 +09:00
Derrick Timmermans
febdca4547
Fix argon progress bar fill being oversized 2023-03-12 02:08:00 +01:00
tsrk
d806b85a30
revert: make counters an IEnumerable again
As suggested by bdach as this would make the last two commits useless

Refs: 5d15426
2023-03-09 10:25:03 +00:00
tsrk
5d15426c27
refactor: make Counters return a Container 2023-03-08 01:52:12 +00:00
tsrk
5b0db94a24
docs: add XMLDoc for methods in KCD 2023-03-08 00:58:54 +00:00
tsrk
44297a7d0a
refactor: make KCD a CompositeDrawable 2023-03-08 00:47:16 +00:00
Bartłomiej Dach
12af002c4d
Reorder and add xmldoc to KeyCounter members 2023-03-07 21:28:42 +01:00
Bartłomiej Dach
98f40b2679
Improve documentation of InputTrigger 2023-03-07 21:22:59 +01:00
Bartłomiej Dach
7ade525eef
Display corner radius setting as percentage 2023-03-07 19:43:52 +01:00
Dean Herbert
dc2945f4f8 Move avatar user loading to BDL also 2023-03-07 17:39:21 +09:00
Dean Herbert
5e90b67be0 Move GameplayState usage to BDL 2023-03-07 17:01:29 +09:00
Dean Herbert
d98199961b Adjust default sizing to fit a bit better with existing elements 2023-03-07 17:00:10 +09:00
Dean Herbert
6a7c4d0bf7 Remove NRT disables in new classes 2023-03-07 16:41:39 +09:00
Dean Herbert
97ba236eb1 Add basic xmldoc to KeyCounter classes 2023-03-07 16:41:39 +09:00
Dean Herbert
28520414aa Move KeyCounter components to HUD namespace 2023-03-07 16:41:39 +09:00
tsrk
fc0e27fb15
style: use normalised CornerRadius values 2023-03-06 20:11:52 +00:00
tsrk
952814604e
style: fix late night oopsies 2023-03-06 20:06:56 +00:00
tsrk
3a240aaa5f
style: use 64 radius 2023-03-06 10:27:59 +00:00
tsrk
07bde4990d
feat: implement PlayerAvatar 2023-03-05 23:17:39 +00:00
tsrk
654eacd449
feat(l10n): localise CornerRadius 2023-03-05 23:10:42 +00:00
tsrk
082bfe3621
refactor: SkinnableAvatar to PlayerAvatar 2023-03-05 23:09:02 +00:00
tsrk
d5ba5eed88
fix(SkinnableAvatar): init avatar.CornerRadius 2023-03-03 23:47:22 +00:00
tsrk
d39b8c7c23
fix(SkinnableAvatar): update outdated interface 2023-03-03 19:35:45 +00:00
Ruki
e75aa9138b
Merge branch 'ppy:master' into hud/avatar-thing 2023-03-03 20:03:56 +01:00
Dean Herbert
d159d6b970 Rename ISkinnableDrawable to ISerialisableDrawable 2023-02-15 18:37:41 +09:00
Dean Herbert
6010dde86e Move SkinnableInfo to better namespace 2023-02-15 18:23:10 +09:00
Terochi
81c3e0da31 Fixed timeLeft counter in SongProgressInfo being out of bounds after rotation 2023-02-10 17:58:48 +01:00
Dean Herbert
778b8a9bf7 Fix default settings not being serialised / state tracked correctly 2023-02-06 15:00:42 +09:00
mk56-spn
88872cf1cf Use ``GetTrueGameplayRate()`` to remove need for jank 2023-02-04 00:53:54 +01:00
mk56-spn
d9bee958dd Stop ``BPMCounter.cs``'s value from going to 0 after failing. 2023-02-03 23:56:34 +01:00
Dean Herbert
cf8cfe0d2c Move skin component localisations to namespaces 2023-02-03 15:34:57 +09:00
Dean Herbert
50559643bb Fix incorrectly applied enum localisation 2023-02-03 15:27:11 +09:00
Dean Herbert
32207dc9dd Merge branch 'master' into locale/skin-editor-components 2023-02-03 15:24:00 +09:00
Dean Herbert
edecd2ee25 Merge branch 'master' into middle-click-replay-pause 2023-02-02 15:25:51 +09:00
tsrk
0fb6a63709
refactor: change namespacing to allow osu-localisation-analyzer to process all strings 2023-02-02 00:46:14 +00:00
tsrk
8645e705fd
feat: add localisation for Skin editor components 2023-02-01 23:48:05 +00:00
Ruki
96bd79a6f5
Merge branch 'ppy:master' into hud/avatar-thing 2023-01-30 15:43:29 +01:00
Dean Herbert
e5d4979bc3 Fix default health bar having a very weird anchor point in the skin editor 2023-01-26 16:56:37 +09:00
Dean Herbert
2ce32e3209 Refactor update logic to be easier to follow 2023-01-19 19:27:05 +09:00
mk56-spn
b22363ed8c Fix JudgementCounterDisplay.cs max judgement always showing upon changing display mode 2023-01-19 10:31:02 +01:00
Dean Herbert
e58abf7d1a
Merge pull request #22284 from bdach/judgement-counter-broken
Fix "show max judgement" setting not applying initially on judgement counter display
2023-01-19 09:09:06 +09:00
Bartłomiej Dach
b62ff8d644
Merge branch 'master' into skin/argon-song-progress-cleaner 2023-01-18 23:52:12 +01:00
Bartłomiej Dach
b8b7442eb8
Make SongProgressInfo.ShowProgress init-only (and remove duplicate init) 2023-01-18 23:35:40 +01:00
Bartłomiej Dach
769f8c6190
Fix ShowMaxJudgement callback conflicting with JudgementCounter.Pop{In,Out}
Both `JudgementCounterDisplay` (via the `ShowMaxJudgement` callback)
and the `JudgementCounter.Pop{In,Out}` methods were operating on the
alpha of the `JudgementCounter`. This meant that if the counter display
was created with max judgement initially hidden, it would be hidden
by the `ShowMaxJudgement` callback first, but then _unhidden_
by `PopIn()`.
2023-01-18 21:46:28 +01:00
Salman Ahmed
12fc5da143
Merge branch 'master' into frame-stable-cache 2023-01-18 14:16:46 +03:00
Dean Herbert
67b40dd234 Adjust the seek effect to feel better 2023-01-18 17:09:39 +09:00
Dean Herbert
01558a9199 Tidy up height logic and allow hovering above bar for easier interaction 2023-01-18 17:09:29 +09:00
Dean Herbert
f3677ab33d Simplify depth change logic 2023-01-18 16:38:21 +09:00
Dean Herbert
7d0388c55c Cache IFrameStableClock in Player for easier access
Allows directly referencing rather than going through `DrawableRuleset`.
Helps with testing and implementation of the new song progress display
(#22144).
2023-01-18 16:31:58 +09:00
Dean Herbert
42e9b2b48c Tidy up clock logic in all SongProgress classes 2023-01-18 16:29:42 +09:00
Dean Herbert
8bfd853889 Fix missing comment 2023-01-18 16:11:14 +09:00
Dean Herbert
bfb75730a9 Prefix subclasses of DefaultSongProgress with Default 2023-01-18 15:45:16 +09:00
Dean Herbert
7266d8e10d Move "show difficulty graph" settings back to respective implementations to avoid legacy version showing it 2023-01-18 15:31:55 +09:00
Dean Herbert
742a026077 Add comment mentioning why reference clock fallback logic is required 2023-01-18 15:24:35 +09:00
Dean Herbert
e8770b84cd Remove no longer necessary interface type 2023-01-18 15:23:55 +09:00
Dean Herbert
5429979049 Combine common code into SongProgress base class 2023-01-18 15:23:55 +09:00
Dean Herbert
afc12e0b83 Tidy up ISongProgressBar interface 2023-01-18 14:43:20 +09:00
tsrk
f1989ba24d
quality: remove unused Darken bindable boolean 2023-01-17 17:26:05 +00:00
tsrk
d91aa341e5
refactor(ArgonSongProgress): reorder layering and make density graph visible for past time 2023-01-17 13:16:56 +00:00
Dean Herbert
14649160e1 Adjust transform delay to make things feel more snappy 2023-01-17 18:39:21 +09:00
Dean Herbert
81aa7feeb5 Fix using FadeTo on a visibility container 2023-01-17 18:39:21 +09:00
Dean Herbert
48959c0212 Start name not visible to avoid pop out when hidden on startup 2023-01-17 18:35:19 +09:00
Dean Herbert
7d1fd24ab4 Start all counters hidden to fix pop out animation when some portions are hidden 2023-01-17 18:31:25 +09:00
Dean Herbert
448abf897a Tidy up direction assignment 2023-01-17 18:31:08 +09:00
Dean Herbert
ca17993769 Don't use OverlayContainer (what) 2023-01-17 18:30:50 +09:00
Dean Herbert
181473c5fc Rename flow to better match its purpose 2023-01-17 18:28:08 +09:00