The Rapid Syringe gun now costs 12 TC. It can also pierce all clothing now. (#21674)

* RATATATATATA

* We use TRUE, not 1

* making it cost 12

* making progress

* FINALLY

* Lewcc review

* Whoops this too

* Lewcc review

* Might work, might not, but conflict time

* Henri review
This commit is contained in:
DGamerL
2023-08-16 20:52:02 +02:00
committed by GitHub
parent 4efc40ccac
commit b0b347660e
8 changed files with 36 additions and 12 deletions
@@ -123,6 +123,10 @@
item_state = "syndicate-black-red"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/security
/obj/item/clothing/suit/space/hardsuit/ert/security/Initialize(mapload)
. = ..()
ADD_TRAIT(src, TRAIT_PUNCTURE_IMMUNE, ROUNDSTART_TRAIT)
/obj/item/clothing/suit/space/hardsuit/ert/security/gamma
name = "elite emergency response team security suit"
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
@@ -181,6 +185,10 @@
icon_state = "ert_medical"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/medical
/obj/item/clothing/suit/space/hardsuit/ert/medical/Initialize(mapload)
. = ..()
ADD_TRAIT(src, TRAIT_PUNCTURE_IMMUNE, ROUNDSTART_TRAIT)
/obj/item/clothing/suit/space/hardsuit/ert/medical/gamma
name = "elite emergency response team medical suit"
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
@@ -477,6 +477,10 @@
item_color = "sst"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite/sst
/obj/item/clothing/suit/space/hardsuit/syndi/elite/sst/Initialize(mapload)
. = ..()
ADD_TRAIT(src, TRAIT_PUNCTURE_IMMUNE, ROUNDSTART_TRAIT)
/obj/item/clothing/suit/space/hardsuit/syndi/freedom
name = "eagle suit"
desc = "An advanced, light suit, fabricated from a mixture of synthetic feathers and space-resistant material. A gun holster appears to be integrated into the suit."
@@ -63,6 +63,10 @@
strip_delay = 130
dog_fashion = /datum/dog_fashion/back/deathsquad
/obj/item/clothing/suit/space/deathsquad/Initialize(mapload)
. = ..()
ADD_TRAIT(src, TRAIT_PUNCTURE_IMMUNE, ROUNDSTART_TRAIT)
/obj/item/clothing/head/helmet/space/deathsquad/beret
name = "officer beret"
desc = "An armored beret commonly used by special operations officers."
@@ -1032,7 +1032,7 @@
xylophone=0
return
/mob/living/carbon/human/can_inject(mob/user, error_msg, target_zone, penetrate_thick = FALSE)
/mob/living/carbon/human/can_inject(mob/user, error_msg, target_zone, penetrate_thick = FALSE, piercing = FALSE)
. = TRUE
if(!target_zone)
@@ -1044,23 +1044,24 @@
if(HAS_TRAIT(src, TRAIT_PIERCEIMMUNE))
. = FALSE
if(HAS_TRAIT(wear_suit, TRAIT_PUNCTURE_IMMUNE))
. = FALSE
var/obj/item/organ/external/affecting = get_organ(target_zone)
var/fail_msg
if(!affecting)
. = FALSE
fail_msg = "[p_they(TRUE)] [p_are()] missing that limb."
else if(affecting.is_robotic())
if(affecting.is_robotic())
. = FALSE
fail_msg = "That limb is robotic."
if(piercing)
return TRUE
if(target_zone == "head")
if((head?.flags & THICKMATERIAL) && !penetrate_thick)
. = FALSE
else
switch(target_zone)
if("head")
if(head && head.flags & THICKMATERIAL && !penetrate_thick)
. = FALSE
else
if(wear_suit && wear_suit.flags & THICKMATERIAL && !penetrate_thick)
. = FALSE
if((wear_suit?.flags & THICKMATERIAL) && !penetrate_thick)
. = FALSE
if(!. && error_msg && user)
if(!fail_msg)
fail_msg = "There is no exposed flesh or thin material [target_zone == "head" ? "on [p_their()] head" : "on [p_their()] body"] to inject into."
+1 -1
View File
@@ -315,7 +315,7 @@
if(!S)
return
chambered.BB = new S.projectile_type(src)
chambered.BB = new /obj/item/projectile/bullet/dart/syringe/pierce_ignore(src)
update_loaded_syringe()
chambered.BB.name = S.name
@@ -294,6 +294,12 @@
icon = 'icons/obj/chemical.dmi'
icon_state = "syringeproj"
/obj/item/projectile/bullet/dart/syringe/pierce_ignore
/obj/item/projectile/bullet/dart/syringe/pierce_ignore/on_hit(atom/target, blocked = 0, hit_zone)
. = ..()
piercing = TRUE
/obj/item/projectile/bullet/dart/syringe/tranquilizer
/obj/item/projectile/bullet/dart/syringe/tranquilizer/New()