mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-20 03:26:37 +01:00
Fixes EMP double damage (#19552)
This commit is contained in:
@@ -425,16 +425,27 @@
|
||||
|
||||
if(!(robotic >= ORGAN_ASSISTED))
|
||||
return
|
||||
var/damage_to_take
|
||||
for(var/i = 1; i <= robotic; i++)
|
||||
switch (severity)
|
||||
if (EMP_HEAVY)
|
||||
take_damage(rand(5,9))
|
||||
damage_to_take += rand(5,9)
|
||||
if (EMP_MEDIUM)
|
||||
take_damage(rand(3,7))
|
||||
damage_to_take += rand(3,7)
|
||||
if (EMP_LIGHT)
|
||||
take_damage(rand(2,5))
|
||||
if (EMP_HARMLESS)
|
||||
take_damage(rand(1,3))
|
||||
damage_to_take += rand(2,5)
|
||||
if (EMP_HARMLESS) //harmless, you say?
|
||||
damage_to_take += rand(1,3)
|
||||
if(damage_to_take)
|
||||
if(isorgan(src))
|
||||
var/obj/item/organ/external/limb_to_take_damage = src
|
||||
//Randomly split the damage up between brute and burn.
|
||||
var/burn_to_take = rand(0, damage_to_take)
|
||||
damage_to_take -= burn_to_take
|
||||
limb_to_take_damage.take_damage(damage_to_take, burn_to_take)
|
||||
return
|
||||
take_damage(damage_to_take)
|
||||
|
||||
|
||||
/obj/item/organ/proc/removed(mob/living/user)
|
||||
if(owner)
|
||||
|
||||
@@ -129,29 +129,6 @@
|
||||
|
||||
return ..()
|
||||
|
||||
/obj/item/organ/external/emp_act(severity, recursive)
|
||||
. = ..()
|
||||
if (. & EMP_PROTECT_SELF)
|
||||
return
|
||||
for(var/obj/O as anything in src.contents)
|
||||
O.emp_act(severity, recursive)
|
||||
|
||||
if(!(robotic >= ORGAN_ROBOT))
|
||||
return
|
||||
var/burn_damage = 0
|
||||
switch (severity)
|
||||
if (1)
|
||||
burn_damage += rand(5, 8)
|
||||
if (2)
|
||||
burn_damage += rand(4, 6)
|
||||
if(3)
|
||||
burn_damage += rand(2, 5)
|
||||
if(4)
|
||||
burn_damage += rand(1, 3)
|
||||
|
||||
if(burn_damage)
|
||||
take_damage(0, burn_damage)
|
||||
|
||||
/obj/item/organ/external/attack_self(mob/living/user)
|
||||
. = ..(user)
|
||||
if(.)
|
||||
|
||||
Reference in New Issue
Block a user