Bartłomiej Dach
46d3220c07
Isolate sample screens from global mods bindable
...
Fixes scenario wherein entering the first run setup overlay, exiting at
the "UI scale" step (which shows a song select), then moving to actua
song select and trying to select a mod would lead to a crash.
The crash was caused by two active mod screen instances attempting to
swap the global mod bindable's mod instances for ones they owned. This
logic - while generally problematic and hard to maintain - was fixing
several issues with mod reference management and setting copying, so I'm
letting it live another day.
This change will mean that the song select preview on the "UI scale"
step will not receive the same mods that the actual game has enabled.
That said, it already doesn't use the same beatmap or ruleset, so this
looks fine to break.
2022-05-07 21:44:58 +02:00
Dean Herbert
3bb22dece6
Merge pull request #18111 from bdach/mod-overlay/integration
...
Replace old mod overlay with new design
2022-05-08 02:44:50 +09:00
Dean Herbert
2278da563e
Add various xmldoc for nested classes
2022-05-08 02:03:28 +09:00
Dean Herbert
03c80d9197
Reorder methods / properties in ModSelectScreen
for legibility
2022-05-08 01:58:37 +09:00
Dean Herbert
1d27ef18dc
Add xmldoc for IsValidMod
2022-05-08 01:49:29 +09:00
Dean Herbert
0d32bf91eb
Hardcode hide key handling in ModSelectScreen
2022-05-08 01:35:11 +09:00
Bartłomiej Dach
0c2b4a6c0b
Fix invalid IsLoaded
check
...
Would fail when `availableMods` would be changed from a different thread
while the columns aren't loaded.
2022-05-07 15:44:22 +02:00
Bartłomiej Dach
528342411e
Merge branch 'master' into mod-overlay/integration
2022-05-07 13:52:19 +02:00
Bartłomiej Dach
c907dbe56f
Merge pull request #18133 from frenzibyte/change-mod-scroll-behaviour
...
Change mod scrolling behaviour to not scroll horizontally on columns/settings
2022-05-07 13:51:13 +02:00
Bartłomiej Dach
fe69bd7ed9
Merge branch 'master' into change-mod-scroll-behaviour
2022-05-07 13:29:02 +02:00
Salman Ahmed
6326216a6a
Merge pull request #18132 from bdach/mod-overlay/back-button
...
Add local back button to new mod select design
2022-05-07 14:27:18 +03:00
Bartłomiej Dach
5d6d7bb324
Fix incorrect assert in multiplayer song select test scene
2022-05-07 13:15:16 +02:00
Bartłomiej Dach
9a56f6db44
Merge branch 'mod-overlay/back-button' into mod-overlay/integration
2022-05-07 13:15:13 +02:00
Bartłomiej Dach
a716f62a6a
Flash back button when keyboard back binding is pressed
2022-05-07 13:01:36 +02:00
Salman Ahmed
d4c9de8596
Move button width in mod select to constant
2022-05-07 13:23:48 +03:00
Salman Ahmed
9a7aeec098
Merge branch 'master' into mod-overlay/back-button
2022-05-07 13:05:25 +03:00
Salman Ahmed
1fe6749baa
Merge pull request #18131 from bdach/mod-overlay/localisation-strings
...
Add basic localisation strings for new mod select
2022-05-07 13:04:58 +03:00
Salman Ahmed
8ee3fdd0aa
Change mod scrolling behaviour to not scroll horizontally on columns/settings
2022-05-07 12:15:11 +03:00
Salman Ahmed
a44e21d1b2
Merge branch 'master' into mod-overlay/localisation-strings
2022-05-07 12:13:28 +03:00
Bartłomiej Dach
e8518a3a1a
Merge pull request #18117 from peppy/distance-snap-grid-current-tiume
...
Highlight distance snap grid rings that are close to the current time value
2022-05-07 11:13:13 +02:00
Bartłomiej Dach
fd75963ca2
Dismiss mod select if select binding is pressed
2022-05-07 11:01:05 +02:00
Bartłomiej Dach
e7e7486a8e
Merge branch 'mod-overlay/back-button' into mod-overlay/integration
2022-05-07 10:59:30 +02:00
Bartłomiej Dach
b72cf4cd5d
Merge branch 'mod-overlay/localisation-strings' into mod-overlay/back-button
2022-05-07 10:58:09 +02:00
Bartłomiej Dach
f761d4d4d4
Reuse "select/deselect all" localisable string on column toggle
2022-05-07 10:56:03 +02:00
Bartłomiej Dach
fa0a256f48
Add localisable string for difficulty multiplier display
2022-05-07 10:48:15 +02:00
Salman Ahmed
db04bcf1ce
Merge branch 'master' into distance-snap-grid-current-tiume
2022-05-07 11:47:38 +03:00
Salman Ahmed
e9b0ae6da5
Merge branch 'master' into mod-overlay/localisation-strings
2022-05-07 11:33:18 +03:00
Dean Herbert
2752bdf04f
Merge pull request #18130 from bdach/mod-overlay/bulk-select-buttons
...
Add back select/deselect all mods buttons to new mod select design
2022-05-07 17:32:10 +09:00
Bartłomiej Dach
9d3e67b10d
Update free mod select/deselect all test after back button addition
2022-05-07 10:25:23 +02:00
Bartłomiej Dach
1c029552d7
Add test coverage for mod select back button
2022-05-07 10:23:49 +02:00
Bartłomiej Dach
271d64fd54
Add back button to mod select overlays
2022-05-07 10:17:32 +02:00
Bartłomiej Dach
6ad990dfc3
Add basic localisation strings for new mod select
2022-05-07 10:17:24 +02:00
Bartłomiej Dach
4ff96f82be
Dim other buttons if customisation panel is open
2022-05-07 09:50:09 +02:00
Bartłomiej Dach
18e4c3ed0f
Update mod columns even if they're not present/offscreen
...
Important to make "select/deselect all" operations work on all columns
simultaneously, even if they're offscreen. Unfortunately by the nature
of how the existing selection animation works, it is hard-tied to the
update loop, so we need to compensate.
2022-05-07 09:50:09 +02:00
Bartłomiej Dach
9514a5cef7
Only load panels asynchronously outside of BDL
2022-05-07 09:50:09 +02:00
Bartłomiej Dach
9f96dd47d1
Remove schedule in panel load
...
It was causing selection/deselection of all mods to work improperly if a
select/deselect all operation was requested before the panel was
scrolled into view.
In general the schedule was an over-optimisation - the game-global set
of available mods shouldn't be changing so often as to warrant such an
aggressive debounce.
2022-05-07 09:50:09 +02:00
Bartłomiej Dach
e1953c484c
Add test coverage for selecting/deselecting all mods on free mod select
2022-05-07 09:50:08 +02:00
Bartłomiej Dach
35c106efaa
Add test coverage for deselecting all mods on user mod select
2022-05-07 09:29:33 +02:00
Bartłomiej Dach
852e4a9766
Add select/deselect all buttons to free mod select screen
2022-05-07 09:29:33 +02:00
Bartłomiej Dach
0b95594f60
Add some more padding between footer and column scroll
2022-05-07 09:29:33 +02:00
Bartłomiej Dach
0c6de331f3
Move footer button padding to a higher level
2022-05-07 09:29:32 +02:00
Bartłomiej Dach
202a603d72
Merge branch 'master' into distance-snap-grid-current-tiume
2022-05-07 08:49:30 +02:00
Dean Herbert
dd63657dfb
Merge pull request #18065 from huoyaoyuan/code-style
...
Enforce code style analysis shipped with .NET SDK
2022-05-07 14:58:19 +09:00
Dean Herbert
2dd9899cd7
Merge pull request #18126 from bdach/mod-overlay/fix-broken-mod-reference-logic
...
Fix several issues with new mod select reference replacement logic
2022-05-07 14:36:05 +09:00
Dean Herbert
34237fd05e
Merge pull request #18125 from frenzibyte/fix-overlay-horizontal-offset-overlays
...
Fix side overlay offset not affecting fullscreen overlays
2022-05-07 14:02:22 +09:00
Dean Herbert
ce14fddcb2
Use above-1 offset instead for more correct feeling parallax
2022-05-07 14:02:07 +09:00
Dean Herbert
71758390b5
Fix time based distance grid alpha not correctly accounting for distance spacing multiplier
2022-05-07 13:37:36 +09:00
Bartłomiej Dach
8c73ed7207
Fix sequence equality check not using reference comparison
2022-05-06 21:47:04 +02:00
Bartłomiej Dach
621f746789
Do not modify selected mods through panel state change during external update
2022-05-06 21:47:04 +02:00
Bartłomiej Dach
c199b8fcb6
Simplify state management in ModColumn
...
Bad sign when you can't follow your own code.
All of the various state changing methods were flattened into one
because it was too hard to follow what was calling what and why.
2022-05-06 21:46:16 +02:00