diff --git a/code/modules/mob/living/carbon/human/species/species_attack.dm b/code/modules/mob/living/carbon/human/species/species_attack.dm index 0eba344e878..a1583f5e09d 100644 --- a/code/modules/mob/living/carbon/human/species/species_attack.dm +++ b/code/modules/mob/living/carbon/human/species/species_attack.dm @@ -158,7 +158,11 @@ return if(target.internal_organs_by_name["zombie"]) to_chat(user, "You feel that \the [target] has been already infected!") - if(prob(25)) + + var/infection_chance = 80 + var/armor = target.run_armor_check(zone,"melee") + infection_chance -= armor + if(prob(infection_chance)) if(target.reagents) target.reagents.add_reagent("trioxin", 10) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm index d302daa7420..25a49c9a328 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm @@ -812,6 +812,9 @@ if(!H.internal_organs_by_name["brain"]) //destroying the brain stops trioxin from bringing the dead back to life return + if(H && H.stat != DEAD) + return + for(var/datum/language/L in H.languages) H.remove_language(L.name)