Quirk "quadruple amputee" now will return your original limbs back if you off it (#90745)

## About The Pull Request

Then you try to remove quirk - your limbs didn't change back to normal

**Visual bug only**, originally found on downstream. Also confirmed on
up-to-date TG-localhost


![error](https://github.com/user-attachments/assets/33c280d2-9aa9-4ccc-bca2-3977a2e723de)

## Why It's Good For The Game

Bug-Fix always good

## Changelog

🆑
fix: Quirk "quadruple amputee" now will return your original limbs back
if you off it
qol: Quirk "prosthetic limb" now resets more correctly
/🆑

---------

Co-authored-by: Maximal08 <73069825+Maximal08@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
This commit is contained in:
Artemchik542
2025-05-17 12:40:49 +07:00
committed by GitHub
parent a0e50e3265
commit fca1e61371
3 changed files with 35 additions and 6 deletions

View File

@@ -29,6 +29,24 @@
new_limb.try_attach_limb(src, special = special)
return old_limb // can be null
/// Replaces the chosen limb(zone) to the original one
/mob/living/carbon/proc/reset_to_original_bodypart(limb_zone)
if (!(limb_zone in GLOB.all_body_zones))
stack_trace("Invalid zone [limb_zone] provided to reset_to_original_bodypart()")
return
// find old limb to del it first
var/obj/item/bodypart/old_limb = get_bodypart(limb_zone)
if(old_limb)
old_limb.drop_limb(special = TRUE)
qdel(old_limb)
// mаke and attach the original limb
var/obj/item/bodypart/original_limb = newBodyPart(limb_zone)
original_limb.try_attach_limb(src, TRUE)
original_limb.update_limb(is_creating = TRUE)
regenerate_icons()
/mob/living/carbon/has_hand_for_held_index(i)
if(!i)
return FALSE