I still fucking hate components.
This commit is contained in:
@@ -157,7 +157,6 @@
|
||||
cut_overlay(damaged_clothes_icons[index], TRUE)
|
||||
|
||||
|
||||
|
||||
/*
|
||||
SEE_SELF // can see self, no matter what
|
||||
SEE_MOBS // can see all mobs, no matter what
|
||||
|
||||
@@ -176,6 +176,7 @@
|
||||
qdel(target)
|
||||
return TRUE
|
||||
var/atom/movable/M = target
|
||||
SEND_SIGNAL(M, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
M.clean_blood()
|
||||
visible_message("[src] polishes \the [target].")
|
||||
return TRUE
|
||||
|
||||
@@ -17,27 +17,37 @@
|
||||
/obj/item/projectile/bullet/c45_cleaning/on_hit(atom/target, blocked = FALSE)
|
||||
. = ..()
|
||||
var/turf/T = get_turf(target)
|
||||
SEND_SIGNAL(T, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
for(var/A in T)
|
||||
if(is_cleanable(A))
|
||||
qdel(A)
|
||||
else if(isitem(A))
|
||||
var/obj/item/cleaned_item = A
|
||||
SEND_SIGNAL(cleaned_item, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
cleaned_item.clean_blood()
|
||||
if(ismob(cleaned_item.loc))
|
||||
var/mob/M = cleaned_item.loc
|
||||
M.regenerate_icons()
|
||||
else if(ishuman(A))
|
||||
var/mob/living/carbon/human/cleaned_human = A
|
||||
if(cleaned_human.lying)
|
||||
if(cleaned_human.head)
|
||||
SEND_SIGNAL(cleaned_human.head, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
cleaned_human.head.clean_blood()
|
||||
cleaned_human.update_inv_head()
|
||||
if(cleaned_human.wear_suit)
|
||||
SEND_SIGNAL(cleaned_human.wear_suit, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
cleaned_human.wear_suit.clean_blood()
|
||||
cleaned_human.update_inv_wear_suit()
|
||||
else if(cleaned_human.w_uniform)
|
||||
SEND_SIGNAL(cleaned_human.w_uniform, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
cleaned_human.w_uniform.clean_blood()
|
||||
cleaned_human.update_inv_w_uniform()
|
||||
if(cleaned_human.shoes)
|
||||
SEND_SIGNAL(cleaned_human.shoes, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
cleaned_human.shoes.clean_blood()
|
||||
cleaned_human.update_inv_shoes()
|
||||
SEND_SIGNAL(cleaned_human, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
cleaned_human.clean_blood()
|
||||
cleaned_human.wash_cream()
|
||||
cleaned_human.regenerate_icons()
|
||||
|
||||
@@ -1201,11 +1201,13 @@
|
||||
else
|
||||
if(O)
|
||||
O.remove_atom_colour(WASHABLE_COLOUR_PRIORITY)
|
||||
SEND_SIGNAL(O, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
O.clean_blood()
|
||||
|
||||
/datum/reagent/space_cleaner/reaction_turf(turf/T, reac_volume)
|
||||
if(reac_volume >= 1)
|
||||
T.remove_atom_colour(WASHABLE_COLOUR_PRIORITY)
|
||||
SEND_SIGNAL(T, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
T.clean_blood()
|
||||
for(var/obj/effect/decal/cleanable/C in T)
|
||||
qdel(C)
|
||||
@@ -1224,25 +1226,32 @@
|
||||
H.lip_style = null
|
||||
H.update_body()
|
||||
for(var/obj/item/I in C.held_items)
|
||||
SEND_SIGNAL(I, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
I.clean_blood()
|
||||
if(C.wear_mask)
|
||||
SEND_SIGNAL(C.wear_mask, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
if(C.wear_mask.clean_blood())
|
||||
C.update_inv_wear_mask()
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = C
|
||||
if(H.head)
|
||||
SEND_SIGNAL(H.head, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
if(H.head.clean_blood())
|
||||
H.update_inv_head()
|
||||
if(H.wear_suit)
|
||||
SEND_SIGNAL(H.wear_suit, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
if(H.wear_suit.clean_blood())
|
||||
H.update_inv_wear_suit()
|
||||
else if(H.w_uniform)
|
||||
SEND_SIGNAL(H.w_uniform, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
if(H.w_uniform.clean_blood())
|
||||
H.update_inv_w_uniform()
|
||||
if(H.shoes)
|
||||
SEND_SIGNAL(H.shoes, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
if(H.shoes.clean_blood())
|
||||
H.update_inv_shoes()
|
||||
H.wash_cream()
|
||||
SEND_SIGNAL(M, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_WEAK)
|
||||
M.clean_blood()
|
||||
|
||||
/datum/reagent/space_cleaner/ez_clean
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
/obj/item/reagent_containers/blood/random/Initialize()
|
||||
icon_state = "bloodpack"
|
||||
blood_type = pick("A+", "A-", "B+", "B-", "O+", "O-", "L", "SY", "HF", "GEL")
|
||||
blood_type = pick("A+", "A-", "B+", "B-", "O+", "O-", "L", "SY", "HF", "GEL", "BUG")
|
||||
return ..()
|
||||
|
||||
/obj/item/reagent_containers/blood/APlus
|
||||
@@ -85,6 +85,9 @@
|
||||
/obj/item/reagent_containers/blood/jellyblood
|
||||
blood_type = "GEL"
|
||||
|
||||
/obj/item/reagent_containers/blood/insect
|
||||
blood_type = "BUG"
|
||||
|
||||
/obj/item/reagent_containers/blood/attackby(obj/item/I, mob/user, params)
|
||||
if (istype(I, /obj/item/pen) || istype(I, /obj/item/toy/crayon))
|
||||
if(!user.is_literate())
|
||||
|
||||
Reference in New Issue
Block a user