1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-19 17:03:02 +08:00
Commit Graph

4311 Commits

Author SHA1 Message Date
Dean Herbert
6f1664f0a6
Add beat-synced animation to break overlay
I've been meaning to make the progress bar synchronise with the beat
rather than a continuous countdown, just to give the overlay a bit more
of a rhythmic feel.

Not completely happy with how this feels but I think it's a start?

I had to refactor how the break overlay works in the process. It no
longer creates transforms for all breaks ahead-of-time, which could be
argued as a better way of doing things. It's more dynamically able to
handle breaks now (maybe useful for the future, who knows).
2024-08-27 16:34:37 +09:00
Dean Herbert
98faa07590
Apply NRT to BreakOverlay 2024-08-27 15:01:51 +09:00
Dean Herbert
797b020747
Add shadow around break overlay middle content to make sure it remains visible 2024-08-27 15:01:50 +09:00
Dean Herbert
abdbe510b8
Move break overlay (and cursor) further forward in depth
I didn't really want to move the cursor in front of the HUD, but we face
a bit of an impossible scenario otherwise (it should definitely be in
front of the break overlay for visibility).

So I'll deal with it for now.
2024-08-27 14:52:11 +09:00
Dean Herbert
9a21174582
Move GlobalSkinnableContainers to global scope 2024-08-22 18:46:07 +09:00
Dean Herbert
f37cab0c6e
Rename SkinComponentsContainerLookup to GlobalSkinnableContainerLookup 2024-08-22 18:39:36 +09:00
Dean Herbert
41756520b1
Rename SkinComponentsContainer to SkinnableContainer 2024-08-22 17:42:50 +09:00
Dean Herbert
54e5f1c9f0
Merge pull request #29556 from frenzibyte/kiai-star-bursts
Add star fountains/bursts when entering kiai mode in gameplay
2024-08-22 14:14:25 +09:00
Salman Ahmed
c92af71029 Add in-gameplay version of kiai star fountains/burst 2024-08-21 17:34:38 +09:00
Salman Ahmed
0d358a1dae Fix resume overlay appearing behind HUD/skip overlays 2024-08-21 02:53:11 +09:00
Dean Herbert
6985e2e657
Increase default visibility on touch platforms 2024-08-19 20:32:05 +09:00
Dean Herbert
005b1038a3
Change "hold for menu" button to only show for touch by default 2024-08-19 20:23:25 +09:00
Salman Ahmed
3a4546d62d Remove x symbol from argon mania combo counter 2024-08-15 15:08:35 +09:00
Dean Herbert
e465049050
Merge branch 'master' into mania-combo-counter 2024-08-14 15:12:00 +09:00
ArijanJ
fed5b9d747
Fix one more inspectcode warning 2024-08-10 09:45:30 +02:00
ArijanJ
d01e76d9db
Fix double blank line 2024-08-09 23:08:22 +02:00
ArijanJ
2dee8bef7e
Add option to hide song progress time/text 2024-08-09 22:50:37 +02:00
Dean Herbert
161734af95
Simplify argon mania combo counter implementation by sharing with base counter 2024-08-09 15:46:57 +09:00
Dean Herbert
e645651ef4
Merge branch 'master' into mania-combo-counter 2024-08-09 00:19:17 +09:00
Dean Herbert
8619bbb943
Fix legacy key counter's background being visible when intended to be hidden 2024-08-06 16:12:00 +09:00
Salman Ahmed
818b60a3d8 Fix pause overlay hiding input from ruleset input manager
If a key is pressed while the pause overlay is visible, the ruleset input manager will not see it, therefore if the user resumes while the key is held then releases the key, the ruleset input manager will not receive the key up event.
2024-07-19 18:48:35 +03:00
Salman Ahmed
d7651ef387 Add extensive test cases for correct input handling while paused in osu! & non-osu! 2024-07-19 18:48:35 +03:00
Dean Herbert
75344f9c5c
Fix break overlay progress bar becoming a pancake near end of break 2024-07-10 19:28:37 +09:00
Dean Herbert
5350945340
Update HasFlag usages 2024-07-03 00:19:04 +09:00
Bartłomiej Dach
659505f711
Adjust calls to GetContainingInputManager() 2024-06-18 07:41:19 +02:00
Dean Herbert
15fbad0097
Merge pull request #28480 from bdach/storyboard-pass-fail-show
Implement toggling visibility of pass and fail storyboard layers
2024-06-16 11:08:00 +09:00
Dean Herbert
ff2d721029
Inline enabled setting 2024-06-15 17:34:04 +08:00
Shiumano
6c82f1de9b Set to enable or disable at load time 2024-06-14 21:43:17 +09:00
Bartłomiej Dach
67ca7e4135
Implement toggling visibility of pass and fail storyboard layers
Closes https://github.com/ppy/osu/issues/6842.

