diff --git a/code/game/machinery/clonepod.dm b/code/game/machinery/clonepod.dm index bd8689349f5..e654d5eb549 100644 --- a/code/game/machinery/clonepod.dm +++ b/code/game/machinery/clonepod.dm @@ -278,6 +278,8 @@ EO.brute_dam = desired_data.limbs[EO.limb_name][1] EO.burn_dam = desired_data.limbs[EO.limb_name][2] EO.status = desired_data.limbs[EO.limb_name][3] + if(EO.status & ORGAN_BROKEN) + EO.create_fracture_wound() clone.adjustCloneLoss(4 / speed_modifier) clone.regenerate_icons() return @@ -327,7 +329,10 @@ limb.brute_dam = desired_data.limbs[active_limb_name][1] limb.burn_dam = desired_data.limbs[active_limb_name][2] limb.status = desired_data.limbs[active_limb_name][3] + if(limb.status & ORGAN_BROKEN) + limb.create_fracture_wound() continue + if(length(limb.children)) //This doesn't support having a vital organ inside a child of a limb that itself isn't vital. for(var/obj/item/organ/external/child in limb.children) //Future coders, if you want to add a species with its brain in its hand or something, change this child.remove(null, TRUE) diff --git a/code/modules/surgery/organs/organ_external.dm b/code/modules/surgery/organs/organ_external.dm index e763e540cb6..2d229efa860 100644 --- a/code/modules/surgery/organs/organ_external.dm +++ b/code/modules/surgery/organs/organ_external.dm @@ -805,16 +805,19 @@ Note that amputating the affected organ does in fact remove the infection from t owner.emote("scream") status |= ORGAN_BROKEN + create_fracture_wound(fracture_name_override) + + // Fractures have a chance of getting you out of restraints + if(prob(25)) + release_restraints() + +/obj/item/organ/external/proc/create_fracture_wound(fracture_name_override) var/picked_type = pick(typesof(/datum/wound/fracture)) var/datum/wound/fracture = new picked_type(src) if(fracture_name_override) fracture.name = fracture_name_override wound_list += fracture - // Fractures have a chance of getting you out of restraints - if(prob(25)) - release_restraints() - /obj/item/organ/external/proc/mend_fracture() if(is_robotic()) return FALSE // ORGAN_BROKEN doesn't have the same meaning for robot limbs