From e8deb647d8b55959610a54ed116cc740095deaf8 Mon Sep 17 00:00:00 2001 From: TheRyeGuyWhoWillNowDie <70169560+TheRyeGuyWhoWillNowDie@users.noreply.github.com> Date: Fri, 2 Sep 2022 16:15:28 -0400 Subject: [PATCH] THE FIX --- .../projectiles/ammunition/special/syringe.dm | 2 +- .../projectile/bullets/dart_syringe.dm | 22 ++++++++----------- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/code/modules/projectiles/ammunition/special/syringe.dm b/code/modules/projectiles/ammunition/special/syringe.dm index 2762b7c1598f..9fb90d59d94c 100644 --- a/code/modules/projectiles/ammunition/special/syringe.dm +++ b/code/modules/projectiles/ammunition/special/syringe.dm @@ -16,7 +16,7 @@ var/obj/item/reagent_containers/syringe/S = SG.syringes[1] S.reagents.trans_to(BB, S.reagents.total_volume, transfered_by = user) - D.add_dart(S) + D.add_dart(S, S.proj_piercing) SG.syringes.Remove(S) ..() diff --git a/code/modules/projectiles/projectile/bullets/dart_syringe.dm b/code/modules/projectiles/projectile/bullets/dart_syringe.dm index 824ca0c88040..feb04aaa0d8c 100644 --- a/code/modules/projectiles/projectile/bullets/dart_syringe.dm +++ b/code/modules/projectiles/projectile/bullets/dart_syringe.dm @@ -11,15 +11,13 @@ /obj/item/projectile/bullet/reusable/dart/on_hit(atom/target, blocked = FALSE) if(iscarbon(target)) var/mob/living/carbon/C = target - if(blocked != 100) // not completely blocked - if(C.embed_object(container, def_zone, FALSE)) - dropped = TRUE - ..() - return BULLET_ACT_HIT - else - blocked = 100 - target.visible_message(span_danger("\The [container] was deflected!"), \ - span_userdanger("You were protected against \the [container]!")) + if(C.can_inject(null, FALSE, def_zone, piercing) && C.embed_object(container, def_zone, FALSE)) + dropped = TRUE + ..() + return BULLET_ACT_HIT + else + target.visible_message(span_danger("\The [container] was deflected!"), \ + span_userdanger("You were protected against \the [container]!")) ..(target, blocked) return BULLET_ACT_HIT @@ -29,13 +27,11 @@ container.forceMove(get_turf(src)) dropped = TRUE -/obj/item/projectile/bullet/reusable/dart/proc/add_dart(obj/item/reagent_containers/new_dart) +/obj/item/projectile/bullet/reusable/dart/proc/add_dart(obj/item/reagent_containers/new_dart, syrpierce) + piercing = syrpierce container = new_dart new_dart.forceMove(src) name = new_dart.name - if(istype(new_dart, /obj/item/reagent_containers/syringe)) - var/obj/item/reagent_containers/syringe/syringe - piercing = syringe.proj_piercing /obj/item/projectile/bullet/reusable/dart/syringe name = "syringe"