-
Notifications
You must be signed in to change notification settings - Fork 4.2k
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
Swappable player outfits #72347
Swappable player outfits #72347
Conversation
You can and should make this an activity that you assign in the iuse. Taking off and wearing a bunch of clothing/armor is far too long an action to be uninterruptible. |
I'd really love it if this was made a little less 'magical'. instead of the abstract item being visible and tangible, have it be craftable from a duffel bag, with maybe a lesser capacity makeshift and another primitive version. |
Do you have any recommendations for how to handle the case of an interruption? Currently if you just stopped in the middle you would be left with more clothes than previously existed and an extra outfit_storage, and there's no way for it to 'know' how to clean up. (The direct answer is 'tell it how to clean up' but I would prefer to avoid scenarios where this is possible at all.) I guess I could properly iterate over the components and erase each one as it is taken out/delete it off your person as it is put in, but the current approach was a significant boon in terms of simplicity. |
ef229e4
to
5a82093
Compare
except why would you need a duffel bag? An 'outfit' is an abstract concept, you can just point to a pile of unsorted clothes and say "the jeans, red t-shirt, and black hoodie are my outfit", it's not magical. The idea here is that your avatar is lumping these things together and remembering that they belong as one, but they don't have to be stuffed into the same bag for that. |
I'll get back to this once we're done with the 0.H push. The basic idea for implementing it as an activity is simple: At the start of the activity, get the movecost for taking off all your items and putting on all the new ones. Do not actually do that yet.. Set the movecost for the activity. When activity finishes, instantly do all the wearing at once. Then, set moves to 0 (clearing your move debt). This allows the activity to be interruptible, but without having to deal with interrupting it in the middle, at least in the current iteration. From the development discord, #development channel |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not bump or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered. |
5a82093
to
4bdcc1a
Compare
4bdcc1a
to
7d9adc3
Compare
7d9adc3
to
6eed95d
Compare
Yay |
Basic build passed, quickly merge it before stalebot comes back! |
Summary
Features "The player can swap between defined outfits with the 'set of clothes' item"
Purpose of change
Many, many feature requests, though none that haven't been killed by stale bot.
Describe the solution
An item, "Set of clothes" with a new use action "CHANGE_OUTFIT"
Changing outfit works by 'a'ctivating the item. It happens instantly to the player's eyes (move costs to put on/take off are still subtracted), but code-wise it is pretty simple. First it spawns a new outfit, then goes over the player's clothes and puts them all into the new outfit's pocket. Once that's done, the activated outfit is iterated over and each contained item is worn by the player (or dropped if unwearable).
Describe alternatives you've considered
N/A this is the alternative
Testing
2024-03-12.17-28-37.mp4
Additional context
Minor known issues:
There is no way (AFAIK) to interrupt changing, so if you had a lot of huge bulky clothes and they took a while to put on, you could put yourself into a dangerous situation accidentally.Resolved by moving to an activity actor.