diff --git a/code/_globalvars/lists/reagents.dm b/code/_globalvars/lists/reagents.dm
index 7042cbe932a..30809943a8a 100644
--- a/code/_globalvars/lists/reagents.dm
+++ b/code/_globalvars/lists/reagents.dm
@@ -55,7 +55,7 @@ var/global/list/blocked_chems = list("polonium", "initropidril", "concentrated_i
"syndicate_nanites", "ripping_tendrils", "boiling_oil",
"envenomed_filaments", "lexorin_jelly", "kinetic",
"cryogenic_liquid", "dark_matter", "b_sorium",
- "reagent", "life","dragonsbreath")
+ "reagent", "life","dragonsbreath", "nanocalcium")
var/global/list/safe_chem_list = list("antihol", "charcoal", "epinephrine", "insulin", "teporone","silver_sulfadiazine", "salbutamol",
"omnizine", "stimulants", "synaptizine", "potass_iodide", "oculine", "mannitol", "styptic_powder",
diff --git a/code/game/objects/items/weapons/defib.dm b/code/game/objects/items/weapons/defib.dm
index 85e24757517..e8196d7311a 100644
--- a/code/game/objects/items/weapons/defib.dm
+++ b/code/game/objects/items/weapons/defib.dm
@@ -17,7 +17,7 @@
"Vox" = 'icons/mob/species/vox/back.dmi'
)
- var/on = 0 //if the paddles are equipped (1) or on the defib (0)
+ var/paddles_on_defib = TRUE //if the paddles are on the defib (TRUE)
var/safety = 1 //if you can zap people with the defibs on harm mode
var/powered = 0 //if there's a cell in the defib with enough power for a revive, blocks paddles from reviving otherwise
var/obj/item/weapon/twohanded/shockpaddles/paddles
@@ -53,7 +53,7 @@
/obj/item/weapon/defibrillator/proc/update_overlays()
overlays.Cut()
- if(!on)
+ if(paddles_on_defib)
overlays += "[icon_state]-paddles"
if(powered)
overlays += "[icon_state]-powered"
@@ -130,18 +130,18 @@
/obj/item/weapon/defibrillator/verb/toggle_paddles()
set name = "Toggle Paddles"
set category = "Object"
- on = !on
var/mob/living/carbon/human/user = usr
- if(on)
+
+ if(paddles_on_defib)
//Detach the paddles into the user's hands
if(!usr.put_in_hands(paddles))
- on = 0
to_chat(user, "You need a free hand to hold the paddles!")
update_icon()
return
paddles.loc = user
- else
+ paddles_on_defib = FALSE
+ else if(user.is_in_active_hand(paddles))
//Remove from their hands and back onto the defib unit
remove_paddles(user)
@@ -163,15 +163,16 @@
if(slot == slot_back)
return 1
-/obj/item/weapon/defibrillator/proc/remove_paddles(mob/user)
+/obj/item/weapon/defibrillator/proc/remove_paddles(mob/user) // from your hands
var/mob/living/carbon/human/M = user
if(paddles in get_both_hands(M))
M.unEquip(paddles)
+ paddles_on_defib = TRUE
update_icon()
return
/obj/item/weapon/defibrillator/Destroy()
- if(on)
+ if(!paddles_on_defib)
var/M = get(paddles, /mob)
remove_paddles(M)
QDEL_NULL(paddles)
@@ -288,7 +289,7 @@
if(istype(O))
O.unwield()
to_chat(user, "The paddles snap back into the main unit.")
- defib.on = 0
+ defib.paddles_on_defib = TRUE
loc = defib
defib.update_icon()
update_icon()
diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm
index 7469c2cca73..8a4df553508 100644
--- a/code/modules/mob/living/silicon/silicon.dm
+++ b/code/modules/mob/living/silicon/silicon.dm
@@ -224,10 +224,11 @@
/mob/living/silicon/proc/remove_med_sec_hud()
var/datum/atom_hud/secsensor = huds[sec_hud]
var/datum/atom_hud/medsensor = huds[med_hud]
- var/datum/atom_hud/diagsensor = huds[d_hud]
+ for(var/datum/atom_hud/data/diagnostic/diagsensor in huds)
+ diagsensor.remove_hud_from(src)
secsensor.remove_hud_from(src)
medsensor.remove_hud_from(src)
- diagsensor.remove_hud_from(src)
+
/mob/living/silicon/proc/add_sec_hud()
var/datum/atom_hud/secsensor = huds[sec_hud]
diff --git a/code/modules/reagents/chemistry/reagents/medicine.dm b/code/modules/reagents/chemistry/reagents/medicine.dm
index 0e53f7fdc39..c92dc44cfaa 100644
--- a/code/modules/reagents/chemistry/reagents/medicine.dm
+++ b/code/modules/reagents/chemistry/reagents/medicine.dm
@@ -1042,6 +1042,7 @@
description = "Highly advanced nanites equipped with calcium payloads designed to repair bones. Nanomachines son."
color = "#9b3401"
metabolization_rate = 0.5
+ can_synth = FALSE
/datum/reagent/medicine/nanocalcium/on_mob_life(mob/living/carbon/human/M)
switch(current_cycle)