This is a rather barebones implementation, just to get this in place
somehow at least. The logic is simple - 50% health or above shows pass
layer, anything below shows fail layer.

This does not match stable logic all across the board because I have
no idea how to package that. Stable defines "passing" in like fifty
ways:

- in mania it's >80% HP
  (bb57924c15/osu!/GameModes/Play/Rulesets/Mania/RulesetMania.cs#L333-L336)
- in taiko it's >80% *accuracy*
  (bb57924c15/osu!/GameModes/Play/Rulesets/Taiko/RulesetTaiko.cs#L486-L492)
- there's also the part where "geki additions" will unconditionally set
  passing state
  (bb57924c15/osu!/GameModes/Play/Player.cs#L3561-L3564)
- and also the part where at the end of the map, the final passing state
  is determined by checking whether the user passed more sections than
  failed
  (bb57924c15/osu!/GameModes/Play/Player.cs#L3320)

The biggest issues of these are probably the first two, and they can
*probably* be fixed, but would require a new member on `Ruleset` and I'm
not sure how to make one look, so I'm not doing that at this time
pending collection of ideas on how to do that.
2024-06-14 13:59:02 +02:00
ColdVolcano
4048a4bdfb fix accuracy counter separating whole and fraction parts with wireframes off 2024-06-11 02:20:14 -06:00
Bartłomiej Dach
4cd1ccc4d4
Merge branch 'master' into add-rank-display 2024-06-07 09:33:03 +02:00
Bartłomiej Dach
bdfce4b9da
Fix xmldoc reference 2024-05-27 08:26:00 +02:00
Dean Herbert
11c3d11db9
Fix cinema mod not hiding playfield skin layer 2024-05-27 14:52:28 +09:00
Dean Herbert
d0b1ebff5a
Revert "Temporary rollback of framework / SDL3"
This reverts commit d7d569cf4e.
2024-05-22 16:29:39 +08:00
Dean Herbert
d7d569cf4e
Temporary rollback of framework / SDL3 2024-05-21 14:36:16 +08:00
Dean Herbert
cff865b556
Continue loading even when osu! logo is being dragged at loading screen
Closes https://github.com/ppy/osu/issues/28130.
2024-05-14 23:54:07 +08:00
Salman Ahmed
6ddf8f8498 Few cleanups 2024-05-10 06:55:02 +03:00
Salman Ahmed
49692e168e Fix ModDisplay expanding on load with "always contracted/expanded" modes
This is especially visible when reloading `SongSelectFooterV2` while multiple mods are already selected. The mods will appear expanded then contract.
2024-05-10 06:48:18 +03:00
Salman Ahmed
6b91b4abf4 Add simple implementation for extended mods display in new footer design 2024-05-10 02:20:48 +03:00
Joseph Madamba
1665c5e0e1 Use existing AutomaticallyDownloadMissingBeatmaps localisation on solo spectator screen 2024-05-05 14:41:48 -07:00
Dean Herbert
f9ef689492
Don't hide playfield layer with HUD 2024-05-02 15:36:40 +08:00
Dean Herbert
b8209b92f6
Add delay before delayed resume starts
It was previously a bit sudden after dismissing the pause screen. Now
there's a short delay before the actual countdown begins.
2024-05-01 20:30:48 +08:00
Dean Herbert
87e814e201
Fix incorrect xmldoc and adjust colour provider to match Player 2024-05-01 20:30:36 +08:00
Dean Herbert
67c0d7590a
Decrease alpha of delayed resume overlay as count approaches zero
Allows better visibility of playfield underneath it.
2024-05-01 20:29:28 +08:00
Dean Herbert
221af74f95
Merge branch 'master' into generic-math 2024-04-23 22:21:31 +08:00
Dean Herbert
804b1b0d88
Fix settings colour scheme wrong when viewing gameplay from skin editor button
Closes https://github.com/ppy/osu/issues/27949.
2024-04-23 20:54:48 +08:00
Joseph Madamba
49154c0e23 Fix code quality 2024-04-22 11:23:38 -07:00
Bartłomiej Dach
09b0f3005e
Apply generic math-related changes 2024-04-22 10:15:56 +02:00
Joseph Madamba
f282152f99 Enable NRT to ScoreManager 2024-04-14 15:53:29 -07:00
Loreos7
5a8b8908dd fix missing underscore 2024-04-13 14:53:51 +03:00
Dean Herbert
9521c1e3e4
Update hit error metre to use new icons
- [ ] Depends on https://github.com/ppy/osu-resources/pull/317.
2024-04-04 14:31:40 +08:00
Dean Herbert
2e1d63a1c2
Merge pull request #27783 from 64ArthurAraujo/add-invalid-beatmap-hash-custom-message
Add custom message in the case of a `invalid beatmap_hash`
2024-04-04 10:47:22 +08:00
Arthur Araujo
9e92ebaa43
Make message more general
Co-authored-by: Walavouchey <36758269+Walavouchey@users.noreply.github.com>
2024-04-03 19:15:22 -03:00
Arthur Araujo
8e00368f7c Add custom message in the case of a invalid beatmap_hash 2024-04-03 11:30:14 -03:00
Bartłomiej Dach
9d54f1a092
Fix some maps requiring multiple intro skips that weren't there on stable
Closes https://github.com/ppy/osu/issues/25633.

The reason why that particular beatmap did not have a double skip
on stable is here:

    e53980dd76/osu!/GameModes/Play/Player.cs#L1761-L1770

The particular place of interest is the `leadInTime < 10000` check.
If `leadInTime < 10000`, then `leadIn == leadInTime`, and it turns out
that `AudioEngine.Time` will always be more than or equal to `leadIn`,
because it's also the gameplay start time:

    e53980dd76/osu!/GameModes/Play/Player.cs#L2765

This essentially means that if the `leadInTime` is less than 10000,
that particular check is just dead. So a double skip can only occur
if the gameplay starts at time -10000 or earlier due to the storyboard.
2024-04-03 16:12:20 +02:00
Andrei Zavatski
11b1135804 Adjust blurred icons position due to size handling differences 2024-03-31 01:55:34 +03:00
Andrei Zavatski
58a68e94af Simplify glowing icons in break overlay 2024-03-31 01:44:54 +03:00
Dean Herbert
970e45ff24
Merge pull request #26937 from frenzibyte/fix-osu-logo-blocking-load
Stop blocking player load when hovering over osu! logo
2024-03-21 21:52:25 +08:00
Dean Herbert
55d66d4615
Add sounds to countdown 2024-03-21 11:45:48 +08:00
Dean Herbert
0de5ca8d2d
Update incorrect xmldoc 2024-03-20 01:26:39 +08:00
Dean Herbert
35df381717
Merge branch 'master' into tcm-resume 2024-03-20 01:25:40 +08:00
Dean Herbert
15c0b1a2ec
Remove redundant cast 2024-03-16 13:18:42 +08:00
Dean Herbert
a49c4ebea6
Match settings panels' backgrounds visually and behaviourally 2024-03-16 10:23:21 +08:00
Dean Herbert
0f8d526453
Adjust timings and delay disclaimers the same as settings 2024-03-16 10:09:49 +08:00
Bartłomiej Dach
a78210c88f
Handle hover so that users can hover disclaimer to block load & read it 2024-03-15 11:45:27 +01:00
Bartłomiej Dach
e6883b8418
Tweak visuals further 2024-03-15 11:38:51 +01:00
Bartłomiej Dach
51568ba06a
Add background to disclaimers 2024-03-15 11:31:45 +01:00
Bartłomiej Dach
5513a72748
Improve hiding transition when multiple disclaimers are visible 2024-03-15 11:01:34 +01:00
Bartłomiej Dach
49a087f7fc
Add localisation support 2024-03-15 10:59:49 +01:00
Bartłomiej Dach
4688a53cf4
Stay on player loader a bit longer if disclaimers are present
Just to make reading the text easier.
2024-03-15 09:53:20 +01:00
Bartłomiej Dach
f3a444b7ac
Add disclaimer for loved/qualified status 2024-03-15 09:53:20 +01:00
Bartłomiej Dach
42ae18976f
Replace existing epilepsy warning with inline display 2024-03-15 09:53:20 +01:00
Bartłomiej Dach
1aa695add9
Implement alternate design of player loader disclaimers 2024-03-15 09:53:18 +01:00
Dean Herbert
23975d4dd1
Add flash and reduce overall time for countdown to 2 seconds 2024-03-14 22:49:53 +08:00
Dean Herbert
2845303a74
Fix non-matching scale outwards animation 2024-03-14 22:45:05 +08:00
Dean Herbert
888245b44f
Reorder methods 2024-03-14 22:44:26 +08:00
Dean Herbert
d7769ec3e2
Adjust animation 2024-03-14 22:44:23 +08:00
Dean Herbert
42bd558d7c
Only update text when necessary (reducing unnecessary string allocadtions) 2024-03-14 22:43:08 +08:00
Salman Ahmed
b4cee12db9 Use defined colours for counter background 2024-03-14 09:22:03 +03:00
Dan Balasescu
b431bb1176
Resolve post-merge issues 2024-03-14 12:24:12 +09:00
Dan Balasescu
0beaa8e8c5
Merge branch 'master' into tcm-resume 2024-03-14 12:22:46 +09:00
Dan Balasescu
789a9f4dfa
Initial redesign following flyte's design 2024-03-14 11:38:16 +09:00
Dean Herbert
d9cc619693
Merge branch 'master' into argon-pp-counter 2024-03-08 10:32:16 +08:00
Dean Herbert
0ebb12f67f
Move skinnable interface specification to non-abstract classes 2024-03-08 10:23:46 +08:00
Dean Herbert
ae2ef8ee1e
Fix typo in wireframe description 2024-03-08 10:19:00 +08:00
Dean Herbert
87b4406bdc
Pad at minimum three digits for argon pp display 2024-03-08 09:41:28 +08:00
Dan Balasescu
1cafb09977
Increase border thickness 2024-03-07 17:22:38 +09:00
Bartłomiej Dach
b740481eaf
Merge pull request #27504 from peppy/replay-state-sanity-1
Never set `waitingOnFrames` if a replay is not attached
2024-03-06 09:51:09 +01:00
Dean Herbert
6455c0583b
Update usage of CircularProgress.Current 2024-03-06 12:13:10 +08:00
Dean Herbert
57daaa7fed
Add logging for GameplayClockContainer starting or stopping 2024-03-06 04:37:11 +08:00
Bartłomiej Dach
e6f1a722cb
Remove unused field and commented-out code 2024-03-05 18:49:19 +01:00
Salman Ahmed
49b3e81e8a Migrate DefaultPerformancePointsCounter and rename it 2024-03-05 04:35:39 +03:00
Salman Ahmed
d7f1e50d66 Add "Argon" performance points counter 2024-03-05 03:34:29 +03:00
Salman Ahmed
3ee57cdfba Refactor performance points test scene to support skinning 2024-03-05 03:34:25 +03:00
Salman Ahmed
92f455f199 Abstractify performance points calculation to a base class 2024-03-05 03:33:48 +03:00
Dan Balasescu
6635d9be04
Add countdown display 2024-03-04 16:50:24 +09:00
Dan Balasescu
bce3bd55e5
Fix catch by moving cursor-specific handling local 2024-03-04 16:08:17 +09:00
cdwcgt
4ad8bbb9e2
remove useless DrawablePool 2024-03-01 13:20:37 +09:00
Bartłomiej Dach
ee2dac35e0
Merge branch 'master' into taiko-slider-storyboard 2024-02-29 08:50:58 +01:00
Dean Herbert
f44aadaaa8
Merge pull request #27331 from bdach/statistics-updates-in-multi
Show user statistics updates on multiplayer and playlists results screens
2024-02-29 12:26:48 +08:00
Salman Ahmed
7f5f3804f1 Expose beatmap storyboard as part of GameplayState 2024-02-29 05:39:36 +03:00
Salman Ahmed
a7a758400c
Merge branch 'master' into fix-wireframe 2024-02-29 01:56:50 +03:00
Salman Ahmed
8f97f0503f Move away from Solo namespace 2024-02-29 01:21:17 +03:00
Salman Ahmed
c3a7e99849 Remove unnecessary max operation 2024-02-29 01:01:55 +03:00
Joseph Madamba
5ca6e8c68a Fix some NRT changes 2024-02-28 11:03:09 -08:00
Bartłomiej Dach
ce994a7a73
Fix wireframe misalignment in argon accuracy counter
- Closes https://github.com/ppy/osu/issues/27385.
- Supersedes / closes https://github.com/ppy/osu/pull/27392.
2024-02-28 13:42:45 +01:00
Joseph Madamba
6e03384c6b Apply NRT to SoloSpectatorPlayer 2024-02-28 00:01:16 -08:00
Joseph Madamba
8e462fbb38 Apply NRT to touched files 2024-02-27 23:58:28 -08:00
Joseph Madamba
dee57c7e72 Refactor test to only allow init of actions 2024-02-27 23:24:16 -08:00
Joseph Madamba
351160f94e Move back/quit button from bottom left to fail overlay when spectating 2024-02-27 23:24:16 -08:00
Sheepposu
7687ab63ed fix code formatting 2024-02-27 22:03:45 -05:00
Bartłomiej Dach
2889cf39d7
Merge pull request #27391 from smoogipoo/high-performance-session-redux
Use high performance session during gameplay
2024-02-27 16:28:04 +01:00
Dan Balasescu
069b400dd0
Move manager to desktop game 2024-02-27 19:36:03 +09:00
Dan Balasescu
bfb5098238
Use high performance session during gameplay 2024-02-26 22:32:48 +09:00
Dean Herbert
c686dfd361
Apply safeties for AudioFilter usage around drawables which go non-present 2024-02-26 21:22:25 +08:00
Dean Herbert
4421ff975b
Add local function to perform iteration to better explain the "why" 2024-02-26 09:04:39 +08:00
Andrei Zavatski
f948f8ee5c Fix HUDOverlay allocations 2024-02-25 17:59:20 +03:00
Sheepposu
4d669c56a2 implement pooling
Uses pooling for all analysis objects and creates the lifetime entries from replay data when the analysis container is constructed.
2024-02-23 23:32:35 -05:00
Sheepposu
45444b39d4 fix formatting issues 2024-02-22 19:01:52 -05:00
Bartłomiej Dach
eac4c5f69d
Rename {Solo -> User}StatisticsWatcher et al.
The "solo" prefix is a bit unbecoming now. The updates are not only
for solo.
2024-02-22 20:36:24 +01:00
Bartłomiej Dach
0074bdc5a1
Change ResultsScreen constructor boolean params to init-only properties 2024-02-22 20:15:03 +01:00
Bartłomiej Dach
f9e92c69a8
Merge branch 'master' into fix-skin-editor-init-fail 2024-02-22 14:08:38 +01:00
Dean Herbert
c87bc8b597
Merge pull request #27180 from bdach/better-submission-failure-messaging
Add better submission failure messaging
2024-02-19 21:38:23 +08:00
Bartłomiej Dach
ec26ab51d1
Use different wording 2024-02-19 13:56:21 +01:00
Salman Ahmed
583e71634f Always bring master/music volume to 50% 2024-02-16 11:20:07 +03:00
Salman Ahmed
952c5b0d18 Use Precision.AlmostBigger 2024-02-16 11:13:41 +03:00
Salman Ahmed
9f53185fa9 Revert changes to muted notification action 2024-02-16 10:47:56 +03:00
Salman Ahmed
df40f55c07
Merge branch 'master' into mute_detection 2024-02-16 01:35:02 +03:00
Salman Ahmed
7530b1f362 Adjust comment again 2024-02-16 01:31:52 +03:00
Salman Ahmed
5431781f80 Bring back target volume to 50% 2024-02-16 01:23:26 +03:00
Salman Ahmed
d81b148b09 Remove mention of decibel units in comment
Decibels are irrelevant in the volume bindables, as mentioned in PR already.
2024-02-16 01:23:18 +03:00
Salman Ahmed
a9eac5924d Remove seemingly unnecessary float casts 2024-02-16 01:18:13 +03:00
Bartłomiej Dach
898d5ce88b
Show selected submission failure messages even in solo
Previously, if a `SubmittingPlayer` instance deemed it okay to proceed
with gameplay despite submission failure, it would silently log all
errors and proceed, but the score would still not be submitted. This
feels a bit anti-user in the cases wherein something is genuinely wrong
with either the client or web, so things like token verification
failures or API failures are now shown as notifications to give the user
an indication that something went wrong at all.

Selected cases (non-user-playable mod, logged out, beatmap is not
online) are still logged silently because those are either known and
expected, or someone is messing with things.
2024-02-15 10:55:08 +01:00
Bartłomiej Dach
95e745c6fb
Use better messaging for selected submission failure reasons
These have been cropping up rather often lately, mostly courtesy of
linux users, but not only:

	https://github.com/ppy/osu/issues/26840
	https://github.com/ppy/osu/issues/27008
	https://github.com/ppy/osu/discussions/26962

so this is a proposal for slightly improved messaging for such cases to
hopefully get users on the right track.

The original error is still logged to network log, so there's no
information loss.
2024-02-15 10:51:27 +01:00
Bartłomiej Dach
21b9fb95e2
Move SoloStatisticsWatcher to OsuGame
Doesn't feel like it needs to be in base, and it being in base was
causing problems elsewhere before.
2024-02-13 14:28:24 +01:00
Bartłomiej Dach
da4ebd0681
Refactor SoloStatisticsWatcher to no longer require explicit subscription callbacks 2024-02-13 13:49:01 +01:00
Dan Balasescu
bfeb90c1b6
Add additional gameplay metadata to room score request 2024-02-10 17:20:17 +09:00
Dan Balasescu
dcb195f3c8
Add delayed resume for taiko/catch/mania 2024-02-08 02:16:08 +09:00
Sheppsu
d255976279
Merge branch 'ppy:master' into replay-analysis-settings 2024-02-06 03:13:09 -05:00
Bartłomiej Dach
f65449375e
Merge branch 'master' into scrolling-alloc 2024-02-05 19:59:47 +01:00
Andrei Zavatski
e2e3c61c9c Use AliveEntries where we don't need startTime order 2024-02-03 19:54:08 +03:00
Mike Will
9a5348598a Replace aggregate rounding method with a float cast 2024-02-02 14:22:24 -05:00
Mike Will
2ab967f783 Increase precision of aggregate volume rounding
It should be large enough to account for true accuracy
but small enough to disregard any hair-thin inaccuracy found
at the very end of the float value.
2024-02-02 13:27:26 -05:00
Dan Balasescu
b44f77cee1
Update R# + fix inspections 2024-02-02 21:00:28 +09:00
Mike Will
29a2890582 fix code quality error #2 2024-02-02 03:47:19 -05:00
Mike Will
c60e110976 Try to fix code quality issues raised by workflow 2024-02-02 03:09:19 -05:00
Mike Will
f4a2d5f3f4 Round off inaccuracies in the aggregate volume before evaluating 2024-02-02 02:41:58 -05:00
Mike Will
3122211268 Change silence threshold and target restore volume level 2024-02-02 02:12:46 -05:00
Mike Will
dfd966e039 Improve silence detection in MutedNotification
Instead of checking the master and music volumes separately to
see if they're <= 1%, check the aggregate of the two volumes to
see if it's <= -60 dB.

When muted notification is activated, restore the aggregate volume
level to -30 dB.
2024-02-02 00:48:42 -05:00
Salman Ahmed
0502997ae9 Stop blocking player loader when hovering over osu! logo 2024-02-02 01:26:04 +03:00