Refactor and Fixes EMP's (#13420)

This commit is contained in:
Fox McCloud
2020-05-14 20:39:44 -04:00
committed by GitHub
parent e7833fdaf5
commit d8134fd328
13 changed files with 35 additions and 21 deletions
+1 -1
View File
@@ -25,8 +25,8 @@
return pockets.attackby(W, user, params)
/obj/item/clothing/suit/storage/emp_act(severity)
pockets.emp_act(severity)
..()
pockets.emp_act(severity)
/obj/item/clothing/suit/storage/hear_talk(mob/M, list/message_pieces)
pockets.hear_talk(M, message_pieces)
@@ -37,8 +37,8 @@
return hold.attackby(W, user, params)
/obj/item/clothing/accessory/storage/emp_act(severity)
hold.emp_act(severity)
..()
hold.emp_act(severity)
/obj/item/clothing/accessory/storage/hear_talk(mob/M, list/message_pieces, verb)
hold.hear_talk(M, message_pieces, verb)
+3 -2
View File
@@ -926,9 +926,10 @@ GLOBAL_LIST_INIT(ventcrawl_machinery, list(/obj/machinery/atmospherics/unary/ven
return initial(pixel_y)
/mob/living/carbon/emp_act(severity)
for(var/obj/item/organ/internal/O in internal_organs)
O.emp_act(severity)
..()
for(var/X in internal_organs)
var/obj/item/organ/internal/O = X
O.emp_act(severity)
/mob/living/carbon/Stat()
..()
@@ -206,12 +206,6 @@ emp_act
if(martial_art && prob(martial_art.block_chance) && martial_art.can_use(src) && in_throw_mode && !incapacitated(FALSE, TRUE))
return TRUE
/mob/living/carbon/human/emp_act(severity)
for(var/obj/O in src)
if(!O) continue
O.emp_act(severity)
..()
/mob/living/carbon/human/acid_act(acidpwr, acid_volume, bodyzone_hit) //todo: update this to utilize check_obscured_slots() //and make sure it's check_obscured_slots(TRUE) to stop aciding through visors etc
var/list/damaged = list()
var/list/inventory_items_to_kill = list()
+2 -3
View File
@@ -73,10 +73,9 @@
return shock_damage
/mob/living/emp_act(severity)
var/list/L = src.get_contents()
for(var/obj/O in L)
O.emp_act(severity)
..()
for(var/obj/O in contents)
O.emp_act(severity)
/obj/item/proc/get_volume_by_throwforce_and_or_w_class()
if(throwforce && w_class)
+1 -1
View File
@@ -571,13 +571,13 @@ GLOBAL_LIST_INIT(ai_verbs_default, list(
return FALSE
/mob/living/silicon/ai/emp_act(severity)
..()
if(prob(30))
switch(pick(1,2))
if(1)
view_core()
if(2)
ai_call_shuttle()
..()
/mob/living/silicon/ai/ex_act(severity)
..()
@@ -137,9 +137,9 @@
..()
/mob/living/silicon/robot/syndicate/saboteur/emp_act()
..()
if(cham_proj)
cham_proj.disrupt(src)
..()
/mob/living/silicon/robot/syndicate/saboteur/bullet_act()
if(cham_proj)
+3 -3
View File
@@ -76,17 +76,17 @@
return FALSE //So borgs they don't die trying to fix wiring
/mob/living/silicon/emp_act(severity)
..()
switch(severity)
if(1)
src.take_organ_damage(20)
take_organ_damage(20)
Stun(8)
if(2)
src.take_organ_damage(10)
take_organ_damage(10)
Stun(3)
flash_eyes(affect_silicon = 1)
to_chat(src, "<span class='danger'>*BZZZT*</span>")
to_chat(src, "<span class='warning'>Warning: Electromagnetic pulse detected.</span>")
..()
/mob/living/silicon/proc/damage_mob(var/brute = 0, var/fire = 0, var/tox = 0)
+6
View File
@@ -7,6 +7,12 @@
pressure_resistance = 2
resistance_flags = FLAMMABLE
/obj/item/folder/emp_act(severity)
..()
for(var/i in contents)
var/atom/A = i
A.emp_act(severity)
/obj/item/folder/blue
desc = "A blue folder."
icon_state = "folder_blue"
@@ -95,6 +95,12 @@
CHECK_TICK
..()
/obj/item/smallDelivery/emp_act(severity)
..()
for(var/i in contents)
var/atom/A = i
A.emp_act(severity)
/obj/item/smallDelivery/attack_self(mob/user as mob)
if(wrapped && wrapped.loc) //sometimes items can disappear. For example, bombs. --rastaf0
wrapped.loc = user.loc