diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index b599c9fe7e0..cce7953c544 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -270,7 +270,7 @@ return //Bone fracurtes - if(config.bones_can_break && brute_dam > min_broken_damage * config.organ_health_multiplier && !(status & (ORGAN_ROBOT|ORGAN_PEG))) + if(config.bones_can_break && brute_dam > min_broken_damage * config.organ_health_multiplier && !(status & (ORGAN_ROBOT|ORGAN_PEG)) && !(istype(owner, /mob/living/carbon/human/slime))) src.fracture() if(!(status & ORGAN_BROKEN)) perma_injury = 0 diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 9d3aa3b4608..652d16a0f19 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -165,10 +165,23 @@ for(var/datum/reagent/blood/d in src.reagents.reagent_list) B = d break + var/datum/reagent/water/W + for(var/datum/reagent/water/r in src.reagents.reagent_list) + W = r + break var/trans + if(W && istype(target,/mob/living/carbon/human/slime)) + var/mob/living/carbon/human/slime/S = target + S.vessel.add_reagent("water", 5) + S.vessel.update_total() if(B && istype(target,/mob/living/carbon)) - var/mob/living/carbon/C = target - C.inject_blood(src,5) + if(istype(target,/mob/living/carbon/human/slime)) + var/mob/living/carbon/human/slime/S = target + S.reagents.add_reagent("blood", 5) + S.reagents.update_total() + else + var/mob/living/carbon/C = target + C.inject_blood(src,5) else trans = src.reagents.trans_to(target, amount_per_transfer_from_this) user << "\blue You inject [trans] units of the solution. The syringe now contains [src.reagents.total_volume] units."