1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-20 03:02:54 +08:00
Commit Graph

2055 Commits

Author SHA1 Message Date
Dean Herbert
0a65ae8f1e Fix the beatmap carousel playing the difficulty change sample on beatmap change 2021-01-15 14:07:24 +09:00
Dean Herbert
4973e23003 Merge branch 'master' into fix-transform-mutation-mod-selection 2021-01-08 11:16:15 +09:00
Bartłomiej Dach
4998aaaa98 Remove outdated warning disable
Does not trigger any more on Rider 2020.3.2.
2021-01-06 18:38:25 +01:00
Bartłomiej Dach
7651d4554a
Merge branch 'master' into fix-transform-carousel 2021-01-06 13:49:05 +01:00
Bartłomiej Dach
43b9fde457 Add some nullability annotations for good measure 2021-01-06 13:15:15 +01:00
Dean Herbert
99701a6d9b Add null check on beatmapContainer for safety 2021-01-06 21:06:33 +09:00
Dean Herbert
ffafdf2209 Merge branch 'master' into fix-transform-carousel 2021-01-06 21:03:22 +09:00
Bartłomiej Dach
25b4628672
Merge branch 'master' into fix-transform-mutation-from-background 2021-01-06 11:04:51 +01:00
Bartłomiej Dach
52687fc37c Merge branch 'master' into fix-transform-mutation-loading-layer 2021-01-05 23:10:51 +01:00
Dean Herbert
4b539b01c1 Match code between updateSelectedBeatmap/Ruleset 2021-01-05 20:38:58 +09:00
Dean Herbert
83dbba3cbf Fix carousel beatmap set panels applying transforms to difficulties while they are loading 2021-01-05 18:41:45 +09:00
Dean Herbert
54982dcdd7 Refactor LoadingLayer to avoid applying effects to external drawables
In theory this seemed like a good idea (and an optimisation in some
cases, due to lower fill rate), but in practice this leads to weird edge
cases.

This aims to do away with the operations on external drawables by
applying a dim to the area behind the `LoadingLayer` when required.
I went over each usage and ensured they look as good or better than
previously.

The specific bad usage here was the restoration of the colour on dispose
(if the `LoadingLayer` was disposed in a still-visible state).

I'm aware that the `BeatmapListingOverlay` will now dim completely during
load. I think this is fine for the time being.
2021-01-05 17:31:45 +09:00
Dean Herbert
9bac791a57 Fix deselection of autoplay mod failing 2021-01-05 16:17:58 +09:00
Dean Herbert
b3f08b29ca Ensure that all changes to screen backgrounds are on the correct thread 2021-01-05 15:22:50 +09:00
Dean Herbert
a3e4e2f6c3 Switch ResultsScreen and SongSelect inheritance and remove local implementation 2021-01-05 15:22:50 +09:00
Dean Herbert
53e6a349bb Fix incorrect initial conditional
Turns out this wasn't actually required.
2021-01-03 22:44:32 +09:00
Dean Herbert
efb71713ef Fix null condition inhibiting deselection events 2021-01-03 22:43:02 +09:00
Dean Herbert
a6d4992997 Ensure SelectionChanged events are only sent once when selection is null 2021-01-03 12:53:25 +09:00
Dean Herbert
caa5109e3a Add precautionary null checks to update methods in SongSelect 2021-01-03 12:18:35 +09:00
Dean Herbert
e2de5bb8f9 Fix the beatmap carousel not returning to centre correctly after resizing window 2021-01-02 22:05:41 +09:00
Bartłomiej Dach
4c43a67b68 Rename I{Multiplayer -> OnlinePlay}SubScreen 2020-12-25 18:07:34 +01:00
Bartłomiej Dach
83fb7c7a1a Re-namespace all files in OnlinePlay directory 2020-12-25 16:50:09 +01:00
Dean Herbert
5d4b73baa5 RealtimeMultiplayer -> Multiplayer 2020-12-25 14:10:59 +09:00
Dean Herbert
df5e1d83bd Allow recommender to potentially be null 2020-12-22 14:36:52 +09:00
Dean Herbert
8cc2ed3fae Move from OsuGameBase to OsuGame
Also moves to a more suitable namespace.
2020-12-22 14:28:27 +09:00
Dean Herbert
626b7615ad Move and rename some fields for better readability 2020-12-22 14:23:33 +09:00
Dean Herbert
dff865f335 Tidy up comments, code, and multiple linq enumeration 2020-12-22 14:12:02 +09:00
Dean Herbert
d229fbba6e
Merge branch 'master' into present-recommended 2020-12-22 13:52:29 +09:00
Endrik Tombak
c25e2c3dd5 Select recommended beatmap if last selection is filtered 2020-12-03 23:13:14 +02:00
Endrik Tombak
49be4978bd Avoid calling ToList twice 2020-12-03 19:53:41 +02:00
Endrik Tombak
4cd2e207ac Document getBestRulesetOrder 2020-12-03 19:53:06 +02:00
Endrik Tombak
48dad61a46 Apply review suggestions 2020-12-03 19:44:12 +02:00
Endrik Tombak
cbbcf36eaa Merge branch 'master' of https://github.com/ppy/osu into present-recommended 2020-12-03 19:38:32 +02:00
Dan Balasescu
1d92800761
Merge pull request #11068 from peppy/fix-carousel-edge-masking
Fix beatmap carousel panels getting masked away when out of scroll bounds
2020-12-03 20:40:44 +09:00
smoogipoo
31f7f7072d Fix song select panels not loading if partially offscreen 2020-12-03 15:13:20 +09:00
Dean Herbert
897f593b37 Fix beatmap carousel panels getting masked away when out of scroll bounds
Regressed in https://github.com/ppy/osu/pull/10973 due to removed masking specification.

