diff --git a/code/datums/wounds/pierce.dm b/code/datums/wounds/pierce.dm index a0ee65f23cb..4bf2664fb34 100644 --- a/code/datums/wounds/pierce.dm +++ b/code/datums/wounds/pierce.dm @@ -1,3 +1,4 @@ + /* Piercing wounds */ @@ -333,49 +334,6 @@ return FALSE return ..() -/datum/wound/pierce/bleed/severe/eye - name = "Eyeball Puncture" - desc = "Patient's eye has sustained extreme damage, causing severe bleeding from the ocular cavity." - occur_text = "looses a violent spray of blood, revealing a crushed eyeball" - var/right_side = FALSE - -/datum/wound/pierce/bleed/severe/eye/apply_wound(obj/item/bodypart/limb, silent, datum/wound/old_wound, smited, attack_direction, wound_source, replacing, right_side) - var/obj/item/organ/internal/eyes/eyes = locate() in limb - if (!istype(eyes)) - return FALSE - . = ..() - src.right_side = right_side - examine_desc = "has its [right_side ? "right" : "left"] eye pierced clean through, blood spewing from the cavity" - RegisterSignal(limb, COMSIG_BODYPART_UPDATE_WOUND_OVERLAY, PROC_REF(wound_overlay)) - limb.update_part_wound_overlay() - -/datum/wound/pierce/bleed/severe/eye/remove_wound(ignore_limb, replaced) - if (!isnull(limb)) - UnregisterSignal(limb, COMSIG_BODYPART_UPDATE_WOUND_OVERLAY) - return ..() - -/datum/wound/pierce/bleed/severe/eye/proc/wound_overlay(obj/item/bodypart/source, limb_bleed_rate) - SIGNAL_HANDLER - - if (limb_bleed_rate <= BLEED_OVERLAY_LOW || limb_bleed_rate > BLEED_OVERLAY_GUSH) - return - - if (blood_flow <= BLEED_OVERLAY_LOW) - return - - source.bleed_overlay_icon = right_side ? "r_eye" : "l_eye" - return COMPONENT_PREVENT_WOUND_OVERLAY_UPDATE - -/datum/wound_pregen_data/flesh_pierce/open_puncture/eye - wound_path_to_generate = /datum/wound/pierce/bleed/severe/eye - viable_zones = list(BODY_ZONE_HEAD) - can_be_randomly_generated = FALSE - -/datum/wound_pregen_data/flesh_pierce/open_puncture/eye/can_be_applied_to(obj/item/bodypart/limb, list/suggested_wounding_types, datum/wound/old_wound, random_roll, duplicates_allowed, care_about_existing_wounds) - if (isnull(locate(/obj/item/organ/internal/eyes) in limb)) - return FALSE - return ..() - /datum/wound/pierce/bleed/critical name = "Ruptured Cavity" desc = "Patient's internal tissue and circulatory system is shredded, causing significant internal bleeding and damage to internal organs."