Makes internal radiation sources also use apply_effect(), by utilizing the ability to ignore radiation protection.

This commit is contained in:
PsiOmega
2015-09-26 09:19:58 +02:00
parent 11a03abbf7
commit a3b9ab1236
7 changed files with 15 additions and 14 deletions
+2 -2
View File
@@ -41,7 +41,7 @@
/mob/living/proc/apply_effect(var/effect = 0,var/effecttype = STUN, var/blocked = 0)
/mob/living/proc/apply_effect(var/effect = 0,var/effecttype = STUN, var/blocked = 0, var/check_protection = 1)
if(!effect || (blocked >= 2)) return 0
switch(effecttype)
if(STUN)
@@ -53,7 +53,7 @@
if(AGONY)
halloss += effect // Useful for objects that cause "subdual" damage. PAIN!
if(IRRADIATE)
var/rad_protection = getarmor(null, "rad")/100
var/rad_protection = check_protection ? getarmor(null, "rad")/100 : 0
radiation += max((1-rad_protection)*effect/(blocked+1),0)//Rads auto check armor
if(STUTTER)
if(status_flags & CANSTUN) // stun is usually associated with stutter
@@ -253,7 +253,7 @@
if(prob(5))
M.antibodies |= V.antigen
if(prob(50))
M.radiation += 50 // curing it that way may kill you instead
M.apply_effect(50, IRRADIATE, check_protection = 0) // curing it that way may kill you instead
var/absorbed = 0
var/obj/item/organ/diona/nutrients/rad_organ = locate() in M.internal_organs
if(rad_organ && !rad_organ.is_broken())
@@ -1166,7 +1166,7 @@
/datum/reagent/ethanol/vodka/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
M.radiation = max(M.radiation - 1 * removed, 0)
M.apply_effect(max(M.radiation - 1 * removed, 0), IRRADIATE, check_protection = 0)
/datum/reagent/ethanol/whiskey
name = "Whiskey"
@@ -344,7 +344,7 @@
scannable = 1
/datum/reagent/hyronalin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
M.radiation = max(M.radiation - 30 * removed, 0)
M.apply_effect(max(M.radiation - 30 * removed, 0), IRRADIATE, check_protection = 0)
/datum/reagent/arithrazine
name = "Arithrazine"
@@ -357,7 +357,7 @@
scannable = 1
/datum/reagent/arithrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
M.radiation = max(M.radiation - 70 * removed, 0)
M.apply_effect(max(M.radiation - 70 * removed, 0), IRRADIATE, check_protection = 0)
M.adjustToxLoss(-10 * removed)
if(prob(60))
M.take_organ_damage(4 * removed, 0)
+1 -1
View File
@@ -98,7 +98,7 @@
maxm = 3
badness = 2
activate(var/mob/living/carbon/mob,var/multiplier)
mob.radiation += (2*multiplier)
mob.apply_effect(2*multiplier, IRRADIATE, check_protection = 0)
/datum/disease2/effect/deaf
name = "Dead Ear Syndrome"