Closes #11067.
2020-12-03 13:26:28 +09:00
Dean Herbert
a852a27dfb Fix current beatmap temporarily becoming empty during ruleset change
When changing the ruleset at song select, there was a scenario where it
would be set to default (empty) for one debounce length where this was
not actually required. This occurs when the currently selected beatmap
set has other difficulties which match the target ruleset, specifically.
2020-11-30 19:36:30 +09:00
Dean Herbert
792934f2c4 Allow scroll type to be specified
This brings back the ability for the carousel to scroll in a classic
way. It turns out this is generally what we want for "seek" operations
like "random", else it's quite hard to get the expected animation.

I did experiment with applying the animation after the pooled panels are
retrieved, but in a best-case scenario there is still a gap where no
panels are displayed during the random seek operation.
2020-11-27 13:54:38 +09:00
Dean Herbert
0a48dd8f76 Delegate scroll animation to panels themselves 2020-11-26 18:42:51 +09:00
Dean Herbert
ad258e2e52 Update scroll position before applying any panel animations
In the case of automatic scroll requirements (ie. scroll to selected) we
are delegating the animation logic to the panels themselves. In order to
make this work correctly, the scroll operation needs to take effect
before any animation updates are run.
2020-11-26 18:33:41 +09:00
Dean Herbert
6058c66edb Move drawable carousel set movement logic into panels themselves 2020-11-26 18:32:43 +09:00
Dean Herbert
f8db7a9902 Remove ScrollableContent container from carousel
This was causing multiple issues with masking and sizing and really
didn't need to exist in the first place. Also not sure why the pool was
nested inside the scroll container, but it isn't any more. Probably for
the best.
2020-11-26 18:28:54 +09:00
Endrik Tombak
72d9da5fac Apply review suggestions 2020-11-21 14:26:09 +02:00
Endrik Tombak
6c5a6b42e5 Only calculate recommended SR once 2020-11-21 14:09:32 +02:00
Endrik Tombak
944f3480c2 Merge branch 'master' of https://github.com/ppy/osu into present-recommended
 Conflicts:
	osu.Game/OsuGameBase.cs
	osu.Game/Screens/Select/DifficultyRecommender.cs
	osu.Game/Screens/Select/SongSelect.cs
2020-11-21 14:01:01 +02:00
Dean Herbert
2db42f8e67 Remove default allowRetry parameter value from ResultsScreen 2020-11-20 14:35:44 +09:00
Dean Herbert
5113d4af8f Rename BeatmapDifficultyManager to BeatmapDifficultyCache 2020-11-06 13:14:29 +09:00
Dan Balasescu
98c992004b
Merge pull request #10660 from peppy/fix-song-select-first-track-looping
Fix looping mode not being set on first track after entering song select
2020-11-04 14:37:27 +09:00
Dean Herbert
cfe3218239 Move scheduler call to inside method itself for added safety 2020-11-04 10:23:06 +09:00
Dean Herbert
d788931661 Fix LoadComponentAsync calls potentially occuring after beatmap wedge disposal
As seen in https://ci.appveyor.com/project/peppy/osu/builds/36109658/tests.

Also adds cancellation logic for good measure.
2020-11-03 19:53:45 +09:00