UPSTREAM -25-02 - Accidental double eye wounds

This commit is contained in:
Majkl-J
2025-02-20 00:29:04 -08:00
parent f17144e797
commit 9cb48d166c
+1 -43
View File
@@ -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."