diff --git a/code/modules/antagonists/changeling/powers/mutations.dm b/code/modules/antagonists/changeling/powers/mutations.dm
index b9cac204669..d22afe3a745 100644
--- a/code/modules/antagonists/changeling/powers/mutations.dm
+++ b/code/modules/antagonists/changeling/powers/mutations.dm
@@ -244,6 +244,7 @@
flags_1 = NONE
w_class = WEIGHT_CLASS_HUGE
slot_flags = NONE
+ pinless = TRUE
ammo_type = /obj/item/ammo_casing/magic/tentacle
fire_sound = 'sound/effects/splat.ogg'
force = 0
diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm
index 098018e4167..3f2d39c8c07 100644
--- a/code/modules/mining/lavaland/necropolis_chests.dm
+++ b/code/modules/mining/lavaland/necropolis_chests.dm
@@ -416,6 +416,7 @@
max_charges = 1
item_flags = NEEDS_PERMIT | NOBLUDGEON
sharpness = SHARP_POINTY
+ pinless = TRUE
force = 18
/obj/item/gun/magic/hook/shoot_with_empty_chamber(mob/living/user)
diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm
index 313fea71fdd..89a2a140d75 100644
--- a/code/modules/projectiles/gun.dm
+++ b/code/modules/projectiles/gun.dm
@@ -54,7 +54,8 @@
righthand_file = 'icons/mob/inhands/weapons/guns_righthand.dmi'
var/obj/item/firing_pin/pin = /obj/item/firing_pin //standard firing pin for most guns
-
+ /// True if a gun dosen't need a pin, mostly used for abstract guns like tentacles and meathooks
+ var/pinless = FALSE
var/can_flashlight = FALSE //if a flashlight can be added or removed if it already has one.
var/obj/item/flashlight/seclite/gun_light
var/datum/action/item_action/toggle_gunlight/alight
@@ -124,11 +125,12 @@
/obj/item/gun/examine(mob/user)
. = ..()
- if(pin)
- . += "It has \a [pin] installed."
- . += span_info("[pin] looks like it could be removed with some tools.")
- else
- . += "It doesn't have a firing pin installed, and won't fire."
+ if(!pinless)
+ if(pin)
+ . += "It has \a [pin] installed."
+ . += span_info("[pin] looks like it could be removed with some tools.")
+ else
+ . += "It doesn't have a firing pin installed, and won't fire."
if(gun_light)
. += "It has \a [gun_light] [can_flashlight ? "" : "permanently "]mounted on it."
@@ -276,6 +278,8 @@
return FALSE
/obj/item/gun/proc/handle_pins(mob/living/user)
+ if(pinless)
+ return TRUE
if(pin)
if(pin.pin_auth(user) || (pin.obj_flags & EMAGGED))
return TRUE