-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Resume butchering #73610
Resume butchering #73610
Conversation
Huge gamechanger, blob bless u |
bd151c8
to
c08fba4
Compare
You probably shouldn't be able to 99% dismember a corpse and then start doing a full butchery on it etc but idk how to suggest changing it to accommodate for that |
I think we can disallow finer butchering methods when a cruder method is already in progress. Alternatively, we can allow resuming butchering with a different method, and return butchering results based on the percentage of each method chosen once the methods' total progress reaches 100% or as soon as you pause butchering. |
c08fba4
to
847ce8d
Compare
Thank you all for good ideas.
Have added another commit here now that implements this. For example, starting "quick butchery" will make "dissect" unavailable. A butcher type is considered more crude than another type if it takes less time to complete. |
Allows resuming previously started butchering activities. This is done by storing a var on the corpse item with the progress. For example, aborting a dissection after 90% has been completed will store var `DISSECT_progress`=`0.9` on the corpse. Displays percent of previous progress in the butchery ui, if it has already started earlier.
Disables finer butchery types if a cruder butcher type has already been started. For example, starting "quick butchery" will make "dissect" unavailable. A butcher type is considered more crude than another type if it takes less time to complete.
847ce8d
to
2d0c254
Compare
cool one |
Summary
Features "Resume butchering"
Purpose of change
Allows resuming previously started butchering activities. Fixes #42586 .
Describe the solution
This is done by storing a var on the corpse item with the progress. For example, aborting a dissection after 90% has been completed will store var
DISSECT_progress
=0.9
on the corpse.Displays percent of previous progress in the butchery ui, if it has already started earlier.
Describe alternatives you've considered
We should migrate the butcher activity from the old activity classes into "new"
activity_actor
classes - but that's for another PR.Testing
Additional context
The idea of storing a var on the corpse was already suggested before: #26113 (comment)