Fix crashes when attempting to change from a custom ruleset with mods selected to another #30195
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
RFC. Closes #30163.
If I'm to be blunt, the decoupled stuff in song select makes my head spin. I spent a solid 20 minutes thinking how I was going to fix this one but then finally realised that generally most of the cause there was the fact that
AdvancedStats
was seeing the new rulesets before the "ensure global selected mods are valid for current ruleset" logic, and so decided to just delay that until the decoupled transfer thingamajig happens.I was honestly considering combining
BeatmapInfo
,Ruleset
, andMods
into one property onAdvancedStats
. I figured I'd rather not push my luck and try the baseline version first, but I honestly think that direction is going to be required at some point to properly corral all of the decoupled madness taking place in song select.The nice thing is that due to this, one previous hack is now removable after
AdvancedStats
has been weaned off the global mods bindable. I think this is a win all things considered? But I'm unsure of how ugly this in general is compared to the current state...