mirror of
https://github.com/CHOMPstation/CHOMPstation.git
synced 2026-07-18 18:42:59 +01:00
Merge pull request #3052 from Anewbe/emp_things
Reworks empulse and emp_act
This commit is contained in:
@@ -281,9 +281,13 @@ var/list/organ_cache = list()
|
||||
return
|
||||
switch (severity)
|
||||
if (1)
|
||||
take_damage(5)
|
||||
take_damage(rand(6,12))
|
||||
if (2)
|
||||
take_damage(2)
|
||||
take_damage(rand(4,8))
|
||||
if (3)
|
||||
take_damage(rand(3,6))
|
||||
if (4)
|
||||
take_damage(rand(1,4))
|
||||
|
||||
/obj/item/organ/proc/removed(var/mob/living/user)
|
||||
|
||||
|
||||
@@ -102,11 +102,19 @@
|
||||
/obj/item/organ/external/emp_act(severity)
|
||||
if(!(robotic >= ORGAN_ROBOT))
|
||||
return
|
||||
var/burn_damage = 0
|
||||
switch (severity)
|
||||
if (1)
|
||||
take_damage(8)
|
||||
burn_damage += rand(8, 13)
|
||||
if (2)
|
||||
take_damage(4)
|
||||
burn_damage += rand(6, 9)
|
||||
if(3)
|
||||
burn_damage += rand(4, 7)
|
||||
if(4)
|
||||
burn_damage += rand(1, 5)
|
||||
|
||||
if(burn_damage)
|
||||
take_damage(0, burn_damage)
|
||||
|
||||
/obj/item/organ/external/attack_self(var/mob/living/user)
|
||||
if(!contents.len)
|
||||
@@ -243,12 +251,12 @@
|
||||
return (vital || (robotic >= ORGAN_ROBOT) || brute_dam + burn_dam + additional_damage < max_damage)
|
||||
|
||||
/obj/item/organ/external/take_damage(brute, burn, sharp, edge, used_weapon = null, list/forbidden_limbs = list())
|
||||
brute = round(brute * brute_mod, 0.1)
|
||||
burn = round(burn * burn_mod, 0.1)
|
||||
|
||||
if((brute <= 0) && (burn <= 0))
|
||||
return 0
|
||||
|
||||
brute *= brute_mod
|
||||
burn *= burn_mod
|
||||
|
||||
// High brute damage or sharp objects may damage internal organs
|
||||
if(internal_organs && (brute_dam >= max_damage || (((sharp && brute >= 5) || brute >= 10) && prob(5))))
|
||||
// Damage an internal organ
|
||||
|
||||
Reference in New Issue
Block a user