Merge branch 'master' into abductor-update
This commit is contained in:
@@ -334,12 +334,13 @@
|
||||
|
||||
|
||||
//Regenerates all limbs. Returns amount of limbs regenerated
|
||||
/mob/living/proc/regenerate_limbs(noheal, excluded_limbs)
|
||||
return 0
|
||||
/mob/living/proc/regenerate_limbs(noheal = FALSE, list/excluded_limbs = list())
|
||||
SEND_SIGNAL(src, COMSIG_LIVING_REGENERATE_LIMBS, noheal, excluded_limbs)
|
||||
|
||||
/mob/living/carbon/regenerate_limbs(noheal, list/excluded_limbs)
|
||||
/mob/living/carbon/regenerate_limbs(noheal = FALSE, list/excluded_limbs = list())
|
||||
. = ..()
|
||||
var/list/limb_list = list(BODY_ZONE_HEAD, BODY_ZONE_CHEST, BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)
|
||||
if(excluded_limbs)
|
||||
if(excluded_limbs.len)
|
||||
limb_list -= excluded_limbs
|
||||
for(var/Z in limb_list)
|
||||
. += regenerate_limb(Z, noheal)
|
||||
|
||||
@@ -120,6 +120,8 @@
|
||||
..()
|
||||
|
||||
/obj/item/bodypart/head/update_icon_dropped()
|
||||
if(custom_head)
|
||||
return
|
||||
var/list/standing = get_limb_icon(1)
|
||||
if(!standing.len)
|
||||
icon_state = initial(icon_state)//no overlays found, we default back to initial icon.
|
||||
|
||||
@@ -18,8 +18,6 @@
|
||||
return FALSE
|
||||
|
||||
|
||||
|
||||
|
||||
/mob/proc/has_left_hand(check_disabled = TRUE)
|
||||
return TRUE
|
||||
|
||||
@@ -335,3 +333,19 @@
|
||||
else
|
||||
S.adjusted = ALT_STYLE
|
||||
H.update_inv_wear_suit()
|
||||
|
||||
/mob/living/carbon/proc/get_body_parts_flags()
|
||||
for(var/X in bodyparts)
|
||||
var/obj/item/bodypart/L = X
|
||||
switch(L.body_part)
|
||||
if(CHEST)
|
||||
. |= GROIN
|
||||
if(LEG_LEFT)
|
||||
. |= FOOT_LEFT
|
||||
if(LEG_RIGHT)
|
||||
. |= FOOT_RIGHT
|
||||
if(ARM_LEFT)
|
||||
. |= HAND_LEFT
|
||||
if(ARM_RIGHT)
|
||||
. |= HAND_RIGHT
|
||||
. |= L.body_part
|
||||
@@ -11,8 +11,7 @@
|
||||
|
||||
/datum/surgery_step/embalming
|
||||
name = "embalming body"
|
||||
implements = list(/obj/item/reagent_containers/syringe = 100, /obj/item/pen = 30)
|
||||
time = 10
|
||||
implements = list(TOOL_HEMOSTAT = 100, TOOL_SCREWDRIVER = 35)
|
||||
chems_needed = list("drying_agent", "sterilizine")
|
||||
require_all_chems = FALSE
|
||||
|
||||
@@ -22,7 +21,7 @@
|
||||
/datum/surgery_step/embalming/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
user.visible_message("[user] embalms [target]'s body.", "<span class='notice'>You succeed in embalming [target]'s body.</span>")
|
||||
ADD_TRAIT(target, TRAIT_HUSK, MAGIC_TRAIT) //Husk's prevent body smell
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
/datum/surgery_step/embalming/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
user.visible_message("[user] screws up!", "<span class='warning'>You screwed up!</span>")
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
update_icon()
|
||||
..()
|
||||
|
||||
/obj/item/organ/appendix/Insert(mob/living/carbon/M, special = 0)
|
||||
/obj/item/organ/appendix/Insert(mob/living/carbon/M, special = 0, drop_if_replaced = TRUE)
|
||||
..()
|
||||
if(inflamed)
|
||||
M.ForceContractDisease(new /datum/disease/appendicitis(), FALSE, TRUE)
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
var/on = FALSE
|
||||
var/datum/effect_system/trail_follow/ion/ion_trail
|
||||
|
||||
/obj/item/organ/cyberimp/chest/thrusters/Insert(mob/living/carbon/M, special = 0)
|
||||
/obj/item/organ/cyberimp/chest/thrusters/Insert(mob/living/carbon/M, special = 0, drop_if_replaced = TRUE)
|
||||
. = ..()
|
||||
if(!ion_trail)
|
||||
ion_trail = new
|
||||
|
||||
@@ -135,7 +135,7 @@ obj/item/organ/heart/slime
|
||||
else
|
||||
last_pump = world.time //lets be extra fair *sigh*
|
||||
|
||||
/obj/item/organ/heart/cursed/Insert(mob/living/carbon/M, special = 0)
|
||||
/obj/item/organ/heart/cursed/Insert(mob/living/carbon/M, special = 0, drop_if_replaced = TRUE)
|
||||
..()
|
||||
if(owner)
|
||||
to_chat(owner, "<span class ='userdanger'>Your heart has been replaced with a cursed one, you have to pump this one manually otherwise you'll die!</span>")
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
to_chat(owner, "<span class='notice'>Your tongue is really starting to hurt.</span>")
|
||||
|
||||
|
||||
/obj/item/organ/tongue/Insert(mob/living/carbon/M, special = 0)
|
||||
/obj/item/organ/tongue/Insert(mob/living/carbon/M, special = 0, drop_if_replaced = TRUE)
|
||||
..()
|
||||
if(say_mod && M.dna && M.dna.species)
|
||||
M.dna.species.say_mod = say_mod
|
||||
|
||||
@@ -140,7 +140,7 @@
|
||||
user.say(message, spans = span_list, sanitize = FALSE)
|
||||
|
||||
message = lowertext(message)
|
||||
var/mob/living/list/listeners = list()
|
||||
var/list/mob/living/listeners = list()
|
||||
for(var/mob/living/L in get_hearers_in_view(8, user))
|
||||
if(L.can_hear() && !L.anti_magic_check(FALSE, TRUE) && L.stat != DEAD)
|
||||
if(L == user && !include_speaker)
|
||||
@@ -663,7 +663,7 @@
|
||||
|
||||
//FIND THRALLS
|
||||
message = lowertext(message)
|
||||
var/mob/living/list/listeners = list()
|
||||
var/list/mob/living/listeners = list()
|
||||
for(var/mob/living/L in get_hearers_in_view(8, user))
|
||||
if(L.can_hear() && !L.anti_magic_check(FALSE, TRUE) && L.stat != DEAD)
|
||||
if(L.has_status_effect(/datum/status_effect/chem/enthrall))//Check to see if they have the status
|
||||
|
||||
Reference in New Issue
Block a user