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

13080 Commits

Author SHA1 Message Date
Dean Herbert
a92e42bb84 Rename SkinnableTargetContainer to SkinComponentsContainer
Also use full `SkinComponentsContainerLookup` instead of the sub-type.
This will potentially be useful once we bring in per-ruleset targets.
2023-02-15 18:37:41 +09: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
Dean Herbert
9ed068c1e6 Only apply dim changes when background blur is disabled 2023-02-15 14:16:34 +09:00
Dean Herbert
19e3c5d33c Adjust song select background dimming to be more evenly applied 2023-02-15 13:59:24 +09:00
Dean Herbert
7aaaf7fca2 Combine and attempt to simplify the score import / preparation process further 2023-02-14 16:55:35 +09:00
Dean Herbert
8a206234f7 Merge branch 'master' into replay-length-extension 2023-02-14 16:42:26 +09:00
Dean Herbert
51d4ae5241
Merge branch 'master' into footer_V2_implementation 2023-02-14 14:00:53 +09:00
Dean Herbert
f0ebb920b9 Make Actions nullable 2023-02-14 13:54:00 +09:00
MK56
5006dbe3db
Update osu.Game/Screens/Select/FooterV2/FooterButtonV2.cs
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2023-02-14 00:07:02 +01:00
Bartłomiej Dach
939144fb6c
Merge pull request #22628 from EVAST9919/letterbox-no-containers
Remove unnecessary containers in `LetterboxOverlay`
2023-02-13 23:54:48 +01:00
mk56-spn
ae9a17d76b Add offset to FooterButtonV2.cs shadow 2023-02-13 22:20:41 +01:00
mk56-spn
be52d0a60c Add note explaining shadow opacity
pass ColourProvider in from test, instead of hard coding it in `FooterButtonV2.cs`
2023-02-13 22:18:34 +01:00
mk56-spn
61584ba63c Fix corner_radius missing in some parts of FooterButtonV2.cs.
Adjust shadow radius value to 5 to match figma.
2023-02-13 22:15:29 +01:00
mk56-spn
6e6421caea Change FooterV2.cs colour to use ColourProvider instead of OsuColour.
Remove unnecessary `FillFlowContainer`
2023-02-13 22:12:25 +01:00
Andrei Zavatski
2dee783401 Remove not needed containers 2023-02-13 15:14:25 +03:00
tsrk
aa2e0028ab
refactor: hide trigger presence from content 2023-02-13 10:59:10 +00:00
tsrk
11d0e185b8
refactor: separate impl of KeyCounterDisplay
This allows for different layouts of display. Idk, maybe someone would
want to mix both variants? (don't do this please). This commit is mostly
prep for further changes.
2023-02-13 01:36:12 +00:00
tsrk
74a58fb674
refactor: separate things in KeyCounter
To implement different different sources of input for KeyCounter, it
is now possible to create a Trigger class (to inherit) instead of
inheriting KeyCounter. This eases the creation of more input sources
(like for tests) while allowing to implement different UI variants.

That way, if another variant of the key counter needs to implemented
(for whathever reason), this can be done by only inheriting KeyCounter
and changing how things are arranged visually.
2023-02-13 01:24:27 +00:00
Joseph Madamba
cb51b9e350 Use existing ModdingBeatmap activity 2023-02-12 15:01:50 -08:00
Joseph Madamba
bbeef53569 Add TestingBeatmap activity 2023-02-12 13:11:42 -08:00
Joseph Madamba
afb66d8af4 Make user activity class names more specific 2023-02-12 12:32:17 -08:00
Bartłomiej Dach
774eae98cc
Merge branch 'master' into editor-select-timing-on-enter 2023-02-11 16:27:22 +01:00
Bartłomiej Dach
a3cc0d23b3
Fix typo in xmldoc 2023-02-11 16:26:32 +01:00
Dean Herbert
0c5dae5f26
Merge pull request #22529 from ItsShamed/dsc/presence
Add support for `Watching` and `Spectating` activities in `ReplayPlayer` and `SoloSpectatingPlayer`
2023-02-11 17:29:47 +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
6d876fdb9a Automatically select the closest timing point on entering the timing screen 2023-02-10 17:48:56 +09:00
Dean Herbert
03e623d1d2 Move ControlPointList to own file 2023-02-10 17:37:31 +09:00
Dean Herbert
eccde923e5
Merge pull request #22554 from Walavouchey/ranking-accuracycircle-readability
Improve readability of `AccuracyCircle`
2023-02-10 17:03:46 +09:00
Dean Herbert
cf009432cc Centralise accuracy cutoff constants and add lookup helper methods 2023-02-09 15:41:58 +09:00
Walavouchey
57312279f0 adjust RankNotch gap size to match original value 2023-02-09 02:20:05 +01:00
Walavouchey
fd93bd3f50 move rank accuracy requirements to class-local constants 2023-02-09 00:46:24 +01:00
Walavouchey
ee40444fd3 use Precision.AlmostEquals for bounds check 2023-02-08 23:59:19 +01:00
Walavouchey
0531c010eb display RankBadges on on their sector centres
the D `RankBadge` does this anyway. the A and S badges are slightly off
centre to prevent overlap with the SS badge
2023-02-08 14:01:40 +01:00
Walavouchey
6ace6bfee1 ensure AccuracyCircle doesn't land in gaps created by RankNotches 2023-02-08 13:20:53 +01:00
Dean Herbert
3a3c2e78a1 Merge branch 'master' into skin-editor-undo-support 2023-02-08 15:41:58 +09:00
Dean Herbert
b6809e156b
Merge pull request #22432 from mk56-spn/sheared_slider_implementation_clean_ii
Implement a sheared slider for the updated design
2023-02-08 15:01:00 +09:00
PC
7e127dafe2 Update reference 2023-02-07 11:52:47 +03:00
Dean Herbert
e162fd56da Change the way initial state saving works in EditorChangeHandler to be closer to first change 2023-02-07 16:22:51 +09:00
tsrk
bc89f8dc5b
feat: add name and rulset verb display support 2023-02-06 12:44:00 +00:00
Cootz
2c7386db39 FIx score appearing on BeatmapLeaderboard and TopLocalRank 2023-02-06 15:14:14 +03:00
Dean Herbert
aaf3ad805c Fix potential nullref in tests 2023-02-06 19:31:45 +09:00
Dean Herbert
b83c8443ea Ensure pause sample loop is stopped on exiting player 2023-02-06 18:24:31 +09:00
Terochi
43f7665c9e Improved readability again 2023-02-06 09:49:42 +01:00
Dean Herbert
c691a0d3af
Merge branch 'master' into sheared_slider_implementation_clean_ii 2023-02-06 17:49:33 +09:00
Dean Herbert
ddcc02fdfe
Merge pull request #22505 from Joehuu/fix-hover-click-sounds
Fix some clickable elements having no hover and click sounds
2023-02-06 16:52:19 +09:00
Terochi
4f23e096d7 Improved readability 2023-02-06 07:59:37 +01:00
Dean Herbert
778b8a9bf7 Fix default settings not being serialised / state tracked correctly 2023-02-06 15:00:42 +09:00
Dean Herbert
e4b17588f5 Add missing xmldoc to new methods in EditorChangeHandler 2023-02-06 14:11:40 +09:00
Dean Herbert
10ab4d572a Merge branch 'master' into skin-editor-undo-support 2023-02-06 13:46:50 +09:00
tsrk
bf273597ea
feat: actually support status also for Replays 2023-02-06 00:41:10 +00:00
tsrk
d5b2d9ce97
feat: add support for spectating status 2023-02-05 23:58:08 +00:00
Terochi
f58534f60c Extended the length of replay at the end of map 2023-02-05 18:51:28 +01:00
Bartłomiej Dach
ef900bccdf
Merge branch 'master' into BPM_counter_fix 2023-02-04 23:44:58 +01:00
Bartłomiej Dach
cb7540564a
Merge pull request #22504 from peppy/fix-editor-positional-nudge-undo
Fix beatmap editor positional nudging not being undoable
2023-02-04 15:52:34 +01: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
Bartłomiej Dach
97afb83394
Merge branch 'master' into carousel 2023-02-03 22:15:44 +01:00
Bartłomiej Dach
63f7d326c2
Merge branch 'master' into fix-editor-positional-nudge-undo 2023-02-03 21:31:05 +01:00
Bartłomiej Dach
4bd43171e8
Merge branch 'master' into fix-skin-editor-padding-weirdness 2023-02-03 20:28:47 +01:00
Dean Herbert
2cda277c09 Add a basic change handler to the skin editor 2023-02-03 18:57:50 +09:00
Dean Herbert
3345e34544 Move beatmap specific logic out of EditorChangeHandler 2023-02-03 17:53:54 +09:00
Joseph Madamba
5a76c1ab9c Refactor HoverSampleDebounceComponent to inherit Component 2023-02-03 00:29:25 -08:00
Dean Herbert
b437501b0f Fix beatmap editor positional nudging not being undoable 2023-02-03 17:28:58 +09:00
Dean Herbert
554f14151c Apply NRT to EditorChangeHandler 2023-02-03 17:13:24 +09:00
Dean Herbert
b19047b90b Fix skin editor component list having uneven padding 2023-02-03 16:55:51 +09:00
Dean Herbert
4ec46c7476
Merge branch 'master' into footer_V2_implementation 2023-02-03 16:30:16 +09:00
Dean Herbert
48f7e0163c Adjust comments and formatting of comments 2023-02-03 16:27:20 +09:00
Dean Herbert
4248453616 Use FinishTransforms rather than manual duplication of background colour logic 2023-02-03 16:27:20 +09:00
Dean Herbert
a1200b8fe8 Adjust footer button colour handling to read better and take into account mouse down 2023-02-03 16:27:20 +09: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
f7094567d7 Rename and document method to limit scope 2023-02-03 15:04:47 +09:00
mk56-spn
80fd1a0bc7 Remove leftover comment regarding X axis offsets 2023-02-02 18:29:12 +01:00
mk56-spn
3f0ce75bf5 Rename NormalSliderBar.cs to RoundedSliderBar.cs 2023-02-02 17:24:45 +01:00
Dean Herbert
edecd2ee25 Merge branch 'master' into middle-click-replay-pause 2023-02-02 15:25:51 +09:00
Dean Herbert
91fbf388da Use localisation strings from ButtonSystem for better consistency 2023-02-02 15:00:24 +09:00
Dean Herbert
500e9c7944 Refactor into a method rather than property 2023-02-02 14:53:58 +09:00
Dean Herbert
942e7729f3 Merge branch 'master' into carousel 2023-02-02 14:41:55 +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
mk56-spn
f5d579144b Remove free mods button 2023-01-30 12:57:24 +01:00
mk56-spn
41f5e5143a Remove ``onclick` and `mousedown`` override 2023-01-30 12:56:39 +01:00
mk56-spn
091cc155d3 Fix nub naming in OsuCheckbox.cs and associated classes 2023-01-26 16:10:02 +01:00
mk56-spn
a630f1113f Rename nub object in NormalSliderBar.cs class 2023-01-26 15:03:51 +01:00
mk56-spn
374c3b56f6 Rename Nub.cs to NormalNub.cs 2023-01-26 15:03:11 +01:00
mk56-spn
3988131475 Rename OsuSliderBar.cs as NormalSliderBar.cs 2023-01-26 12:12:56 +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
e333e12b2e Fix typo in settings enum (seriously) 2023-01-25 16:32:00 +09:00
Dean Herbert
3faab66f39 Merge branch 'master' into beatmapSelectionBlur 2023-01-25 16:32:00 +09:00
Dean Herbert
1a9ed1ac3f Remove unnecessary IgnoreUserSettings value change 2023-01-25 16:28:06 +09:00
Jérémiah DÉCOMBE
e0a7559d85 variable naming + loc 2023-01-24 09:55:08 +01:00
Jérémiah DÉCOMBE
7ca2a431e6 changing song select background blur setting to boolean 2023-01-24 09:19:53 +01:00
Jérémiah DÉCOMBE
d783998c81 using BindValueChanged and IsCurrentScreen for setting binding 2023-01-24 09:09:05 +01:00
Dean Herbert
bb15ee50e0 Fix beatmap leaderboard potentially showing incorrect leaderboard 2023-01-24 13:52:59 +09:00
Jeremiah DECOMBE
c1876aac88 removing parameter name abbreviations 2023-01-24 00:36:38 +01:00
Jeremiah DECOMBE
b573e42cc2 BeatmapSelectionBackgroundBlurLevel renamed to SongSelectBackgroundBlurLevel 2023-01-24 00:08:11 +01:00
Jeremiah DECOMBE
26adc28943 missing blank line between methods 2023-01-23 23:15:37 +01:00
Jeremiah DECOMBE
f13a5465ba variable naming and loc modifications 2023-01-23 23:07:50 +01:00
Bartłomiej Dach
7483967157
Merge branch 'master' into SliderEnd-Snap 2023-01-23 21:33:16 +01:00
Bartłomiej Dach
1f40b2daf6
Clean up xmldocs 2023-01-23 21:22:18 +01:00
Jérémiah DÉCOMBE
6daa364779 adding setting to adjust blur of the background of the song select screen 2023-01-23 13:53:31 +01:00
Dean Herbert
e3932c077b
Merge pull request #22032 from frenzibyte/fix-potential-difficulty-failure-alt
Fix advanced statistics display potentially performing invalid difficulty calculation
2023-01-23 15:39:47 +09:00
Bartłomiej Dach
06aa3f7798
Rename Stop{SampleAndRemoveFilters -> }()
Now that just one method for stopping samples is left, let's just
repurpose st as the general "stop global effects" method rather than
have it there with a hyperspecific name. It also has good symmetry, as
there already was a `Start()` method in the class.
2023-01-22 09:29:22 +01:00
Bartłomiej Dach
9e4e85e3e3
Inline StopSample() into StopSampleAndRemoveFilters()
The first method no longer has any callers except for the second one.
2023-01-22 09:26:01 +01:00
Bartłomiej Dach
0edfd24410
Remove unnecessary sample stop in Restart()
It is unnecessary, as a successful restart will exit the current player
screen, and `OnExiting()` has another `StopSampleAndRemoveFilters()`
call, which means that in the restart flow the sample was actually
getting stopped twice.

Standard exit flow is fine, it only stopped the sample once.
2023-01-22 09:24:12 +01:00
Matheus Filipe dos Santos Reinert
5b1a23c697 Replace RemoveFilters call with StopSampleAndRemoveFilters 2023-01-22 01:44:16 -03:00
Matheus Filipe dos Santos Reinert
2e1ba6ef49 Create StopSampleAndRemoveFilters method and change RemoveFilters to private 2023-01-22 01:43:40 -03:00
Matheus Filipe dos Santos Reinert
a746cbc6ed Fix failSample still playing after player left FailOverlay 2023-01-22 01:14:33 -03: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
Wleter
f8d8a627b8 change property name 2023-01-18 22:00:39 +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
Wleter
40e99069fc fix typos and newlines 2023-01-18 21:43:09 +01:00
Wleter
ab78dd0436 add collection of selection points. 2023-01-18 21:34:23 +01:00
Bartłomiej Dach
4a6f6300c5
Merge branch 'master' into fix-carousel-sort-change-after-play 2023-01-18 17:15:20 +01:00
Bartłomiej Dach
7ba448b13c
Update comment to match implementation 2023-01-18 17:12:57 +01:00
Wleter
c9375c056e revert back name change 2023-01-18 15:54:24 +01:00
Salman Ahmed
12fc5da143
Merge branch 'master' into frame-stable-cache 2023-01-18 14:16:46 +03:00
Dean Herbert
3b27774561 Remove OnlineID sort consideration 2023-01-18 19:21:02 +09:00
Dean Herbert
43a037c189
Merge pull request #21620 from mk56-spn/JudgementCounter
Add a judgement counter to skin components
2023-01-18 18:43:49 +09:00
Dean Herbert
ecb4727aec Fix formatting issues 2023-01-18 17:33:14 +09:00
Dean Herbert
4cfb059170 Merge branch 'frame-stable-cache' into skin/argon-song-progress-cleaner 2023-01-18 17:21:08 +09:00
Dean Herbert
04705504c5 Move cache to more appropriate location 2023-01-18 17:19:57 +09: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
5a272b4bd6
Merge branch 'master' into skin/argon-song-progress-cleaner 2023-01-18 15:25:02 +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
Dean Herbert
4ad79a8a0a Move IsLoaded check inside BeatmapCarousel 2023-01-18 12:00:47 +09:00
mk56-spn
92a755c5da adjust colourbar to position itself in a more simple fashion 2023-01-17 22:16:59 +01:00
Wleter
788033e1b8 fix unnecessary newline 2023-01-17 21:13:54 +01:00
Bartłomiej Dach
6f11fbdeed
Merge branch 'master' into fix-carousel-sort-change-after-play 2023-01-17 20:46:06 +01:00
Wleter
b8e6a2d87b filter currentEndPointPositions 2023-01-17 20:41:49 +01:00
tsrk
f1989ba24d
quality: remove unused Darken bindable boolean 2023-01-17 17:26:05 +00:00
Dean Herbert
8e1002b744 Fix song select potentially operating on Carousel before it is fully loaded
Should fix test failures like
https://github.com/ppy/osu/actions/runs/3939620830/jobs/6739690253.
2023-01-18 01:56:18 +09: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
Dean Herbert
35ad66eef9 Give flow container a type to avoid locally casting in every location 2023-01-17 18:27:33 +09:00
Dean Herbert
09c7ab3af6 Rename exposed settings to make more sense 2023-01-17 18:27:15 +09:00
Dean Herbert
f923dc5009 Use framework Direction instead of local enum
It should be stable enough to use.
2023-01-17 18:27:15 +09:00
Dean Herbert
0a7d6948ca Nest model class 2023-01-17 18:19:04 +09:00
Dean Herbert
b62b5714e8 Fix TierColours assignment 2023-01-17 18:07:11 +09:00
Dean Herbert
65bd2e74fd Merge branch 'master' into skin/argon-song-progress-cleaner 2023-01-17 18:00:42 +09:00
MK56
a55ce9b586
Merge branch 'master' into JudgementCounter 2023-01-17 09:55:45 +01:00
Dean Herbert
53e7873f6c
Merge branch 'master' into fix-pause-gameplay-action-not-closing 2023-01-17 17:41:16 +09:00
Joseph Madamba
da0eb9b0cb Simplify TriggerClicks in gameplay menu overlays 2023-01-17 00:34:52 -08:00
Dean Herbert
a9ac28b504 Add fallback sorts to CarouselBeatmapSet to ensure stable sorting 2023-01-17 16:40:25 +09:00
Joseph Madamba
8f7cb18217 Use TriggerClick() instead of calling BackButton action for pause gameplay 2023-01-16 23:36:28 -08:00
Dean Herbert
9acf22b2b1
Merge branch 'master' into song_select_nullability 2023-01-17 15:29:37 +09:00
Dean Herbert
ef35493864 Avoid need for weird null check by reordering initialisation process 2023-01-17 15:27:21 +09:00
Dean Herbert
a02556d2fa Move hover logic to SettingsToolboxGroup to avoid expanded state clash 2023-01-17 14:43:22 +09:00
Dean Herbert
6a0bf89401 Merge branch 'master' into replay-menu-expanded-state-memory 2023-01-17 14:30:23 +09:00
Dean Herbert
4224907f08
Merge pull request #22208 from Feodor0090/editor-loc
Localise most visible parts of editor
2023-01-16 23:05:17 +09:00
OliBomby
832d033777 Fix merge issues 2023-01-16 01:09:04 +01:00
OliBomby
ab6bf6e1dc Merge remote-tracking branch 'upstream/master' into carousel 2023-01-16 00:27:56 +01:00
OliBomby
1c0a650575 Fix typo 2023-01-16 00:17:26 +01:00
OliBomby
87ee9ab813 Added custom menu items in DrawableCarouselBeatmap 2023-01-16 00:13:12 +01:00
ansel
00acea59fc Move some strings to common 2023-01-15 19:37:40 +03:00
mk56-spn
9a29c9ae26 remove hacky method to check if carousel is null 2023-01-15 15:32:53 +01:00
Dean Herbert
c5775aa452
Merge branch 'master' into song_select_nullability 2023-01-15 22:44:13 +09:00
Dean Herbert
4cf4a66858 Make MusicController a required dependency of SongSelect 2023-01-15 22:43:30 +09:00
Dean Herbert
f7af5a8115 Revert some formatting changes 2023-01-15 22:39:00 +09:00
ansel
5d2e09137c Remove text padding in editor menu for now 2023-01-15 14:40:53 +03:00
ansel
8777d5349b Use existing strings 2023-01-15 14:39:34 +03:00
ansel
87650044bb Localise create/save dialog 2023-01-15 01:50:47 +03:00
ansel
78e562903d Localise part of editor 2023-01-15 01:50:47 +03:00
ansel
24df23f420 Localise background header 2023-01-15 01:49:19 +03:00
ansel
76eefc7573 Add support for localisation where it was missing 2023-01-15 01:46:11 +03:00
integer
a68d4fe5d1 make expansion to not use scheduler 2023-01-14 21:18:51 +00:00
Dean Herbert
4906f37109
Merge pull request #22181 from frenzibyte/attempt-fix-song-select-test-failure
Fix intermittent failure in beatmap carousel tests
2023-01-15 02:35:36 +09:00
integer
2831db53f7 fix wrong control flow on hover lost 2023-01-14 14:19:02 +00:00
ekrctb
e610d19d55
Merge branch 'master' into 18469 2023-01-14 19:53:08 +09:00
Dean Herbert
cfc8fd0aa1
Merge pull request #22188 from Feodor0090/nofs-locale
Localise some notifications
2023-01-14 18:12:54 +09:00
ansel
77e8315ee2 Adjust naming 2023-01-14 02:30:10 +03:00
ansel
f70dedfd17 Enable nullability for design screen 2023-01-14 02:24:48 +03:00
ansel
4b42240fba Enable nullability for setup screen 2023-01-14 02:24:28 +03:00
ansel
78adaa9b03 Enable nullability for timing screen 2023-01-14 02:23:21 +03:00
integer
c3c1d77e8e make PlayerSettingsGroup expand on hover 2023-01-13 23:07:59 +00:00
integer
0b5c89d01f revert additions to SessionStatics 2023-01-13 23:07:21 +00:00
ansel
515ada6815 Remove CanBeNull where it's no longer requered 2023-01-13 23:11:50 +03:00
ansel
a41a031909 Localise some notifications 2023-01-13 23:11:25 +03:00
Salman Ahmed
112cf403ec Fix intermittent failure in certain beatmap carousel tests 2023-01-13 19:41:44 +03:00
Dylan Nantz
6028abff39 Code Quality 2023-01-13 10:16:52 -05:00
Dylan Nantz
5dd0aaccef Merge branch 'master' of https://github.com/ppy/osu into 18469 2023-01-13 09:54:29 -05:00
Dylan Nantz
e38075c4ef Use PlacementState to check juice stream placement 2023-01-13 09:37:23 -05:00
mk56-spn
a6b6fb864e Make carousel non nullable and ensure pre load usages of methods that reference it are protected against failure 2023-01-13 13:10:29 +01:00
mk56-spn
403ca05e5e Enable nullability for song select 2023-01-13 00:52:14 +01:00
ansel
2365b065a4 Enable nullability for editor components 2023-01-12 18:07:54 +03:00
Ruki
4439698867
Update osu.Game/Screens/Play/HUD/ArgonSongProgress.cs 2023-01-12 13:19:03 +01:00
Dean Herbert
d2309feec2
Merge branch 'master' into skin/argon-song-progress-cleaner 2023-01-12 19:49:27 +09:00
MK56
1597bcbb6f
Merge branch 'master' into JudgementCounter 2023-01-11 11:04:37 +01:00
Dean Herbert
df54410075 Fix skin fail sound not correctly playing
Closes #21719. Tested using skin in issue thread.
2023-01-11 17:31:30 +09:00
Wleter
98ffcd33c7
Merge branch 'ppy:master' into SliderEnd-Snap 2023-01-10 21:22:13 +01:00
Wleter
88060a3ea0 add snapping for slider's end 2023-01-10 21:21:09 +01:00
Bartłomiej Dach
1eaabb5ca8
Merge branch 'master' into carousel_nullability_disabling_removal 2023-01-10 18:39:42 +01:00
Bartłomiej Dach
aab84d50eb
Remove boxing overhead in CarouselItem comparator 2023-01-10 18:35:06 +01:00
Dean Herbert
3210586eb6
Merge pull request #21519 from mk56-spn/variable_BPM_counter
Add dynamic BPM counter to SkinEditor
2023-01-10 18:43:50 +09:00
Dean Herbert
60eeb4607c
Merge pull request #19528 from Joehuu/fix-op-non-current-onexiting
Fix online play screen only accounting for current sub screen onexiting blocks
2023-01-10 18:43:19 +09:00
Dean Herbert
37d219a8ad Fix comments, remove fixed width on "bpm" text and adjust baseline adjust slightly 2023-01-10 18:20:39 +09:00
Dean Herbert
85f542c3a8 Make GameplayClock private 2023-01-10 18:15:10 +09:00
Dean Herbert
3c93d0551c Move setting up to be in line with other toggle 2023-01-10 18:07:15 +09:00
Dean Herbert
63ce5787e7 Start bars invisible 2023-01-10 18:06:45 +09:00
Dean Herbert
b7e845201f Fix whitespace around Debug.Assert 2023-01-10 18:03:17 +09:00
Dean Herbert
d53dafa29f Revert Debug.Assert 2023-01-10 17:52:28 +09:00
Dean Herbert
93038ce496 Use OfType instead of forceful nullability 2023-01-10 17:52:21 +09:00
tsrk
91cde5ffbf
feat(hud/gameplay): implement Argon variant of SongProgress 2023-01-09 21:59:48 +01:00
tsrk
5952cd08a2
feat(hud/gameplay): implement Argon song progress density graph (SegmentedGraph) 2023-01-09 21:58:53 +01:00
tsrk
28d2d766eb
refactor(hud/gameplay/SongProgressInfo): minor changes to text positioning, font and colour 2023-01-09 21:57:32 +01:00
tsrk
f6265197e8
feat(hud/gameplay): Add Argon variant of SongProgressBar 2023-01-09 21:56:29 +01:00
tsrk
0f1fe1d683
refactor(hud/gameplay/SongProgress): Add interface to designate SongProgressBars 2023-01-09 21:48:53 +01:00
mk56-spn
602062f011 Address unclear naming issue 2023-01-09 21:04:51 +01:00
mk56-spn
6abbc7dc28 Further fix nullability 2023-01-09 20:59:28 +01:00
mk56-spn
d6f60db234 Add the ability to toggle the visibility of the main bar in BarHitErrorMeter.cs 2023-01-09 18:51:51 +01:00
mk56-spn
69260ca3c3 remove unnecessary usages of nullable forgiveness, add asserts for debugging 2023-01-09 18:36:55 +01:00
Dean Herbert
9d97c1a0bd
Merge branch 'master' into variable_BPM_counter 2023-01-09 19:26:34 +09:00
Dean Herbert
54b2fe9df3
Merge branch 'master' into fix-op-non-current-onexiting 2023-01-09 19:12:42 +09:00
Joseph Madamba
c2dd822e4a Make pause overlay close with pause gameplay action 2023-01-08 14:12:09 -08:00
Bartłomiej Dach
2803c98612
Merge pull request #22047 from Feodor0090/wcd-length-fix
Fix `WaveformComparisonDisplay` does not take into account start time of control points
2023-01-08 20:36:35 +01:00
Salman Ahmed
f2609820c1
Merge branch 'master' into fix-player-loader-logo-drag 2023-01-08 21:48:07 +03:00
Bartłomiej Dach
e08b7c615b
Merge branch 'master' into wcd-length-fix 2023-01-08 19:44:12 +01:00
Salman Ahmed
7dd0f892c8
Merge branch 'master' into fix-player-loader-logo-drag 2023-01-08 21:29:03 +03:00
mk56-spn
47fb467012 Remove nullable disabling in carousel 2023-01-08 19:02:48 +01:00
Bartłomiej Dach
9fd305a970
Merge branch 'master' into editor-bg-refresh 2023-01-08 18:57:04 +01:00
Dean Herbert
750b55d9b7 Update other events to have matching return types (and animate more) 2023-01-08 22:28:19 +09:00
Joseph Madamba
45bae5d424 Add middle mouse to toggle pause replay instead of using pause gameplay keybinds 2023-01-07 11:30:02 -08:00
Joseph Madamba
bae3a6851b Block hover events behind logo even if action is null 2023-01-07 11:15:51 -08:00
ansel
aaeb43fbb2 Return older file if new one is null 2023-01-07 18:15:57 +03:00
Salman Ahmed
a65466bdac
Merge branch 'master' into previewTime 2023-01-07 15:07:09 +03:00
Salman Ahmed
abca13eb6c Rewrite visualisation piece to bind once and without potential event leak 2023-01-07 14:40:15 +03:00
Salman Ahmed
904c76e437 Use sane BeatmapInfo for preview time mutation
`EditorBeatmap.BeatmapInfo` is usually the correct instance for mutating
properties that should persist in the database.
2023-01-07 14:23:36 +03:00
ansel
b47cef838c Nullability 2023-01-07 03:08:02 +03:00
ansel
167ac8b5dd Fix editor object being requered 2023-01-07 03:03:52 +03:00
Joseph Madamba
53d7dcefe5 Fix osu! logo not being draggable on player loader 2023-01-06 09:30:25 -08:00
ansel
9364c7775d Refresh background on file change in editor 2023-01-06 19:26:30 +03:00
ansel
e90c698e62 Fix WCD does not take into account start time of control points 2023-01-06 16:35:39 +03:00
Dean Herbert
c0cfa66510
Merge pull request #21754 from Feodor0090/waveform-invalidate
Reload waveform on track replacement in editor
2023-01-06 19:57:27 +08:00
Dean Herbert
938658649e
Merge pull request #22043 from frenzibyte/fix-solo-leaderboard-hyphen
Fix gameplay leaderboard showing "-" on non-tracked scores
2023-01-06 18:12:00 +08:00
Dean Herbert
464f251c0c
Merge branch 'master' into beatmap-set-link-genre-language 2023-01-06 17:09:06 +08:00
Salman Ahmed
408356d05e Fix gameplay leaderboard showing "-" on non-tracked scores 2023-01-06 12:06:47 +03:00
ansel
c6e2104ec2 Refresh waveforms instead of recreating the whole component 2023-01-06 03:46:49 +03:00
Salman Ahmed
88148567c0
Merge branch 'master' into fix-playlist-item-regressions 2023-01-05 15:31:27 +03:00
Salman Ahmed
8f37e69dc4 Schedule difficulty calculation to avoid performing with incomplete state updates 2023-01-05 12:52:08 +03:00
Salman Ahmed
39221a52da Fix advanced statistics display using decoupled ruleset bindable for difficulty calculation 2023-01-05 12:52:08 +03:00
Joseph Madamba
5fb6f220e6 Fix playlist items not animating when rearranging 2023-01-03 11:10:02 -08:00
Joseph Madamba
5dfd4180c8 Fix playlist selecting random item when not allowed after deleting 2023-01-03 11:10:02 -08:00
Dean Herbert
beb3b96aca Harden request equality checks 2023-01-04 01:44:00 +08:00
Dean Herbert
8f7ae0395a Fix song select leaderboard potentially showing wrong scores on quick beatmap changes
Closes #22002.
2023-01-03 00:55:09 +08:00
Joseph Madamba
d79ee29f29 Make replays pause with middle mouse button instead of exiting 2023-01-01 21:01:12 -08:00
Bartłomiej Dach
b689ad6d80
Fix changing preview point not prompting for save 2023-01-01 19:54:26 +01:00
Bartłomiej Dach
efdd557f3b
Adjust binding logic 2023-01-01 19:45:23 +01:00
Bartłomiej Dach
452ebddfd2
Adjust visual appearance of preview time part
- Use slightly different hue of green to distinguish from difficulty
  control points. The colour is still not ideal, but picking
  a distinctive enough hue is pretty hard.

- Place the preview time part at the bottom rather at the top.
  Not sure why it was at the top; not only could it overlap with the
  control points, but it also looked quite badly misaligned there
  when bookmarks were displayed at the bottom.
2023-01-01 19:42:55 +01:00
Bartłomiej Dach
a82f1a6abd
Adjust method naming and copy 2023-01-01 18:50:47 +01:00
Bartłomiej Dach
0e59b55a12
Merge branch 'master' into previewTime 2023-01-01 18:38:19 +01:00
Bartłomiej Dach
6509d3538c
Fix counter initially rolling down from 100% to 0% in minimum achievable mode 2022-12-30 21:13:41 +01:00
Bartłomiej Dach
7580ab78be
Move binding to LoadComplete() 2022-12-30 21:08:48 +01:00
Bartłomiej Dach
6d42cc5a36
Naming pass 2022-12-30 20:30:58 +01:00
cdwcgt
d60349c7c6
add description 2022-12-30 23:24:41 +09:00
cdwcgt
8beb168be9
remove nullable disabled 2022-12-30 23:24:20 +09:00
cdwcgt
784fe7ecf2
rename AccType to AccuracyDisplay 2022-12-30 23:06:10 +09:00
cdwcgt
23c485c763
readonly 2022-12-30 22:59:56 +09:00
cdwcgt
a91da2284d
safe way to pass bindable 2022-12-30 22:58:46 +09:00
cdwcgt
3c32a50c12
add new accuracy counter display 2022-12-30 21:19:46 +09:00
mk56-spn
680646d3a6 Make offsetting of bottom bar more readable 2022-12-29 12:02:08 +01:00
Bartłomiej Dach
3c0b8af8f1
Allow unsubscribing from solo statistics updates
This is more of a safety item. To avoid potential duplicate key in
dictionary errors (and also avoid being slightly memory-leaky), allow
`SoloStatisticsWatcher` consumers to dispose of the subscriptions they
take out.
2022-12-28 08:07:48 +01:00
Bartłomiej Dach
04f9a354c3
Convert SoloResultsScreen to NRT 2022-12-28 07:54:36 +01:00
Bartłomiej Dach
e90619244d
Fix incorrect accuracy display on overall ranking view 2022-12-27 19:51:51 +01:00
Dean Herbert
df6f2ad0a1
Merge pull request #21804 from bdach/hide-global-rankings-when-presenting-scores
Only show global rankings on solo results screen when progressing from gameplay
2022-12-27 16:39:26 +08:00
integer
a0690e7ffb replay menus remembers expanded state
no messing with readonly fields
2022-12-27 00:13:46 +00:00
Bartłomiej Dach
01cf96e240
Only show global rankings on results screen when progressing from gameplay 2022-12-26 23:35:45 +01:00
Berkan Diler
c7ca4bbba5 Use generic Enum methods 2022-12-26 20:36:39 +01:00
Joseph Madamba
0dba25e0ab Refactor to just exit sub screens until lounge sub screen
Co-Authored-By: Salman Ahmed <frenzibyte@gmail.com>
2022-12-25 21:56:22 -08:00
Joseph Madamba
5232588a1f Use PerformFromScreen to exit sub screens instead 2022-12-24 20:04:45 -08:00
Joseph Madamba
00ed5d6f92 Merge remote-tracking branch 'upstream/master' into fix-op-non-current-onexiting 2022-12-24 14:01:11 -08:00
Bartłomiej Dach
36a6f3685e
Don't show global rankings display when not logged in 2022-12-24 14:35:11 +01:00
Bartłomiej Dach
da519acb20
Add overall ranking display to solo results 2022-12-24 14:35:04 +01:00
Bartłomiej Dach
3abdf557ea
Add protected method for customising statistics panel rows 2022-12-24 14:35:00 +01:00
Bartłomiej Dach
600ada46be
Add protected method for customising statistics panel 2022-12-24 14:34:54 +01:00
Bartłomiej Dach
cf0b3ec879
Merge branch 'master' into score-stats-display 2022-12-24 14:32:08 +01:00
Bartłomiej Dach
83a50816b6
Remove unused constructor param 2022-12-24 10:44:38 +01:00
Bartłomiej Dach
4e5109a649
Use plain bindable flow instead of binding to watcher directly 2022-12-24 10:27:28 +01:00
Bartłomiej Dach
c7f248e13c
Implement overall ranking display for solo results screen 2022-12-24 00:30:38 +01:00
Joseph Madamba
494886ef92 Rename Text to Metadata 2022-12-23 11:11:15 -08:00
ansel
f25439e359 Move track change subscription to LoadComplete 2022-12-23 01:54:49 +03:00
Bartłomiej Dach
676d4a0d6d
Merge branch 'master' into fix-waveform-zoom-reload 2022-12-22 23:48:50 +01:00
Salman Ahmed
0cb9b79834 Fix ZoomableScrollContainer potentially not updating content width on setup 2022-12-23 00:56:38 +03:00
Salman Ahmed
30de9ba795 Dispose previous waveform on track reload 2022-12-23 00:35:59 +03:00
Berkan Diler
08d2fbeb8e Use new ArgumentNullException.ThrowIfNull throw-helper API 2022-12-22 21:27:59 +01:00
ansel
20370bd5ae Invalidate waveform on track load 2022-12-22 20:49:09 +03:00
ansel
d0645ce151 Rewrite waveform invalidation 2022-12-22 15:59:51 +03:00
ansel
f2e8776529 Bind to clock instead of music controller 2022-12-22 15:35:53 +03:00
ansel
a18ece8610 Listen for track reload in timing screen 2022-12-22 01:24:23 +03:00
ansel
7089bb6c23 Listen for track reload in timeline 2022-12-22 01:23:59 +03:00
ansel
66a02374da Clear cached waveform on track change in editor 2022-12-22 01:23:24 +03:00
Bartłomiej Dach
6948035a3c
Ensure score submission attempt completion before notifying spectator server when exiting play early
When a `SubmittingPlayer` gameplay session ends with the successful
completion of a beatmap, `PrepareScoreForResultsAsync()` ensures that
the score submission request is sent to and responded to by osu-web
before calling `ISpectatorClient.EndPlaying()`.

While previously this was mostly an implementation detail, this becomes
important when considering that more and more server-side flows (replay
upload, notifying about score processing completion) hook into
`EndPlaying()`, and assume that by the point that message arrives at
osu-spectator-server, the score has already been submitted and has been
assigned a score ID that corresponds to the score submission token.

As it turns out, in the early-exit path (when the user exits the play
midway through, retries, or just fails), the same ordering guarantees
were not provided. The score's submission ran concurrently to the
spectator client `EndPlaying()` call, therefore creating a network
race. osu-server-spectator components that implciitly relied on the
ordering provided by the happy path, could therefore fail to unmap the
score submission token to a score ID.

Note that as written, the osu-server-spectator replay upload flow is
not really affected by this, as it self-corrects by essentially polling
the database and trying to unmap the score submission token to a score
ID for up to 30 seconds. However, this change would have the benefit of
reducing the polls required in such cases to just one DB retrieval.
2022-12-21 22:23:26 +01:00
Joseph Madamba
1d39e8d0ce Refactor MetadataSection to use generics and inheritance 2022-12-21 10:18:47 -08:00
mk56-spn
626f4b0dfd fix test failures, improve button logic 2022-12-19 16:35:20 +01:00
MK56
878e2f24c4
Merge branch 'master' into footer_V2_implementation 2022-12-19 13:19:23 +01:00
mk56-spn
407b0a0ad3 Address issues from Joehuu review 2022-12-19 11:30:23 +01:00
Dean Herbert
4a7d7c6ed9 Use MaxBy in all locations that can and update inspection level to match dotnet-build 2022-12-19 16:47:10 +09:00
Dean Herbert
b64a5cbda6 Merge branch 'master' into guard-url-protocols 2022-12-19 15:46:45 +09:00
Bartłomiej Dach
fea0895f16
Call spectator EndPlaying() immediately after score submission
As it turns out, in current `master`, if a gameplay session ends
normally (i.e. by the player completing the beatmap in full), then
the spectator server `EndPlaying()` method will not be called until
`SubmittingPlayer.OnExiting()`, which in practice turns out to be
the moment where the user exits from the post-gameplay results screen
back to song select.

There is seemingly no reasonable cause for not calling this earlier. In
fact the solo spectator flow looks more broken without this call than
with, because without it the spectator view just hangs until the
spectated player exits gameplay, and *only then* shows results, rather
than do it upon normal gameplay completion.
2022-12-17 21:35:43 +01:00
mk56-spn
f3873b73e3 Clean up syntax for readability 2022-12-16 20:56:34 +01:00
Dean Herbert
ba54551313 Merge branch 'master' into guard-url-protocols 2022-12-16 18:23:16 +09:00
Dean Herbert
27c497145f Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0 2022-12-16 18:16:26 +09:00
Jamie Taylor
d5b2c7dfe9
Clamp SFX panning on results screen 2022-12-16 17:19:07 +09:00
Dan Balasescu
cbee72897a
Merge pull request #21654 from Susko3/use-localisable-strings-for-dates-and-times
Use `LocalisableString`s for date and time formats
2022-12-16 16:17:14 +09:00
Dean Herbert
232f590ba3
Merge pull request #21628 from peppy/go-hard-file-writes
Use hard links on windows when importing beatmaps from a legacy osu! install
2022-12-16 14:52:57 +09:00
cdwcgt
a4d28aff6d
fix typo 2022-12-16 10:48:56 +09:00
cdwcgt
79e27c2d9d
PreviewTimePart will not show if preview time is -1 2022-12-16 10:44:07 +09:00
cdwcgt
f0246df1a9
only get; 2022-12-16 09:58:58 +09:00
Susko3
0f34d908c7 Use LocalisableStrings for date and time formats 2022-12-16 00:05:47 +01:00
cdwcgt
c164744064
Add ability to set preview time 2022-12-16 01:03:30 +09:00
mk56-spn
0c177aa7de Improve tests, simplify "updateDisplay" method 2022-12-15 16:12:34 +01:00
mk56-spn
9a235b3213 remove rolling duration, fix issue with loading 2022-12-15 15:21:03 +01:00
Dean Herbert
50dc76d579
Merge pull request #21618 from smoogipoo/multi-spec-only-local-results
Only show local results in multi-spectator results screen
2022-12-14 14:00:02 +09:00
Dean Herbert
b8904fe747 Move ImportParameters to better home 2022-12-13 21:41:26 +09:00
Dean Herbert
cb16d62700 Hook up ImportParameter flow with IModelImporter caller methods 2022-12-13 21:29:32 +09:00
mk56-spn
edb46e422c Fix "using" name in HUD overlay 2022-12-12 15:15:30 +01:00
mk56-spn
99d83315c1 change settings order 2022-12-12 15:10:45 +01:00
mk56-spn
8efe7528e3 change ruleset source to avoid issues with converted beatmaps 2022-12-12 15:10:10 +01:00
mk56-spn
4d592184ca temp cmt 2022-12-12 11:53:07 +01:00
Dan Balasescu
7b48c91fe2 Only show local results in multi-spectator results screen 2022-12-12 18:56:43 +09:00
mk56-spn
58bf081096 Fix judgement counter not loading after first attempt in gameplay, Fix typo in Display 2022-12-12 10:52:55 +01:00
Dan Balasescu
caa0b7c290 Move score token to BeginPlaying 2022-12-12 13:59:27 +09:00
mk56-spn
f0c780f1f6 Fix tally header 2022-12-12 00:48:35 +01:00
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