Merge pull request #13375 from timothyteakettle/emp-rework
the emp rework (emp severity reduces as you move from epicentre, severity is 1-100)
This commit is contained in:
@@ -33,10 +33,9 @@
|
||||
. = ..()
|
||||
if(!owner || . & EMP_PROTECT_SELF)
|
||||
return
|
||||
owner.reagents.add_reagent(/datum/reagent/toxin/bad_food, poison_amount / severity)
|
||||
owner.reagents.add_reagent(/datum/reagent/toxin/bad_food, poison_amount * severity/100)
|
||||
to_chat(owner, "<span class='warning'>You feel like your insides are burning.</span>")
|
||||
|
||||
|
||||
/obj/item/organ/cyberimp/chest/nutriment/plus
|
||||
name = "Nutriment pump implant PLUS"
|
||||
desc = "This implant will synthesize and pump into your bloodstream a small amount of nutriment when you are hungry."
|
||||
@@ -115,10 +114,10 @@
|
||||
|
||||
if(ishuman(owner))
|
||||
var/mob/living/carbon/human/H = owner
|
||||
if(H.stat != DEAD && prob(50 / severity) && H.can_heartattack())
|
||||
if(H.stat != DEAD && prob(severity/2) && H.can_heartattack())
|
||||
H.set_heartattack(TRUE)
|
||||
to_chat(H, "<span class='userdanger'>You feel a horrible agony in your chest!</span>")
|
||||
addtimer(CALLBACK(src, .proc/undo_heart_attack), 60 SECONDS / severity)
|
||||
addtimer(CALLBACK(src, .proc/undo_heart_attack), (60 * severity/100) SECONDS)
|
||||
|
||||
/obj/item/organ/cyberimp/chest/reviver/proc/undo_heart_attack()
|
||||
var/mob/living/carbon/human/H = owner
|
||||
|
||||
@@ -34,11 +34,10 @@
|
||||
. = ..()
|
||||
if(!owner || . & EMP_PROTECT_SELF)
|
||||
return
|
||||
var/stun_amount = 200/severity
|
||||
var/stun_amount = 2*severity
|
||||
owner.Stun(stun_amount)
|
||||
to_chat(owner, "<span class='warning'>Your body seizes up!</span>")
|
||||
|
||||
|
||||
/obj/item/organ/cyberimp/brain/anti_drop
|
||||
name = "anti-drop implant"
|
||||
desc = "This cybernetic brain implant will allow you to force your hand muscles to contract, preventing item dropping. Twitch ear to toggle."
|
||||
@@ -68,12 +67,11 @@
|
||||
release_items()
|
||||
to_chat(owner, "<span class='notice'>Your hands relax...</span>")
|
||||
|
||||
|
||||
/obj/item/organ/cyberimp/brain/anti_drop/emp_act(severity)
|
||||
. = ..()
|
||||
if(!owner || . & EMP_PROTECT_SELF)
|
||||
return
|
||||
var/range = severity ? 10 : 5
|
||||
var/range = severity/10
|
||||
var/atom/A
|
||||
if(active)
|
||||
release_items()
|
||||
@@ -114,7 +112,7 @@
|
||||
return
|
||||
crit_fail = TRUE
|
||||
organ_flags |= ORGAN_FAILING
|
||||
addtimer(CALLBACK(src, .proc/reboot), 90 / severity)
|
||||
addtimer(CALLBACK(src, .proc/reboot), 0.9 * severity)
|
||||
|
||||
/obj/item/organ/cyberimp/brain/anti_stun/proc/reboot()
|
||||
crit_fail = FALSE
|
||||
@@ -136,6 +134,6 @@
|
||||
. = ..()
|
||||
if(!owner || . & EMP_PROTECT_SELF)
|
||||
return
|
||||
if(prob(60/severity))
|
||||
if(prob(0.6*severity))
|
||||
to_chat(owner, "<span class='warning'>Your breathing tube suddenly closes!</span>")
|
||||
owner.losebreath += 2
|
||||
|
||||
@@ -131,4 +131,4 @@
|
||||
. = ..()
|
||||
if(. & EMP_PROTECT_SELF)
|
||||
return
|
||||
damage += 40/severity
|
||||
damage += 0.5 * severity
|
||||
|
||||
@@ -166,7 +166,7 @@
|
||||
return
|
||||
to_chat(owner, "<span class='warning'>Static obfuscates your vision!</span>")
|
||||
owner.flash_act(visual = 1)
|
||||
if(severity == EMP_HEAVY)
|
||||
if(severity >= 70)
|
||||
owner.adjustOrganLoss(ORGAN_SLOT_EYES, 20)
|
||||
|
||||
|
||||
|
||||
@@ -198,8 +198,8 @@ obj/item/organ/heart/slime
|
||||
if(. & EMP_PROTECT_SELF)
|
||||
return
|
||||
Stop()
|
||||
addtimer(CALLBACK(src, .proc/Restart), 20/severity SECONDS)
|
||||
damage += 100/severity
|
||||
addtimer(CALLBACK(src, .proc/Restart), 0.2*severity SECONDS)
|
||||
damage += severity
|
||||
|
||||
/obj/item/organ/heart/cybernetic/upgraded
|
||||
name = "upgraded cybernetic heart"
|
||||
|
||||
@@ -112,8 +112,4 @@
|
||||
. = ..()
|
||||
if(. & EMP_PROTECT_SELF)
|
||||
return
|
||||
switch(severity)
|
||||
if(1)
|
||||
damage+=100
|
||||
if(2)
|
||||
damage+=50
|
||||
damage += severity
|
||||
|
||||
@@ -487,7 +487,6 @@
|
||||
owner.losebreath = 20
|
||||
owner.adjustOrganLoss(ORGAN_SLOT_LUNGS, 25)
|
||||
|
||||
|
||||
/obj/item/organ/lungs/cybernetic/upgraded
|
||||
name = "upgraded cybernetic lungs"
|
||||
desc = "A more advanced version of the stock cybernetic lungs. They are capable of filtering out lower levels of toxins and carbon dioxide."
|
||||
|
||||
Reference in New Issue
Block a user