-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Add skin cycling with shortcuts for next and previous skin #36387
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ArijanJ
wants to merge
4
commits into
ppy:master
Choose a base branch
from
ArijanJ:cycle-skins
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
peppy
reviewed
Jan 20, 2026
Contributor
Author
|
Ok, this should address everything, only thing left is to find better shortcuts. |
Member
|
my best proposal if we do want default binds are probably E/T, as in left and right on keyboard from the "random skin" binding. |
Contributor
Author
|
Yep, neat idea. Ready to go unless you have any other notes. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This adds shortcuts for 'next skin' and 'previous skin', letting players switch skins more consistently than the 'random skin' option.
To implement this I had to I move the skin dropdown list generation (default skins + 'random skin' + user unprotected skins) into a separate function
GetDropdownItems()to avoid duplication. The behavior stays the same from my testing with importing/deleting skins.I added
CycleSkins(int step), then two wrappers for it (SelectNextSkinandSelectPreviousSkin), which are called by the global shortcuts.There was also a private SkinInfo object called random_skin_info that I removed in favor of comparisons with the public
SkinInfo.RANDOM_SKINID (there was only one comparison to the object).However, whenever the skin is changed for any reason, this tooltip shows up showing the random skin shortcut. I'll leave it, since cramming the two new tooltips into it would be ugly.
